Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIgor Zelmanovich <igorz@mono-cvs.ximian.com>2007-07-22 16:47:31 +0400
committerIgor Zelmanovich <igorz@mono-cvs.ximian.com>2007-07-22 16:47:31 +0400
commitff2ff9453fa88d077af4a5907c4fc4c43129dcd3 (patch)
tree7c04cbb4ce5e796022e91689fe35daf82f6b0fab /mcs/class/MicrosoftAjaxLibrary
parentcbf76e4457ca2796ebc113483c252db435618fd1 (diff)
added MicrosoftAjaxLibrary - System.Web.Extensions client scripts
svn path=/trunk/mcs/; revision=82437
Diffstat (limited to 'mcs/class/MicrosoftAjaxLibrary')
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/License.htm244
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/PID.txt1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/af-ZA.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-AE.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-BH.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-DZ.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-EG.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-IQ.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-JO.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-KW.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-LB.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-LY.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-MA.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-OM.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-QA.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-SA.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-SY.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-TN.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-YE.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/az-AZ-Cyrl.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/az-AZ-Latn.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/be-BY.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/bg-BG.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ca-ES.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/cs-CZ.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/da-DK.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-AT.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-CH.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-DE.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-LI.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-LU.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/div-MV.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/el-GR.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-AU.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-BZ.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-CA.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-CB.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-GB.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-IE.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-JM.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-NZ.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-PH.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-TT.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-US.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-ZA.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-ZW.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-AR.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-BO.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-CL.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-CO.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-CR.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-DO.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-EC.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-ES.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-GT.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-HN.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-MX.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-NI.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-PA.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-PE.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-PR.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-PY.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-SV.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-UY.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-VE.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/et-EE.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/eu-ES.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fa-IR.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fi-FI.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fo-FO.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-BE.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-CA.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-CH.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-FR.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-LU.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-MC.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/gl-ES.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/gu-IN.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/he-IL.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/hi-IN.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/hr-HR.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/hu-HU.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/hy-AM.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/id-ID.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/is-IS.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/it-CH.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/it-IT.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ja-JP.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ka-GE.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/kk-KZ.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/kn-IN.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ko-KR.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/kok-IN.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ky-KG.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/lt-LT.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/lv-LV.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/mk-MK.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/mn-MN.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/mr-IN.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ms-BN.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ms-MY.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/nb-NO.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/nl-BE.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/nl-NL.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/nn-NO.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/pa-IN.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/pl-PL.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/pt-BR.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/pt-PT.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ro-RO.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ru-RU.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sa-IN.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sk-SK.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sl-SI.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sq-AL.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sr-SP-Cyrl.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sr-SP-Latn.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sv-FI.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sv-SE.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sw-KE.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/syr-SY.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ta-IN.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/te-IN.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/th-TH.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/tr-TR.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/tt-RU.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/uk-UA.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ur-PK.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/uz-UZ-Cyrl.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/uz-UZ-Latn.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/vi-VN.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-CN.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-HK.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-MO.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-SG.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-TW.js1
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjax.debug.js6632
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjax.js7
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxTimer.debug.js141
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxTimer.js5
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxWebForms.debug.js1557
-rw-r--r--mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxWebForms.js7
142 files changed, 8728 insertions, 0 deletions
diff --git a/mcs/class/MicrosoftAjaxLibrary/License.htm b/mcs/class/MicrosoftAjaxLibrary/License.htm
new file mode 100644
index 00000000000..a60df154aeb
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/License.htm
@@ -0,0 +1,244 @@
+<html>
+
+<head>
+<meta http-equiv=Content-Type content="text/html; charset=windows-1252">
+<meta name=Generator content="Microsoft Word 12 (filtered)">
+
+<style>
+<!--
+ /* Font Definitions */
+ @font-face
+ {font-family:"Cambria Math";
+ panose-1:2 4 5 3 5 4 6 3 2 4;}
+@font-face
+ {font-family:Cambria;
+ panose-1:2 4 5 3 5 4 6 3 2 4;}
+@font-face
+ {font-family:Tahoma;
+ panose-1:2 11 6 4 3 5 4 4 2 4;}
+@font-face
+ {font-family:Verdana;
+ panose-1:2 11 6 4 3 5 4 4 2 4;}
+ /* Style Definitions */
+ p.MsoNormal, li.MsoNormal, div.MsoNormal
+ {margin:0in;
+ margin-bottom:.0001pt;
+ text-autospace:none;
+ font-size:12.0pt;
+ font-family:"Arial","sans-serif";}
+h1
+ {mso-style-link:"Heading 1 Char";
+ margin:0in;
+ margin-bottom:.0001pt;
+ text-autospace:none;
+ font-size:12.0pt;
+ font-family:"Arial","sans-serif";
+ font-weight:normal;}
+h2
+ {mso-style-link:"Heading 2 Char";
+ margin:0in;
+ margin-bottom:.0001pt;
+ text-autospace:none;
+ font-size:12.0pt;
+ font-family:"Arial","sans-serif";
+ font-weight:normal;}
+p.MsoCommentText, li.MsoCommentText, div.MsoCommentText
+ {mso-style-link:"Comment Text Char";
+ margin:0in;
+ margin-bottom:.0001pt;
+ text-autospace:none;
+ font-size:10.0pt;
+ font-family:"Arial","sans-serif";}
+p.MsoHeader, li.MsoHeader, div.MsoHeader
+ {mso-style-link:"Header Char";
+ margin:0in;
+ margin-bottom:.0001pt;
+ text-autospace:none;
+ font-size:12.0pt;
+ font-family:"Arial","sans-serif";}
+p.MsoFooter, li.MsoFooter, div.MsoFooter
+ {mso-style-link:"Footer Char";
+ margin:0in;
+ margin-bottom:.0001pt;
+ text-autospace:none;
+ font-size:12.0pt;
+ font-family:"Arial","sans-serif";}
+span.MsoCommentReference
+ {font-family:"Times New Roman","serif";}
+p.MsoCommentSubject, li.MsoCommentSubject, div.MsoCommentSubject
+ {mso-style-link:"Comment Subject Char";
+ margin:0in;
+ margin-bottom:.0001pt;
+ text-autospace:none;
+ font-size:10.0pt;
+ font-family:"Arial","sans-serif";
+ font-weight:bold;}
+p.MsoAcetate, li.MsoAcetate, div.MsoAcetate
+ {mso-style-link:"Balloon Text Char";
+ margin:0in;
+ margin-bottom:.0001pt;
+ text-autospace:none;
+ font-size:8.0pt;
+ font-family:"Tahoma","sans-serif";}
+span.Heading1Char
+ {mso-style-name:"Heading 1 Char";
+ mso-style-link:"Heading 1";
+ font-family:"Cambria","serif";
+ font-weight:bold;}
+span.Heading2Char
+ {mso-style-name:"Heading 2 Char";
+ mso-style-link:"Heading 2";
+ font-family:"Cambria","serif";
+ font-weight:bold;
+ font-style:italic;}
+span.BalloonTextChar
+ {mso-style-name:"Balloon Text Char";
+ mso-style-link:"Balloon Text";
+ font-family:"Tahoma","sans-serif";}
+span.CommentTextChar
+ {mso-style-name:"Comment Text Char";
+ mso-style-link:"Comment Text";
+ font-family:"Arial","sans-serif";}
+span.CommentSubjectChar
+ {mso-style-name:"Comment Subject Char";
+ mso-style-link:"Comment Subject";
+ font-family:"Arial","sans-serif";
+ font-weight:bold;}
+span.HeaderChar
+ {mso-style-name:"Header Char";
+ mso-style-link:Header;
+ font-family:"Arial","sans-serif";}
+span.FooterChar
+ {mso-style-name:"Footer Char";
+ mso-style-link:Footer;
+ font-family:"Arial","sans-serif";}
+ /* Page Definitions */
+ @page Section1
+ {size:8.5in 11.0in;
+ margin:1.0in 1.0in 1.0in 1.0in;}
+div.Section1
+ {page:Section1;}
+-->
+</style>
+
+</head>
+
+<body lang=EN-US style='text-justify-trim:punctuation'>
+
+<div class=Section1>
+
+<h1 style='margin-top:9.0pt'><span style='font-size:15.5pt;color:black'>Microsoft
+Permissive License (Ms-PL)</span></h1>
+
+<p class=MsoNormal style='line-height:140%'><b><span style='font-size:8.5pt;
+line-height:140%;font-family:"Verdana","sans-serif"'>&nbsp;</span></b></p>
+
+<p class=MsoNormal style='line-height:140%'><b><span style='font-size:8.5pt;
+line-height:140%;font-family:"Verdana","sans-serif"'>This license governs use
+of the accompanying software. If you use the software, you accept this license.
+If you do not accept the license, do not use the software.</span></b></p>
+
+<p class=MsoNormal style='line-height:140%'><span style='font-size:8.5pt;
+line-height:140%;font-family:"Verdana","sans-serif"'>&nbsp;</span></p>
+
+<h2><b><span style='font-size:11.5pt;font-family:"Verdana","sans-serif"'>1.
+Definitions</span></b></h2>
+
+<p class=MsoNormal style='line-height:140%'><span style='font-size:8.5pt;
+line-height:140%;font-family:"Verdana","sans-serif"'>The terms reproduce,
+reproduction, derivative works, and distribution have the same meaning
+here as under U.S. copyright law.</span></p>
+
+<p class=MsoNormal style='line-height:140%'><span style='font-size:8.5pt;
+line-height:140%;font-family:"Verdana","sans-serif"'>A contribution is the
+original software, or any additions or changes to the software.</span></p>
+
+<p class=MsoNormal style='line-height:140%'><span style='font-size:8.5pt;
+line-height:140%;font-family:"Verdana","sans-serif"'>A contributor is any
+person that distributes its contribution under this license.</span></p>
+
+<p class=MsoNormal><span style='font-size:8.5pt;font-family:"Verdana","sans-serif"'>Licensed
+patents are a contributors patent claims that read directly on its
+contribution.</span></p>
+
+<h2><b><span style='font-size:11.5pt;font-family:"Verdana","sans-serif"'>&nbsp;</span></b></h2>
+
+<h2><b><span style='font-size:11.5pt;font-family:"Verdana","sans-serif"'>2.
+Grant of Rights</span></b></h2>
+
+<p class=MsoNormal style='line-height:140%'><span style='font-size:8.5pt;
+line-height:140%;font-family:"Verdana","sans-serif"'>(A) Copyright Grant-
+Subject to the terms of this license, including the license conditions and
+limitations in section 3, each contributor grants you a non-exclusive,
+worldwide, royalty-free copyright license to reproduce its contribution,
+prepare derivative works of its contribution, and distribute its contribution
+or any derivative works that you create.</span></p>
+
+<p class=MsoNormal style='line-height:140%'><span style='font-size:8.5pt;
+line-height:140%;font-family:"Verdana","sans-serif"'>(B) Patent Grant- Subject
+to the terms of this license, including the license conditions and limitations
+in section 3, each contributor grants you a non-exclusive, worldwide,
+royalty-free license under its licensed patents to make, have made, use, sell,
+offer for sale, import, and/or otherwise dispose of its contribution in the
+software or derivative works of the contribution in the software.</span></p>
+
+<h2><b><span style='font-size:11.5pt;font-family:"Verdana","sans-serif"'>&nbsp;</span></b></h2>
+
+<h2><b><span style='font-size:11.5pt;font-family:"Verdana","sans-serif"'>3.
+Conditions and Limitations</span></b></h2>
+
+<p class=MsoNormal style='line-height:140%'><span style='font-size:8.5pt;
+line-height:140%;font-family:"Verdana","sans-serif"'>(A) No Trademark License-
+This license does not grant you rights to use any contributors name, logo, or
+trademarks.</span></p>
+
+<p class=MsoNormal style='line-height:140%'><span style='font-size:8.5pt;
+line-height:140%;font-family:"Verdana","sans-serif"'>(B) If you bring a patent
+claim against any contributor over patents that you claim are infringed by the
+software, your patent license from such contributor to the software ends
+automatically.</span></p>
+
+<p class=MsoNormal style='line-height:140%'><span style='font-size:8.5pt;
+line-height:140%;font-family:"Verdana","sans-serif"'>(C) If you distribute any
+portion of the software, you must retain all copyright, patent, trademark, and
+attribution notices that are present in the software.</span></p>
+
+<p class=MsoNormal style='line-height:140%'><span style='font-size:8.5pt;
+line-height:140%;font-family:"Verdana","sans-serif"'>(D) If you distribute any
+portion of the software in source code form, you may do so only under this
+license by including a complete copy of this license with your distribution. If
+you distribute any portion of the software in compiled or object code form, you
+may only do so under a license that complies with this license.</span></p>
+
+<p class=MsoNormal style='line-height:140%'><span style='font-size:8.5pt;
+line-height:140%;font-family:"Verdana","sans-serif"'>(E) The software is
+licensed as-is. You bear the risk of using it. The contributors give no
+express warranties, guarantees or conditions. You may have additional consumer
+rights under your local laws which this license cannot change. To the extent
+permitted under your local laws, the contributors exclude the implied
+warranties of merchantability, fitness for a particular purpose and
+non-infringement.</span></p>
+
+<p class=MsoNormal style='line-height:140%'><span style='font-size:8.5pt;
+line-height:140%;font-family:"Verdana","sans-serif"'>(F) If you distribute the
+software or derivative works with programs you develop, you agree to </span><span
+style='font-size:8.5pt;line-height:140%;font-family:"Verdana","sans-serif"'>indemnify,
+defend, and hold harmless all contributors from any claims, including
+attorneys fees, related to the distribution or use of your programs. For
+clarity, you have no such obligations to a contributor for any claims based
+solely on the unmodified contributions of that contributor.</span></p>
+
+<p class=MsoNormal style='line-height:140%'><span style='font-size:8.5pt;
+line-height:140%;font-family:"Verdana","sans-serif"'>(G) If you make any
+additions or changes to the original software, you may only distribute them
+under a new namespace. In addition, you will clearly identify your changes or
+additions as your own.</span></p>
+
+<p class=MsoNormal style='line-height:140%'><span style='font-size:8.5pt;
+line-height:140%;font-family:"Verdana","sans-serif"'>&nbsp;</span></p>
+
+</div>
+
+</body>
+
+</html>
diff --git a/mcs/class/MicrosoftAjaxLibrary/PID.txt b/mcs/class/MicrosoftAjaxLibrary/PID.txt
new file mode 100644
index 00000000000..e7ac20e6e33
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/PID.txt
@@ -0,0 +1 @@
+77875-602-0001260-04309
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/af-ZA.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/af-ZA.js
new file mode 100644
index 00000000000..1ba3e8d33c2
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/af-ZA.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"af-ZA","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"R","NaNSymbol":"NaN","CurrencyNegativePattern":2,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy hh:mm:ss tt","LongDatePattern":"dd MMMM yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"nm","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"yyyy/MM/dd","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["Son","Maan","Dins","Woen","Dond","Vry","Sat"],"ShortestDayNames":["So","Ma","Di","Wo","Do","Vr","Sa"],"DayNames":["Sondag","Maandag","Dinsdag","Woensdag","Donderdag","Vrydag","Saterdag"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des",""],"MonthNames":["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember",""],"IsReadOnly":false,"NativeCalendarName":"Gregoriaanse kalender","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Aug","Sep","Okt","Nov","Des",""],"MonthGenitiveNames":["Januarie","Februarie","Maart","April","Mei","Junie","Julie","Augustus","September","Oktober","November","Desember",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-AE.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-AE.js
new file mode 100644
index 00000000000..fa9c7b20fca
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-AE.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ar-AE","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"د.إ.‏","NaNSymbol":"ليس برقم","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-لا نهاية","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+لا نهاية","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["٠","١","٢","٣","٤","٥","٦","٧","٨","٩"],"DigitSubstitution":0},"dateTimeFormat":{"AMDesignator":"ص","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":6,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM, yyyy hh:mm:ss tt","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"م","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"IsReadOnly":false,"NativeCalendarName":"التقويم الميلادي (تسمية إنجليزية)‏","AbbreviatedMonthGenitiveNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthGenitiveNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-BH.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-BH.js
new file mode 100644
index 00000000000..9aa1d6b41f3
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-BH.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ar-BH","numberFormat":{"CurrencyDecimalDigits":3,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"د.ب.‏","NaNSymbol":"ليس برقم","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-لا نهاية","NegativeSign":"-","NumberDecimalDigits":3,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+لا نهاية","PositiveSign":"+","PercentDecimalDigits":3,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["٠","١","٢","٣","٤","٥","٦","٧","٨","٩"],"DigitSubstitution":0},"dateTimeFormat":{"AMDesignator":"ص","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":6,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM, yyyy hh:mm:ss tt","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"م","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"IsReadOnly":false,"NativeCalendarName":"التقويم الميلادي (تسمية إنجليزية)‏","AbbreviatedMonthGenitiveNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthGenitiveNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-DZ.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-DZ.js
new file mode 100644
index 00000000000..8a5b1591ffb
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-DZ.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ar-DZ","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"د.ج.‏","NaNSymbol":"ليس برقم","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-لا نهاية","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+لا نهاية","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"ص","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":6,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM, yyyy H:mm:ss","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"م","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd-MM-yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthNames":["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"IsReadOnly":false,"NativeCalendarName":"التقويم الميلادي (تسمية فرنسية)‏","AbbreviatedMonthGenitiveNames":["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthGenitiveNames":["جانفييه","فيفرييه","مارس","أفريل","مي","جوان","جوييه","أوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-EG.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-EG.js
new file mode 100644
index 00000000000..780dcf41b97
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-EG.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ar-EG","numberFormat":{"CurrencyDecimalDigits":3,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"ج.م.‏","NaNSymbol":"ليس برقم","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-لا نهاية","NegativeSign":"-","NumberDecimalDigits":3,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+لا نهاية","PositiveSign":"+","PercentDecimalDigits":3,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["٠","١","٢","٣","٤","٥","٦","٧","٨","٩"],"DigitSubstitution":0},"dateTimeFormat":{"AMDesignator":"ص","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":6,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM, yyyy hh:mm:ss tt","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"م","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"IsReadOnly":false,"NativeCalendarName":"التقويم الميلادي (تسمية إنجليزية)‏","AbbreviatedMonthGenitiveNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthGenitiveNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-IQ.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-IQ.js
new file mode 100644
index 00000000000..bc6acc320fe
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-IQ.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ar-IQ","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"د.ع.‏","NaNSymbol":"ليس برقم","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-لا نهاية","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+لا نهاية","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["٠","١","٢","٣","٤","٥","٦","٧","٨","٩"],"DigitSubstitution":0},"dateTimeFormat":{"AMDesignator":"ص","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":6,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM, yyyy hh:mm:ss tt","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"م","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],"MonthNames":["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],"IsReadOnly":false,"NativeCalendarName":"التقويم الميلادي (عربي)‏","AbbreviatedMonthGenitiveNames":["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],"MonthGenitiveNames":["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-JO.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-JO.js
new file mode 100644
index 00000000000..b0a9de889b9
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-JO.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ar-JO","numberFormat":{"CurrencyDecimalDigits":3,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"د.ا.‏","NaNSymbol":"ليس برقم","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-لا نهاية","NegativeSign":"-","NumberDecimalDigits":3,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+لا نهاية","PositiveSign":"+","PercentDecimalDigits":3,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["٠","١","٢","٣","٤","٥","٦","٧","٨","٩"],"DigitSubstitution":0},"dateTimeFormat":{"AMDesignator":"ص","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":6,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM, yyyy hh:mm:ss tt","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"م","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],"MonthNames":["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],"IsReadOnly":false,"NativeCalendarName":"التقويم الميلادي (عربي)‏","AbbreviatedMonthGenitiveNames":["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],"MonthGenitiveNames":["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-KW.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-KW.js
new file mode 100644
index 00000000000..de2e50b681a
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-KW.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ar-KW","numberFormat":{"CurrencyDecimalDigits":3,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"د.ك.‏","NaNSymbol":"ليس برقم","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-لا نهاية","NegativeSign":"-","NumberDecimalDigits":3,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+لا نهاية","PositiveSign":"+","PercentDecimalDigits":3,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["٠","١","٢","٣","٤","٥","٦","٧","٨","٩"],"DigitSubstitution":0},"dateTimeFormat":{"AMDesignator":"ص","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":6,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM, yyyy hh:mm:ss tt","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"م","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"IsReadOnly":false,"NativeCalendarName":"التقويم الميلادي (تسمية إنجليزية)‏","AbbreviatedMonthGenitiveNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthGenitiveNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-LB.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-LB.js
new file mode 100644
index 00000000000..f3bd71062f5
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-LB.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ar-LB","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"ل.ل.‏","NaNSymbol":"ليس برقم","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-لا نهاية","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+لا نهاية","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["٠","١","٢","٣","٤","٥","٦","٧","٨","٩"],"DigitSubstitution":0},"dateTimeFormat":{"AMDesignator":"ص","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM, yyyy hh:mm:ss tt","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"م","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],"MonthNames":["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],"IsReadOnly":false,"NativeCalendarName":"التقويم الميلادي (عربي)‏","AbbreviatedMonthGenitiveNames":["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],"MonthGenitiveNames":["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-LY.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-LY.js
new file mode 100644
index 00000000000..d9f94e3a736
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-LY.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ar-LY","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"د.ل.‏","NaNSymbol":"ليس برقم","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-لا نهاية","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+لا نهاية","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"ص","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":6,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM, yyyy hh:mm:ss tt","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"م","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"IsReadOnly":false,"NativeCalendarName":"التقويم الميلادي (تسمية إنجليزية)‏","AbbreviatedMonthGenitiveNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthGenitiveNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-MA.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-MA.js
new file mode 100644
index 00000000000..00a5df5b7b2
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-MA.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ar-MA","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"د.م.‏","NaNSymbol":"ليس برقم","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-لا نهاية","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+لا نهاية","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"ص","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM, yyyy H:mm:ss","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"م","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd-MM-yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["يناير","فبراير","مارس","ابريل","ماي","يونيو","يوليوز","غشت","شتنبر","اكتوبر","نونبر","دجنبر",""],"MonthNames":["يناير","فبراير","مارس","ابريل","ماي","يونيو","يوليوز","غشت","شتنبر","اكتوبر","نونبر","دجنبر",""],"IsReadOnly":false,"NativeCalendarName":"التقويم الميلادي (تسمية فرنسية)‏","AbbreviatedMonthGenitiveNames":["يناير","فبراير","مارس","ابريل","ماي","يونيو","يوليوز","غشت","شتنبر","اكتوبر","نونبر","دجنبر",""],"MonthGenitiveNames":["يناير","فبراير","مارس","ابريل","ماي","يونيو","يوليوز","غشت","شتنبر","اكتوبر","نونبر","دجنبر",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-OM.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-OM.js
new file mode 100644
index 00000000000..98565e62689
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-OM.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ar-OM","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"ر.ع.‏","NaNSymbol":"ليس برقم","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-لا نهاية","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+لا نهاية","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["٠","١","٢","٣","٤","٥","٦","٧","٨","٩"],"DigitSubstitution":0},"dateTimeFormat":{"AMDesignator":"ص","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":6,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM, yyyy hh:mm:ss tt","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"م","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"IsReadOnly":false,"NativeCalendarName":"التقويم الميلادي (تسمية إنجليزية)‏","AbbreviatedMonthGenitiveNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthGenitiveNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-QA.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-QA.js
new file mode 100644
index 00000000000..eee868d1812
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-QA.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ar-QA","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"ر.ق.‏","NaNSymbol":"ليس برقم","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-لا نهاية","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+لا نهاية","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["٠","١","٢","٣","٤","٥","٦","٧","٨","٩"],"DigitSubstitution":0},"dateTimeFormat":{"AMDesignator":"ص","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":6,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM, yyyy hh:mm:ss tt","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"م","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"IsReadOnly":false,"NativeCalendarName":"التقويم الميلادي (تسمية إنجليزية)‏","AbbreviatedMonthGenitiveNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthGenitiveNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-SA.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-SA.js
new file mode 100644
index 00000000000..d19aa4f0615
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-SA.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ar-SA","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"ر.س.‏","NaNSymbol":"ليس برقم","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-لا نهاية","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+لا نهاية","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["٠","١","٢","٣","٤","٥","٦","٧","٨","٩"],"DigitSubstitution":0},"dateTimeFormat":{"AMDesignator":"ص","Calendar":{"MinSupportedDateTime":"\/Date(-42521648400000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":2,"HijriAdjustment":0,"Eras":[1],"TwoDigitYearMax":1451,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":6,"CalendarWeekRule":0,"FullDateTimePattern":"dd/MMMM/yyyy hh:mm:ss tt","LongDatePattern":"dd/MMMM/yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"م","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["محرم","صفر","ربيع الاول","ربيع الثاني","جمادى الاولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],"MonthNames":["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],"IsReadOnly":false,"NativeCalendarName":"التقويم الهجري","AbbreviatedMonthGenitiveNames":["محرم","صفر","ربيع الاول","ربيع الثاني","جمادى الاولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],"MonthGenitiveNames":["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-SY.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-SY.js
new file mode 100644
index 00000000000..8cb8b0227ff
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-SY.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ar-SY","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"ل.س.‏","NaNSymbol":"ليس برقم","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-لا نهاية","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+لا نهاية","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["٠","١","٢","٣","٤","٥","٦","٧","٨","٩"],"DigitSubstitution":0},"dateTimeFormat":{"AMDesignator":"ص","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":6,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM, yyyy hh:mm:ss tt","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"م","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],"MonthNames":["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],"IsReadOnly":false,"NativeCalendarName":"التقويم الميلادي (عربي)‏","AbbreviatedMonthGenitiveNames":["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""],"MonthGenitiveNames":["كانون الثاني","شباط","آذار","نيسان","أيار","حزيران","تموز","آب","أيلول","تشرين الأول","تشرين الثاني","كانون الأول",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-TN.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-TN.js
new file mode 100644
index 00000000000..9c64bf7d49f
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-TN.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ar-TN","numberFormat":{"CurrencyDecimalDigits":3,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"د.ت.‏","NaNSymbol":"ليس برقم","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-لا نهاية","NegativeSign":"-","NumberDecimalDigits":3,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+لا نهاية","PositiveSign":"+","PercentDecimalDigits":3,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"ص","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM, yyyy H:mm:ss","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"م","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd-MM-yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["جانفي","فيفري","مارس","افريل","ماي","جوان","جويلية","اوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthNames":["جانفي","فيفري","مارس","افريل","ماي","جوان","جويلية","اوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"IsReadOnly":false,"NativeCalendarName":"التقويم الميلادي (تسمية فرنسية)‏","AbbreviatedMonthGenitiveNames":["جانفي","فيفري","مارس","افريل","ماي","جوان","جويلية","اوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthGenitiveNames":["جانفي","فيفري","مارس","افريل","ماي","جوان","جويلية","اوت","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-YE.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-YE.js
new file mode 100644
index 00000000000..96c03416b14
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ar-YE.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ar-YE","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"ر.ي.‏","NaNSymbol":"ليس برقم","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-لا نهاية","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+لا نهاية","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["٠","١","٢","٣","٤","٥","٦","٧","٨","٩"],"DigitSubstitution":0},"dateTimeFormat":{"AMDesignator":"ص","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":6,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM, yyyy hh:mm:ss tt","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"م","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"IsReadOnly":false,"NativeCalendarName":"التقويم الميلادي (تسمية إنجليزية)‏","AbbreviatedMonthGenitiveNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""],"MonthGenitiveNames":["يناير","فبراير","مارس","ابريل","مايو","يونيو","يوليو","اغسطس","سبتمبر","اكتوبر","نوفمبر","ديسمبر",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/az-AZ-Cyrl.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/az-AZ-Cyrl.js
new file mode 100644
index 00000000000..faa706f30cb
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/az-AZ-Cyrl.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"az-AZ-Cyrl","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"ман.","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d MMMM yyyy H:mm:ss","LongDatePattern":"d MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"],"ShortestDayNames":["Б","Бе","Ча","Ч","Ҹа","Ҹ","Ш"],"DayNames":["Базар","Базар ертәси","Чәршәнбә ахшамы","Чәршәнбә","Ҹүмә ахшамы","Ҹүмә","Шәнбә"],"AbbreviatedMonthNames":["Јан","Фев","Мар","Апр","Мај","Ијун","Ијул","Авг","Сен","Окт","Ноя","Дек",""],"MonthNames":["Јанвар","Феврал","Март","Апрел","Мај","Ијун","Ијул","Август","Сентјабр","Октјабр","Нојабр","Декабр",""],"IsReadOnly":false,"NativeCalendarName":"Гриуориан","AbbreviatedMonthGenitiveNames":["Јан","Фев","Мар","Апр","мая","ијун","ијул","Авг","Сен","Окт","Ноя","Дек",""],"MonthGenitiveNames":["јанвар","феврал","март","апрел","мај","ијун","ијул","август","сентјабр","октјабр","нојабр","декабр",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/az-AZ-Latn.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/az-AZ-Latn.js
new file mode 100644
index 00000000000..f0d70e9dea8
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/az-AZ-Latn.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"az-AZ-Latn","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"man.","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d MMMM yyyy H:mm:ss","LongDatePattern":"d MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["B","Be","Ça","Ç","Ca","C","Ş"],"ShortestDayNames":["B","Be","Ça","Ç","Ca","C","Ş"],"DayNames":["Bazar","Bazar ertəsi","Çərşənbə axşamı","Çərşənbə","Cümə axşamı","Cümə","Şənbə"],"AbbreviatedMonthNames":["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""],"MonthNames":["Yanvar","Fevral","Mart","Aprel","May","İyun","İyul","Avgust","Sentyabr","Oktyabr","Noyabr","Dekabr",""],"IsReadOnly":false,"NativeCalendarName":"Qriqorian","AbbreviatedMonthGenitiveNames":["Yan","Fev","Mar","Apr","May","İyun","İyul","Avg","Sen","Okt","Noy","Dek",""],"MonthGenitiveNames":["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/be-BY.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/be-BY.js
new file mode 100644
index 00000000000..fa27874089f
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/be-BY.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"be-BY","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"р.","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d MMMM yyyy H:mm:ss","LongDatePattern":"d MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["нд","пн","аў","ср","чц","пт","сб"],"ShortestDayNames":["нд","пн","аў","ср","чц","пт","сб"],"DayNames":["нядзеля","панядзелак","аўторак","серада","чацвер","пятніца","субота"],"AbbreviatedMonthNames":["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""],"MonthNames":["Студзень","Люты","Сакавік","Красавік","Май","Чэрвень","Ліпень","Жнівень","Верасень","Кастрычнік","Лістапад","Снежань",""],"IsReadOnly":false,"NativeCalendarName":"григорианский календарь","AbbreviatedMonthGenitiveNames":["Сту","Лют","Сак","Кра","Май","Чэр","Ліп","Жні","Вер","Кас","Ліс","Сне",""],"MonthGenitiveNames":["студзеня","лютага","сакавіка","красавіка","мая","чэрвеня","ліпеня","жніўня","верасня","кастрычніка","лістапада","снежня",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/bg-BG.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/bg-BG.js
new file mode 100644
index 00000000000..3c3f2705ea2
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/bg-BG.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"bg-BG","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"лв","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy \u0027г.\u0027 HH:mm:ss","LongDatePattern":"dd MMMM yyyy \u0027г.\u0027","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.M.yyyy \u0027г.\u0027","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy \u0027г.\u0027","AbbreviatedDayNames":["Нд","Пн","Вт","Ср","Чт","Пт","Сб"],"ShortestDayNames":["не","по","вт","ср","че","пе","съ"],"DayNames":["неделя","понеделник","вторник","сряда","четвъртък","петък","събота"],"AbbreviatedMonthNames":["Януари","Февруари","Март","Април","Май","Юни","Юли","Август","Септември","Октомври","Ноември","Декември",""],"MonthNames":["Януари","Февруари","Март","Април","Май","Юни","Юли","Август","Септември","Октомври","Ноември","Декември",""],"IsReadOnly":false,"NativeCalendarName":"Грегориански календар","AbbreviatedMonthGenitiveNames":["Януари","Февруари","Март","Април","Май","Юни","Юли","Август","Септември","Октомври","Ноември","Декември",""],"MonthGenitiveNames":["Януари","Февруари","Март","Април","Май","Юни","Юли","Август","Септември","Октомври","Ноември","Декември",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ca-ES.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ca-ES.js
new file mode 100644
index 00000000000..66a977a8529
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ca-ES.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ca-ES","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"€","NaNSymbol":"NeuN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinit","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinit","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, d\u0027 / \u0027MMMM\u0027 / \u0027yyyy HH:mm:ss","LongDatePattern":"dddd, d\u0027 / \u0027MMMM\u0027 / \u0027yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 / \u0027yyyy","AbbreviatedDayNames":["dg.","dl.","dt.","dc.","dj.","dv.","ds."],"ShortestDayNames":["dg","dl","dt","dc","dj","dv","ds"],"DayNames":["diumenge","dilluns","dimarts","dimecres","dijous","divendres","dissabte"],"AbbreviatedMonthNames":["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des",""],"MonthNames":["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre",""],"IsReadOnly":false,"NativeCalendarName":"calendari gregorià","AbbreviatedMonthGenitiveNames":["gen","feb","març","abr","maig","juny","jul","ag","set","oct","nov","des",""],"MonthGenitiveNames":["gener","febrer","març","abril","maig","juny","juliol","agost","setembre","octubre","novembre","desembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/cs-CZ.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/cs-CZ.js
new file mode 100644
index 00000000000..d7867919211
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/cs-CZ.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"cs-CZ","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"Kč","NaNSymbol":"Není číslo","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-nekonečno","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"+nekonečno","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"dop.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d. MMMM yyyy H:mm:ss","LongDatePattern":"d. MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"odp.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d.M.yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["ne","po","út","st","čt","pá","so"],"ShortestDayNames":["ne","po","út","st","čt","pá","so"],"DayNames":["neděle","pondělí","úterý","středa","čtvrtek","pátek","sobota"],"AbbreviatedMonthNames":["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""],"MonthNames":["leden","únor","březen","duben","květen","červen","červenec","srpen","září","říjen","listopad","prosinec",""],"IsReadOnly":false,"NativeCalendarName":"gregoriánský kalendář","AbbreviatedMonthGenitiveNames":["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""],"MonthGenitiveNames":["ledna","února","března","dubna","května","června","července","srpna","září","října","listopadu","prosince",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/da-DK.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/da-DK.js
new file mode 100644
index 00000000000..46898af2dd8
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/da-DK.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"da-DK","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"kr","NaNSymbol":"NaN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-INF","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"INF","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"d. MMMM yyyy HH:mm:ss","LongDatePattern":"d. MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"d. MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd-MM-yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["sø","ma","ti","on","to","fr","lø"],"ShortestDayNames":["sø","ma","ti","on","to","fr","lø"],"DayNames":["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],"AbbreviatedMonthNames":["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""],"MonthNames":["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december",""],"IsReadOnly":false,"NativeCalendarName":"Den gregorianske kalender","AbbreviatedMonthGenitiveNames":["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""],"MonthGenitiveNames":["januar","februar","marts","april","maj","juni","juli","august","september","oktober","november","december",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-AT.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-AT.js
new file mode 100644
index 00000000000..24d8dffa93e
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-AT.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"de-AT","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"€","NaNSymbol":"n. def.","CurrencyNegativePattern":9,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-unendlich","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+unendlich","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd. MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, dd. MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["So","Mo","Di","Mi","Do","Fr","Sa"],"ShortestDayNames":["So","Mo","Di","Mi","Do","Fr","Sa"],"DayNames":["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],"AbbreviatedMonthNames":["Jän","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""],"MonthNames":["Jänner","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""],"IsReadOnly":false,"NativeCalendarName":"Gregorianischer Kalender","AbbreviatedMonthGenitiveNames":["Jän","Feb","Mär","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""],"MonthGenitiveNames":["Jänner","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-CH.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-CH.js
new file mode 100644
index 00000000000..5021c6c252a
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-CH.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"de-CH","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":"\u0027","CurrencySymbol":"SFr.","NaNSymbol":"n. def.","CurrencyNegativePattern":2,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-unendlich","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":"\u0027","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+unendlich","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":"\u0027","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"dddd, d. MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, d. MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["So","Mo","Di","Mi","Do","Fr","Sa"],"ShortestDayNames":["So","Mo","Di","Mi","Do","Fr","Sa"],"DayNames":["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],"AbbreviatedMonthNames":["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""],"MonthNames":["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""],"IsReadOnly":false,"NativeCalendarName":"Gregorianischer Kalender","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""],"MonthGenitiveNames":["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-DE.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-DE.js
new file mode 100644
index 00000000000..9a19fef7d53
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-DE.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"de-DE","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"€","NaNSymbol":"n. def.","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-unendlich","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"+unendlich","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"dddd, d. MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, d. MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["So","Mo","Di","Mi","Do","Fr","Sa"],"ShortestDayNames":["So","Mo","Di","Mi","Do","Fr","Sa"],"DayNames":["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],"AbbreviatedMonthNames":["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""],"MonthNames":["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""],"IsReadOnly":false,"NativeCalendarName":"Gregorianischer Kalender","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""],"MonthGenitiveNames":["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-LI.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-LI.js
new file mode 100644
index 00000000000..5fa917dfa30
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-LI.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"de-LI","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":"\u0027","CurrencySymbol":"CHF","NaNSymbol":"n. def.","CurrencyNegativePattern":2,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-unendlich","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":"\u0027","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+unendlich","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":"\u0027","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"dddd, d. MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, d. MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["So","Mo","Di","Mi","Do","Fr","Sa"],"ShortestDayNames":["So","Mo","Di","Mi","Do","Fr","Sa"],"DayNames":["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],"AbbreviatedMonthNames":["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""],"MonthNames":["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""],"IsReadOnly":false,"NativeCalendarName":"Gregorianischer Kalender","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""],"MonthGenitiveNames":["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-LU.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-LU.js
new file mode 100644
index 00000000000..bd597bec091
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/de-LU.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"de-LU","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"€","NaNSymbol":"n. def.","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-unendlich","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"+unendlich","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"dddd, d. MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, d. MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["So","Mo","Di","Mi","Do","Fr","Sa"],"ShortestDayNames":["So","Mo","Di","Mi","Do","Fr","Sa"],"DayNames":["Sonntag","Montag","Dienstag","Mittwoch","Donnerstag","Freitag","Samstag"],"AbbreviatedMonthNames":["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""],"MonthNames":["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""],"IsReadOnly":false,"NativeCalendarName":"Gregorianischer Kalender","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mrz","Apr","Mai","Jun","Jul","Aug","Sep","Okt","Nov","Dez",""],"MonthGenitiveNames":["Januar","Februar","März","April","Mai","Juni","Juli","August","September","Oktober","November","Dezember",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/div-MV.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/div-MV.js
new file mode 100644
index 00000000000..d4463d3a6c1
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/div-MV.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"div-MV","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"ރ.","NaNSymbol":"NaN","CurrencyNegativePattern":10,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"މކ","Calendar":{"MinSupportedDateTime":"\/Date(-42521648400000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":2,"HijriAdjustment":0,"Eras":[1],"TwoDigitYearMax":1451,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dd/MMMM/yyyy HH:mm:ss","LongDatePattern":"dd/MMMM/yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"މފ","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"ShortestDayNames":["أ","ا","ث","أ","خ","ج","س"],"DayNames":["الاحد","الاثنين","الثلاثاء","الاربعاء","الخميس","الجمعة","السبت"],"AbbreviatedMonthNames":["محرم","صفر","ربيع الاول","ربيع الثاني","جمادى الاولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],"MonthNames":["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],"IsReadOnly":false,"NativeCalendarName":"ހިޖްރީ ކަލަންޑަރު","AbbreviatedMonthGenitiveNames":["محرم","صفر","ربيع الاول","ربيع الثاني","جمادى الاولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""],"MonthGenitiveNames":["محرم","صفر","ربيع الأول","ربيع الثاني","جمادى الأولى","جمادى الثانية","رجب","شعبان","رمضان","شوال","ذو القعدة","ذو الحجة",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/el-GR.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/el-GR.js
new file mode 100644
index 00000000000..eecba04c9af
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/el-GR.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"el-GR","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"€","NaNSymbol":"μη αριθμός","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Άπειρο","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Άπειρο","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"πμ","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, d MMMM yyyy h:mm:ss tt","LongDatePattern":"dddd, d MMMM yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"μμ","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d/M/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["Κυρ","Δευ","Τρι","Τετ","Πεμ","Παρ","Σαβ"],"ShortestDayNames":["Κυ","Δε","Τρ","Τε","Πε","Πα","Σά"],"DayNames":["Κυριακή","Δευτέρα","Τρίτη","Τετάρτη","Πέμπτη","Παρασκευή","Σάββατο"],"AbbreviatedMonthNames":["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""],"MonthNames":["Ιανουάριος","Φεβρουάριος","Μάρτιος","Απρίλιος","Μάιος","Ιούνιος","Ιούλιος","Αύγουστος","Σεπτέμβριος","Οκτώβριος","Νοέμβριος","Δεκέμβριος",""],"IsReadOnly":false,"NativeCalendarName":"Γρηγοριανό Ημερολόγιο","AbbreviatedMonthGenitiveNames":["Ιαν","Φεβ","Μαρ","Απρ","Μαϊ","Ιουν","Ιουλ","Αυγ","Σεπ","Οκτ","Νοε","Δεκ",""],"MonthGenitiveNames":["Ιανουαρίου","Φεβρουαρίου","Μαρτίου","Απριλίου","Μαΐου","Ιουνίου","Ιουλίου","Αυγούστου","Σεπτεμβρίου","Οκτωβρίου","Νοεμβρίου","Δεκεμβρίου",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-AU.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-AU.js
new file mode 100644
index 00000000000..a5731287170
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-AU.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"en-AU","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":1,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, d MMMM yyyy h:mm:ss tt","LongDatePattern":"dddd, d MMMM yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d/MM/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-BZ.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-BZ.js
new file mode 100644
index 00000000000..23fd91e0099
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-BZ.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"en-BZ","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3,0],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"BZ$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd MMMM yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd MMMM yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-CA.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-CA.js
new file mode 100644
index 00000000000..d836dd47cb1
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-CA.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"en-CA","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":1,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"MMMM d, yyyy h:mm:ss tt","LongDatePattern":"MMMM d, yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-CB.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-CB.js
new file mode 100644
index 00000000000..9bf6326c6be
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-CB.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"en-CB","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":1,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, MMMM dd, yyyy h:mm:ss tt","LongDatePattern":"dddd, MMMM dd, yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"MM/dd/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-GB.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-GB.js
new file mode 100644
index 00000000000..48c0fb11227
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-GB.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"en-GB","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"£","NaNSymbol":"NaN","CurrencyNegativePattern":1,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy HH:mm:ss","LongDatePattern":"dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-IE.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-IE.js
new file mode 100644
index 00000000000..8c9c8ca67b6
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-IE.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"en-IE","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"€","NaNSymbol":"NaN","CurrencyNegativePattern":1,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy HH:mm:ss","LongDatePattern":"dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-JM.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-JM.js
new file mode 100644
index 00000000000..03d8bf9f171
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-JM.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"en-JM","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"J$","NaNSymbol":"NaN","CurrencyNegativePattern":1,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, MMMM dd, yyyy hh:mm:ss tt","LongDatePattern":"dddd, MMMM dd, yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-NZ.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-NZ.js
new file mode 100644
index 00000000000..adb135d9ebb
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-NZ.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"en-NZ","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":1,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, d MMMM yyyy h:mm:ss tt","LongDatePattern":"dddd, d MMMM yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d/MM/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-PH.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-PH.js
new file mode 100644
index 00000000000..f344e808b38
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-PH.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"en-PH","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"Php","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, MMMM dd, yyyy h:mm:ss tt","LongDatePattern":"dddd, MMMM dd, yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"M/d/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-TT.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-TT.js
new file mode 100644
index 00000000000..e5aa8152e15
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-TT.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"en-TT","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3,0],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"TT$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd MMMM yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd MMMM yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-US.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-US.js
new file mode 100644
index 00000000000..53fe5ea0abb
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-US.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"en-US","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, MMMM dd, yyyy h:mm:ss tt","LongDatePattern":"dddd, MMMM dd, yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"M/d/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-ZA.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-ZA.js
new file mode 100644
index 00000000000..5de4cbfc58b
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-ZA.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"en-ZA","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"R","NaNSymbol":"NaN","CurrencyNegativePattern":2,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy hh:mm:ss tt","LongDatePattern":"dd MMMM yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"yyyy/MM/dd","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-ZW.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-ZW.js
new file mode 100644
index 00000000000..a96d44c4528
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/en-ZW.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"en-ZW","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"Z$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, MMMM dd, yyyy h:mm:ss tt","LongDatePattern":"dddd, MMMM dd, yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"M/d/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-AR.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-AR.js
new file mode 100644
index 00000000000..e611cf4c825
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-AR.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-AR","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"$","NaNSymbol":"NeuN","CurrencyNegativePattern":2,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-BO.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-BO.js
new file mode 100644
index 00000000000..9c203733ab1
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-BO.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-BO","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"$b","NaNSymbol":"NeuN","CurrencyNegativePattern":14,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-CL.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-CL.js
new file mode 100644
index 00000000000..9a6c909fec1
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-CL.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-CL","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"$","NaNSymbol":"NeuN","CurrencyNegativePattern":9,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy H:mm:ss","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd-MM-yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-CO.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-CO.js
new file mode 100644
index 00000000000..3ef3e0cc1ca
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-CO.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-CO","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"$","NaNSymbol":"NeuN","CurrencyNegativePattern":14,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-CR.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-CR.js
new file mode 100644
index 00000000000..d8a59a7343a
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-CR.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-CR","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"₡","NaNSymbol":"NeuN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-DO.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-DO.js
new file mode 100644
index 00000000000..e0bafa16143
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-DO.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-DO","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"RD$","NaNSymbol":"NeuN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-EC.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-EC.js
new file mode 100644
index 00000000000..d154f908e1a
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-EC.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-EC","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"$","NaNSymbol":"NeuN","CurrencyNegativePattern":14,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy H:mm:ss","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-ES.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-ES.js
new file mode 100644
index 00000000000..e90a49a177e
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-ES.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-ES","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"€","NaNSymbol":"NeuN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy H:mm:ss","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-GT.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-GT.js
new file mode 100644
index 00000000000..6f8358bc0de
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-GT.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-GT","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"Q","NaNSymbol":"NeuN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-HN.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-HN.js
new file mode 100644
index 00000000000..e4f664f834a
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-HN.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-HN","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3,0],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"L.","NaNSymbol":"NeuN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-MX.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-MX.js
new file mode 100644
index 00000000000..0c4a229fa4c
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-MX.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-MX","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NeuN","CurrencyNegativePattern":1,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-NI.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-NI.js
new file mode 100644
index 00000000000..5d46b8a2130
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-NI.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-NI","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3,0],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"C$","NaNSymbol":"NeuN","CurrencyNegativePattern":14,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-PA.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-PA.js
new file mode 100644
index 00000000000..101de412579
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-PA.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-PA","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"B/.","NaNSymbol":"NeuN","CurrencyNegativePattern":14,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"MM/dd/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-PE.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-PE.js
new file mode 100644
index 00000000000..f1f1805e0ff
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-PE.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-PE","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"S/.","NaNSymbol":"NeuN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-PR.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-PR.js
new file mode 100644
index 00000000000..0a89befa064
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-PR.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-PR","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3,0],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NeuN","CurrencyNegativePattern":14,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-PY.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-PY.js
new file mode 100644
index 00000000000..9ffef82acb4
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-PY.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-PY","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"Gs","NaNSymbol":"NeuN","CurrencyNegativePattern":14,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-SV.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-SV.js
new file mode 100644
index 00000000000..8f2314fc23c
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-SV.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-SV","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3,0],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NeuN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-UY.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-UY.js
new file mode 100644
index 00000000000..eff5a4df5fe
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-UY.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-UY","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"$U","NaNSymbol":"NeuN","CurrencyNegativePattern":14,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-VE.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-VE.js
new file mode 100644
index 00000000000..b09c8b40305
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/es-VE.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"es-VE","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"Bs","NaNSymbol":"NeuN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy hh:mm:ss tt","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","lun","mar","mié","jue","vie","sáb"],"ShortestDayNames":["do","lu","ma","mi","ju","vi","sá"],"DayNames":["domingo","lunes","martes","miércoles","jueves","viernes","sábado"],"AbbreviatedMonthNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["ene","feb","mar","abr","may","jun","jul","ago","sep","oct","nov","dic",""],"MonthGenitiveNames":["enero","febrero","marzo","abril","mayo","junio","julio","agosto","septiembre","octubre","noviembre","diciembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/et-EE.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/et-EE.js
new file mode 100644
index 00000000000..1834a0dc7e9
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/et-EE.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"et-EE","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"kr","NaNSymbol":"avaldamatu","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"miinuslõpmatus","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"plusslõpmatus","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"EL","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"d. MMMM yyyy\u0027. a.\u0027 H:mm:ss","LongDatePattern":"d. MMMM yyyy\u0027. a.\u0027","LongTimePattern":"H:mm:ss","MonthDayPattern":"d. MMMM","PMDesignator":"PL","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d.MM.yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy\u0027. a.\u0027","AbbreviatedDayNames":["P","E","T","K","N","R","L"],"ShortestDayNames":["P","E","T","K","N","R","L"],"DayNames":["pühapäev","esmaspäev","teisipäev","kolmapäev","neljapäev","reede","laupäev"],"AbbreviatedMonthNames":["jaan","veebr","märts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets",""],"MonthNames":["jaanuar","veebruar","märts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember",""],"IsReadOnly":false,"NativeCalendarName":"Gregoriuse kalender","AbbreviatedMonthGenitiveNames":["jaan","veebr","märts","apr","mai","juuni","juuli","aug","sept","okt","nov","dets",""],"MonthGenitiveNames":["jaanuar","veebruar","märts","aprill","mai","juuni","juuli","august","september","oktoober","november","detsember",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/eu-ES.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/eu-ES.js
new file mode 100644
index 00000000000..863205362af
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/eu-ES.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"eu-ES","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"€","NaNSymbol":"EdZ","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinitu","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinitu","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, yyyy.\u0027eko\u0027 MMMM\u0027k \u0027d HH:mm:ss","LongDatePattern":"dddd, yyyy.\u0027eko\u0027 MMMM\u0027k \u0027d","LongTimePattern":"HH:mm:ss","MonthDayPattern":"MMMM dd","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"yyyy/MM/dd","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"yyyy.\u0027eko\u0027 MMMM","AbbreviatedDayNames":["ig.","al.","as.","az.","og.","or.","lr."],"ShortestDayNames":["ig","al","as","az","og","or","lr"],"DayNames":["igandea","astelehena","asteartea","asteazkena","osteguna","ostirala","larunbata"],"AbbreviatedMonthNames":["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe.",""],"MonthNames":["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua",""],"IsReadOnly":false,"NativeCalendarName":"egutegi gregoriotarra","AbbreviatedMonthGenitiveNames":["urt.","ots.","mar.","api.","mai.","eka.","uzt.","abu.","ira.","urr.","aza.","abe.",""],"MonthGenitiveNames":["urtarrila","otsaila","martxoa","apirila","maiatza","ekaina","uztaila","abuztua","iraila","urria","azaroa","abendua",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fa-IR.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fa-IR.js
new file mode 100644
index 00000000000..19126b5abf3
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fa-IR.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"fa-IR","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":"/","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"ريال","NaNSymbol":"NaN","CurrencyNegativePattern":3,"NumberNegativePattern":3,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["۰","۱","۲","۳","۴","۵","۶","۷","۸","۹"],"DigitSubstitution":0},"dateTimeFormat":{"AMDesignator":"ق.ظ","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":2,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, MMMM dd, yyyy hh:mm:ss tt","LongDatePattern":"dddd, MMMM dd, yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"MMMM dd","PMDesignator":"ب.ظ","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"M/d/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar (English)","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fi-FI.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fi-FI.js
new file mode 100644
index 00000000000..20640ab1f2d
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fi-FI.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"fi-FI","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"€","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-INF","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"INF","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"d. MMMM\u0027ta \u0027yyyy H:mm:ss","LongDatePattern":"d. MMMM\u0027ta \u0027yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"d. MMMM\u0027ta\u0027","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d.M.yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["su","ma","ti","ke","to","pe","la"],"ShortestDayNames":["su","ma","ti","ke","to","pe","la"],"DayNames":["sunnuntai","maanantai","tiistai","keskiviikko","torstai","perjantai","lauantai"],"AbbreviatedMonthNames":["tammi","helmi","maalis","huhti","touko","kesä","heinä","elo","syys","loka","marras","joulu",""],"MonthNames":["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu",""],"IsReadOnly":false,"NativeCalendarName":"gregoriaaninen kalenteri","AbbreviatedMonthGenitiveNames":["tammi","helmi","maalis","huhti","touko","kesä","heinä","elo","syys","loka","marras","joulu",""],"MonthGenitiveNames":["tammikuu","helmikuu","maaliskuu","huhtikuu","toukokuu","kesäkuu","heinäkuu","elokuu","syyskuu","lokakuu","marraskuu","joulukuu",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fo-FO.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fo-FO.js
new file mode 100644
index 00000000000..a85554d0a74
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fo-FO.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"fo-FO","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"kr","NaNSymbol":"NaN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-INF","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"INF","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"d. MMMM yyyy HH.mm.ss","LongDatePattern":"d. MMMM yyyy","LongTimePattern":"HH.mm.ss","MonthDayPattern":"d. MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd-MM-yyyy","ShortTimePattern":"HH.mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":".","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["sun","mán","týs","mik","hós","frí","leyg"],"ShortestDayNames":["su","má","tý","mi","hó","fr","ley"],"DayNames":["sunnudagur","mánadagur","týsdagur","mikudagur","hósdagur","fríggjadagur","leygardagur"],"AbbreviatedMonthNames":["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""],"MonthNames":["januar","februar","mars","apríl","mai","juni","juli","august","september","oktober","november","desember",""],"IsReadOnly":false,"NativeCalendarName":"Gregorianski álmanakkin","AbbreviatedMonthGenitiveNames":["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""],"MonthGenitiveNames":["januar","februar","mars","apríl","mai","juni","juli","august","september","oktober","november","desember",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-BE.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-BE.js
new file mode 100644
index 00000000000..da29e8e8c14
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-BE.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"fr-BE","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"€","NaNSymbol":"Non Numérique","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infini","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+Infini","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd d MMMM yyyy H:mm:ss","LongDatePattern":"dddd d MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d/MM/yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],"ShortestDayNames":["di","lu","ma","me","je","ve","sa"],"DayNames":["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],"AbbreviatedMonthNames":["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""],"MonthNames":["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],"IsReadOnly":false,"NativeCalendarName":"calendrier grégorien","AbbreviatedMonthGenitiveNames":["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""],"MonthGenitiveNames":["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-CA.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-CA.js
new file mode 100644
index 00000000000..47d213a0499
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-CA.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"fr-CA","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"$","NaNSymbol":"Non Numérique","CurrencyNegativePattern":15,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infini","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"+Infini","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"d MMMM yyyy HH:mm:ss","LongDatePattern":"d MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"yyyy-MM-dd","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],"ShortestDayNames":["di","lu","ma","me","je","ve","sa"],"DayNames":["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],"AbbreviatedMonthNames":["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""],"MonthNames":["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],"IsReadOnly":false,"NativeCalendarName":"calendrier grégorien","AbbreviatedMonthGenitiveNames":["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""],"MonthGenitiveNames":["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-CH.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-CH.js
new file mode 100644
index 00000000000..7fbf04b8b9a
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-CH.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"fr-CH","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":"\u0027","CurrencySymbol":"SFr.","NaNSymbol":"Non Numérique","CurrencyNegativePattern":2,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infini","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":"\u0027","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+Infini","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":"\u0027","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"dddd, d. MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, d. MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],"ShortestDayNames":["di","lu","ma","me","je","ve","sa"],"DayNames":["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],"AbbreviatedMonthNames":["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""],"MonthNames":["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],"IsReadOnly":false,"NativeCalendarName":"calendrier grégorien","AbbreviatedMonthGenitiveNames":["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""],"MonthGenitiveNames":["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-FR.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-FR.js
new file mode 100644
index 00000000000..8c6d0215194
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-FR.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"fr-FR","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"€","NaNSymbol":"Non Numérique","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infini","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"+Infini","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd d MMMM yyyy HH:mm:ss","LongDatePattern":"dddd d MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],"ShortestDayNames":["di","lu","ma","me","je","ve","sa"],"DayNames":["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],"AbbreviatedMonthNames":["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""],"MonthNames":["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],"IsReadOnly":false,"NativeCalendarName":"calendrier grégorien","AbbreviatedMonthGenitiveNames":["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""],"MonthGenitiveNames":["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-LU.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-LU.js
new file mode 100644
index 00000000000..e87d47faefb
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-LU.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"fr-LU","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"€","NaNSymbol":"Non Numérique","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infini","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"+Infini","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd d MMMM yyyy HH:mm:ss","LongDatePattern":"dddd d MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],"ShortestDayNames":["di","lu","ma","me","je","ve","sa"],"DayNames":["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],"AbbreviatedMonthNames":["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""],"MonthNames":["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],"IsReadOnly":false,"NativeCalendarName":"calendrier grégorien","AbbreviatedMonthGenitiveNames":["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""],"MonthGenitiveNames":["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-MC.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-MC.js
new file mode 100644
index 00000000000..152db12965a
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/fr-MC.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"fr-MC","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"€","NaNSymbol":"Non Numérique","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infini","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"+Infini","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd d MMMM yyyy HH:mm:ss","LongDatePattern":"dddd d MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["dim.","lun.","mar.","mer.","jeu.","ven.","sam."],"ShortestDayNames":["di","lu","ma","me","je","ve","sa"],"DayNames":["dimanche","lundi","mardi","mercredi","jeudi","vendredi","samedi"],"AbbreviatedMonthNames":["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""],"MonthNames":["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""],"IsReadOnly":false,"NativeCalendarName":"calendrier grégorien","AbbreviatedMonthGenitiveNames":["janv.","févr.","mars","avr.","mai","juin","juil.","août","sept.","oct.","nov.","déc.",""],"MonthGenitiveNames":["janvier","février","mars","avril","mai","juin","juillet","août","septembre","octobre","novembre","décembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/gl-ES.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/gl-ES.js
new file mode 100644
index 00000000000..85388c24101
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/gl-ES.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"gl-ES","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"€","NaNSymbol":"NeuN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"a.m.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy H:mm:ss","LongDatePattern":"dddd, dd\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"p.m.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","luns","mar","mér","xov","ven","sab"],"ShortestDayNames":["do","lu","ma","mé","xo","ve","sa"],"DayNames":["domingo","luns","martes","mércores","xoves","venres","sábado"],"AbbreviatedMonthNames":["xan","feb","mar","abr","maio","xuñ","xull","ago","set","out","nov","dec",""],"MonthNames":["xaneiro","febreiro","marzo","abril","maio","xuño","xullo","agosto","setembro","outubro","novembro","decembro",""],"IsReadOnly":false,"NativeCalendarName":"Calendario Gregoriano","AbbreviatedMonthGenitiveNames":["xan","feb","mar","abr","maio","xuñ","xull","ago","set","out","nov","dec",""],"MonthGenitiveNames":["xaneiro","febreiro","marzo","abril","maio","xuño","xullo","agosto","setembro","outubro","novembro","decembro",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/gu-IN.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/gu-IN.js
new file mode 100644
index 00000000000..4c6a6624a54
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/gu-IN.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"gu-IN","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3,2],"NumberGroupSizes":[3,2],"PercentGroupSizes":[3,2],"CurrencyGroupSeparator":",","CurrencySymbol":"રૂ","NaNSymbol":"NaN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["૦","૧","૨","૩","૪","૫","૬","૭","૮","૯"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"પૂર્વ મધ્યાહ્ન","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy HH:mm:ss","LongDatePattern":"dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"ઉત્તર મધ્યાહ્ન","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd-MM-yy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["રવિ","સોમ","મંગળ","બુધ","ગુરુ","શુક્ર","શનિ"],"ShortestDayNames":["ર","સ","મ","બ","ગ","શ","શ"],"DayNames":["રવિવાર","સોમવાર","મંગળવાર","બુધવાર","ગુરુવાર","શુક્રવાર","શનિવાર"],"AbbreviatedMonthNames":["જાન્યુ","ફેબ્રુ","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટે","ઑક્ટો","નવે","ડિસે",""],"MonthNames":["જાન્યુઆરી","ફેબ્રુઆરી","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટેમ્બર","ઑક્ટ્બર","નવેમ્બર","ડિસેમ્બર",""],"IsReadOnly":false,"NativeCalendarName":"અંગ્રેજી કૅલેન્ડર","AbbreviatedMonthGenitiveNames":["જાન્યુ","ફેબ્રુ","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટે","ઑક્ટો","નવે","ડિસે",""],"MonthGenitiveNames":["જાન્યુઆરી","ફેબ્રુઆરી","માર્ચ","એપ્રિલ","મે","જૂન","જુલાઈ","ઑગસ્ટ","સપ્ટેમ્બર","ઑક્ટ્બર","નવેમ્બર","ડિસેમ્બર",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/he-IL.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/he-IL.js
new file mode 100644
index 00000000000..a383ae37b85
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/he-IL.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"he-IL","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"₪","NaNSymbol":"לא מספר","CurrencyNegativePattern":2,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"אינסוף שלילי","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"אינסוף חיובי","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd dd MMMM yyyy HH:mm:ss","LongDatePattern":"dddd dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["יום א","יום ב","יום ג","יום ד","יום ה","יום ו","שבת"],"ShortestDayNames":["א","ב","ג","ד","ה","ו","ש"],"DayNames":["יום ראשון","יום שני","יום שלישי","יום רביעי","יום חמישי","יום שישי","שבת"],"AbbreviatedMonthNames":["ינו","פבר","מרץ","אפר","מאי","יונ","יול","אוג","ספט","אוק","נוב","דצמ",""],"MonthNames":["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר",""],"IsReadOnly":false,"NativeCalendarName":"לוח שנה גרגוריאני","AbbreviatedMonthGenitiveNames":["ינו","פבר","מרץ","אפר","מאי","יונ","יול","אוג","ספט","אוק","נוב","דצמ",""],"MonthGenitiveNames":["ינואר","פברואר","מרץ","אפריל","מאי","יוני","יולי","אוגוסט","ספטמבר","אוקטובר","נובמבר","דצמבר",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/hi-IN.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/hi-IN.js
new file mode 100644
index 00000000000..bfd62394c83
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/hi-IN.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"hi-IN","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3,2],"NumberGroupSizes":[3,2],"PercentGroupSizes":[3,2],"CurrencyGroupSeparator":",","CurrencySymbol":"रु","NaNSymbol":"NaN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"पूर्वाह्न","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy HH:mm:ss","LongDatePattern":"dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"अपराह्न","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd-MM-yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["रवि.","सोम.","मंगल.","बुध.","गुरु.","शुक्र.","शनि."],"ShortestDayNames":["र","स","म","ब","ग","श","श"],"DayNames":["रविवार","सोमवार","मंगलवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"],"AbbreviatedMonthNames":["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""],"MonthNames":["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""],"IsReadOnly":false,"NativeCalendarName":"अंग्रेज़ी कैलेन्डर","AbbreviatedMonthGenitiveNames":["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""],"MonthGenitiveNames":["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/hr-HR.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/hr-HR.js
new file mode 100644
index 00000000000..bfb896f81dc
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/hr-HR.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"hr-HR","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"kn","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":2,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d. MMMM yyyy H:mm:ss","LongDatePattern":"d. MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"d. MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d.M.yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["ned","pon","uto","sri","čet","pet","sub"],"ShortestDayNames":["ne","po","ut","sr","če","pe","su"],"DayNames":["nedjelja","ponedjeljak","utorak","srijeda","četvrtak","petak","subota"],"AbbreviatedMonthNames":["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""],"MonthNames":["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""],"IsReadOnly":false,"NativeCalendarName":"gregorijanski kalendar","AbbreviatedMonthGenitiveNames":["sij","vlj","ožu","tra","svi","lip","srp","kol","ruj","lis","stu","pro",""],"MonthGenitiveNames":["siječanj","veljača","ožujak","travanj","svibanj","lipanj","srpanj","kolovoz","rujan","listopad","studeni","prosinac",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/hu-HU.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/hu-HU.js
new file mode 100644
index 00000000000..01e5e9d228a
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/hu-HU.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"hu-HU","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"Ft","NaNSymbol":"nem szám","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"negatív végtelen","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"végtelen","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"de.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":". ","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"yyyy. MMMM d. H:mm:ss","LongDatePattern":"yyyy. MMMM d.","LongTimePattern":"H:mm:ss","MonthDayPattern":"MMMM d.","PMDesignator":"du.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"yyyy. MM. dd.","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"yyyy. MMMM","AbbreviatedDayNames":["V","H","K","Sze","Cs","P","Szo"],"ShortestDayNames":["V","H","K","Sze","Cs","P","Szo"],"DayNames":["vasárnap","hétfő","kedd","szerda","csütörtök","péntek","szombat"],"AbbreviatedMonthNames":["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""],"MonthNames":["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""],"IsReadOnly":false,"NativeCalendarName":"Gergely-naptár","AbbreviatedMonthGenitiveNames":["jan.","febr.","márc.","ápr.","máj.","jún.","júl.","aug.","szept.","okt.","nov.","dec.",""],"MonthGenitiveNames":["január","február","március","április","május","június","július","augusztus","szeptember","október","november","december",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/hy-AM.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/hy-AM.js
new file mode 100644
index 00000000000..b02f20b3ae1
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/hy-AM.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"hy-AM","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"դր.","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d MMMM, yyyy H:mm:ss","LongDatePattern":"d MMMM, yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Կիր","Երկ","Երք","Չրք","Հնգ","ՈՒր","Շբթ"],"ShortestDayNames":["Կ","Ե","Ե","Չ","Հ","Ո","Շ"],"DayNames":["Կիրակի","Երկուշաբթի","Երեքշաբթի","Չորեքշաբթի","Հինգշաբթի","ՈՒրբաթ","Շաբաթ"],"AbbreviatedMonthNames":["ՀՆՎ","ՓՏՎ","ՄՐՏ","ԱՊՐ","ՄՅՍ","ՀՆՍ","ՀԼՍ","ՕԳՍ","ՍԵՊ","ՀՈԿ","ՆՈՅ","ԴԵԿ",""],"MonthNames":["Հունվար","Փետրվար","Մարտ","Ապրիլ","Մայիս","Հունիս","Հուլիս","Օգոստոս","Սեպտեմբեր","Հոկտեմբեր","Նոյեմբեր","Դեկտեմբեր",""],"IsReadOnly":false,"NativeCalendarName":"Օրացույց","AbbreviatedMonthGenitiveNames":["ՀՆՎ","ՓՏՎ","ՄՐՏ","ԱՊՐ","ՄՅՍ","ՀՆՍ","ՀԼՍ","ՕԳՍ","ՍԵՊ","ՀՈԿ","ՆՈՅ","ԴԵԿ",""],"MonthGenitiveNames":["Հունվար","Փետրվար","Մարտ","Ապրիլ","Մայիս","Հունիս","Հուլիս","Օգոստոս","Սեպտեմբեր","Հոկտեմբեր","Նոյեմբեր","Դեկտեմբեր",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/id-ID.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/id-ID.js
new file mode 100644
index 00000000000..6b5e97f0460
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/id-ID.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"id-ID","numberFormat":{"CurrencyDecimalDigits":0,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"Rp","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy H:mm:ss","LongDatePattern":"dd MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["Minggu","Sen","Sel","Rabu","Kamis","Jumat","Sabtu"],"ShortestDayNames":["M","S","S","R","K","J","S"],"DayNames":["Minggu","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agust","Sep","Okt","Nop","Des",""],"MonthNames":["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember",""],"IsReadOnly":false,"NativeCalendarName":"kalendar Masehi","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","Mei","Jun","Jul","Agust","Sep","Okt","Nop","Des",""],"MonthGenitiveNames":["Januari","Februari","Maret","April","Mei","Juni","Juli","Agustus","September","Oktober","Nopember","Desember",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/is-IS.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/is-IS.js
new file mode 100644
index 00000000000..b7129bd50cd
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/is-IS.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"is-IS","numberFormat":{"CurrencyDecimalDigits":0,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"kr.","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-INF","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"INF","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"d. MMMM yyyy HH:mm:ss","LongDatePattern":"d. MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"d. MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d.M.yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["sun.","mán.","þri.","mið.","fim.","fös.","lau."],"ShortestDayNames":["su","má","þr","mi","fi","fö","la"],"DayNames":["sunnudagur","mánudagur","þriðjudagur","miðvikudagur","fimmtudagur","föstudagur","laugardagur"],"AbbreviatedMonthNames":["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des.",""],"MonthNames":["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember",""],"IsReadOnly":false,"NativeCalendarName":"gregorískt tímatal","AbbreviatedMonthGenitiveNames":["jan.","feb.","mar.","apr.","maí","jún.","júl.","ágú.","sep.","okt.","nóv.","des.",""],"MonthGenitiveNames":["janúar","febrúar","mars","apríl","maí","júní","júlí","ágúst","september","október","nóvember","desember",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/it-CH.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/it-CH.js
new file mode 100644
index 00000000000..56181249303
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/it-CH.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"it-CH","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":"\u0027","CurrencySymbol":"SFr.","NaNSymbol":"Non un numero reale","CurrencyNegativePattern":2,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":"\u0027","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":"\u0027","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"dddd, d. MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, d. MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"d. MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["dom","lun","mar","mer","gio","ven","sab"],"ShortestDayNames":["do","lu","ma","me","gi","ve","sa"],"DayNames":["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"],"AbbreviatedMonthNames":["gen","feb","mar","apr","mag","gio","lug","ago","set","ott","nov","dic",""],"MonthNames":["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["gen","feb","mar","apr","mag","gio","lug","ago","set","ott","nov","dic",""],"MonthGenitiveNames":["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/it-IT.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/it-IT.js
new file mode 100644
index 00000000000..8bc0ebf7691
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/it-IT.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"it-IT","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"€","NaNSymbol":"Non un numero reale","CurrencyNegativePattern":9,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"dddd d MMMM yyyy H.mm.ss","LongDatePattern":"dddd d MMMM yyyy","LongTimePattern":"H.mm.ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"H.mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":".","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["dom","lun","mar","mer","gio","ven","sab"],"ShortestDayNames":["do","lu","ma","me","gi","ve","sa"],"DayNames":["domenica","lunedì","martedì","mercoledì","giovedì","venerdì","sabato"],"AbbreviatedMonthNames":["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""],"MonthNames":["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""],"IsReadOnly":false,"NativeCalendarName":"calendario gregoriano","AbbreviatedMonthGenitiveNames":["gen","feb","mar","apr","mag","giu","lug","ago","set","ott","nov","dic",""],"MonthGenitiveNames":["gennaio","febbraio","marzo","aprile","maggio","giugno","luglio","agosto","settembre","ottobre","novembre","dicembre",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ja-JP.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ja-JP.js
new file mode 100644
index 00000000000..eb17a5e23a0
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ja-JP.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ja-JP","numberFormat":{"CurrencyDecimalDigits":0,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"¥","NaNSymbol":"NaN (非数値)","CurrencyNegativePattern":1,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-∞","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"+∞","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"午前","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"yyyy\u0027年\u0027M\u0027月\u0027d\u0027日\u0027 H:mm:ss","LongDatePattern":"yyyy\u0027年\u0027M\u0027月\u0027d\u0027日\u0027","LongTimePattern":"H:mm:ss","MonthDayPattern":"M\u0027月\u0027d\u0027日\u0027","PMDesignator":"午後","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"yyyy/MM/dd","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"yyyy\u0027年\u0027M\u0027月\u0027","AbbreviatedDayNames":["日","月","火","水","木","金","土"],"ShortestDayNames":["日","月","火","水","木","金","土"],"DayNames":["日曜日","月曜日","火曜日","水曜日","木曜日","金曜日","土曜日"],"AbbreviatedMonthNames":["1","2","3","4","5","6","7","8","9","10","11","12",""],"MonthNames":["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""],"IsReadOnly":false,"NativeCalendarName":"西暦 (日本語)","AbbreviatedMonthGenitiveNames":["1","2","3","4","5","6","7","8","9","10","11","12",""],"MonthGenitiveNames":["1月","2月","3月","4月","5月","6月","7月","8月","9月","10月","11月","12月",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ka-GE.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ka-GE.js
new file mode 100644
index 00000000000..171f73b4691
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ka-GE.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ka-GE","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"Lari","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"yyyy \u0027წლის\u0027 dd MM, dddd H:mm:ss","LongDatePattern":"yyyy \u0027წლის\u0027 dd MM, dddd","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd MM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"],"ShortestDayNames":["კ","ო","ს","ო","ხ","პ","შ"],"DayNames":["კვირა","ორშაბათი","სამშაბათი","ოთხშაბათი","ხუთშაბათი","პარასკევი","შაბათი"],"AbbreviatedMonthNames":["იან","თებ","მარ","აპრ","მაის","ივნ","ივლ","აგვ","სექ","ოქტ","ნოემ","დეკ",""],"MonthNames":["იანვარი","თებერვალი","მარტი","აპრილი","მაისი","ივნისი","ივლისი","აგვისტო","სექტემბერი","ოქტომბერი","ნოემბერი","დეკემბერი",""],"IsReadOnly":false,"NativeCalendarName":"გრიგორიანული კალენდარი","AbbreviatedMonthGenitiveNames":["იან","თებ","მარ","აპრ","მაის","ივნ","ივლ","აგვ","სექ","ოქტ","ნოემ","დეკ",""],"MonthGenitiveNames":["იანვარი","თებერვალი","მარტი","აპრილი","მაისი","ივნისი","ივლისი","აგვისტო","სექტემბერი","ოქტომბერი","ნოემბერი","დეკემბერი",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/kk-KZ.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/kk-KZ.js
new file mode 100644
index 00000000000..85e3c1bc356
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/kk-KZ.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"kk-KZ","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":"-","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"Т","NaNSymbol":"NaN","CurrencyNegativePattern":1,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d MMMM yyyy \u0027ж.\u0027 H:mm:ss","LongDatePattern":"d MMMM yyyy \u0027ж.\u0027","LongTimePattern":"H:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["Жк","Дс","Сс","Ср","Бс","Жм","Сн"],"ShortestDayNames":["Жк","Дс","Сс","Ср","Бс","Жм","Сн"],"DayNames":["Жексенбі","Дүйсенбі","Сейсенбі","Сәрсенбі","Бейсенбі","Жұма","Сенбі"],"AbbreviatedMonthNames":["Қаң","Ақп","Нау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел",""],"MonthNames":["қаңтар","ақпан","наурыз","сәуір","мамыр","маусым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқсан",""],"IsReadOnly":false,"NativeCalendarName":"григорианкүнтізбек","AbbreviatedMonthGenitiveNames":["Қаң","Ақп","Нау","Сәу","Мам","Мау","Шіл","Там","Қыр","Қаз","Қар","Жел",""],"MonthGenitiveNames":["қаңтар","ақпан","наурыз","сәуір","мамыр","маусым","шілде","тамыз","қыркүйек","қазан","қараша","желтоқсан",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/kn-IN.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/kn-IN.js
new file mode 100644
index 00000000000..a9e26e4bb8f
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/kn-IN.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"kn-IN","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3,2],"NumberGroupSizes":[3,2],"PercentGroupSizes":[3,2],"CurrencyGroupSeparator":",","CurrencySymbol":"ರೂ","NaNSymbol":"NaN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["೦","೧","೨","೩","೪","೫","೬","೭","೮","೯"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"ಪೂರ್ವಾಹ್ನ","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy HH:mm:ss","LongDatePattern":"dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"ಅಪರಾಹ್ನ","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd-MM-yy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["ಭಾನು.","ಸೋಮ.","ಮಂಗಳ.","ಬುಧ.","ಗುರು.","ಶುಕ್ರ.","ಶನಿ."],"ShortestDayNames":["ರ","ಸ","ಮ","ಬ","ಗ","ಶ","ಶ"],"DayNames":["ಭಾನುವಾರ","ಸೋಮವಾರ","ಮಂಗಳವಾರ","ಬುಧವಾರ","ಗುರುವಾರ","ಶುಕ್ರವಾರ","ಶನಿವಾರ"],"AbbreviatedMonthNames":["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""],"MonthNames":["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""],"IsReadOnly":false,"NativeCalendarName":"ಇಂಗ್ಲಿಷ್ ಕ್ಯಾಲೆಂಡರ್","AbbreviatedMonthGenitiveNames":["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""],"MonthGenitiveNames":["ಜನವರಿ","ಫೆಬ್ರವರಿ","ಮಾರ್ಚ್","ಎಪ್ರಿಲ್","ಮೇ","ಜೂನ್","ಜುಲೈ","ಆಗಸ್ಟ್","ಸೆಪ್ಟಂಬರ್","ಅಕ್ಟೋಬರ್","ನವೆಂಬರ್","ಡಿಸೆಂಬರ್",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ko-KR.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ko-KR.js
new file mode 100644
index 00000000000..211cc4089eb
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ko-KR.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ko-KR","numberFormat":{"CurrencyDecimalDigits":0,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"₩","NaNSymbol":"NaN","CurrencyNegativePattern":1,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"오전","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"yyyy\u0027년\u0027 M\u0027월\u0027 d\u0027일\u0027 dddd tt h:mm:ss","LongDatePattern":"yyyy\u0027년\u0027 M\u0027월\u0027 d\u0027일\u0027 dddd","LongTimePattern":"tt h:mm:ss","MonthDayPattern":"M\u0027월\u0027 d\u0027일\u0027","PMDesignator":"오후","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"yyyy-MM-dd","ShortTimePattern":"tt h:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"yyyy\u0027년\u0027 M\u0027월\u0027","AbbreviatedDayNames":["일","월","화","수","목","금","토"],"ShortestDayNames":["일","월","화","수","목","금","토"],"DayNames":["일요일","월요일","화요일","수요일","목요일","금요일","토요일"],"AbbreviatedMonthNames":["1","2","3","4","5","6","7","8","9","10","11","12",""],"MonthNames":["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""],"IsReadOnly":false,"NativeCalendarName":"서기 (한글)","AbbreviatedMonthGenitiveNames":["1","2","3","4","5","6","7","8","9","10","11","12",""],"MonthGenitiveNames":["1월","2월","3월","4월","5월","6월","7월","8월","9월","10월","11월","12월",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/kok-IN.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/kok-IN.js
new file mode 100644
index 00000000000..1c78dd908cc
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/kok-IN.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"kok-IN","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3,2],"NumberGroupSizes":[3,2],"PercentGroupSizes":[3,2],"CurrencyGroupSeparator":",","CurrencySymbol":"रु","NaNSymbol":"NaN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["०","१","२","३","४","५","६","७","८","९"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"म.पू.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy HH:mm:ss","LongDatePattern":"dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"म.नं.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd-MM-yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["आय.","सोम.","मंगळ.","बुध.","बिरे.","सुक्र.","शेन."],"ShortestDayNames":["आ","स","म","ब","ब","स","श"],"DayNames":["आयतार","सोमार","मंगळार","बुधवार","बिरेस्तार","सुक्रार","शेनवार"],"AbbreviatedMonthNames":["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""],"MonthNames":["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""],"IsReadOnly":false,"NativeCalendarName":"इंग्रजी कॅलेन्डर","AbbreviatedMonthGenitiveNames":["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""],"MonthGenitiveNames":["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोवेम्बर","डिसेंबर",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ky-KG.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ky-KG.js
new file mode 100644
index 00000000000..b05bcac95b6
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ky-KG.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ky-KG","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":"-","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"сом","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":0},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d\u0027-\u0027MMMM yyyy\u0027-ж.\u0027 H:mm:ss","LongDatePattern":"d\u0027-\u0027MMMM yyyy\u0027-ж.\u0027","LongTimePattern":"H:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy\u0027-ж.\u0027","AbbreviatedDayNames":["Жш","Дш","Шш","Шр","Бш","Жм","Иш"],"ShortestDayNames":["Жш","Дш","Шш","Шр","Бш","Жм","Иш"],"DayNames":["Жекшемби","Дүйшөмбү","Шейшемби","Шаршемби","Бейшемби","Жума","Ишемби"],"AbbreviatedMonthNames":["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""],"MonthNames":["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""],"IsReadOnly":false,"NativeCalendarName":"григориан календары","AbbreviatedMonthGenitiveNames":["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""],"MonthGenitiveNames":["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/lt-LT.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/lt-LT.js
new file mode 100644
index 00000000000..bb7f80194ed
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/lt-LT.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"lt-LT","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"Lt","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-begalybė","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"begalybė","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"yyyy \u0027m.\u0027 MMMM d \u0027d.\u0027 HH:mm:ss","LongDatePattern":"yyyy \u0027m.\u0027 MMMM d \u0027d.\u0027","LongTimePattern":"HH:mm:ss","MonthDayPattern":"MMMM d \u0027d.\u0027","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"yyyy.MM.dd","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"yyyy \u0027m.\u0027 MMMM","AbbreviatedDayNames":["Sk","Pr","An","Tr","Kt","Pn","Št"],"ShortestDayNames":["S","P","A","T","K","Pn","Š"],"DayNames":["sekmadienis","pirmadienis","antradienis","trečiadienis","ketvirtadienis","penktadienis","šeštadienis"],"AbbreviatedMonthNames":["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""],"MonthNames":["sausis","vasaris","kovas","balandis","gegužė","birželis","liepa","rugpjūtis","rugsėjis","spalis","lapkritis","gruodis",""],"IsReadOnly":false,"NativeCalendarName":"Grigaliaus kalendorius","AbbreviatedMonthGenitiveNames":["Sau","Vas","Kov","Bal","Geg","Bir","Lie","Rgp","Rgs","Spl","Lap","Grd",""],"MonthGenitiveNames":["sausio","vasario","kovo","balandžio","gegužės","birželio","liepos","rugpjūčio","rugsėjo","spalio","lapkričio","gruodžio",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/lv-LV.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/lv-LV.js
new file mode 100644
index 00000000000..0577433149d
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/lv-LV.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"lv-LV","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"Ls","NaNSymbol":"NaN","CurrencyNegativePattern":9,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-bezgalība","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"bezgalība","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"dddd, yyyy\u0027. gada \u0027d. MMMM H:mm:ss","LongDatePattern":"dddd, yyyy\u0027. gada \u0027d. MMMM","LongTimePattern":"H:mm:ss","MonthDayPattern":"d. MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"yyyy.MM.dd.","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"yyyy. MMMM","AbbreviatedDayNames":["Sv","Pr","Ot","Tr","Ce","Pk","Se"],"ShortestDayNames":["Sv","Pr","Ot","Tr","Ce","Pk","Se"],"DayNames":["svētdiena","pirmdiena","otrdiena","trešdiena","ceturtdiena","piektdiena","sestdiena"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","Mai","Jūn","Jūl","Aug","Sep","Okt","Nov","Dec",""],"MonthNames":["janvāris","februāris","marts","aprīlis","maijs","jūnijs","jūlijs","augusts","septembris","oktobris","novembris","decembris",""],"IsReadOnly":false,"NativeCalendarName":"Gregora kalendārs","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","Mai","Jūn","Jūl","Aug","Sep","Okt","Nov","Dec",""],"MonthGenitiveNames":["janvārī","februārī","martā","aprīlī","maijā","jūnijā","jūlijā","augustā","septembrī","oktobrī","novembrī","decembrī",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/mk-MK.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/mk-MK.js
new file mode 100644
index 00000000000..909a998ef10
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/mk-MK.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"mk-MK","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"ден.","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"dddd, dd MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["нед","пон","втр","срд","чет","пет","саб"],"ShortestDayNames":["не","по","вт","ср","че","пе","са"],"DayNames":["недела","понеделник","вторник","среда","четврток","петок","сабота"],"AbbreviatedMonthNames":["јан","фев","мар","апр","мај","јун","јул","авг","сеп","окт","ное","дек",""],"MonthNames":["јануари","февруари","март","април","мај","јуни","јули","август","септември","октомври","ноември","декември",""],"IsReadOnly":false,"NativeCalendarName":"грегоријански календар","AbbreviatedMonthGenitiveNames":["јан","фев","мар","апр","мај","јун","јул","авг","сеп","окт","ное","дек",""],"MonthGenitiveNames":["јануари","февруари","март","април","мај","јуни","јули","август","септември","октомври","ноември","декември",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/mn-MN.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/mn-MN.js
new file mode 100644
index 00000000000..3c917b66a0e
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/mn-MN.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"mn-MN","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"₮","NaNSymbol":"NaN","CurrencyNegativePattern":5,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":1,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":0},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"yyyy \u0027оны\u0027 MMMM d H:mm:ss","LongDatePattern":"yyyy \u0027оны\u0027 MMMM d","LongTimePattern":"H:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"yy.MM.dd","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"yyyy \u0027он\u0027 MMMM","AbbreviatedDayNames":["Ня","Да","Мя","Лх","Пү","Ба","Бя"],"ShortestDayNames":["Ня","Да","Мя","Лх","Пү","Ба","Бя"],"DayNames":["Ням","Даваа","Мягмар","Лхагва","Пүрэв","Баасан","Бямба"],"AbbreviatedMonthNames":["I","II","III","IV","V","VI","VII","VШ","IX","X","XI","XII",""],"MonthNames":["1 дүгээр сар","2 дугаар сар","3 дугаар сар","4 дүгээр сар","5 дугаар сар","6 дугаар сар","7 дугаар сар","8 дугаар сар","9 дүгээр сар","10 дугаар сар","11 дүгээр сар","12 дугаар сар",""],"IsReadOnly":false,"NativeCalendarName":"Грегорийн он тоолол","AbbreviatedMonthGenitiveNames":["I","II","III","IV","V","VI","VII","VШ","IX","X","XI","XII",""],"MonthGenitiveNames":["1 дүгээр сарын","2 дугаар сарын","3 дугаар сарын","4 дүгээр сарын","5 дугаар сарын","6 дугаар сарын","7 дугаар сарын","8 дугаар сарын","9 дүгээр сарын","10 дугаар сарын","11 дүгээр сарын","12 дугаар сарын",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/mr-IN.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/mr-IN.js
new file mode 100644
index 00000000000..b1c248b3732
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/mr-IN.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"mr-IN","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3,2],"NumberGroupSizes":[3,2],"PercentGroupSizes":[3,2],"CurrencyGroupSeparator":",","CurrencySymbol":"रु","NaNSymbol":"NaN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["०","१","२","३","४","५","६","७","८","९"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"म.पू.","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy HH:mm:ss","LongDatePattern":"dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"म.नं.","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd-MM-yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["रवि.","सोम.","मंगळ.","बुध.","गुरु.","शुक्र.","शनि."],"ShortestDayNames":["र","स","म","ब","ग","श","श"],"DayNames":["रविवार","सोमवार","मंगळवार","बुधवार","गुरुवार","शुक्रवार","शनिवार"],"AbbreviatedMonthNames":["जाने.","फेब्रु.","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टें.","ऑक्टो.","नोव्हें.","डिसें.",""],"MonthNames":["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोव्हेंबर","डिसेंबर",""],"IsReadOnly":false,"NativeCalendarName":"इंग्रजी कॅलेन्डर","AbbreviatedMonthGenitiveNames":["जाने.","फेब्रु.","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टें.","ऑक्टो.","नोव्हें.","डिसें.",""],"MonthGenitiveNames":["जानेवारी","फेब्रुवारी","मार्च","एप्रिल","मे","जून","जुलै","ऑगस्ट","सप्टेंबर","ऑक्टोबर","नोव्हेंबर","डिसेंबर",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ms-BN.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ms-BN.js
new file mode 100644
index 00000000000..ab11bb4a39b
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ms-BN.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ms-BN","numberFormat":{"CurrencyDecimalDigits":0,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy H:mm:ss","LongDatePattern":"dd MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"],"ShortestDayNames":["A","I","S","R","K","J","S"],"DayNames":["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],"AbbreviatedMonthNames":["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""],"MonthNames":["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""],"IsReadOnly":false,"NativeCalendarName":"kalendar Masehi","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""],"MonthGenitiveNames":["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ms-MY.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ms-MY.js
new file mode 100644
index 00000000000..2bd0546956b
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ms-MY.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ms-MY","numberFormat":{"CurrencyDecimalDigits":0,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"R","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy H:mm:ss","LongDatePattern":"dd MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["Ahad","Isnin","Sel","Rabu","Khamis","Jumaat","Sabtu"],"ShortestDayNames":["A","I","S","R","K","J","S"],"DayNames":["Ahad","Isnin","Selasa","Rabu","Khamis","Jumaat","Sabtu"],"AbbreviatedMonthNames":["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""],"MonthNames":["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""],"IsReadOnly":false,"NativeCalendarName":"kalendar Masehi","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mac","Apr","Mei","Jun","Jul","Ogos","Sept","Okt","Nov","Dis",""],"MonthGenitiveNames":["Januari","Februari","Mac","April","Mei","Jun","Julai","Ogos","September","Oktober","November","Disember",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/nb-NO.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/nb-NO.js
new file mode 100644
index 00000000000..6e0e3ecf071
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/nb-NO.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"nb-NO","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"kr","NaNSymbol":"NaN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-INF","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"INF","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"d. MMMM yyyy HH:mm:ss","LongDatePattern":"d. MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"d. MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["sø","ma","ti","on","to","fr","lø"],"ShortestDayNames":["sø","ma","ti","on","to","fr","lø"],"DayNames":["søndag","mandag","tirsdag","onsdag","torsdag","fredag","lørdag"],"AbbreviatedMonthNames":["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""],"MonthNames":["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""],"IsReadOnly":false,"NativeCalendarName":"gregoriansk kalender","AbbreviatedMonthGenitiveNames":["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""],"MonthGenitiveNames":["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/nl-BE.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/nl-BE.js
new file mode 100644
index 00000000000..bb4b6773ca7
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/nl-BE.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"nl-BE","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"€","NaNSymbol":"NaN (Niet-een-getal)","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-oneindig","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"oneindig","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd d MMMM yyyy H:mm:ss","LongDatePattern":"dddd d MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d/MM/yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["zo","ma","di","wo","do","vr","za"],"ShortestDayNames":["zo","ma","di","wo","do","vr","za"],"DayNames":["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],"AbbreviatedMonthNames":["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""],"MonthNames":["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""],"IsReadOnly":false,"NativeCalendarName":"Gregoriaanse kalender","AbbreviatedMonthGenitiveNames":["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""],"MonthGenitiveNames":["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/nl-NL.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/nl-NL.js
new file mode 100644
index 00000000000..0b984b486af
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/nl-NL.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"nl-NL","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"€","NaNSymbol":"NaN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"dddd d MMMM yyyy H:mm:ss","LongDatePattern":"dddd d MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d-M-yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["zo","ma","di","wo","do","vr","za"],"ShortestDayNames":["zo","ma","di","wo","do","vr","za"],"DayNames":["zondag","maandag","dinsdag","woensdag","donderdag","vrijdag","zaterdag"],"AbbreviatedMonthNames":["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""],"MonthNames":["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""],"IsReadOnly":false,"NativeCalendarName":"Gregoriaanse kalender","AbbreviatedMonthGenitiveNames":["jan","feb","mrt","apr","mei","jun","jul","aug","sep","okt","nov","dec",""],"MonthGenitiveNames":["januari","februari","maart","april","mei","juni","juli","augustus","september","oktober","november","december",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/nn-NO.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/nn-NO.js
new file mode 100644
index 00000000000..2d639e0b7e6
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/nn-NO.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"nn-NO","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"kr","NaNSymbol":"NaN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-INF","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"INF","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"d. MMMM yyyy HH:mm:ss","LongDatePattern":"d. MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"d. MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["sø","må","ty","on","to","fr","la"],"ShortestDayNames":["sø","må","ty","on","to","fr","la"],"DayNames":["søndag","måndag","tysdag","onsdag","torsdag","fredag","laurdag"],"AbbreviatedMonthNames":["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""],"MonthNames":["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""],"IsReadOnly":false,"NativeCalendarName":"gregoriansk kalender","AbbreviatedMonthGenitiveNames":["jan","feb","mar","apr","mai","jun","jul","aug","sep","okt","nov","des",""],"MonthGenitiveNames":["januar","februar","mars","april","mai","juni","juli","august","september","oktober","november","desember",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/pa-IN.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/pa-IN.js
new file mode 100644
index 00000000000..0954d159f0c
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/pa-IN.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"pa-IN","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3,2],"NumberGroupSizes":[3,2],"PercentGroupSizes":[3,2],"CurrencyGroupSeparator":",","CurrencySymbol":"ਰੁ","NaNSymbol":"NaN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["੦","੧","੨","੩","੪","੫","੬","੭","੮","੯"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"ਸਵੇਰੇ","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy dddd tt hh:mm:ss","LongDatePattern":"dd MMMM yyyy dddd","LongTimePattern":"tt hh:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"ਸ਼ਾਮ","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd-MM-yy","ShortTimePattern":"tt hh:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["ਐਤ.","ਸੋਮ.","ਮੰਗਲ.","ਬੁਧ.","ਵੀਰ.","ਸ਼ੁਕਰ.","ਸ਼ਨੀ."],"ShortestDayNames":["ਐ","ਸ","ਮ","ਬ","ਵ","ਸ਼","ਸ਼"],"DayNames":["ਐਤਵਾਰ","ਸੋਮਵਾਰ","ਮੰਗਲਵਾਰ","ਬੁਧਵਾਰ","ਵੀਰਵਾਰ","ਸ਼ੁੱਕਰਵਾਰ","ਸ਼ਨੀਚਰਵਾਰ"],"AbbreviatedMonthNames":["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""],"MonthNames":["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""],"IsReadOnly":false,"NativeCalendarName":"ਅੰਗ੍ਰੇਜ਼ੀ ਕਲੰਡਰ","AbbreviatedMonthGenitiveNames":["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""],"MonthGenitiveNames":["ਜਨਵਰੀ","ਫ਼ਰਵਰੀ","ਮਾਰਚ","ਅਪ੍ਰੈਲ","ਮਈ","ਜੂਨ","ਜੁਲਾਈ","ਅਗਸਤ","ਸਤੰਬਰ","ਅਕਤੂਬਰ","ਨਵੰਬਰ","ਦਸੰਬਰ",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/pl-PL.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/pl-PL.js
new file mode 100644
index 00000000000..59d89012325
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/pl-PL.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"pl-PL","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"zł","NaNSymbol":"nie jest liczbą","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-nieskończoność","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"+nieskończoność","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"d MMMM yyyy HH:mm:ss","LongDatePattern":"d MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"yyyy-MM-dd","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["N","Pn","Wt","Śr","Cz","Pt","So"],"ShortestDayNames":["N","Pn","Wt","Śr","Cz","Pt","So"],"DayNames":["niedziela","poniedziałek","wtorek","środa","czwartek","piątek","sobota"],"AbbreviatedMonthNames":["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""],"MonthNames":["styczeń","luty","marzec","kwiecień","maj","czerwiec","lipiec","sierpień","wrzesień","październik","listopad","grudzień",""],"IsReadOnly":false,"NativeCalendarName":"Kalendarz gregoriański","AbbreviatedMonthGenitiveNames":["sty","lut","mar","kwi","maj","cze","lip","sie","wrz","paź","lis","gru",""],"MonthGenitiveNames":["stycznia","lutego","marca","kwietnia","maja","czerwca","lipca","sierpnia","września","października","listopada","grudnia",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/pt-BR.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/pt-BR.js
new file mode 100644
index 00000000000..abf68a6ccf3
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/pt-BR.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"pt-BR","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"R$","NaNSymbol":"NaN (Não é um número)","CurrencyNegativePattern":9,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"+Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, d\u0027 de \u0027MMMM\u0027 de \u0027yyyy H:mm:ss","LongDatePattern":"dddd, d\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd\u0027 de \u0027MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d/M/yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","seg","ter","qua","qui","sex","sáb"],"ShortestDayNames":["dom","seg","ter","qua","qui","sex","sáb"],"DayNames":["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"],"AbbreviatedMonthNames":["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez",""],"MonthNames":["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro",""],"IsReadOnly":false,"NativeCalendarName":"Calendário gregoriano","AbbreviatedMonthGenitiveNames":["jan","fev","mar","abr","mai","jun","jul","ago","set","out","nov","dez",""],"MonthGenitiveNames":["janeiro","fevereiro","março","abril","maio","junho","julho","agosto","setembro","outubro","novembro","dezembro",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/pt-PT.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/pt-PT.js
new file mode 100644
index 00000000000..f80b6fdfe86
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/pt-PT.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"pt-PT","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"€","NaNSymbol":"NaN (Não é um número)","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinito","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"+Infinito","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, d\u0027 de \u0027MMMM\u0027 de \u0027yyyy H:mm:ss","LongDatePattern":"dddd, d\u0027 de \u0027MMMM\u0027 de \u0027yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"d/M","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd-MM-yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM\u0027 de \u0027yyyy","AbbreviatedDayNames":["dom","seg","ter","qua","qui","sex","sáb"],"ShortestDayNames":["dom","seg","ter","qua","qui","sex","sáb"],"DayNames":["domingo","segunda-feira","terça-feira","quarta-feira","quinta-feira","sexta-feira","sábado"],"AbbreviatedMonthNames":["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez",""],"MonthNames":["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro",""],"IsReadOnly":false,"NativeCalendarName":"Calendário gregoriano","AbbreviatedMonthGenitiveNames":["Jan","Fev","Mar","Abr","Mai","Jun","Jul","Ago","Set","Out","Nov","Dez",""],"MonthGenitiveNames":["Janeiro","Fevereiro","Março","Abril","Maio","Junho","Julho","Agosto","Setembro","Outubro","Novembro","Dezembro",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ro-RO.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ro-RO.js
new file mode 100644
index 00000000000..50074965b7c
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ro-RO.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ro-RO","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"lei","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d MMMM yyyy HH:mm:ss","LongDatePattern":"d MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["D","L","Ma","Mi","J","V","S"],"ShortestDayNames":["D","L","Ma","Mi","J","V","S"],"DayNames":["duminică","luni","marţi","miercuri","joi","vineri","sâmbătă"],"AbbreviatedMonthNames":["ian.","feb.","mar.","apr.","mai.","iun.","iul.","aug.","sep.","oct.","nov.","dec.",""],"MonthNames":["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie",""],"IsReadOnly":false,"NativeCalendarName":"calendar Gregorian","AbbreviatedMonthGenitiveNames":["ian.","feb.","mar.","apr.","mai.","iun.","iul.","aug.","sep.","oct.","nov.","dec.",""],"MonthGenitiveNames":["ianuarie","februarie","martie","aprilie","mai","iunie","iulie","august","septembrie","octombrie","noiembrie","decembrie",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ru-RU.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ru-RU.js
new file mode 100644
index 00000000000..54c5422c07c
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ru-RU.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ru-RU","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"р.","NaNSymbol":"NaN","CurrencyNegativePattern":5,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-бесконечность","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":1,"PositiveInfinitySymbol":"бесконечность","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d MMMM yyyy \u0027г.\u0027 H:mm:ss","LongDatePattern":"d MMMM yyyy \u0027г.\u0027","LongTimePattern":"H:mm:ss","MonthDayPattern":"MMMM dd","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy \u0027г.\u0027","AbbreviatedDayNames":["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],"ShortestDayNames":["Вс","Пн","Вт","Ср","Чт","Пт","Сб"],"DayNames":["воскресенье","понедельник","вторник","среда","четверг","пятница","суббота"],"AbbreviatedMonthNames":["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""],"MonthNames":["Январь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""],"IsReadOnly":false,"NativeCalendarName":"григорианский календарь","AbbreviatedMonthGenitiveNames":["янв","фев","мар","апр","май","июн","июл","авг","сен","окт","ноя","дек",""],"MonthGenitiveNames":["января","февраля","марта","апреля","мая","июня","июля","августа","сентября","октября","ноября","декабря",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sa-IN.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sa-IN.js
new file mode 100644
index 00000000000..214df5cdfe4
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sa-IN.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"sa-IN","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3,2],"NumberGroupSizes":[3,2],"PercentGroupSizes":[3,2],"CurrencyGroupSeparator":",","CurrencySymbol":"रु","NaNSymbol":"NaN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["०","१","२","३","४","५","६","७","८","९"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"पूर्वाह्न","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy dddd HH:mm:ss","LongDatePattern":"dd MMMM yyyy dddd","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"अपराह्न","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd-MM-yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"],"ShortestDayNames":["र","स","म","ब","ग","श","श"],"DayNames":["रविवासरः","सोमवासरः","मङ्गलवासरः","बुधवासरः","गुरुवासरः","शुक्रवासरः","शनिवासरः"],"AbbreviatedMonthNames":["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""],"MonthNames":["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""],"IsReadOnly":false,"NativeCalendarName":"ख्रिस्ताब्द पञ्जिका","AbbreviatedMonthGenitiveNames":["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""],"MonthGenitiveNames":["जनवरी","फरवरी","मार्च","अप्रैल","मई","जून","जुलाई","अगस्त","सितम्बर","अक्तूबर","नवम्बर","दिसम्बर",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sk-SK.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sk-SK.js
new file mode 100644
index 00000000000..fcc6d32ac7e
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sk-SK.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"sk-SK","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"Sk","NaNSymbol":"Nie je číslo","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-nekonečno","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"+nekonečno","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":". ","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d. MMMM yyyy H:mm:ss","LongDatePattern":"d. MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d. M. yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["ne","po","ut","st","št","pi","so"],"ShortestDayNames":["ne","po","ut","st","št","pi","so"],"DayNames":["nedeľa","pondelok","utorok","streda","štvrtok","piatok","sobota"],"AbbreviatedMonthNames":["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""],"MonthNames":["január","február","marec","apríl","máj","jún","júl","august","september","október","november","december",""],"IsReadOnly":false,"NativeCalendarName":"gregoriánsky kalendár","AbbreviatedMonthGenitiveNames":["I","II","III","IV","V","VI","VII","VIII","IX","X","XI","XII",""],"MonthGenitiveNames":["januára","februára","marca","apríla","mája","júna","júla","augusta","septembra","októbra","novembra","decembra",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sl-SI.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sl-SI.js
new file mode 100644
index 00000000000..e9056a4e67a
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sl-SI.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"sl-SI","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"SIT","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-neskončnost","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"neskončnost","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d. MMMM yyyy H:mm:ss","LongDatePattern":"d. MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"d. MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d.M.yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["ned","pon","tor","sre","čet","pet","sob"],"ShortestDayNames":["ne","po","to","sr","če","pe","so"],"DayNames":["nedelja","ponedeljek","torek","sreda","četrtek","petek","sobota"],"AbbreviatedMonthNames":["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""],"MonthNames":["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december",""],"IsReadOnly":false,"NativeCalendarName":"gregorijanski koledar","AbbreviatedMonthGenitiveNames":["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""],"MonthGenitiveNames":["januar","februar","marec","april","maj","junij","julij","avgust","september","oktober","november","december",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sq-AL.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sq-AL.js
new file mode 100644
index 00000000000..59c47956bcb
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sq-AL.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"sq-AL","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"Lek","NaNSymbol":"NaN","CurrencyNegativePattern":5,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":1,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"PD","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"yyyy-MM-dd h:mm:ss.tt","LongDatePattern":"yyyy-MM-dd","LongTimePattern":"h:mm:ss.tt","MonthDayPattern":"MMMM dd","PMDesignator":"MD","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"yyyy-MM-dd","ShortTimePattern":"h:mm.tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"yyyy-MM","AbbreviatedDayNames":["Die","Hën","Mar","Mër","Enj","Pre","Sht"],"ShortestDayNames":["Di","Hë","Ma","Më","En","Pr","Sh"],"DayNames":["e diel","e hënë","e martë","e mërkurë","e enjte","e premte","e shtunë"],"AbbreviatedMonthNames":["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gsh","Sht","Tet","Nën","Dhj",""],"MonthNames":["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","nëntor","dhjetor",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Shk","Mar","Pri","Maj","Qer","Kor","Gsh","Sht","Tet","Nën","Dhj",""],"MonthGenitiveNames":["janar","shkurt","mars","prill","maj","qershor","korrik","gusht","shtator","tetor","nëntor","dhjetor",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sr-SP-Cyrl.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sr-SP-Cyrl.js
new file mode 100644
index 00000000000..63144d4294b
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sr-SP-Cyrl.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"sr-SP-Cyrl","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"Дин.","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-бесконачност","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"+бесконачност","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d. MMMM yyyy H:mm:ss","LongDatePattern":"d. MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"d. MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d.M.yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["нед","пон","уто","сре","чет","пет","суб"],"ShortestDayNames":["не","по","ут","ср","че","пе","су"],"DayNames":["недеља","понедељак","уторак","среда","четвртак","петак","субота"],"AbbreviatedMonthNames":["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""],"MonthNames":["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""],"IsReadOnly":false,"NativeCalendarName":"грегоријански календар","AbbreviatedMonthGenitiveNames":["јан","феб","мар","апр","мај","јун","јул","авг","сеп","окт","нов","дец",""],"MonthGenitiveNames":["јануар","фебруар","март","април","мај","јун","јул","август","септембар","октобар","новембар","децембар",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sr-SP-Latn.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sr-SP-Latn.js
new file mode 100644
index 00000000000..f3b35e6f94e
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sr-SP-Latn.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"sr-SP-Latn","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"Din.","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-beskonačnost","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"+beskonačnost","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d. MMMM yyyy H:mm:ss","LongDatePattern":"d. MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"d. MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d.M.yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["ned","pon","uto","sre","čet","pet","sub"],"ShortestDayNames":["ne","po","ut","sr","če","pe","su"],"DayNames":["nedelja","ponedeljak","utorak","sreda","četvrtak","petak","subota"],"AbbreviatedMonthNames":["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""],"MonthNames":["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""],"IsReadOnly":false,"NativeCalendarName":"gregorijanski kalendar","AbbreviatedMonthGenitiveNames":["jan","feb","mar","apr","maj","jun","jul","avg","sep","okt","nov","dec",""],"MonthGenitiveNames":["januar","februar","mart","april","maj","jun","jul","avgust","septembar","oktobar","novembar","decembar",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sv-FI.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sv-FI.js
new file mode 100644
index 00000000000..ca1bb58354f
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sv-FI.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"sv-FI","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"€","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-INF","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"INF","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"\u0027den \u0027d MMMM yyyy HH:mm:ss","LongDatePattern":"\u0027den \u0027d MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"\u0027den \u0027d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d.M.yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["sö","må","ti","on","to","fr","lö"],"ShortestDayNames":["sö","må","ti","on","to","fr","lö"],"DayNames":["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"],"AbbreviatedMonthNames":["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""],"MonthNames":["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""],"IsReadOnly":false,"NativeCalendarName":"gregoriansk kalender","AbbreviatedMonthGenitiveNames":["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""],"MonthGenitiveNames":["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sv-SE.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sv-SE.js
new file mode 100644
index 00000000000..fcc9a965c24
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sv-SE.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"sv-SE","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"kr","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-INF","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"INF","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":2,"FullDateTimePattern":"\u0027den \u0027d MMMM yyyy HH:mm:ss","LongDatePattern":"\u0027den \u0027d MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"\u0027den \u0027d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"yyyy-MM-dd","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["sö","må","ti","on","to","fr","lö"],"ShortestDayNames":["sö","må","ti","on","to","fr","lö"],"DayNames":["söndag","måndag","tisdag","onsdag","torsdag","fredag","lördag"],"AbbreviatedMonthNames":["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""],"MonthNames":["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""],"IsReadOnly":false,"NativeCalendarName":"gregoriansk kalender","AbbreviatedMonthGenitiveNames":["jan","feb","mar","apr","maj","jun","jul","aug","sep","okt","nov","dec",""],"MonthGenitiveNames":["januari","februari","mars","april","maj","juni","juli","augusti","september","oktober","november","december",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sw-KE.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sw-KE.js
new file mode 100644
index 00000000000..e02a1dea358
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/sw-KE.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"sw-KE","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"S","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, MMMM dd, yyyy h:mm:ss tt","LongDatePattern":"dddd, MMMM dd, yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"M/d/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["S","M","T","W","T","F","S"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/syr-SY.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/syr-SY.js
new file mode 100644
index 00000000000..ebffa077b14
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/syr-SY.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"syr-SY","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"ل.س.‏","NaNSymbol":"NaN","CurrencyNegativePattern":3,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"ܩ.ܛ","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":6,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM, yyyy hh:mm:ss tt","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"hh:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"ܒ.ܛ","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"hh:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["܏ܐ ܏ܒܫ","܏ܒ ܏ܒܫ","܏ܓ ܏ܒܫ","܏ܕ ܏ܒܫ","܏ܗ ܏ܒܫ","܏ܥܪܘܒ","܏ܫܒ"],"ShortestDayNames":["܏","܏","܏","܏","܏","܏","܏"],"DayNames":["ܚܕ ܒܫܒܐ","ܬܪܝܢ ܒܫܒܐ","ܬܠܬܐ ܒܫܒܐ","ܐܪܒܥܐ ܒܫܒܐ","ܚܡܫܐ ܒܫܒܐ","ܥܪܘܒܬܐ","ܫܒܬܐ"],"AbbreviatedMonthNames":["܏ܟܢ ܏ܒ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","܏ܬܫ ܏ܐ","܏ܬܫ ܏ܒ","܏ܟܢ ܏ܐ",""],"MonthNames":["ܟܢܘܢ ܐܚܪܝ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","ܬܫܪܝ ܩܕܝܡ","ܬܫܪܝ ܐܚܪܝ","ܟܢܘܢ ܩܕܝܡ",""],"IsReadOnly":false,"NativeCalendarName":"ܣܘܪܓܕܐ ܓܪܝܓܘܪܝܐ","AbbreviatedMonthGenitiveNames":["܏ܟܢ ܏ܒ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","܏ܬܫ ܏ܐ","܏ܬܫ ܏ܒ","܏ܟܢ ܏ܐ",""],"MonthGenitiveNames":["ܟܢܘܢ ܐܚܪܝ","ܫܒܛ","ܐܕܪ","ܢܝܣܢ","ܐܝܪ","ܚܙܝܪܢ","ܬܡܘܙ","ܐܒ","ܐܝܠܘܠ","ܬܫܪܝ ܩܕܝܡ","ܬܫܪܝ ܐܚܪܝ","ܟܢܘܢ ܩܕܝܡ",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ta-IN.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ta-IN.js
new file mode 100644
index 00000000000..78d7ac43952
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ta-IN.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ta-IN","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3,2],"NumberGroupSizes":[3,2],"PercentGroupSizes":[3,2],"CurrencyGroupSeparator":",","CurrencySymbol":"ரூ","NaNSymbol":"NaN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"காலை","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy HH:mm:ss","LongDatePattern":"dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"மாலை","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd-MM-yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["ஞா","தி","செ","பு","வி","வெ","ச"],"ShortestDayNames":["ஞ","த","ச","ப","வ","வ","ச"],"DayNames":["ஞாயிறு","திங்கள்","செவ்வாய்","புதன்","வியாழன்","வெள்ளி","சனி"],"AbbreviatedMonthNames":["ஜன.","பெப்.","மார்.","ஏப்.","மே","ஜூன்","ஜூலை","ஆக.","செப்.","அக்.","நவ.","டிச.",""],"MonthNames":["ஜனவரி","பெப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""],"IsReadOnly":false,"NativeCalendarName":"ஆங்கில வருடம்","AbbreviatedMonthGenitiveNames":["ஜன.","பெப்.","மார்.","ஏப்.","மே","ஜூன்","ஜூலை","ஆக.","செப்.","அக்.","நவ.","டிச.",""],"MonthGenitiveNames":["ஜனவரி","பெப்ரவரி","மார்ச்","ஏப்ரல்","மே","ஜூன்","ஜூலை","ஆகஸ்ட்","செப்டம்பர்","அக்டோபர்","நவம்பர்","டிசம்பர்",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/te-IN.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/te-IN.js
new file mode 100644
index 00000000000..aedbfa1b934
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/te-IN.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"te-IN","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3,2],"NumberGroupSizes":[3,2],"PercentGroupSizes":[3,2],"CurrencyGroupSeparator":",","CurrencySymbol":"రూ","NaNSymbol":"NaN","CurrencyNegativePattern":12,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":2,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["౦","౧","౨","౩","౪","౫","౬","౭","౮","౯"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"పూర్వాహ్న","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"-","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy HH:mm:ss","LongDatePattern":"dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"అపరాహ్న","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd-MM-yy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["ఆది.","సోమ.","మంగళ.","బుధ.","గురు.","శుక్ర.","శని."],"ShortestDayNames":["ఆ","స","మ","బ","గ","శ","శ"],"DayNames":["ఆదివారం","సోమవారం","మంగళవారం","బుధవారం","గురువారం","శుక్రవారం","శనివారం"],"AbbreviatedMonthNames":["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""],"MonthNames":["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""],"IsReadOnly":false,"NativeCalendarName":"ఇంగ్లీషు క్యాలండర్","AbbreviatedMonthGenitiveNames":["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""],"MonthGenitiveNames":["జనవరి","ఫిబ్రవరి","మార్చి","ఏప్రిల్","మే","జూన్","జూలై","ఆగస్టు","సెప్టెంబర్","అక్టోబర్","నవంబర్","డిసెంబర్",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/th-TH.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/th-TH.js
new file mode 100644
index 00000000000..578281c1fea
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/th-TH.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"th-TH","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"฿","NaNSymbol":"NaN","CurrencyNegativePattern":1,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["๐","๑","๒","๓","๔","๕","๖","๗","๘","๙"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"Eras":[1],"TwoDigitYearMax":2572,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d MMMM yyyy H:mm:ss","LongDatePattern":"d MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d/M/yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["อา.","จ.","อ.","พ.","พฤ.","ศ.","ส."],"ShortestDayNames":["อ","จ","อ","พ","พ","ศ","ส"],"DayNames":["อาทิตย์","จันทร์","อังคาร","พุธ","พฤหัสบดี","ศุกร์","เสาร์"],"AbbreviatedMonthNames":["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""],"MonthNames":["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""],"IsReadOnly":false,"NativeCalendarName":"พุทธศักราช","AbbreviatedMonthGenitiveNames":["ม.ค.","ก.พ.","มี.ค.","เม.ย.","พ.ค.","มิ.ย.","ก.ค.","ส.ค.","ก.ย.","ต.ค.","พ.ย.","ธ.ค.",""],"MonthGenitiveNames":["มกราคม","กุมภาพันธ์","มีนาคม","เมษายน","พฤษภาคม","มิถุนายน","กรกฎาคม","สิงหาคม","กันยายน","ตุลาคม","พฤศจิกายน","ธันวาคม",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/tr-TR.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/tr-TR.js
new file mode 100644
index 00000000000..8dababc1216
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/tr-TR.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"tr-TR","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"YTL","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":2,"PercentNegativePattern":2,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy dddd HH:mm:ss","LongDatePattern":"dd MMMM yyyy dddd","LongTimePattern":"HH:mm:ss","MonthDayPattern":"dd MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["Paz","Pzt","Sal","Çar","Per","Cum","Cmt"],"ShortestDayNames":["Pz","Pt","Sa","Ça","Pe","Cu","Ct"],"DayNames":["Pazar","Pazartesi","Salı","Çarşamba","Perşembe","Cuma","Cumartesi"],"AbbreviatedMonthNames":["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara",""],"MonthNames":["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık",""],"IsReadOnly":false,"NativeCalendarName":"Gregoryen Takvimi","AbbreviatedMonthGenitiveNames":["Oca","Şub","Mar","Nis","May","Haz","Tem","Ağu","Eyl","Eki","Kas","Ara",""],"MonthGenitiveNames":["Ocak","Şubat","Mart","Nisan","Mayıs","Haziran","Temmuz","Ağustos","Eylül","Ekim","Kasım","Aralık",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/tt-RU.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/tt-RU.js
new file mode 100644
index 00000000000..bd2f0652eb3
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/tt-RU.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"tt-RU","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"р.","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d MMMM yyyy H:mm:ss","LongDatePattern":"d MMMM yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["Якш","Дүш","Сиш","Чәрш","Пәнҗ","Җом","Шим"],"ShortestDayNames":["Якш","Дүш","Сиш","Чәрш","Пәнҗ","Җом","Шим"],"DayNames":["Якшәмбе","Дүшәмбе","Сишәмбе","Чәршәмбе","Пәнҗешәмбе","Җомга","Шимбә"],"AbbreviatedMonthNames":["Гыйнв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""],"MonthNames":["Гыйнварь","Февраль","Март","Апрель","Май","Июнь","Июль","Август","Сентябрь","Октябрь","Ноябрь","Декабрь",""],"IsReadOnly":false,"NativeCalendarName":"Григориан календаре","AbbreviatedMonthGenitiveNames":["Гыйнв","Фев","Мар","Апр","май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""],"MonthGenitiveNames":["гыйнварь","февраль","март","апрель","май","июнь","июль","август","сентябрь","октябрь","ноябрь","декабрь",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/uk-UA.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/uk-UA.js
new file mode 100644
index 00000000000..9d9c1a7e2e0
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/uk-UA.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"uk-UA","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"грн.","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-безмежність","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"безмежність","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"d MMMM yyyy\u0027 р.\u0027 H:mm:ss","LongDatePattern":"d MMMM yyyy\u0027 р.\u0027","LongTimePattern":"H:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy\u0027 р.\u0027","AbbreviatedDayNames":["Нд","Пн","Вт","Ср","Чт","Пт","Сб"],"ShortestDayNames":["Нд","Пн","Вт","Ср","Чт","Пт","Сб"],"DayNames":["неділя","понеділок","вівторок","середа","четвер","п\u0027ятниця","субота"],"AbbreviatedMonthNames":["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","Лис","Гру",""],"MonthNames":["Січень","Лютий","Березень","Квітень","Травень","Червень","Липень","Серпень","Вересень","Жовтень","Листопад","Грудень",""],"IsReadOnly":false,"NativeCalendarName":"Григоріаньский календар","AbbreviatedMonthGenitiveNames":["Січ","Лют","Бер","Кві","Тра","Чер","Лип","Сер","Вер","Жов","Лис","Гру",""],"MonthGenitiveNames":["січня","лютого","березня","квітня","травня","червня","липня","серпня","вересня","жовтня","листопада","грудня",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ur-PK.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ur-PK.js
new file mode 100644
index 00000000000..e54d3703aff
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/ur-PK.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"ur-PK","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"Rs","NaNSymbol":"NaN","CurrencyNegativePattern":3,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["۰","۱","۲","۳","۴","۵","۶","۷","۸","۹"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":1,"FullDateTimePattern":"dd MMMM, yyyy h:mm:ss tt","LongDatePattern":"dd MMMM, yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"],"ShortestDayNames":["ا","پ","م","ب","ج","ج","ه"],"DayNames":["اتوار","پير","منگل","بدھ","جمعرات","جمعه","هفته"],"AbbreviatedMonthNames":["جنورى","فرورى","مارچ","اپريل","مئ","جون","جولاٸ","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""],"MonthNames":["جنورى","فرورى","مارچ","اپريل","مئ","جون","جولاٸ","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""],"IsReadOnly":false,"NativeCalendarName":"عيسوى سال","AbbreviatedMonthGenitiveNames":["جنورى","فرورى","مارچ","اپريل","مئ","جون","جولاٸ","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""],"MonthGenitiveNames":["جنورى","فرورى","مارچ","اپريل","مئ","جون","جولاٸ","اگست","ستمبر","اکتوبر","نومبر","دسمبر",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/uz-UZ-Cyrl.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/uz-UZ-Cyrl.js
new file mode 100644
index 00000000000..78c64e38729
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/uz-UZ-Cyrl.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"uz-UZ-Cyrl","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"сўм","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":".","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"yyyy \u0027йил\u0027 d-MMMM HH:mm:ss","LongDatePattern":"yyyy \u0027йил\u0027 d-MMMM","LongTimePattern":"HH:mm:ss","MonthDayPattern":"d-MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd.MM.yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["якш","дш","сш","чш","пш","ж","ш"],"ShortestDayNames":["якш","дш","сш","чш","пш","ж","ш"],"DayNames":["якшанба","душанба","сешанба","чоршанба","пайшанба","жума","шанба"],"AbbreviatedMonthNames":["Янв","Фев","Мар","Апр","Май","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""],"MonthNames":["Январ","Феврал","Март","Апрел","Май","Июн","Июл","Август","Сентябр","Октябр","Ноябр","Декабр",""],"IsReadOnly":false,"NativeCalendarName":"григорианский календарь","AbbreviatedMonthGenitiveNames":["Янв","Фев","Мар","Апр","мая","Июн","Июл","Авг","Сен","Окт","Ноя","Дек",""],"MonthGenitiveNames":["январ","феврал","март","апрел","май","июн","июл","август","сентябр","октябр","ноябр","декабр",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/uz-UZ-Latn.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/uz-UZ-Latn.js
new file mode 100644
index 00000000000..7d4f3b10959
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/uz-UZ-Latn.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"uz-UZ-Latn","numberFormat":{"CurrencyDecimalDigits":0,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":" ","CurrencySymbol":"su\u0027m","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":" ","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":" ","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"yyyy \u0027yil\u0027 d-MMMM HH:mm:ss","LongDatePattern":"yyyy \u0027yil\u0027 d-MMMM","LongTimePattern":"HH:mm:ss","MonthDayPattern":"d-MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["yak.","dsh.","sesh.","chr.","psh.","jm.","sh."],"ShortestDayNames":["yak","dsh","sesh","chr","psh","jm","sh"],"DayNames":["yakshanba","dushanba","seshanba","chorshanba","payshanba","juma","shanba"],"AbbreviatedMonthNames":["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""],"MonthNames":["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""],"IsReadOnly":false,"NativeCalendarName":"Grigorianski","AbbreviatedMonthGenitiveNames":["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""],"MonthGenitiveNames":["yanvar","fevral","mart","aprel","may","iyun","iyul","avgust","sentyabr","oktyabr","noyabr","dekabr",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/vi-VN.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/vi-VN.js
new file mode 100644
index 00000000000..061a8da76d6
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/vi-VN.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"vi-VN","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":",","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":".","CurrencySymbol":"₫","NaNSymbol":"NaN","CurrencyNegativePattern":8,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":",","NumberGroupSeparator":".","CurrencyPositivePattern":3,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":",","PercentGroupSeparator":".","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"SA","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":1,"CalendarWeekRule":0,"FullDateTimePattern":"dd MMMM yyyy h:mm:ss tt","LongDatePattern":"dd MMMM yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"dd MMMM","PMDesignator":"CH","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"dd/MM/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM yyyy","AbbreviatedDayNames":["CN","Hai","Ba","Tư","Năm","Sáu","Bảy"],"ShortestDayNames":["C","H","B","T","N","S","B"],"DayNames":["Chủ Nhật","Thứ Hai","Thứ Ba","Thứ Tư","Thứ Năm","Thứ Sáu","Thứ Bảy"],"AbbreviatedMonthNames":["Thg1","Thg2","Thg3","Thg4","Thg5","Thg6","Thg7","Thg8","Thg9","Thg10","Thg11","Thg12",""],"MonthNames":["Tháng Giêng","Tháng Hai","Tháng Ba","Tháng Tư","Tháng Năm","Tháng Sáu","Tháng Bảy","Tháng Tám","Tháng Chín","Tháng Mười","Tháng Mười Một","Tháng Mười Hai",""],"IsReadOnly":false,"NativeCalendarName":"Dương Lịch","AbbreviatedMonthGenitiveNames":["Thg1","Thg2","Thg3","Thg4","Thg5","Thg6","Thg7","Thg8","Thg9","Thg10","Thg11","Thg12",""],"MonthGenitiveNames":["Tháng Giêng","Tháng Hai","Tháng Ba","Tháng Tư","Tháng Năm","Tháng Sáu","Tháng Bảy","Tháng Tám","Tháng Chín","Tháng Mười","Tháng Mười Một","Tháng Mười Hai",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-CN.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-CN.js
new file mode 100644
index 00000000000..39d9f644ef0
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-CN.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"zh-CN","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"¥","NaNSymbol":"非数字","CurrencyNegativePattern":2,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"负无穷大","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"正无穷大","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"上午","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"yyyy\u0027年\u0027M\u0027月\u0027d\u0027日\u0027 H:mm:ss","LongDatePattern":"yyyy\u0027年\u0027M\u0027月\u0027d\u0027日\u0027","LongTimePattern":"H:mm:ss","MonthDayPattern":"M\u0027月\u0027d\u0027日\u0027","PMDesignator":"下午","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"yyyy/M/d","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"yyyy\u0027年\u0027M\u0027月\u0027","AbbreviatedDayNames":["日","一","二","三","四","五","六"],"ShortestDayNames":["日","一","二","三","四","五","六"],"DayNames":["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],"AbbreviatedMonthNames":["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],"MonthNames":["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],"IsReadOnly":false,"NativeCalendarName":"公历","AbbreviatedMonthGenitiveNames":["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],"MonthGenitiveNames":["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-HK.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-HK.js
new file mode 100644
index 00000000000..68c9cdfd993
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-HK.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"zh-HK","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"HK$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, d MMMM, yyyy H:mm:ss","LongDatePattern":"dddd, d MMMM, yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d/M/yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"日曆","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-MO.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-MO.js
new file mode 100644
index 00000000000..72e4e771c7b
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-MO.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"zh-MO","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"MOP","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, d MMMM, yyyy H:mm:ss","LongDatePattern":"dddd, d MMMM, yyyy","LongTimePattern":"H:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d/M/yyyy","ShortTimePattern":"H:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],"ShortestDayNames":["日","一","二","三","四","五","六"],"DayNames":["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],"AbbreviatedMonthNames":["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],"MonthNames":["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],"IsReadOnly":false,"NativeCalendarName":"西曆","AbbreviatedMonthGenitiveNames":["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],"MonthGenitiveNames":["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-SG.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-SG.js
new file mode 100644
index 00000000000..8def1daa092
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-SG.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"zh-SG","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, d MMMM, yyyy tt h:mm:ss","LongDatePattern":"dddd, d MMMM, yyyy","LongTimePattern":"tt h:mm:ss","MonthDayPattern":"d MMMM","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"d/M/yyyy","ShortTimePattern":"tt h:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],"ShortestDayNames":["日","一","二","三","四","五","六"],"DayNames":["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],"AbbreviatedMonthNames":["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],"MonthNames":["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],"IsReadOnly":false,"NativeCalendarName":"西历","AbbreviatedMonthGenitiveNames":["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],"MonthGenitiveNames":["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-TW.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-TW.js
new file mode 100644
index 00000000000..1e7d27b4964
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/Globalization/zh-TW.js
@@ -0,0 +1 @@
+var __cultureInfo = '{"name":"zh-TW","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"NT$","NaNSymbol":"不是一個數字","CurrencyNegativePattern":1,"NumberNegativePattern":1,"PercentPositivePattern":1,"PercentNegativePattern":1,"NegativeInfinitySymbol":"負無窮大","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"正無窮大","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"‰","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"上午","Calendar":{"MinSupportedDateTime":"\/Date(-62135568000000)\/","MaxSupportedDateTime":"\/Date(253402300799999)\/","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"yyyy\u0027年\u0027M\u0027月\u0027d\u0027日\u0027 tt hh:mm:ss","LongDatePattern":"yyyy\u0027年\u0027M\u0027月\u0027d\u0027日\u0027","LongTimePattern":"tt hh:mm:ss","MonthDayPattern":"M\u0027月\u0027d\u0027日\u0027","PMDesignator":"下午","RFC1123Pattern":"ddd, dd MMM yyyy HH\u0027:\u0027mm\u0027:\u0027ss \u0027GMT\u0027","ShortDatePattern":"yyyy/M/d","ShortTimePattern":"tt hh:mm","SortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd\u0027T\u0027HH\u0027:\u0027mm\u0027:\u0027ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\u0027-\u0027MM\u0027-\u0027dd HH\u0027:\u0027mm\u0027:\u0027ss\u0027Z\u0027","YearMonthPattern":"yyyy\u0027年\u0027M\u0027月\u0027","AbbreviatedDayNames":["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],"ShortestDayNames":["日","一","二","三","四","五","六"],"DayNames":["星期日","星期一","星期二","星期三","星期四","星期五","星期六"],"AbbreviatedMonthNames":["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],"MonthNames":["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],"IsReadOnly":false,"NativeCalendarName":"西曆 (中文)","AbbreviatedMonthGenitiveNames":["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""],"MonthGenitiveNames":["一月","二月","三月","四月","五月","六月","七月","八月","九月","十月","十一月","十二月",""]}}';
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjax.debug.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjax.debug.js
new file mode 100644
index 00000000000..37718c664ec
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjax.debug.js
@@ -0,0 +1,6632 @@
+//-----------------------------------------------------------------------
+// Copyright (C) Microsoft Corporation. All rights reserved.
+//-----------------------------------------------------------------------
+// MicrosoftAjax.js
+// Microsoft AJAX Framework.
+
+
+Function.__typeName = 'Function';
+Function.__class = true;
+
+Function.createCallback = function Function$createCallback(method, context) {
+ /// <param name="method" type="Function"></param>
+ /// <param name="context" mayBeNull="true"></param>
+ /// <returns type="Function"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "method", type: Function},
+ {name: "context", mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+
+
+ return function() {
+ var l = arguments.length;
+ if (l > 0) {
+ var args = [];
+ for (var i = 0; i < l; i++) {
+ args[i] = arguments[i];
+ }
+ args[l] = context;
+ return method.apply(this, args);
+ }
+ return method.call(this, context);
+ }
+}
+
+Function.createDelegate = function Function$createDelegate(instance, method) {
+ /// <param name="instance" mayBeNull="true"></param>
+ /// <param name="method" type="Function"></param>
+ /// <returns type="Function"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "instance", mayBeNull: true},
+ {name: "method", type: Function}
+ ]);
+ if (e) throw e;
+
+
+
+ return function() {
+ return method.apply(instance, arguments);
+ }
+}
+
+Function.emptyFunction = Function.emptyMethod = function Function$emptyMethod() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+}
+
+Function._validateParams = function Function$_validateParams(params, expectedParams) {
+
+ var e;
+
+ e = Function._validateParameterCount(params, expectedParams);
+ if (e) {
+ e.popStackFrame();
+ return e;
+ }
+
+ for (var i=0; i < params.length; i++) {
+ var expectedParam = expectedParams[Math.min(i, expectedParams.length - 1)];
+
+ var paramName = expectedParam.name;
+ if (expectedParam.parameterArray) {
+ paramName += "[" + (i - expectedParams.length + 1) + "]";
+ }
+
+ e = Function._validateParameter(params[i], expectedParam, paramName);
+ if (e) {
+ e.popStackFrame();
+ return e;
+ }
+ }
+
+
+ return null;
+}
+
+Function._validateParameterCount = function Function$_validateParameterCount(params, expectedParams) {
+ var maxParams = expectedParams.length;
+ var minParams = 0;
+ for (var i=0; i < expectedParams.length; i++) {
+ if (expectedParams[i].parameterArray) {
+ maxParams = Number.MAX_VALUE;
+ }
+ else if (!expectedParams[i].optional) {
+ minParams++;
+ }
+ }
+
+ if (params.length < minParams || params.length > maxParams) {
+ var e = Error.parameterCount();
+ e.popStackFrame();
+ return e;
+ }
+
+ return null;
+}
+
+Function._validateParameter = function Function$_validateParameter(param, expectedParam, paramName) {
+ var e;
+
+ var expectedType = expectedParam.type;
+ var expectedInteger = !!expectedParam.integer;
+ var expectedDomElement = !!expectedParam.domElement;
+ var mayBeNull = !!expectedParam.mayBeNull;
+
+ e = Function._validateParameterType(param, expectedType, expectedInteger, expectedDomElement, mayBeNull, paramName);
+ if (e) {
+ e.popStackFrame();
+ return e;
+ }
+
+ var expectedElementType = expectedParam.elementType;
+ var elementMayBeNull = !!expectedParam.elementMayBeNull;
+ if (expectedType === Array && typeof(param) !== "undefined" && param !== null &&
+ (expectedElementType || !elementMayBeNull)) {
+ var expectedElementInteger = !!expectedParam.elementInteger;
+ var expectedElementDomElement = !!expectedParam.elementDomElement;
+ for (var i=0; i < param.length; i++) {
+ var elem = param[i];
+ e = Function._validateParameterType(elem, expectedElementType,
+ expectedElementInteger, expectedElementDomElement, elementMayBeNull,
+ paramName + "[" + i + "]");
+ if (e) {
+ e.popStackFrame();
+ return e;
+ }
+ }
+ }
+
+ return null;
+}
+
+Function._validateParameterType = function Function$_validateParameterType(param, expectedType, expectedInteger, expectedDomElement, mayBeNull, paramName) {
+ var e;
+
+ if (typeof(param) === "undefined") {
+ if (mayBeNull) {
+ return null;
+ }
+ else {
+ e = Error.argumentUndefined(paramName);
+ e.popStackFrame();
+ return e;
+ }
+ }
+
+ if (param === null) {
+ if (mayBeNull) {
+ return null;
+ }
+ else {
+ e = Error.argumentNull(paramName);
+ e.popStackFrame();
+ return e;
+ }
+ }
+
+ if (expectedType && expectedType.__enum) {
+ if (typeof(param) !== 'number') {
+ e = Error.argumentType(paramName, Object.getType(param), expectedType);
+ e.popStackFrame();
+ return e;
+ }
+ if ((param % 1) === 0) {
+ var values = expectedType.prototype;
+ if (!expectedType.__flags || (param === 0)) {
+ for (var i in values) {
+ if (values[i] === param) return null;
+ }
+ }
+ else {
+ var v = param;
+ for (var i in values) {
+ var vali = values[i];
+ if (vali === 0) continue;
+ if ((vali & param) === vali) {
+ v -= vali;
+ }
+ if (v === 0) return null;
+ }
+ }
+ }
+ e = Error.argumentOutOfRange(paramName, param, String.format(Sys.Res.enumInvalidValue, param, expectedType.getName()));
+ e.popStackFrame();
+ return e;
+ }
+
+ if (expectedDomElement && (param !== window) && (param !== document) &&
+ !(window.HTMLElement && (param instanceof HTMLElement)) &&
+ (typeof(param.nodeName) !== 'string')) {
+
+ e = Error.argument(paramName, Sys.Res.argumentDomElement);
+ e.popStackFrame();
+ return e;
+ }
+
+ if (expectedType && !expectedType.isInstanceOfType(param)) {
+ e = Error.argumentType(paramName, Object.getType(param), expectedType);
+ e.popStackFrame();
+ return e;
+ }
+
+ if (expectedType === Number && expectedInteger) {
+ if ((param % 1) !== 0) {
+ e = Error.argumentOutOfRange(paramName, param, Sys.Res.argumentInteger);
+ e.popStackFrame();
+ return e;
+ }
+ }
+
+ return null;
+}
+Error.__typeName = 'Error';
+Error.__class = true;
+
+Error.create = function Error$create(message, errorInfo) {
+ /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
+ /// <param name="errorInfo" optional="true" mayBeNull="true"></param>
+ /// <returns type="Error"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "message", type: String, mayBeNull: true, optional: true},
+ {name: "errorInfo", mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+
+ var e = new Error(message);
+ e.message = message;
+
+ if (errorInfo) {
+ for (var v in errorInfo) {
+ e[v] = errorInfo[v];
+ }
+ }
+
+ e.popStackFrame();
+ return e;
+}
+
+Error.argument = function Error$argument(paramName, message) {
+ /// <param name="paramName" type="String" optional="true" mayBeNull="true"></param>
+ /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
+ /// <returns></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "paramName", type: String, mayBeNull: true, optional: true},
+ {name: "message", type: String, mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+
+ var displayMessage = "Sys.ArgumentException: " + (message ? message : Sys.Res.argument);
+ if (paramName) {
+ displayMessage += "\n" + String.format(Sys.Res.paramName, paramName);
+ }
+
+ var e = Error.create(displayMessage, { name: "Sys.ArgumentException", paramName: paramName });
+ e.popStackFrame();
+ return e;
+}
+
+Error.argumentNull = function Error$argumentNull(paramName, message) {
+ /// <param name="paramName" type="String" optional="true" mayBeNull="true"></param>
+ /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
+ /// <returns></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "paramName", type: String, mayBeNull: true, optional: true},
+ {name: "message", type: String, mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+
+ var displayMessage = "Sys.ArgumentNullException: " + (message ? message : Sys.Res.argumentNull);
+ if (paramName) {
+ displayMessage += "\n" + String.format(Sys.Res.paramName, paramName);
+ }
+
+ var e = Error.create(displayMessage, { name: "Sys.ArgumentNullException", paramName: paramName });
+ e.popStackFrame();
+ return e;
+}
+
+Error.argumentOutOfRange = function Error$argumentOutOfRange(paramName, actualValue, message) {
+ /// <param name="paramName" type="String" optional="true" mayBeNull="true"></param>
+ /// <param name="actualValue" optional="true" mayBeNull="true"></param>
+ /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
+ /// <returns></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "paramName", type: String, mayBeNull: true, optional: true},
+ {name: "actualValue", mayBeNull: true, optional: true},
+ {name: "message", type: String, mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+
+ var displayMessage = "Sys.ArgumentOutOfRangeException: " + (message ? message : Sys.Res.argumentOutOfRange);
+ if (paramName) {
+ displayMessage += "\n" + String.format(Sys.Res.paramName, paramName);
+ }
+
+ if (typeof(actualValue) !== "undefined" && actualValue !== null) {
+ displayMessage += "\n" + String.format(Sys.Res.actualValue, actualValue);
+ }
+
+ var e = Error.create(displayMessage, {
+ name: "Sys.ArgumentOutOfRangeException",
+ paramName: paramName,
+ actualValue: actualValue
+ });
+ e.popStackFrame();
+ return e;
+}
+
+Error.argumentType = function Error$argumentType(paramName, actualType, expectedType, message) {
+ /// <param name="paramName" type="String" optional="true" mayBeNull="true"></param>
+ /// <param name="actualType" type="Type" optional="true" mayBeNull="true"></param>
+ /// <param name="expectedType" type="Type" optional="true" mayBeNull="true"></param>
+ /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
+ /// <returns></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "paramName", type: String, mayBeNull: true, optional: true},
+ {name: "actualType", type: Type, mayBeNull: true, optional: true},
+ {name: "expectedType", type: Type, mayBeNull: true, optional: true},
+ {name: "message", type: String, mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+
+ var displayMessage = "Sys.ArgumentTypeException: ";
+ if (message) {
+ displayMessage += message;
+ }
+ else if (actualType && expectedType) {
+ displayMessage +=
+ String.format(Sys.Res.argumentTypeWithTypes, actualType.getName(), expectedType.getName());
+ }
+ else {
+ displayMessage += Sys.Res.argumentType;
+ }
+
+ if (paramName) {
+ displayMessage += "\n" + String.format(Sys.Res.paramName, paramName);
+ }
+
+ var e = Error.create(displayMessage, {
+ name: "Sys.ArgumentTypeException",
+ paramName: paramName,
+ actualType: actualType,
+ expectedType: expectedType
+ });
+ e.popStackFrame();
+ return e;
+}
+
+Error.argumentUndefined = function Error$argumentUndefined(paramName, message) {
+ /// <param name="paramName" type="String" optional="true" mayBeNull="true"></param>
+ /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
+ /// <returns></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "paramName", type: String, mayBeNull: true, optional: true},
+ {name: "message", type: String, mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+
+ var displayMessage = "Sys.ArgumentUndefinedException: " + (message ? message : Sys.Res.argumentUndefined);
+ if (paramName) {
+ displayMessage += "\n" + String.format(Sys.Res.paramName, paramName);
+ }
+
+ var e = Error.create(displayMessage, { name: "Sys.ArgumentUndefinedException", paramName: paramName });
+ e.popStackFrame();
+ return e;
+}
+
+Error.format = function Error$format(message) {
+ /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
+ /// <returns></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "message", type: String, mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ var displayMessage = "Sys.FormatException: " + (message ? message : Sys.Res.format);
+ var e = Error.create(displayMessage, {name: 'Sys.FormatException'});
+ e.popStackFrame();
+ return e;
+}
+
+Error.invalidOperation = function Error$invalidOperation(message) {
+ /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
+ /// <returns></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "message", type: String, mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ var displayMessage = "Sys.InvalidOperationException: " + (message ? message : Sys.Res.invalidOperation);
+
+ var e = Error.create(displayMessage, {name: 'Sys.InvalidOperationException'});
+ e.popStackFrame();
+ return e;
+}
+
+Error.notImplemented = function Error$notImplemented(message) {
+ /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
+ /// <returns></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "message", type: String, mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ var displayMessage = "Sys.NotImplementedException: " + (message ? message : Sys.Res.notImplemented);
+
+ var e = Error.create(displayMessage, {name: 'Sys.NotImplementedException'});
+ e.popStackFrame();
+ return e;
+}
+
+Error.parameterCount = function Error$parameterCount(message) {
+ /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
+ /// <returns></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "message", type: String, mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+
+ var displayMessage = "Sys.ParameterCountException: " + (message ? message : Sys.Res.parameterCount);
+ var e = Error.create(displayMessage, {name: 'Sys.ParameterCountException'});
+ e.popStackFrame();
+ return e;
+}
+
+Error.prototype.popStackFrame = function Error$popStackFrame() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+
+
+ if (typeof(this.stack) === "undefined" || this.stack === null ||
+ typeof(this.fileName) === "undefined" || this.fileName === null ||
+ typeof(this.lineNumber) === "undefined" || this.lineNumber === null) {
+ return;
+ }
+
+ var stackFrames = this.stack.split("\n");
+
+ var currentFrame = stackFrames[0];
+ var pattern = this.fileName + ":" + this.lineNumber;
+ while(typeof(currentFrame) !== "undefined" &&
+ currentFrame !== null &&
+ currentFrame.indexOf(pattern) === -1) {
+ stackFrames.shift();
+ currentFrame = stackFrames[0];
+ }
+
+ var nextFrame = stackFrames[1];
+
+ if (typeof(nextFrame) === "undefined" || nextFrame === null) {
+ return;
+ }
+
+ var nextFrameParts = nextFrame.match(/@(.*):(\d+)$/);
+ if (typeof(nextFrameParts) === "undefined" || nextFrameParts === null) {
+ return;
+ }
+
+ this.fileName = nextFrameParts[1];
+
+ this.lineNumber = parseInt(nextFrameParts[2]);
+
+ stackFrames.shift();
+ this.stack = stackFrames.join("\n");
+}
+if (!window) this.window = this;
+
+window.Type = Function;
+
+window.__rootNamespaces = [];
+window.__registeredTypes = {};
+
+Type.__fullyQualifiedIdentifierRegExp = new RegExp("^[^.0-9 \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]([^ \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]*[^. \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\])?$", "i");
+Type.__identifierRegExp = new RegExp("^[^.0-9 \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\][^. \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]*$", "i");
+
+Type.prototype.callBaseMethod = function Type$callBaseMethod(instance, name, baseArguments) {
+ /// <param name="instance"></param>
+ /// <param name="name" type="String"></param>
+ /// <param name="baseArguments" type="Array" optional="true" mayBeNull="true" elementMayBeNull="true"></param>
+ /// <returns></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "instance"},
+ {name: "name", type: String},
+ {name: "baseArguments", type: Array, mayBeNull: true, optional: true, elementMayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ var baseMethod = this.getBaseMethod(instance, name);
+ if (!baseMethod) throw Error.invalidOperation(String.format(Sys.Res.methodNotFound, name));
+ if (!baseArguments) {
+ return baseMethod.apply(instance);
+ }
+ else {
+ return baseMethod.apply(instance, baseArguments);
+ }
+}
+
+Type.prototype.getBaseMethod = function Type$getBaseMethod(instance, name) {
+ /// <param name="instance"></param>
+ /// <param name="name" type="String"></param>
+ /// <returns type="Function" mayBeNull="true"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "instance"},
+ {name: "name", type: String}
+ ]);
+ if (e) throw e;
+
+ if (!this.isInstanceOfType(instance)) throw Error.argumentType('instance', Object.getType(instance), this);
+ var baseType = this.getBaseType();
+ if (baseType) {
+ var baseMethod = baseType.prototype[name];
+ return (baseMethod instanceof Function) ? baseMethod : null;
+ }
+
+ return null;
+}
+
+Type.prototype.getBaseType = function Type$getBaseType() {
+ /// <returns type="Type" mayBeNull="true"></returns>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return (typeof(this.__baseType) === "undefined") ? null : this.__baseType;
+}
+
+Type.prototype.getInterfaces = function Type$getInterfaces() {
+ /// <returns type="Array" elementType="Type" mayBeNull="false" elementMayBeNull="false"></returns>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ var result = [];
+ var type = this;
+ while(type) {
+ var interfaces = type.__interfaces;
+ if (interfaces) {
+ for (var i = 0, l = interfaces.length; i < l; i++) {
+ var interfaceType = interfaces[i];
+ if (!Array.contains(result, interfaceType)) {
+ result[result.length] = interfaceType;
+ }
+ }
+ }
+ type = type.__baseType;
+ }
+ return result;
+}
+
+Type.prototype.getName = function Type$getName() {
+ /// <returns type="String"></returns>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return (typeof(this.__typeName) === "undefined") ? "" : this.__typeName;
+}
+
+Type.prototype.implementsInterface = function Type$implementsInterface(interfaceType) {
+ /// <param name="interfaceType" type="Type"></param>
+ /// <returns type="Boolean"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "interfaceType", type: Type}
+ ]);
+ if (e) throw e;
+
+ this.resolveInheritance();
+
+ var interfaceName = interfaceType.getName();
+ var cache = this.__interfaceCache;
+ if (cache) {
+ var cacheEntry = cache[interfaceName];
+ if (typeof(cacheEntry) !== 'undefined') return cacheEntry;
+ }
+ else {
+ cache = this.__interfaceCache = {};
+ }
+
+ var baseType = this;
+ while (baseType) {
+ var interfaces = baseType.__interfaces;
+ if (interfaces) {
+ if (Array.indexOf(interfaces, interfaceType) !== -1) {
+ return cache[interfaceName] = true;
+ }
+ }
+
+ baseType = baseType.__baseType;
+ }
+
+ return cache[interfaceName] = false;
+}
+
+Type.prototype.inheritsFrom = function Type$inheritsFrom(parentType) {
+ /// <param name="parentType" type="Type"></param>
+ /// <returns type="Boolean"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "parentType", type: Type}
+ ]);
+ if (e) throw e;
+
+ this.resolveInheritance();
+ var baseType = this.__baseType;
+ while (baseType) {
+ if (baseType === parentType) {
+ return true;
+ }
+ baseType = baseType.__baseType;
+ }
+
+ return false;
+}
+
+Type.prototype.initializeBase = function Type$initializeBase(instance, baseArguments) {
+ /// <param name="instance"></param>
+ /// <param name="baseArguments" type="Array" optional="true" mayBeNull="true" elementMayBeNull="true"></param>
+ /// <returns></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "instance"},
+ {name: "baseArguments", type: Array, mayBeNull: true, optional: true, elementMayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ if (!this.isInstanceOfType(instance)) throw Error.argumentType('instance', Object.getType(instance), this);
+
+ this.resolveInheritance();
+ if (this.__baseType) {
+ if (!baseArguments) {
+ this.__baseType.apply(instance);
+ }
+ else {
+ this.__baseType.apply(instance, baseArguments);
+ }
+ }
+
+ return instance;
+}
+
+Type.prototype.isImplementedBy = function Type$isImplementedBy(instance) {
+ /// <param name="instance" mayBeNull="true"></param>
+ /// <returns type="Boolean"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "instance", mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ if (typeof(instance) === "undefined" || instance === null) return false;
+
+ var instanceType = Object.getType(instance);
+ return !!(instanceType.implementsInterface && instanceType.implementsInterface(this));
+}
+
+Type.prototype.isInstanceOfType = function Type$isInstanceOfType(instance) {
+ /// <param name="instance" mayBeNull="true"></param>
+ /// <returns type="Boolean"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "instance", mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ if (typeof(instance) === "undefined" || instance === null) return false;
+
+ if (instance instanceof this) return true;
+
+ var instanceType = Object.getType(instance);
+ return !!(instanceType === this) ||
+ (instanceType.inheritsFrom && instanceType.inheritsFrom(this)) ||
+ (instanceType.implementsInterface && instanceType.implementsInterface(this));
+}
+
+Type.prototype.registerClass = function Type$registerClass(typeName, baseType, interfaceTypes) {
+ /// <param name="typeName" type="String"></param>
+ /// <param name="baseType" type="Type" optional="true" mayBeNull="true"></param>
+ /// <param name="interfaceTypes" parameterArray="true" type="Type"></param>
+ /// <returns type="Type"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "typeName", type: String},
+ {name: "baseType", type: Type, mayBeNull: true, optional: true},
+ {name: "interfaceTypes", type: Type, parameterArray: true}
+ ]);
+ if (e) throw e;
+
+ if (!Type.__fullyQualifiedIdentifierRegExp.test(typeName)) throw Error.argument('typeName', Sys.Res.notATypeName);
+ var parsedName;
+ try {
+ parsedName = eval(typeName);
+ }
+ catch(e) {
+ throw Error.argument('typeName', Sys.Res.argumentTypeName);
+ }
+ if (parsedName !== this) throw Error.argument('typeName', Sys.Res.badTypeName);
+ if (window.__registeredTypes[typeName]) throw Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice, typeName));
+
+ if ((arguments.length > 1) && (typeof(baseType) === 'undefined')) throw Error.argumentUndefined('baseType');
+ if (baseType && !baseType.__class) throw Error.argument('baseType', Sys.Res.baseNotAClass);
+
+ this.prototype.constructor = this;
+ this.__typeName = typeName;
+ this.__class = true;
+ if (baseType) {
+ this.__baseType = baseType;
+ this.__basePrototypePending = true;
+ }
+ if (!window.__classes) window.__classes = {};
+ window.__classes[typeName.toUpperCase()] = this;
+
+ if (interfaceTypes) {
+ this.__interfaces = [];
+ for (var i = 2; i < arguments.length; i++) {
+ var interfaceType = arguments[i];
+ if (!interfaceType.__interface) throw Error.argument('interfaceTypes[' + (i - 2) + ']', Sys.Res.notAnInterface);
+ this.resolveInheritance();
+ for (var methodName in interfaceType.prototype) {
+ var method = interfaceType.prototype[methodName];
+ if (!this.prototype[methodName]) {
+ this.prototype[methodName] = method;
+ }
+ }
+ this.__interfaces.push(interfaceType);
+ }
+ }
+ window.__registeredTypes[typeName] = true;
+
+ return this;
+}
+
+Type.prototype.registerInterface = function Type$registerInterface(typeName) {
+ /// <param name="typeName" type="String"></param>
+ /// <returns type="Type"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "typeName", type: String}
+ ]);
+ if (e) throw e;
+
+ if (!Type.__fullyQualifiedIdentifierRegExp.test(typeName)) throw Error.argument('typeName', Sys.Res.notATypeName);
+ var parsedName;
+ try {
+ parsedName = eval(typeName);
+ }
+ catch(e) {
+ throw Error.argument('typeName', Sys.Res.argumentTypeName);
+ }
+ if (parsedName !== this) throw Error.argument('typeName', Sys.Res.badTypeName);
+ if (window.__registeredTypes[typeName]) throw Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice, typeName));
+ this.prototype.constructor = this;
+ this.__typeName = typeName;
+ this.__interface = true;
+ window.__registeredTypes[typeName] = true;
+
+ return this;
+}
+
+Type.prototype.resolveInheritance = function Type$resolveInheritance() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+
+ if (this.__basePrototypePending) {
+ var baseType = this.__baseType;
+
+ baseType.resolveInheritance();
+
+ for (var memberName in baseType.prototype) {
+ var memberValue = baseType.prototype[memberName];
+ if (!this.prototype[memberName]) {
+ this.prototype[memberName] = memberValue;
+ }
+ }
+ delete this.__basePrototypePending;
+ }
+}
+
+Type.getRootNamespaces = function Type$getRootNamespaces() {
+ /// <returns type="Array"></returns>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return Array.clone(window.__rootNamespaces);
+}
+
+Type.isClass = function Type$isClass(type) {
+ /// <param name="type" mayBeNull="true"></param>
+ /// <returns type="Boolean"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "type", mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ if ((typeof(type) === 'undefined') || (type === null)) return false;
+ return !!type.__class;
+}
+
+Type.isInterface = function Type$isInterface(type) {
+ /// <param name="type" mayBeNull="true"></param>
+ /// <returns type="Boolean"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "type", mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ if ((typeof(type) === 'undefined') || (type === null)) return false;
+ return !!type.__interface;
+}
+
+Type.isNamespace = function Type$isNamespace(object) {
+ /// <param name="object" mayBeNull="true"></param>
+ /// <returns type="Boolean"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "object", mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ if ((typeof(object) === 'undefined') || (object === null)) return false;
+ return !!object.__namespace;
+}
+
+Type.parse = function Type$parse(typeName, ns) {
+ /// <param name="typeName" type="String" mayBeNull="true"></param>
+ /// <param name="ns" optional="true" mayBeNull="true"></param>
+ /// <returns type="Type" mayBeNull="true"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "typeName", type: String, mayBeNull: true},
+ {name: "ns", mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ var fn;
+ if (ns) {
+ if (!window.__classes) return null;
+ fn = window.__classes[ns.getName().toUpperCase() + '.' + typeName.toUpperCase()];
+ return fn || null;
+ }
+ if (!typeName) return null;
+ if (!Type.__htClasses) {
+ Type.__htClasses = {};
+ }
+ fn = Type.__htClasses[typeName];
+ if (!fn) {
+ fn = eval(typeName);
+ if (typeof(fn) !== 'function') throw Error.argument('typeName', Sys.Res.notATypeName);
+ Type.__htClasses[typeName] = fn;
+ }
+ return fn;
+}
+
+Type.registerNamespace = function Type$registerNamespace(namespacePath) {
+ /// <param name="namespacePath" type="String"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "namespacePath", type: String}
+ ]);
+ if (e) throw e;
+
+ if (!Type.__fullyQualifiedIdentifierRegExp.test(namespacePath)) throw Error.argument('namespacePath', Sys.Res.invalidNameSpace);
+ var rootObject = window;
+ var namespaceParts = namespacePath.split('.');
+
+ for (var i = 0; i < namespaceParts.length; i++) {
+ var currentPart = namespaceParts[i];
+ var ns = rootObject[currentPart];
+ if (ns && !ns.__namespace) {
+ throw Error.invalidOperation(String.format(Sys.Res.namespaceContainsObject, namespaceParts.splice(0, i + 1).join('.')));
+ }
+ if (!ns) {
+ ns = rootObject[currentPart] = {};
+ if (i === 0) {
+ window.__rootNamespaces[window.__rootNamespaces.length] = ns;
+ }
+ ns.__namespace = true;
+ ns.__typeName = namespaceParts.slice(0, i + 1).join('.');
+ var parsedName;
+ try {
+ parsedName = eval(ns.__typeName);
+ }
+ catch(e) {
+ parsedName = null;
+ }
+ if (parsedName !== ns) {
+ delete rootObject[currentPart];
+ throw Error.argument('namespacePath', Sys.Res.invalidNameSpace);
+ }
+ ns.getName = function ns$getName() {return this.__typeName;}
+ }
+ rootObject = ns;
+ }
+}
+Object.__typeName = 'Object';
+Object.__class = true;
+
+Object.getType = function Object$getType(instance) {
+ /// <param name="instance"></param>
+ /// <returns type="Type"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "instance"}
+ ]);
+ if (e) throw e;
+
+ var ctor = instance.constructor;
+ if (!ctor || (typeof(ctor) !== "function") || !ctor.__typeName || (ctor.__typeName === 'Object')) {
+ return Object;
+ }
+ return ctor;
+}
+
+Object.getTypeName = function Object$getTypeName(instance) {
+ /// <param name="instance"></param>
+ /// <returns type="String"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "instance"}
+ ]);
+ if (e) throw e;
+
+ return Object.getType(instance).getName();
+}
+Boolean.__typeName = 'Boolean';
+Boolean.__class = true;
+
+Boolean.parse = function Boolean$parse(value) {
+ /// <param name="value" type="String"></param>
+ /// <returns type="Boolean"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "value", type: String}
+ ]);
+ if (e) throw e;
+
+ var v = value.trim().toLowerCase();
+ if (v === 'false') return false;
+ if (v === 'true') return true;
+ throw Error.argumentOutOfRange('value', value, Sys.Res.boolTrueOrFalse);
+}
+Date.__typeName = 'Date';
+Date.__class = true;
+
+Date._appendPreOrPostMatch = function Date$_appendPreOrPostMatch(preMatch, strBuilder) {
+ var quoteCount = 0;
+ var escaped = false;
+ for (var i = 0, il = preMatch.length; i < il; i++) {
+ var c = preMatch.charAt(i);
+ switch (c) {
+ case '\'':
+ if (escaped) strBuilder.append("'");
+ else quoteCount++;
+ escaped = false;
+ break;
+ case '\\':
+ if (escaped) strBuilder.append("\\");
+ escaped = !escaped;
+ break;
+ default:
+ strBuilder.append(c);
+ escaped = false;
+ break;
+ }
+ }
+ return quoteCount;
+}
+
+Date._expandFormat = function Date$_expandFormat(dtf, format) {
+ if (!format) {
+ format = "F";
+ }
+ if (format.length === 1) {
+ switch (format) {
+ case "d":
+ return dtf.ShortDatePattern;
+ case "D":
+ return dtf.LongDatePattern;
+ case "t":
+ return dtf.ShortTimePattern;
+ case "T":
+ return dtf.LongTimePattern;
+ case "F":
+ return dtf.FullDateTimePattern;
+ case "M": case "m":
+ return dtf.MonthDayPattern;
+ case "s":
+ return dtf.SortableDateTimePattern;
+ case "Y": case "y":
+ return dtf.YearMonthPattern;
+ default:
+ throw Error.format(Sys.Res.formatInvalidString);
+ }
+ }
+ return format;
+}
+
+Date._expandYear = function Date$_expandYear(dtf, year) {
+ if (year < 100) {
+ var curr = new Date().getFullYear();
+ year += curr - (curr % 100);
+ if (year > dtf.Calendar.TwoDigitYearMax) {
+ return year - 100;
+ }
+ }
+ return year;
+}
+
+Date._getParseRegExp = function Date$_getParseRegExp(dtf, format) {
+ if (!dtf._parseRegExp) {
+ dtf._parseRegExp = {};
+ }
+ else if (dtf._parseRegExp[format]) {
+ return dtf._parseRegExp[format];
+ }
+
+ var expFormat = Date._expandFormat(dtf, format);
+ expFormat = expFormat.replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g, "\\\\$1");
+
+ var regexp = new Sys.StringBuilder("^");
+ var groups = [];
+ var index = 0;
+ var quoteCount = 0;
+ var tokenRegExp = Date._getTokenRegExp();
+ var match;
+
+ while ((match = tokenRegExp.exec(expFormat)) !== null) {
+ var preMatch = expFormat.slice(index, match.index);
+ index = tokenRegExp.lastIndex;
+
+ quoteCount += Date._appendPreOrPostMatch(preMatch, regexp);
+ if ((quoteCount%2) === 1) {
+ regexp.append(match[0]);
+ continue;
+ }
+
+ switch (match[0]) {
+ case 'dddd': case 'ddd':
+ case 'MMMM': case 'MMM':
+ regexp.append("(\\D+)");
+ break;
+ case 'tt': case 't':
+ regexp.append("(\\D*)");
+ break;
+ case 'yyyy':
+ regexp.append("(\\d{4})");
+ break;
+ case 'fff':
+ regexp.append("(\\d{3})");
+ break;
+ case 'ff':
+ regexp.append("(\\d{2})");
+ break;
+ case 'f':
+ regexp.append("(\\d)");
+ break;
+ case 'dd': case 'd':
+ case 'MM': case 'M':
+ case 'yy': case 'y':
+ case 'HH': case 'H':
+ case 'hh': case 'h':
+ case 'mm': case 'm':
+ case 'ss': case 's':
+ regexp.append("(\\d\\d?)");
+ break;
+ case 'zzz':
+ regexp.append("([+-]?\\d\\d?:\\d{2})");
+ break;
+ case 'zz': case 'z':
+ regexp.append("([+-]?\\d\\d?)");
+ break;
+ }
+ Array.add(groups, match[0]);
+ }
+ Date._appendPreOrPostMatch(expFormat.slice(index), regexp);
+ regexp.append("$");
+ var regexpStr = regexp.toString().replace(/\s+/g, "\\s+");
+ var parseRegExp = {'regExp': regexpStr, 'groups': groups};
+ dtf._parseRegExp[format] = parseRegExp;
+ return parseRegExp;
+}
+
+Date._getTokenRegExp = function Date$_getTokenRegExp() {
+ return /dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z/g;
+}
+
+Date.parseLocale = function Date$parseLocale(value, formats) {
+ /// <param name="value" type="String"></param>
+ /// <param name="formats" parameterArray="true" optional="true" mayBeNull="true"></param>
+ /// <returns type="Date"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "value", type: String},
+ {name: "formats", mayBeNull: true, optional: true, parameterArray: true}
+ ]);
+ if (e) throw e;
+
+ return Date._parse(value, Sys.CultureInfo.CurrentCulture, arguments);
+}
+
+Date.parseInvariant = function Date$parseInvariant(value, formats) {
+ /// <param name="value" type="String"></param>
+ /// <param name="formats" parameterArray="true" optional="true" mayBeNull="true"></param>
+ /// <returns type="Date"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "value", type: String},
+ {name: "formats", mayBeNull: true, optional: true, parameterArray: true}
+ ]);
+ if (e) throw e;
+
+ return Date._parse(value, Sys.CultureInfo.InvariantCulture, arguments);
+}
+
+Date._parse = function Date$_parse(value, cultureInfo, args) {
+ var custom = false;
+ for (var i = 1, il = args.length; i < il; i++) {
+ var format = args[i];
+ if (format) {
+ custom = true;
+ var date = Date._parseExact(value, format, cultureInfo);
+ if (date) return date;
+ }
+ }
+ if (! custom) {
+ var formats = cultureInfo._getDateTimeFormats();
+ for (var i = 0, il = formats.length; i < il; i++) {
+ var date = Date._parseExact(value, formats[i], cultureInfo);
+ if (date) return date;
+ }
+ }
+ return null;
+}
+
+Date._parseExact = function Date$_parseExact(value, format, cultureInfo) {
+ value = value.trim();
+ var dtf = cultureInfo.dateTimeFormat;
+
+ var parseInfo = Date._getParseRegExp(dtf, format);
+ var match = new RegExp(parseInfo.regExp).exec(value);
+ if (match !== null) {
+ var groups = parseInfo.groups;
+ var year = null, month = null, date = null, weekDay = null;
+ var hour = 0, min = 0, sec = 0, msec = 0, tzMinOffset = null;
+ var pmHour = false;
+ for (var j = 0, jl = groups.length; j < jl; j++) {
+ var matchGroup = match[j+1];
+ if (matchGroup) {
+ switch (groups[j]) {
+ case 'dd': case 'd':
+ date = Date._parseInt(matchGroup);
+ if ((date < 1) || (date > 31)) return null;
+ break;
+ case 'MMMM':
+ month = cultureInfo._getMonthIndex(matchGroup);
+ if ((month < 0) || (month > 11)) return null;
+ break;
+ case 'MMM':
+ month = cultureInfo._getAbbrMonthIndex(matchGroup);
+ if ((month < 0) || (month > 11)) return null;
+ break;
+ case 'M': case 'MM':
+ var month = Date._parseInt(matchGroup) - 1;
+ if ((month < 0) || (month > 11)) return null;
+ break;
+ case 'y': case 'yy':
+ year = Date._expandYear(dtf,Date._parseInt(matchGroup));
+ if ((year < 0) || (year > 9999)) return null;
+ break;
+ case 'yyyy':
+ year = Date._parseInt(matchGroup);
+ if ((year < 0) || (year > 9999)) return null;
+ break;
+ case 'h': case 'hh':
+ hour = Date._parseInt(matchGroup);
+ if (hour === 12) hour = 0;
+ if ((hour < 0) || (hour > 11)) return null;
+ break;
+ case 'H': case 'HH':
+ hour = Date._parseInt(matchGroup);
+ if ((hour < 0) || (hour > 23)) return null;
+ break;
+ case 'm': case 'mm':
+ min = Date._parseInt(matchGroup);
+ if ((min < 0) || (min > 59)) return null;
+ break;
+ case 's': case 'ss':
+ sec = Date._parseInt(matchGroup);
+ if ((sec < 0) || (sec > 59)) return null;
+ break;
+ case 'tt': case 't':
+ var upperToken = matchGroup.toUpperCase();
+ pmHour = (upperToken === dtf.PMDesignator.toUpperCase());
+ if (!pmHour && (upperToken !== dtf.AMDesignator.toUpperCase())) return null;
+ break;
+ case 'f':
+ msec = Date._parseInt(matchGroup) * 100;
+ if ((msec < 0) || (msec > 999)) return null;
+ break;
+ case 'ff':
+ msec = Date._parseInt(matchGroup) * 10;
+ if ((msec < 0) || (msec > 999)) return null;
+ break;
+ case 'fff':
+ msec = Date._parseInt(matchGroup);
+ if ((msec < 0) || (msec > 999)) return null;
+ break;
+ case 'dddd':
+ weekDay = cultureInfo._getDayIndex(matchGroup);
+ if ((weekDay < 0) || (weekDay > 6)) return null;
+ break;
+ case 'ddd':
+ weekDay = cultureInfo._getAbbrDayIndex(matchGroup);
+ if ((weekDay < 0) || (weekDay > 6)) return null;
+ break;
+ case 'zzz':
+ var offsets = matchGroup.split(/:/);
+ if (offsets.length !== 2) return null;
+ var hourOffset = Date._parseInt(offsets[0]);
+ if ((hourOffset < -12) || (hourOffset > 13)) return null;
+ var minOffset = Date._parseInt(offsets[1]);
+ if ((minOffset < 0) || (minOffset > 59)) return null;
+ tzMinOffset = (hourOffset * 60) + (matchGroup.startsWith('-')? -minOffset : minOffset);
+ break;
+ case 'z': case 'zz':
+ var hourOffset = Date._parseInt(matchGroup);
+ if ((hourOffset < -12) || (hourOffset > 13)) return null;
+ tzMinOffset = hourOffset * 60;
+ break;
+ }
+ }
+ }
+ var result = new Date();
+ if (year === null) {
+ year = result.getFullYear();
+ }
+ if (month === null) {
+ month = result.getMonth();
+ }
+ if (date === null) {
+ date = result.getDate();
+ }
+ result.setFullYear(year, month, date);
+ if (result.getDate() !== date) return null;
+ if ((weekDay !== null) && (result.getDay() !== weekDay)) {
+ return null;
+ }
+ if (pmHour && (hour < 12)) {
+ hour += 12;
+ }
+ result.setHours(hour, min, sec, msec);
+ if (tzMinOffset !== null) {
+ var adjustedMin = result.getMinutes() - (tzMinOffset + result.getTimezoneOffset());
+ result.setHours(result.getHours() + parseInt(adjustedMin/60), adjustedMin%60);
+ }
+ return result;
+ }
+}
+
+Date._parseInt = function Date$_parseInt(value) {
+ return parseInt(value.replace(/^[\s0]+(\d+)$/,"$1"));
+}
+
+Date.prototype.format = function Date$format(format) {
+ /// <param name="format" type="String"></param>
+ /// <returns type="String"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "format", type: String}
+ ]);
+ if (e) throw e;
+
+ return this._toFormattedString(format, Sys.CultureInfo.InvariantCulture);
+}
+
+Date.prototype.localeFormat = function Date$localeFormat(format) {
+ /// <param name="format" type="String"></param>
+ /// <returns type="String"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "format", type: String}
+ ]);
+ if (e) throw e;
+
+ return this._toFormattedString(format, Sys.CultureInfo.CurrentCulture);
+}
+
+Date.prototype._toFormattedString = function Date$_toFormattedString(format, cultureInfo) {
+ if (!format || (format.length === 0) || (format === 'i')) {
+ if (cultureInfo && (cultureInfo.name.length > 0)) {
+ return this.toLocaleString();
+ }
+ else {
+ return this.toString();
+ }
+ }
+
+ var dtf = cultureInfo.dateTimeFormat;
+ format = Date._expandFormat(dtf, format);
+
+ var ret = new Sys.StringBuilder();
+ var hour;
+
+ function addLeadingZero(num) {
+ if (num < 10) {
+ return '0' + num;
+ }
+ return num.toString();
+ }
+
+ function addLeadingZeros(num) {
+ if (num < 10) {
+ return '00' + num;
+ }
+ if (num < 100) {
+ return '0' + num;
+ }
+ return num.toString();
+ }
+
+ var quoteCount = 0;
+ var tokenRegExp = Date._getTokenRegExp();
+ for (;;) {
+
+ var index = tokenRegExp.lastIndex;
+
+ var ar = tokenRegExp.exec(format);
+
+ var preMatch = format.slice(index, ar ? ar.index : format.length);
+ quoteCount += Date._appendPreOrPostMatch(preMatch, ret);
+
+ if (!ar) break;
+
+ if ((quoteCount%2) === 1) {
+ ret.append(ar[0]);
+ continue;
+ }
+
+ switch (ar[0]) {
+ case "dddd":
+ ret.append(dtf.DayNames[this.getDay()]);
+ break;
+ case "ddd":
+ ret.append(dtf.AbbreviatedDayNames[this.getDay()]);
+ break;
+ case "dd":
+ ret.append(addLeadingZero(this.getDate()));
+ break;
+ case "d":
+ ret.append(this.getDate());
+ break;
+ case "MMMM":
+ ret.append(dtf.MonthNames[this.getMonth()]);
+ break;
+ case "MMM":
+ ret.append(dtf.AbbreviatedMonthNames[this.getMonth()]);
+ break;
+ case "MM":
+ ret.append(addLeadingZero(this.getMonth() + 1));
+ break;
+ case "M":
+ ret.append(this.getMonth() + 1);
+ break;
+ case "yyyy":
+ ret.append(this.getFullYear());
+ break;
+ case "yy":
+ ret.append(addLeadingZero(this.getFullYear() % 100));
+ break;
+ case "y":
+ ret.append(this.getFullYear() % 100);
+ break;
+ case "hh":
+ hour = this.getHours() % 12;
+ if (hour === 0) hour = 12;
+ ret.append(addLeadingZero(hour));
+ break;
+ case "h":
+ hour = this.getHours() % 12;
+ if (hour === 0) hour = 12;
+ ret.append(hour);
+ break;
+ case "HH":
+ ret.append(addLeadingZero(this.getHours()));
+ break;
+ case "H":
+ ret.append(this.getHours());
+ break;
+ case "mm":
+ ret.append(addLeadingZero(this.getMinutes()));
+ break;
+ case "m":
+ ret.append(this.getMinutes());
+ break;
+ case "ss":
+ ret.append(addLeadingZero(this.getSeconds()));
+ break;
+ case "s":
+ ret.append(this.getSeconds());
+ break;
+ case "tt":
+ ret.append((this.getHours() < 12) ? dtf.AMDesignator : dtf.PMDesignator);
+ break;
+ case "t":
+ ret.append(((this.getHours() < 12) ? dtf.AMDesignator : dtf.PMDesignator).charAt(0));
+ break;
+ case "f":
+ ret.append(addLeadingZeros(this.getMilliseconds()).charAt(0));
+ break;
+ case "ff":
+ ret.append(addLeadingZeros(this.getMilliseconds()).substr(0, 2));
+ break;
+ case "fff":
+ ret.append(addLeadingZeros(this.getMilliseconds()));
+ break;
+ case "z":
+ hour = this.getTimezoneOffset() / 60;
+ ret.append(((hour >= 0) ? '+' : '-') + Math.floor(Math.abs(hour)));
+ break;
+ case "zz":
+ hour = this.getTimezoneOffset() / 60;
+ ret.append(((hour >= 0) ? '+' : '-') + addLeadingZero(Math.floor(Math.abs(hour))));
+ break;
+ case "zzz":
+ hour = this.getTimezoneOffset() / 60;
+ ret.append(((hour >= 0) ? '+' : '-') + addLeadingZero(Math.floor(Math.abs(hour))) +
+ dtf.TimeSeparator + addLeadingZero(Math.abs(this.getTimezoneOffset() % 60)));
+ break;
+ }
+ }
+ return ret.toString();
+}
+Number.__typeName = 'Number';
+Number.__class = true;
+
+Number.parseLocale = function Number$parseLocale(value) {
+ /// <param name="value" type="String"></param>
+ /// <returns type="Number"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "value", type: String}
+ ]);
+ if (e) throw e;
+
+ return Number._parse(value, Sys.CultureInfo.CurrentCulture);
+}
+Number.parseInvariant = function Number$parseInvariant(value) {
+ /// <param name="value" type="String"></param>
+ /// <returns type="Number"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "value", type: String}
+ ]);
+ if (e) throw e;
+
+ return Number._parse(value, Sys.CultureInfo.InvariantCulture);
+}
+Number._parse = function Number$_parse(value, cultureInfo) {
+ var valueStr = value.trim();
+ if (valueStr.match(/infinity/i) !== null) {
+ return parseFloat(valueStr);
+ }
+ if (valueStr.match(/^0x[a-f0-9]+$/i) !== null) {
+ return parseInt(valueStr);
+ }
+ var numFormat = cultureInfo.numberFormat;
+ var decSeparator = numFormat.NumberDecimalSeparator;
+ var grpSeparator = numFormat.NumberGroupSeparator;
+
+ var numberFormatRegex = new RegExp("^[+-]?[\\d\\" + grpSeparator + "]*\\" + decSeparator + "?\\d*([eE][+-]?\\d+)?$");
+ if (!valueStr.match(numberFormatRegex)) {
+ return Number.NaN;
+ }
+
+ valueStr = valueStr.split(grpSeparator).join("");
+
+ valueStr = valueStr.replace(decSeparator, ".");
+
+ return parseFloat(valueStr);
+}
+
+Number.prototype.format = function Number$format(format) {
+ /// <param name="format" type="String"></param>
+ /// <returns type="String"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "format", type: String}
+ ]);
+ if (e) throw e;
+
+ return this._toFormattedString(format, Sys.CultureInfo.InvariantCulture);
+}
+Number.prototype.localeFormat = function Number$localeFormat(format) {
+ /// <param name="format" type="String"></param>
+ /// <returns type="String"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "format", type: String}
+ ]);
+ if (e) throw e;
+
+ return this._toFormattedString(format, Sys.CultureInfo.CurrentCulture);
+}
+Number.prototype._toFormattedString = function Number$_toFormattedString(format, cultureInfo) {
+ if (!format || (format.length === 0) || (format === 'i')) {
+ if (cultureInfo && (cultureInfo.name.length > 0)) {
+ return this.toLocaleString();
+ }
+ else {
+ return this.toString();
+ }
+ }
+
+ var _percentPositivePattern = ["n %", "n%", "%n" ];
+ var _percentNegativePattern = ["-n %", "-n%", "-%n"];
+ var _numberNegativePattern = ["(n)","-n","- n","n-","n -"];
+ var _currencyPositivePattern = ["$n","n$","$ n","n $"];
+ var _currencyNegativePattern = ["($n)","-$n","$-n","$n-","(n$)","-n$","n-$","n$-","-n $","-$ n","n $-","$ n-","$ -n","n- $","($ n)","(n $)"];
+
+ function expandNumber(number, precision, groupSizes, sep, decimalChar) {
+
+ var curSize = groupSizes[0];
+ var curGroupIndex = 1;
+
+ var numberString = number.toString();
+ var right = "";
+ var exponent = "";
+ var decimalSplit = numberString.split('.');
+ if (decimalSplit.length > 1) {
+ numberString = decimalSplit[0];
+ right = decimalSplit[1];
+ var exponentSplit = right.split(/e/i);
+ if (exponentSplit.length > 1) {
+ right = exponentSplit[0];
+ exponent = "e" + exponentSplit[1];
+ }
+ }
+
+ if (precision > 0) {
+ var rightDifference = right.length - precision;
+ if (rightDifference > 0) {
+ right = right.slice(0, precision);
+ } else if (rightDifference < 0) {
+ for (var i=0; i<Math.abs(rightDifference); i++) {
+ right += '0';
+ }
+ }
+
+ right = decimalChar + right;
+ }
+ else { right = "";
+ }
+ right += exponent;
+
+ var stringIndex = numberString.length-1;
+ var ret = "";
+ while (stringIndex >= 0) {
+
+ if (curSize === 0 || curSize > stringIndex) {
+ if (ret.length > 0)
+ return numberString.slice(0, stringIndex + 1) + sep + ret + right;
+ else
+ return numberString.slice(0, stringIndex + 1) + right;
+ }
+
+ if (ret.length > 0)
+ ret = numberString.slice(stringIndex - curSize + 1, stringIndex+1) + sep + ret;
+ else
+ ret = numberString.slice(stringIndex - curSize + 1, stringIndex+1);
+
+ stringIndex -= curSize;
+
+ if (curGroupIndex < groupSizes.length) {
+ curSize = groupSizes[curGroupIndex];
+ curGroupIndex++;
+ }
+ }
+ return numberString.slice(0, stringIndex + 1) + sep + ret + right;
+ }
+ var nf = cultureInfo.numberFormat;
+
+ var number = Math.abs(this);
+
+ if (!format)
+ format = "D";
+
+ var precision = -1;
+ if (format.length > 1) precision = parseInt(format.slice(1));
+
+ var pattern;
+ switch (format.charAt(0)) {
+ case "d":
+ case "D":
+ pattern = 'n';
+
+ if (precision !== -1) {
+ var numberStr = ""+number;
+ var zerosToAdd = precision - numberStr.length;
+ if (zerosToAdd > 0) {
+ for (var i=0; i<zerosToAdd; i++) {
+ numberStr = '0'+numberStr;
+ }
+ }
+ number = numberStr;
+ }
+
+ if (this < 0) number = -number;
+ break;
+ case "c":
+ case "C":
+ if (this < 0) pattern = _currencyNegativePattern[nf.CurrencyNegativePattern];
+ else pattern = _currencyPositivePattern[nf.CurrencyPositivePattern];
+ if (precision === -1) precision = nf.CurrencyDecimalDigits;
+ number = expandNumber(Math.abs(this), precision, nf.CurrencyGroupSizes, nf.CurrencyGroupSeparator, nf.CurrencyDecimalSeparator);
+ break;
+ case "n":
+ case "N":
+ if (this < 0) pattern = _numberNegativePattern[nf.NumberNegativePattern];
+ else pattern = 'n';
+ if (precision === -1) precision = nf.NumberDecimalDigits;
+ number = expandNumber(Math.abs(this), precision, nf.NumberGroupSizes, nf.NumberGroupSeparator, nf.NumberDecimalSeparator);
+ break;
+ case "p":
+ case "P":
+ if (this < 0) pattern = _percentNegativePattern[nf.PercentNegativePattern];
+ else pattern = _percentPositivePattern[nf.PercentPositivePattern];
+ if (precision === -1) precision = nf.PercentDecimalDigits;
+ number = expandNumber(Math.abs(this), precision, nf.PercentGroupSizes, nf.PercentGroupSeparator, nf.PercentDecimalSeparator);
+ break;
+ default:
+ throw Error.format(Sys.Res.formatBadFormatSpecifier);
+ }
+
+ var regex = /n|\$|-|%/g;
+
+ var ret = "";
+
+ for (;;) {
+
+ var index = regex.lastIndex;
+
+ var ar = regex.exec(pattern);
+
+ ret += pattern.slice(index, ar ? ar.index : pattern.length);
+
+ if (!ar)
+ break;
+
+ switch (ar[0]) {
+ case "n":
+ ret += number;
+ break;
+ case "$":
+ ret += nf.CurrencySymbol;
+ break;
+ case "-":
+ ret += nf.NegativeSign;
+ break;
+ case "%":
+ ret += nf.PercentSymbol;
+ break;
+ }
+ }
+
+ return ret;
+}
+RegExp.__typeName = 'RegExp';
+RegExp.__class = true;
+Array.__typeName = 'Array';
+Array.__class = true;
+
+Array.add = Array.enqueue = function Array$enqueue(array, item) {
+ /// <param name="array" type="Array" elementMayBeNull="true"></param>
+ /// <param name="item" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "array", type: Array, elementMayBeNull: true},
+ {name: "item", mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+
+ array[array.length] = item;
+}
+
+Array.addRange = function Array$addRange(array, items) {
+ /// <param name="array" type="Array" elementMayBeNull="true"></param>
+ /// <param name="items" type="Array" elementMayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "array", type: Array, elementMayBeNull: true},
+ {name: "items", type: Array, elementMayBeNull: true}
+ ]);
+ if (e) throw e;
+
+
+ array.push.apply(array, items);
+}
+
+Array.clear = function Array$clear(array) {
+ /// <param name="array" type="Array" elementMayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "array", type: Array, elementMayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ array.length = 0;
+}
+
+Array.clone = function Array$clone(array) {
+ /// <param name="array" type="Array" elementMayBeNull="true"></param>
+ /// <returns type="Array" elementMayBeNull="true"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "array", type: Array, elementMayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ if (array.length === 1) {
+ return [array[0]];
+ }
+ else {
+ return Array.apply(null, array);
+ }
+}
+
+Array.contains = function Array$contains(array, item) {
+ /// <param name="array" type="Array" elementMayBeNull="true"></param>
+ /// <param name="item" mayBeNull="true"></param>
+ /// <returns type="Boolean"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "array", type: Array, elementMayBeNull: true},
+ {name: "item", mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ return (Array.indexOf(array, item) >= 0);
+}
+
+Array.dequeue = function Array$dequeue(array) {
+ /// <param name="array" type="Array" elementMayBeNull="true"></param>
+ /// <returns mayBeNull="true"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "array", type: Array, elementMayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ return array.shift();
+}
+
+Array.forEach = function Array$forEach(array, method, instance) {
+ /// <param name="array" type="Array" elementMayBeNull="true"></param>
+ /// <param name="method" type="Function"></param>
+ /// <param name="instance" optional="true" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "array", type: Array, elementMayBeNull: true},
+ {name: "method", type: Function},
+ {name: "instance", mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ for (var i = 0, l = array.length; i < l; i++) {
+ var elt = array[i];
+ if (typeof(elt) !== 'undefined') method.call(instance, elt, i, array);
+ }
+}
+
+Array.indexOf = function Array$indexOf(array, item, start) {
+ /// <param name="array" type="Array" elementMayBeNull="true"></param>
+ /// <param name="item" optional="true" mayBeNull="true"></param>
+ /// <param name="start" optional="true" mayBeNull="true"></param>
+ /// <returns type="Number"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "array", type: Array, elementMayBeNull: true},
+ {name: "item", mayBeNull: true, optional: true},
+ {name: "start", mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ if (typeof(item) === "undefined") return -1;
+ var length = array.length;
+ if (length !== 0) {
+ start = start - 0;
+ if (isNaN(start)) {
+ start = 0;
+ }
+ else {
+ if (isFinite(start)) {
+ start = start - (start % 1);
+ }
+ if (start < 0) {
+ start = Math.max(0, length + start);
+ }
+ }
+
+ for (var i = start; i < length; i++) {
+ if ((typeof(array[i]) !== "undefined") && (array[i] === item)) {
+ return i;
+ }
+ }
+ }
+ return -1;
+}
+
+Array.insert = function Array$insert(array, index, item) {
+ /// <param name="array" type="Array" elementMayBeNull="true"></param>
+ /// <param name="index" mayBeNull="true"></param>
+ /// <param name="item" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "array", type: Array, elementMayBeNull: true},
+ {name: "index", mayBeNull: true},
+ {name: "item", mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ array.splice(index, 0, item);
+}
+
+Array.parse = function Array$parse(value) {
+ /// <param name="value" type="String" mayBeNull="true"></param>
+ /// <returns type="Array" elementMayBeNull="true"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "value", type: String, mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ if (!value) return [];
+ var v = eval(value);
+ if (!Array.isInstanceOfType(v)) throw Error.argument('value', Sys.Res.arrayParseBadFormat);
+ return v;
+}
+
+Array.remove = function Array$remove(array, item) {
+ /// <param name="array" type="Array" elementMayBeNull="true"></param>
+ /// <param name="item" mayBeNull="true"></param>
+ /// <returns type="Boolean"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "array", type: Array, elementMayBeNull: true},
+ {name: "item", mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ var index = Array.indexOf(array, item);
+ if (index >= 0) {
+ array.splice(index, 1);
+ }
+ return (index >= 0);
+}
+
+Array.removeAt = function Array$removeAt(array, index) {
+ /// <param name="array" type="Array" elementMayBeNull="true"></param>
+ /// <param name="index" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "array", type: Array, elementMayBeNull: true},
+ {name: "index", mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ array.splice(index, 1);
+}
+String.__typeName = 'String';
+String.__class = true;
+
+String.prototype.endsWith = function String$endsWith(suffix) {
+ /// <param name="suffix" type="String"></param>
+ /// <returns type="Boolean"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "suffix", type: String}
+ ]);
+ if (e) throw e;
+
+ return (this.substr(this.length - suffix.length) === suffix);
+}
+
+String.prototype.startsWith = function String$startsWith(prefix) {
+ /// <param name="prefix" type="String"></param>
+ /// <returns type="Boolean"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "prefix", type: String}
+ ]);
+ if (e) throw e;
+
+ return (this.substr(0, prefix.length) === prefix);
+}
+
+String.prototype.trim = function String$trim() {
+ /// <returns type="String"></returns>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this.replace(/^\s+|\s+$/g, '');
+}
+
+String.prototype.trimEnd = function String$trimEnd() {
+ /// <returns type="String"></returns>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this.replace(/\s+$/, '');
+}
+
+String.prototype.trimStart = function String$trimStart() {
+ /// <returns type="String"></returns>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this.replace(/^\s+/, '');
+}
+
+String.format = function String$format(format, args) {
+ /// <param name="format" type="String"></param>
+ /// <param name="args" parameterArray="true" mayBeNull="true"></param>
+ /// <returns type="String"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "format", type: String},
+ {name: "args", mayBeNull: true, parameterArray: true}
+ ]);
+ if (e) throw e;
+
+ return String._toFormattedString(false, arguments);
+}
+
+String.localeFormat = function String$localeFormat(format, args) {
+ /// <param name="format" type="String"></param>
+ /// <param name="args" parameterArray="true" mayBeNull="true"></param>
+ /// <returns type="String"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "format", type: String},
+ {name: "args", mayBeNull: true, parameterArray: true}
+ ]);
+ if (e) throw e;
+
+ return String._toFormattedString(true, arguments);
+}
+
+String._toFormattedString = function String$_toFormattedString(useLocale, args) {
+ var result = '';
+ var format = args[0];
+
+ for (var i=0;;) {
+ var open = format.indexOf('{', i);
+ var close = format.indexOf('}', i);
+ if ((open < 0) && (close < 0)) {
+ result += format.slice(i);
+ break;
+ }
+ if ((close > 0) && ((close < open) || (open < 0))) {
+ if (format.charAt(close + 1) !== '}') {
+ throw Error.argument('format', Sys.Res.stringFormatBraceMismatch);
+ }
+ result += format.slice(i, close + 1);
+ i = close + 2;
+ continue;
+ }
+
+ result += format.slice(i, open);
+ i = open + 1;
+
+ if (format.charAt(i) === '{') {
+ result += '{';
+ i++;
+ continue;
+ }
+
+ if (close < 0) throw Error.argument('format', Sys.Res.stringFormatBraceMismatch);
+
+
+ var brace = format.substring(i, close);
+ var colonIndex = brace.indexOf(':');
+ var argNumber = parseInt((colonIndex < 0)? brace : brace.substring(0, colonIndex)) + 1;
+ if (isNaN(argNumber)) throw Error.argument('format', Sys.Res.stringFormatInvalid);
+ var argFormat = (colonIndex < 0)? '' : brace.substring(colonIndex + 1);
+
+ var arg = args[argNumber];
+ if (typeof(arg) === "undefined" || arg === null) {
+ arg = '';
+ }
+
+ if (arg.toFormattedString) {
+ result += arg.toFormattedString(argFormat);
+ }
+ else if (useLocale && arg.localeFormat) {
+ result += arg.localeFormat(argFormat);
+ }
+ else if (arg.format) {
+ result += arg.format(argFormat);
+ }
+ else
+ result += arg.toString();
+
+ i = close + 1;
+ }
+
+ return result;
+}
+
+Type.registerNamespace('Sys');
+Sys.IDisposable = function Sys$IDisposable() {
+ throw Error.notImplemented();
+}
+
+ function Sys$IDisposable$dispose() {
+ throw Error.notImplemented();
+ }
+Sys.IDisposable.prototype = {
+ dispose: Sys$IDisposable$dispose
+}
+Sys.IDisposable.registerInterface('Sys.IDisposable');
+Sys.StringBuilder = function Sys$StringBuilder(initialText) {
+ /// <param name="initialText" optional="true" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "initialText", mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ this._parts = (typeof(initialText) !== 'undefined' && initialText !== null && initialText !== '') ?
+ [initialText.toString()] : [];
+ this._value = {};
+ this._len = 0;
+}
+
+
+ function Sys$StringBuilder$append(text) {
+ /// <param name="text" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "text", mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ this._parts[this._parts.length] = text;
+ }
+
+ function Sys$StringBuilder$appendLine(text) {
+ /// <param name="text" optional="true" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "text", mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ this._parts[this._parts.length] =
+ ((typeof(text) === 'undefined') || (text === null) || (text === '')) ?
+ '\r\n' : text + '\r\n';
+ }
+
+ function Sys$StringBuilder$clear() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ this._parts = [];
+ this._value = {};
+ this._len = 0;
+ }
+
+ function Sys$StringBuilder$isEmpty() {
+ /// <returns type="Boolean"></returns>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (this._parts.length === 0) return true;
+ return this.toString() === '';
+ }
+
+
+
+ function Sys$StringBuilder$toString(separator) {
+ /// <param name="separator" type="String" optional="true" mayBeNull="true"></param>
+ /// <returns type="String"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "separator", type: String, mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ separator = separator || '';
+ var parts = this._parts;
+ if (this._len !== parts.length) {
+ this._value = {};
+ this._len = parts.length;
+ }
+ var val = this._value;
+ if (typeof(val[separator]) === 'undefined') {
+ if (separator !== '') {
+ for (var i = 0; i < parts.length;) {
+ if ((typeof(parts[i]) === 'undefined') || (parts[i] === '') || (parts[i] === null)) {
+ parts.splice(i, 1);
+ }
+ else {
+ i++;
+ }
+ }
+ }
+ val[separator] = this._parts.join(separator);
+ }
+ return val[separator];
+ }
+Sys.StringBuilder.prototype = {
+ append: Sys$StringBuilder$append,
+
+ appendLine: Sys$StringBuilder$appendLine,
+
+ clear: Sys$StringBuilder$clear,
+
+ isEmpty: Sys$StringBuilder$isEmpty,
+
+ toString: Sys$StringBuilder$toString
+}
+Sys.StringBuilder.registerClass('Sys.StringBuilder');
+if (!window.XMLHttpRequest) {
+ window.XMLHttpRequest = function window$XMLHttpRequest() {
+ var progIDs = [ 'Msxml2.XMLHTTP', 'Microsoft.XMLHTTP' ];
+
+ for (var i = 0; i < progIDs.length; i++) {
+ try {
+ var xmlHttp = new ActiveXObject(progIDs[i]);
+ return xmlHttp;
+ }
+ catch (ex) {
+ }
+ }
+
+ return null;
+ }
+}
+
+Sys.Browser = {};
+
+Sys.Browser.InternetExplorer = {};
+Sys.Browser.Firefox = {};
+Sys.Browser.Safari = {};
+Sys.Browser.Opera = {};
+
+Sys.Browser.agent = null;
+Sys.Browser.hasDebuggerStatement = false;
+Sys.Browser.name = navigator.appName;
+Sys.Browser.version = parseFloat(navigator.appVersion);
+
+if (navigator.userAgent.indexOf(' MSIE ') > -1) {
+ Sys.Browser.agent = Sys.Browser.InternetExplorer;
+ Sys.Browser.version = parseFloat(navigator.userAgent.match(/MSIE (\d+\.\d+)/)[1]);
+ Sys.Browser.hasDebuggerStatement = true;
+}
+else if (navigator.userAgent.indexOf(' Firefox/') > -1) {
+ Sys.Browser.agent = Sys.Browser.Firefox;
+ Sys.Browser.version = parseFloat(navigator.userAgent.match(/ Firefox\/(\d+\.\d+)/)[1]);
+ Sys.Browser.name = 'Firefox';
+ Sys.Browser.hasDebuggerStatement = true;
+}
+else if (navigator.userAgent.indexOf(' Safari/') > -1) {
+ Sys.Browser.agent = Sys.Browser.Safari;
+ Sys.Browser.version = parseFloat(navigator.userAgent.match(/ Safari\/(\d+\.\d+)/)[1]);
+ Sys.Browser.name = 'Safari';
+}
+else if (navigator.userAgent.indexOf('Opera/') > -1) {
+ Sys.Browser.agent = Sys.Browser.Opera;
+}
+
+
+Type.registerNamespace('Sys.UI');
+
+Sys._Debug = function Sys$_Debug() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+}
+
+
+ function Sys$_Debug$_appendConsole(text) {
+ if ((typeof(Debug) !== 'undefined') && Debug.writeln) {
+ Debug.writeln(text);
+ }
+ if (window.console && window.console.log) {
+ window.console.log(text);
+ }
+ if (window.opera) {
+ window.opera.postError(text);
+ }
+ if (window.debugService) {
+ window.debugService.trace(text);
+ }
+ }
+
+ function Sys$_Debug$_appendTrace(text) {
+ var traceElement = document.getElementById('TraceConsole');
+ if (traceElement && (traceElement.tagName.toUpperCase() === 'TEXTAREA')) {
+ traceElement.value += text + '\n';
+ }
+ }
+
+ function Sys$_Debug$assert(condition, message, displayCaller) {
+ /// <param name="condition" type="Boolean"></param>
+ /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
+ /// <param name="displayCaller" type="Boolean" optional="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "condition", type: Boolean},
+ {name: "message", type: String, mayBeNull: true, optional: true},
+ {name: "displayCaller", type: Boolean, optional: true}
+ ]);
+ if (e) throw e;
+
+ if (!condition) {
+ message = (displayCaller && this.assert.caller) ?
+ String.format(Sys.Res.assertFailedCaller, message, this.assert.caller) :
+ String.format(Sys.Res.assertFailed, message);
+
+ if (confirm(String.format(Sys.Res.breakIntoDebugger, message))) {
+ this.fail(message);
+ }
+ }
+ }
+
+ function Sys$_Debug$clearTrace() {
+ var traceElement = document.getElementById('TraceConsole');
+ if (traceElement && (traceElement.tagName.toUpperCase() === 'TEXTAREA')) {
+ traceElement.value = '';
+ }
+ }
+
+ function Sys$_Debug$fail(message) {
+ /// <param name="message" type="String" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "message", type: String, mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ this._appendConsole(message);
+
+ if (Sys.Browser.hasDebuggerStatement) {
+ eval('debugger');
+ }
+ }
+
+ function Sys$_Debug$trace(text) {
+ /// <param name="text"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "text"}
+ ]);
+ if (e) throw e;
+
+ this._appendConsole(text);
+ this._appendTrace(text);
+ }
+
+ function Sys$_Debug$traceDump(object, name) {
+ /// <param name="object" mayBeNull="true"></param>
+ /// <param name="name" type="String" mayBeNull="true" optional="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "object", mayBeNull: true},
+ {name: "name", type: String, mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ var text = this._traceDump(object, name, true);
+ }
+
+ function Sys$_Debug$_traceDump(object, name, recursive, indentationPadding, loopArray) {
+ name = name? name : 'traceDump';
+ indentationPadding = indentationPadding? indentationPadding : '';
+ if (object === null) {
+ this.trace(indentationPadding + name + ': null');
+ return;
+ }
+ switch(typeof(object)) {
+ case 'undefined':
+ this.trace(indentationPadding + name + ': Undefined');
+ break;
+ case 'number': case 'string': case 'boolean':
+ this.trace(indentationPadding + name + ': ' + object);
+ break;
+ default:
+ if (Date.isInstanceOfType(object) || RegExp.isInstanceOfType(object)) {
+ this.trace(indentationPadding + name + ': ' + object.toString());
+ break;
+ }
+ if (!loopArray) {
+ loopArray = [];
+ }
+ else if (Array.contains(loopArray, object)) {
+ this.trace(indentationPadding + name + ': ...');
+ return;
+ }
+ Array.add(loopArray, object);
+
+ if ((object == window) || (object === document) ||
+ (window.HTMLElement && (object instanceof HTMLElement)) ||
+ (typeof(object.nodeName) === 'string')) {
+ var tag = object.tagName? object.tagName : 'DomElement';
+ if (object.id) {
+ tag += ' - ' + object.id;
+ }
+ this.trace(indentationPadding + name + ' {' + tag + '}');
+ }
+ else {
+ var typeName = Object.getTypeName(object);
+ this.trace(indentationPadding + name + (typeof(typeName) === 'string' ? ' {' + typeName + '}' : ''));
+ if ((indentationPadding === '') || recursive) {
+ indentationPadding += " ";
+ var i, length, properties, p, v;
+ if (Array.isInstanceOfType(object)) {
+ length = object.length;
+ for (i = 0; i < length; i++) {
+ this._traceDump(object[i], '[' + i + ']', recursive, indentationPadding, loopArray);
+ }
+ }
+ else {
+ for (p in object) {
+ v = object[p];
+ if (!Function.isInstanceOfType(v)) {
+ this._traceDump(v, p, recursive, indentationPadding, loopArray);
+ }
+ }
+ }
+ }
+ }
+ Array.remove(loopArray, object);
+ }
+ }
+Sys._Debug.prototype = {
+
+ _appendConsole: Sys$_Debug$_appendConsole,
+
+ _appendTrace: Sys$_Debug$_appendTrace,
+
+ assert: Sys$_Debug$assert,
+
+ clearTrace: Sys$_Debug$clearTrace,
+
+ fail: Sys$_Debug$fail,
+
+ trace: Sys$_Debug$trace,
+
+ traceDump: Sys$_Debug$traceDump,
+
+ _traceDump: Sys$_Debug$_traceDump
+}
+Sys._Debug.registerClass('Sys._Debug');
+
+Sys.Debug = new Sys._Debug();
+ Sys.Debug.isDebug = true;
+function Sys$Enum$parse(value, ignoreCase) {
+ /// <param name="value" type="String"></param>
+ /// <param name="ignoreCase" type="Boolean" optional="true"></param>
+ /// <returns></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "value", type: String},
+ {name: "ignoreCase", type: Boolean, optional: true}
+ ]);
+ if (e) throw e;
+
+ var values, parsed, val;
+ if (ignoreCase) {
+ values = this.__lowerCaseValues;
+ if (!values) {
+ this.__lowerCaseValues = values = {};
+ var prototype = this.prototype;
+ for (var name in prototype) {
+ values[name.toLowerCase()] = prototype[name];
+ }
+ }
+ }
+ else {
+ values = this.prototype;
+ }
+ if (!this.__flags) {
+ val = (ignoreCase ? value.toLowerCase() : value);
+ parsed = values[val.trim()];
+ if (typeof(parsed) !== 'number') throw Error.argument('value', String.format(Sys.Res.enumInvalidValue, value, this.__typeName));
+ return parsed;
+ }
+ else {
+ var parts = (ignoreCase ? value.toLowerCase() : value).split(',');
+ var v = 0;
+
+ for (var i = parts.length - 1; i >= 0; i--) {
+ var part = parts[i].trim();
+ parsed = values[part];
+ if (typeof(parsed) !== 'number') throw Error.argument('value', String.format(Sys.Res.enumInvalidValue, value.split(',')[i].trim(), this.__typeName));
+ v |= parsed;
+ }
+ return v;
+ }
+}
+
+function Sys$Enum$toString(value) {
+ /// <param name="value" optional="true" mayBeNull="true"></param>
+ /// <returns type="String"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "value", mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ if ((typeof(value) === 'undefined') || (value === null)) return this.__string;
+ if ((typeof(value) != 'number') || ((value % 1) !== 0)) throw Error.argumentType('value', Object.getType(value), this);
+ var values = this.prototype;
+ var i;
+ if (!this.__flags || (value === 0)) {
+ for (i in values) {
+ if (values[i] === value) {
+ return i;
+ }
+ }
+ }
+ else {
+ var sorted = this.__sortedValues;
+ if (!sorted) {
+ sorted = [];
+ for (i in values) {
+ sorted[sorted.length] = {key: i, value: values[i]};
+ }
+ sorted.sort(function(a, b) {
+ return a.value - b.value;
+ });
+ this.__sortedValues = sorted;
+ }
+ var parts = [];
+ var v = value;
+ for (i = sorted.length - 1; i >= 0; i--) {
+ var kvp = sorted[i];
+ var vali = kvp.value;
+ if (vali === 0) continue;
+ if ((vali & value) === vali) {
+ parts[parts.length] = kvp.key;
+ v -= vali;
+ if (v === 0) break;
+ }
+ }
+ if (parts.length && v === 0) return parts.reverse().join(', ');
+ }
+ throw Error.argumentOutOfRange('value', value, String.format(Sys.Res.enumInvalidValue, value, this.__typeName));
+}
+
+Type.prototype.registerEnum = function Type$registerEnum(name, flags) {
+ /// <param name="name" type="String"></param>
+ /// <param name="flags" type="Boolean" optional="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "name", type: String},
+ {name: "flags", type: Boolean, optional: true}
+ ]);
+ if (e) throw e;
+
+ if (!Type.__fullyQualifiedIdentifierRegExp.test(name)) throw Error.argument('name', Sys.Res.notATypeName);
+ var parsedName;
+ try {
+ parsedName = eval(name);
+ }
+ catch(e) {
+ throw Error.argument('name', Sys.Res.argumentTypeName);
+ }
+ if (parsedName !== this) throw Error.argument('name', Sys.Res.badTypeName);
+ if (window.__registeredTypes[name]) throw Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice, name));
+ for (var i in this.prototype) {
+ var val = this.prototype[i];
+ if (!Type.__identifierRegExp.test(i)) throw Error.invalidOperation(String.format(Sys.Res.enumInvalidValueName, i));
+ if (typeof(val) !== 'number' || (val % 1) !== 0) throw Error.invalidOperation(Sys.Res.enumValueNotInteger);
+ if (typeof(this[i]) !== 'undefined') throw Error.invalidOperation(String.format(Sys.Res.enumReservedName, i));
+ }
+ for (var i in this.prototype) {
+ this[i] = this.prototype[i];
+ }
+ this.__typeName = name;
+ this.parse = Sys$Enum$parse;
+ this.__string = this.toString();
+ this.toString = Sys$Enum$toString;
+ this.__flags = flags;
+ this.__enum = true;
+ window.__registeredTypes[name] = true;
+}
+
+Type.isEnum = function Type$isEnum(type) {
+ /// <param name="type" mayBeNull="true"></param>
+ /// <returns type="Boolean"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "type", mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ if ((typeof(type) === 'undefined') || (type === null)) return false;
+ return !!type.__enum;
+}
+
+Type.isFlags = function Type$isFlags(type) {
+ /// <param name="type" mayBeNull="true"></param>
+ /// <returns type="Boolean"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "type", mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ if ((typeof(type) === 'undefined') || (type === null)) return false;
+ return !!type.__flags;
+}
+Sys.EventHandlerList = function Sys$EventHandlerList() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ this._list = {};
+}
+
+
+ function Sys$EventHandlerList$addHandler(id, handler) {
+ /// <param name="id" type="String"></param>
+ /// <param name="handler" type="Function"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "id", type: String},
+ {name: "handler", type: Function}
+ ]);
+ if (e) throw e;
+
+ Array.add(this._getEvent(id, true), handler);
+ }
+ function Sys$EventHandlerList$removeHandler(id, handler) {
+ /// <param name="id" type="String"></param>
+ /// <param name="handler" type="Function"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "id", type: String},
+ {name: "handler", type: Function}
+ ]);
+ if (e) throw e;
+
+ var evt = this._getEvent(id);
+ if (!evt) return;
+ Array.remove(evt, handler);
+ }
+ function Sys$EventHandlerList$getHandler(id) {
+ /// <param name="id" type="String"></param>
+ /// <returns type="Function"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "id", type: String}
+ ]);
+ if (e) throw e;
+
+ var evt = this._getEvent(id);
+ if (!evt || (evt.length === 0)) return null;
+ evt = Array.clone(evt);
+ if (!evt._handler) {
+ evt._handler = function(source, args) {
+ for (var i = 0, l = evt.length; i < l; i++) {
+ evt[i](source, args);
+ }
+ };
+ }
+ return evt._handler;
+ }
+
+ function Sys$EventHandlerList$_getEvent(id, create) {
+ if (!this._list[id]) {
+ if (!create) return null;
+ this._list[id] = [];
+ }
+ return this._list[id];
+ }
+Sys.EventHandlerList.prototype = {
+ addHandler: Sys$EventHandlerList$addHandler,
+ removeHandler: Sys$EventHandlerList$removeHandler,
+ getHandler: Sys$EventHandlerList$getHandler,
+
+ _getEvent: Sys$EventHandlerList$_getEvent
+}
+Sys.EventHandlerList.registerClass('Sys.EventHandlerList');
+Sys.EventArgs = function Sys$EventArgs() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+}
+Sys.EventArgs.registerClass('Sys.EventArgs');
+
+Sys.EventArgs.Empty = new Sys.EventArgs();
+Sys.CancelEventArgs = function Sys$CancelEventArgs() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ Sys.CancelEventArgs.initializeBase(this);
+
+ this._cancel = false;
+}
+
+
+ function Sys$CancelEventArgs$get_cancel() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._cancel;
+ }
+ function Sys$CancelEventArgs$set_cancel(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
+ if (e) throw e;
+
+ this._cancel = value;
+ }
+Sys.CancelEventArgs.prototype = {
+ get_cancel: Sys$CancelEventArgs$get_cancel,
+ set_cancel: Sys$CancelEventArgs$set_cancel
+}
+
+Sys.CancelEventArgs.registerClass('Sys.CancelEventArgs', Sys.EventArgs);
+Sys.INotifyPropertyChange = function Sys$INotifyPropertyChange() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+}
+
+ function Sys$INotifyPropertyChange$add_propertyChanged(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ throw Error.notImplemented();
+ }
+ function Sys$INotifyPropertyChange$remove_propertyChanged(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ throw Error.notImplemented();
+ }
+Sys.INotifyPropertyChange.prototype = {
+ add_propertyChanged: Sys$INotifyPropertyChange$add_propertyChanged,
+ remove_propertyChanged: Sys$INotifyPropertyChange$remove_propertyChanged
+}
+Sys.INotifyPropertyChange.registerInterface('Sys.INotifyPropertyChange');
+Sys.PropertyChangedEventArgs = function Sys$PropertyChangedEventArgs(propertyName) {
+ /// <param name="propertyName" type="String"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "propertyName", type: String}
+ ]);
+ if (e) throw e;
+
+ Sys.PropertyChangedEventArgs.initializeBase(this);
+ this._propertyName = propertyName;
+}
+
+ function Sys$PropertyChangedEventArgs$get_propertyName() {
+ /// <value type="String"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._propertyName;
+ }
+Sys.PropertyChangedEventArgs.prototype = {
+ get_propertyName: Sys$PropertyChangedEventArgs$get_propertyName
+}
+Sys.PropertyChangedEventArgs.registerClass('Sys.PropertyChangedEventArgs', Sys.EventArgs);
+Sys.INotifyDisposing = function Sys$INotifyDisposing() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+}
+
+ function Sys$INotifyDisposing$add_disposing(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ throw Error.notImplemented();
+ }
+ function Sys$INotifyDisposing$remove_disposing(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ throw Error.notImplemented();
+ }
+Sys.INotifyDisposing.prototype = {
+ add_disposing: Sys$INotifyDisposing$add_disposing,
+ remove_disposing: Sys$INotifyDisposing$remove_disposing
+}
+Sys.INotifyDisposing.registerInterface("Sys.INotifyDisposing");
+Sys.Component = function Sys$Component() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (Sys.Application) Sys.Application.registerDisposableObject(this);
+}
+
+
+
+
+
+ function Sys$Component$get_events() {
+ /// <value type="Sys.EventHandlerList"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (!this._events) {
+ this._events = new Sys.EventHandlerList();
+ }
+ return this._events;
+ }
+ function Sys$Component$get_id() {
+ /// <value type="String"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._id;
+ }
+ function Sys$Component$set_id(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: String}]);
+ if (e) throw e;
+
+ if (this._idSet) throw Error.invalidOperation(Sys.Res.componentCantSetIdTwice);
+ this._idSet = true;
+ var oldId = this.get_id();
+ if (oldId && Sys.Application.findComponent(oldId)) throw Error.invalidOperation(Sys.Res.componentCantSetIdAfterAddedToApp);
+ this._id = value;
+ }
+ function Sys$Component$get_isInitialized() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._initialized;
+ }
+ function Sys$Component$get_isUpdating() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._updating;
+ }
+ function Sys$Component$add_disposing(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this.get_events().addHandler("disposing", handler);
+ }
+ function Sys$Component$remove_disposing(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this.get_events().removeHandler("disposing", handler);
+ }
+ function Sys$Component$add_propertyChanged(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this.get_events().addHandler("propertyChanged", handler);
+ }
+ function Sys$Component$remove_propertyChanged(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this.get_events().removeHandler("propertyChanged", handler);
+ }
+ function Sys$Component$beginUpdate() {
+ this._updating = true;
+ }
+ function Sys$Component$dispose() {
+ if (this._events) {
+ var handler = this._events.getHandler("disposing");
+ if (handler) {
+ handler(this, Sys.EventArgs.Empty);
+ }
+ }
+ delete this._events;
+ Sys.Application.unregisterDisposableObject(this);
+ Sys.Application.removeComponent(this);
+ }
+ function Sys$Component$endUpdate() {
+ this._updating = false;
+ if (!this._initialized) this.initialize();
+ this.updated();
+ }
+ function Sys$Component$initialize() {
+ this._initialized = true;
+ }
+ function Sys$Component$raisePropertyChanged(propertyName) {
+ /// <param name="propertyName" type="String"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "propertyName", type: String}
+ ]);
+ if (e) throw e;
+
+ if (!this._events) return;
+ var handler = this._events.getHandler("propertyChanged");
+ if (handler) {
+ handler(this, new Sys.PropertyChangedEventArgs(propertyName));
+ }
+ }
+ function Sys$Component$updated() {
+ }
+Sys.Component.prototype = {
+ _id: null,
+ _idSet: false,
+ _initialized: false,
+ _updating: false,
+ get_events: Sys$Component$get_events,
+ get_id: Sys$Component$get_id,
+ set_id: Sys$Component$set_id,
+ get_isInitialized: Sys$Component$get_isInitialized,
+ get_isUpdating: Sys$Component$get_isUpdating,
+ add_disposing: Sys$Component$add_disposing,
+ remove_disposing: Sys$Component$remove_disposing,
+ add_propertyChanged: Sys$Component$add_propertyChanged,
+ remove_propertyChanged: Sys$Component$remove_propertyChanged,
+ beginUpdate: Sys$Component$beginUpdate,
+ dispose: Sys$Component$dispose,
+ endUpdate: Sys$Component$endUpdate,
+ initialize: Sys$Component$initialize,
+ raisePropertyChanged: Sys$Component$raisePropertyChanged,
+ updated: Sys$Component$updated
+}
+Sys.Component.registerClass('Sys.Component', null, Sys.IDisposable, Sys.INotifyPropertyChange, Sys.INotifyDisposing);
+
+function Sys$Component$_setProperties(target, properties) {
+ /// <param name="target"></param>
+ /// <param name="properties"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "target"},
+ {name: "properties"}
+ ]);
+ if (e) throw e;
+
+ var current;
+ var targetType = Object.getType(target);
+ var isObject = (targetType === Object) || (targetType === Sys.UI.DomElement);
+ var isComponent = Sys.Component.isInstanceOfType(target) && !target.get_isUpdating();
+ if (isComponent) target.beginUpdate();
+ for (var name in properties) {
+ var val = properties[name];
+ var getter = isObject ? null : target["get_" + name];
+ if (isObject || typeof(getter) !== 'function') {
+ var targetVal = target[name];
+ if (!isObject && typeof(targetVal) === 'undefined') throw Error.invalidOperation(String.format(Sys.Res.propertyUndefined, name));
+ if (!val || (typeof(val) !== 'object') || (isObject && !targetVal)) {
+ target[name] = val;
+ }
+ else {
+ Sys$Component$_setProperties(targetVal, val);
+ }
+ }
+ else {
+ var setter = target["set_" + name];
+ if (typeof(setter) === 'function') {
+ setter.apply(target, [val]);
+ }
+ else if (val instanceof Array) {
+ current = getter.apply(target);
+ if (!(current instanceof Array)) throw new Error.invalidOperation(String.format(Sys.Res.propertyNotAnArray, name));
+ for (var i = 0, j = current.length, l= val.length; i < l; i++, j++) {
+ current[j] = val[i];
+ }
+ }
+ else if ((typeof(val) === 'object') && (Object.getType(val) === Object)) {
+ current = getter.apply(target);
+ if ((typeof(current) === 'undefined') || (current === null)) throw new Error.invalidOperation(String.format(Sys.Res.propertyNullOrUndefined, name));
+ Sys$Component$_setProperties(current, val);
+ }
+ else {
+ throw new Error.invalidOperation(String.format(Sys.Res.propertyNotWritable, name));
+ }
+ }
+ }
+ if (isComponent) target.endUpdate();
+}
+
+function Sys$Component$_setReferences(component, references) {
+ for (var name in references) {
+ var setter = component["set_" + name];
+ var reference = $find(references[name]);
+ if (typeof(setter) !== 'function') throw new Error.invalidOperation(String.format(Sys.Res.propertyNotWritable, name));
+ if (!reference) throw Error.invalidOperation(String.format(Sys.Res.referenceNotFound, references[name]));
+ setter.apply(component, [reference]);
+ }
+}
+
+var $create = Sys.Component.create = function Sys$Component$create(type, properties, events, references, element) {
+ /// <param name="type" type="Type"></param>
+ /// <param name="properties" optional="true" mayBeNull="true"></param>
+ /// <param name="events" optional="true" mayBeNull="true"></param>
+ /// <param name="references" optional="true" mayBeNull="true"></param>
+ /// <param name="element" domElement="true" optional="true" mayBeNull="true"></param>
+ /// <returns type="Sys.UI.Component"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "type", type: Type},
+ {name: "properties", mayBeNull: true, optional: true},
+ {name: "events", mayBeNull: true, optional: true},
+ {name: "references", mayBeNull: true, optional: true},
+ {name: "element", mayBeNull: true, domElement: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ if (!type.inheritsFrom(Sys.Component)) {
+ throw Error.argument('type', String.format(Sys.Res.createNotComponent, type.getName()));
+ }
+ if (type.inheritsFrom(Sys.UI.Behavior) || type.inheritsFrom(Sys.UI.Control)) {
+ if (!element) throw Error.argument('element', Sys.Res.createNoDom);
+ }
+ else if (element) throw Error.argument('element', Sys.Res.createComponentOnDom);
+ var component = (element ? new type(element): new type());
+ var app = Sys.Application;
+ var creatingComponents = app.get_isCreatingComponents();
+
+ component.beginUpdate();
+ if (properties) {
+ Sys$Component$_setProperties(component, properties);
+ }
+ if (events) {
+ for (var name in events) {
+ if (!(component["add_" + name] instanceof Function)) throw new Error.invalidOperation(String.format(Sys.Res.undefinedEvent, name));
+ if (!(events[name] instanceof Function)) throw new Error.invalidOperation(Sys.Res.eventHandlerNotFunction);
+ component["add_" + name](events[name]);
+ }
+ }
+
+ app._createdComponents[app._createdComponents.length] = component;
+ if (component.get_id()) {
+ app.addComponent(component);
+ }
+ if (creatingComponents) {
+ if (references) {
+ app._addComponentToSecondPass(component, references);
+ }
+ else {
+ component.endUpdate();
+ }
+ }
+ else {
+ if (references) {
+ Sys$Component$_setReferences(component, references);
+ }
+ component.endUpdate();
+ }
+
+ return component;
+}
+Sys.UI.MouseButton = function Sys$UI$MouseButton() {
+ /// <field name="leftButton" type="Number" integer="true" static="true"></field>
+ /// <field name="middleButton" type="Number" integer="true" static="true"></field>
+ /// <field name="rightButton" type="Number" integer="true" static="true"></field>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+}
+
+
+
+
+Sys.UI.MouseButton.prototype = {
+ leftButton: 0,
+ middleButton: 1,
+ rightButton: 2
+}
+Sys.UI.MouseButton.registerEnum("Sys.UI.MouseButton");
+Sys.UI.Key = function Sys$UI$Key() {
+ /// <field name="backspace" type="Number" integer="true" static="true"></field>
+ /// <field name="tab" type="Number" integer="true" static="true"></field>
+ /// <field name="enter" type="Number" integer="true" static="true"></field>
+ /// <field name="esc" type="Number" integer="true" static="true"></field>
+ /// <field name="space" type="Number" integer="true" static="true"></field>
+ /// <field name="pageUp" type="Number" integer="true" static="true"></field>
+ /// <field name="pageDown" type="Number" integer="true" static="true"></field>
+ /// <field name="end" type="Number" integer="true" static="true"></field>
+ /// <field name="home" type="Number" integer="true" static="true"></field>
+ /// <field name="left" type="Number" integer="true" static="true"></field>
+ /// <field name="up" type="Number" integer="true" static="true"></field>
+ /// <field name="right" type="Number" integer="true" static="true"></field>
+ /// <field name="down" type="Number" integer="true" static="true"></field>
+ /// <field name="del" type="Number" integer="true" static="true"></field>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+Sys.UI.Key.prototype = {
+ backspace: 8,
+ tab: 9,
+ enter: 13,
+ esc: 27,
+ space: 32,
+ pageUp: 33,
+ pageDown: 34,
+ end: 35,
+ home: 36,
+ left: 37,
+ up: 38,
+ right: 39,
+ down: 40,
+ del: 127
+}
+Sys.UI.Key.registerEnum("Sys.UI.Key");
+Sys.UI.DomEvent = function Sys$UI$DomEvent(eventObject) {
+ /// <param name="eventObject"></param>
+ /// <field name="altKey" type="Boolean"></field>
+ /// <field name="button" type="Sys.UI.MouseButton"></field>
+ /// <field name="charCode" type="Number" integer="true"></field>
+ /// <field name="clientX" type="Number" integer="true"></field>
+ /// <field name="clientY" type="Number" integer="true"></field>
+ /// <field name="ctrlKey" type="Boolean"></field>
+ /// <field name="keyCode" type="Number" integer="true"></field>
+ /// <field name="offsetX" type="Number" integer="true"></field>
+ /// <field name="offsetY" type="Number" integer="true"></field>
+ /// <field name="screenX" type="Number" integer="true"></field>
+ /// <field name="screenY" type="Number" integer="true"></field>
+ /// <field name="shiftKey" type="Boolean"></field>
+ /// <field name="target" domElement="true"></field>
+ /// <field name="type" type="String"></field>
+ var e = Function._validateParams(arguments, [
+ {name: "eventObject"}
+ ]);
+ if (e) throw e;
+
+ var e = eventObject;
+ this.rawEvent = e;
+ this.altKey = e.altKey;
+ if (typeof(e.button) !== 'undefined') {
+ this.button = (typeof(e.which) !== 'undefined') ? e.button :
+ (e.button === 4) ? Sys.UI.MouseButton.middleButton :
+ (e.button === 2) ? Sys.UI.MouseButton.rightButton :
+ Sys.UI.MouseButton.leftButton;
+ }
+ if (e.type === 'keypress') {
+ this.charCode = e.charCode || e.keyCode;
+ }
+ else if (e.keyCode && (e.keyCode === 46)) {
+ this.keyCode = 127;
+ }
+ else {
+ this.keyCode = e.keyCode;
+ }
+ this.clientX = e.clientX;
+ this.clientY = e.clientY;
+ this.ctrlKey = e.ctrlKey;
+ this.target = e.target ? e.target : e.srcElement;
+ if (this.target) {
+ var loc = Sys.UI.DomElement.getLocation(this.target);
+ this.offsetX = (typeof(e.offsetX) !== 'undefined') ? e.offsetX : window.pageXOffset + (e.clientX || 0) - loc.x;
+ this.offsetY = (typeof(e.offsetY) !== 'undefined') ? e.offsetY : window.pageYOffset + (e.clientY || 0) - loc.y;
+ }
+ this.screenX = e.screenX;
+ this.screenY = e.screenY;
+ this.shiftKey = e.shiftKey;
+ this.type = e.type;
+}
+
+ function Sys$UI$DomEvent$preventDefault() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (this.rawEvent.preventDefault) {
+ this.rawEvent.preventDefault();
+ }
+ else if (window.event) {
+ window.event.returnValue = false;
+ }
+ }
+ function Sys$UI$DomEvent$stopPropagation() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (this.rawEvent.stopPropagation) {
+ this.rawEvent.stopPropagation();
+ }
+ else if (window.event) {
+ window.event.cancelBubble = true;
+ }
+ }
+Sys.UI.DomEvent.prototype = {
+ preventDefault: Sys$UI$DomEvent$preventDefault,
+ stopPropagation: Sys$UI$DomEvent$stopPropagation
+}
+Sys.UI.DomEvent.registerClass('Sys.UI.DomEvent');
+
+var $addHandler = Sys.UI.DomEvent.addHandler = function Sys$UI$DomEvent$addHandler(element, eventName, handler) {
+ /// <param name="element" domElement="true"></param>
+ /// <param name="eventName" type="String"></param>
+ /// <param name="handler" type="Function"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true},
+ {name: "eventName", type: String},
+ {name: "handler", type: Function}
+ ]);
+ if (e) throw e;
+
+ if (!element._events) {
+ element._events = {};
+ }
+ var eventCache = element._events[eventName];
+ if (!eventCache) {
+ element._events[eventName] = eventCache = [];
+ }
+ var browserHandler;
+ if (element.addEventListener) {
+ browserHandler = function(e) {
+ return handler.call(element, new Sys.UI.DomEvent(e));
+ }
+ element.addEventListener(eventName, browserHandler, false);
+ }
+ else if (element.attachEvent) {
+ browserHandler = function() {
+ return handler.call(element, new Sys.UI.DomEvent(window.event));
+ }
+ element.attachEvent('on' + eventName, browserHandler);
+ }
+ eventCache[eventCache.length] = {handler: handler, browserHandler: browserHandler};
+}
+
+var $addHandlers = Sys.UI.DomEvent.addHandlers = function Sys$UI$DomEvent$addHandlers(element, events, handlerOwner) {
+ /// <param name="element" domElement="true"></param>
+ /// <param name="events" type="Object"></param>
+ /// <param name="handlerOwner" optional="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true},
+ {name: "events", type: Object},
+ {name: "handlerOwner", optional: true}
+ ]);
+ if (e) throw e;
+
+ for (var name in events) {
+ var handler = events[name];
+ if (typeof(handler) !== 'function') throw Error.invalidOperation(Sys.Res.cantAddNonFunctionhandler);
+ if (handlerOwner) {
+ handler = Function.createDelegate(handlerOwner, handler);
+ }
+ $addHandler(element, name, handler);
+ }
+}
+
+var $clearHandlers = Sys.UI.DomEvent.clearHandlers = function Sys$UI$DomEvent$clearHandlers(element) {
+ /// <param name="element" domElement="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true}
+ ]);
+ if (e) throw e;
+
+ if (element._events) {
+ var cache = element._events;
+ for (var name in cache) {
+ var handlers = cache[name];
+ for (var i = handlers.length - 1; i >= 0; i--) {
+ $removeHandler(element, name, handlers[i].handler);
+ }
+ }
+ element._events = null;
+ }
+}
+
+var $removeHandler = Sys.UI.DomEvent.removeHandler = function Sys$UI$DomEvent$removeHandler(element, eventName, handler) {
+ /// <param name="element" domElement="true"></param>
+ /// <param name="eventName" type="String"></param>
+ /// <param name="handler" type="Function"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true},
+ {name: "eventName", type: String},
+ {name: "handler", type: Function}
+ ]);
+ if (e) throw e;
+
+ var browserHandler = null;
+ if ((typeof(element._events) !== 'object') || (element._events == null)) throw Error.invalidOperation(Sys.Res.eventHandlerInvalid);
+ var cache = element._events[eventName];
+ if (!(cache instanceof Array)) throw Error.invalidOperation(Sys.Res.eventHandlerInvalid);
+ var browserHandler = null;
+ for (var i = 0, l = cache.length; i < l; i++) {
+ if (cache[i].handler === handler) {
+ browserHandler = cache[i].browserHandler;
+ break;
+ }
+ }
+ if (typeof(browserHandler) !== 'function') throw Error.invalidOperation(Sys.Res.eventHandlerInvalid);
+ if (element.removeEventListener) {
+ element.removeEventListener(eventName, browserHandler, false);
+ }
+ else if (element.detachEvent) {
+ element.detachEvent('on' + eventName, browserHandler);
+ }
+ cache.splice(i, 1);
+}
+Sys.IContainer = function Sys$IContainer() {
+ throw Error.notImplemented();
+}
+
+ function Sys$IContainer$addComponent(component) {
+ /// <param name="component" type="Sys.Component"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "component", type: Sys.Component}
+ ]);
+ if (e) throw e;
+
+ throw Error.notImplemented();
+ }
+ function Sys$IContainer$removeComponent(component) {
+ /// <param name="component" type="Sys.Component"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "component", type: Sys.Component}
+ ]);
+ if (e) throw e;
+
+ throw Error.notImplemented();
+ }
+ function Sys$IContainer$findComponent(id) {
+ /// <param name="id" type="String"></param>
+ /// <returns type="Sys.Component"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "id", type: String}
+ ]);
+ if (e) throw e;
+
+ throw Error.notImplemented();
+ }
+ function Sys$IContainer$getComponents() {
+ /// <returns type="Array" elementType="Sys.Component"></returns>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+ }
+Sys.IContainer.prototype = {
+ addComponent: Sys$IContainer$addComponent,
+ removeComponent: Sys$IContainer$removeComponent,
+ findComponent: Sys$IContainer$findComponent,
+ getComponents: Sys$IContainer$getComponents
+}
+Sys.IContainer.registerInterface("Sys.IContainer");
+
+
+Sys._ScriptLoader = function Sys$_ScriptLoader() {
+ this._scriptsToLoad = null;
+ this._scriptLoadedDelegate = Function.createDelegate(this, this._scriptLoadedHandler);
+}
+
+ function Sys$_ScriptLoader$dispose() {
+ this._stopLoading();
+ if(this._events) {
+ delete this._events;
+ }
+ this._scriptLoadedDelegate = null;
+ }
+
+ function Sys$_ScriptLoader$loadScripts(scriptTimeout, allScriptsLoadedCallback, scriptLoadFailedCallback, scriptLoadTimeoutCallback) {
+ /// <param name="scriptTimeout" type="Number" integer="true"></param>
+ /// <param name="allScriptsLoadedCallback" type="Function" mayBeNull="true"></param>
+ /// <param name="scriptLoadFailedCallback" type="Function" mayBeNull="true"></param>
+ /// <param name="scriptLoadTimeoutCallback" type="Function" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "scriptTimeout", type: Number, integer: true},
+ {name: "allScriptsLoadedCallback", type: Function, mayBeNull: true},
+ {name: "scriptLoadFailedCallback", type: Function, mayBeNull: true},
+ {name: "scriptLoadTimeoutCallback", type: Function, mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ if(this._loading) {
+ throw Error.invalidOperation(Sys.Res.scriptLoaderAlreadyLoading);
+ }
+ this._loading = true;
+ this._allScriptsLoadedCallback = allScriptsLoadedCallback;
+ this._scriptLoadFailedCallback = scriptLoadFailedCallback;
+ this._scriptLoadTimeoutCallback = scriptLoadTimeoutCallback;
+
+ this._loadScriptsInternal();
+ }
+
+ function Sys$_ScriptLoader$notifyScriptLoaded() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+
+ if(!this._loading) {
+ return;
+ }
+
+ this._currentTask._notified++;
+
+ if(Sys.Browser.agent === Sys.Browser.Safari) {
+ if(this._currentTask._notified === 1) {
+ window.setTimeout(Function.createDelegate(this, function() {
+ this._scriptLoadedHandler(this._currentTask.get_scriptElement(), true);
+ }), 0);
+ }
+ }
+
+ }
+
+ function Sys$_ScriptLoader$queueCustomScriptTag(scriptAttributes) {
+ /// <param name="scriptAttributes" mayBeNull="false"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "scriptAttributes"}
+ ]);
+ if (e) throw e;
+
+ if(!this._scriptsToLoad) {
+ this._scriptsToLoad = [];
+ }
+ Array.add(this._scriptsToLoad, scriptAttributes);
+ }
+
+ function Sys$_ScriptLoader$queueScriptBlock(scriptContent) {
+ /// <param name="scriptContent" type="String" mayBeNull="false"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "scriptContent", type: String}
+ ]);
+ if (e) throw e;
+
+ if(!this._scriptsToLoad) {
+ this._scriptsToLoad = [];
+ }
+ Array.add(this._scriptsToLoad, {text: scriptContent});
+ }
+
+ function Sys$_ScriptLoader$queueScriptReference(scriptUrl) {
+ /// <param name="scriptUrl" type="String" mayBeNull="false"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "scriptUrl", type: String}
+ ]);
+ if (e) throw e;
+
+ if(!this._scriptsToLoad) {
+ this._scriptsToLoad = [];
+ }
+ Array.add(this._scriptsToLoad, {src: scriptUrl});
+ }
+
+ function Sys$_ScriptLoader$_createScriptElement(queuedScript) {
+ var scriptElement = document.createElement('SCRIPT');
+
+ scriptElement.type = 'text/javascript';
+
+ for (var attr in queuedScript) {
+ scriptElement[attr] = queuedScript[attr];
+ }
+
+ return scriptElement;
+ }
+
+ function Sys$_ScriptLoader$_loadScriptsInternal() {
+ if (this._scriptsToLoad && this._scriptsToLoad.length > 0) {
+ var nextScript = Array.dequeue(this._scriptsToLoad);
+ var scriptElement = this._createScriptElement(nextScript);
+
+ if (scriptElement.text && Sys.Browser.agent === Sys.Browser.Safari) {
+ scriptElement.innerHTML = scriptElement.text;
+ delete scriptElement.text;
+ }
+
+ if (typeof(nextScript.src) === "string") {
+ this._currentTask = new Sys._ScriptLoaderTask(scriptElement, this._scriptLoadedDelegate);
+ this._currentTask.execute();
+ }
+ else {
+ document.getElementsByTagName('HEAD')[0].appendChild(scriptElement);
+
+ Sys._ScriptLoader._clearScript(scriptElement);
+
+ this._loadScriptsInternal();
+ }
+ }
+ else {
+ var callback = this._allScriptsLoadedCallback;
+ this._stopLoading();
+ if(callback) {
+ callback(this);
+ }
+ }
+ }
+
+ function Sys$_ScriptLoader$_raiseError(multipleCallbacks) {
+ var callback = this._scriptLoadFailedCallback;
+ var scriptElement = this._currentTask.get_scriptElement();
+ this._stopLoading();
+
+ if(callback) {
+ callback(this, scriptElement, multipleCallbacks);
+ }
+ else {
+ throw Sys._ScriptLoader._errorScriptLoadFailed(scriptElement.src, multipleCallbacks);
+ }
+ }
+
+ function Sys$_ScriptLoader$_scriptLoadedHandler(scriptElement, loaded) {
+ if(loaded && this._currentTask._notified) {
+ if(this._currentTask._notified > 1) {
+ this._raiseError(true);
+ }
+ else {
+ Array.add(Sys._ScriptLoader._getLoadedScripts(), scriptElement.src);
+ this._currentTask.dispose();
+ this._currentTask = null;
+ this._loadScriptsInternal();
+ }
+ }
+ else {
+ this._raiseError(false);
+ }
+ }
+
+ function Sys$_ScriptLoader$_scriptLoadTimeoutHandler() {
+ var callback = this._scriptLoadTimeoutCallback;
+ this._stopLoading();
+
+ if(callback) {
+ callback(this);
+ }
+ }
+
+ function Sys$_ScriptLoader$_stopLoading() {
+ if(this._timeoutCookie) {
+ window.clearTimeout(this._timeoutCookie);
+ this._timeoutCookie = null;
+ }
+
+ if(this._currentTask) {
+ this._currentTask.dispose();
+ this._currentTask = null;
+ }
+
+ this._scriptsToLoad = null;
+ this._loading = null;
+
+ this._allScriptsLoadedCallback = null;
+ this._scriptLoadFailedCallback = null;
+ this._scriptLoadTimeoutCallback = null;
+ }
+Sys._ScriptLoader.prototype = {
+ dispose: Sys$_ScriptLoader$dispose,
+
+ loadScripts: Sys$_ScriptLoader$loadScripts,
+
+ notifyScriptLoaded: Sys$_ScriptLoader$notifyScriptLoaded,
+
+ queueCustomScriptTag: Sys$_ScriptLoader$queueCustomScriptTag,
+
+ queueScriptBlock: Sys$_ScriptLoader$queueScriptBlock,
+
+ queueScriptReference: Sys$_ScriptLoader$queueScriptReference,
+
+ _createScriptElement: Sys$_ScriptLoader$_createScriptElement,
+
+ _loadScriptsInternal: Sys$_ScriptLoader$_loadScriptsInternal,
+
+ _raiseError: Sys$_ScriptLoader$_raiseError,
+
+ _scriptLoadedHandler: Sys$_ScriptLoader$_scriptLoadedHandler,
+
+ _scriptLoadTimeoutHandler: Sys$_ScriptLoader$_scriptLoadTimeoutHandler,
+
+ _stopLoading: Sys$_ScriptLoader$_stopLoading
+}
+Sys._ScriptLoader.registerClass('Sys._ScriptLoader', null, Sys.IDisposable);
+
+Sys._ScriptLoader.getInstance = function Sys$_ScriptLoader$getInstance() {
+ var sl = Sys._ScriptLoader._activeInstance;
+ if(!sl) {
+ sl = Sys._ScriptLoader._activeInstance = new Sys._ScriptLoader();
+ }
+ return sl;
+}
+
+Sys._ScriptLoader.isScriptLoaded = function Sys$_ScriptLoader$isScriptLoaded(scriptSrc) {
+ var dummyScript = document.createElement('script');
+ dummyScript.src = scriptSrc;
+ return Array.contains(Sys._ScriptLoader._getLoadedScripts(), dummyScript.src);
+}
+
+Sys._ScriptLoader.readLoadedScripts = function Sys$_ScriptLoader$readLoadedScripts() {
+ if(!Sys._ScriptLoader._referencedScripts) {
+ var referencedScripts = Sys._ScriptLoader._referencedScripts = [];
+
+ var existingScripts = document.getElementsByTagName('SCRIPT');
+ for (i = existingScripts.length - 1; i >= 0; i--) {
+ var scriptNode = existingScripts[i];
+ var scriptSrc = scriptNode.src;
+ if (scriptSrc.length) {
+ if (!Array.contains(referencedScripts, scriptSrc)) {
+ Array.add(referencedScripts, scriptSrc);
+ }
+ }
+ }
+ }
+}
+
+Sys._ScriptLoader._clearScript = function Sys$_ScriptLoader$_clearScript(scriptElement) {
+ if (!Sys.Debug.isDebug) {
+ scriptElement.parentNode.removeChild(scriptElement);
+ }
+}
+
+Sys._ScriptLoader._errorScriptLoadFailed = function Sys$_ScriptLoader$_errorScriptLoadFailed(scriptUrl, multipleCallbacks) {
+ var errorMessage;
+ if(multipleCallbacks) {
+ errorMessage = Sys.Res.scriptLoadMultipleCallbacks;
+ }
+ else {
+ errorMessage = Sys.Res.scriptLoadFailedDebug;
+ }
+
+ var displayMessage = "Sys.ScriptLoadFailedException: " + String.format(errorMessage, scriptUrl);
+ var e = Error.create(displayMessage, {name: 'Sys.ScriptLoadFailedException', 'scriptUrl': scriptUrl });
+ e.popStackFrame();
+ return e;
+}
+
+Sys._ScriptLoader._getLoadedScripts = function Sys$_ScriptLoader$_getLoadedScripts() {
+ if(!Sys._ScriptLoader._referencedScripts) {
+ Sys._ScriptLoader._referencedScripts = [];
+ Sys._ScriptLoader.readLoadedScripts();
+ }
+ return Sys._ScriptLoader._referencedScripts;
+}
+
+
+Sys._ScriptLoaderTask = function Sys$_ScriptLoaderTask(scriptElement, completedCallback) {
+ /// <param name="scriptElement" domElement="true"></param>
+ /// <param name="completedCallback" type="Function"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "scriptElement", domElement: true},
+ {name: "completedCallback", type: Function}
+ ]);
+ if (e) throw e;
+
+ this._scriptElement = scriptElement;
+ this._completedCallback = completedCallback;
+ this._notified = 0;
+}
+
+ function Sys$_ScriptLoaderTask$get_scriptElement() {
+ /// <value domElement="true"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._scriptElement;
+ }
+
+ function Sys$_ScriptLoaderTask$dispose() {
+ if(this._disposed) {
+ return;
+ }
+ this._disposed = true;
+ this._removeScriptElementHandlers();
+ Sys._ScriptLoader._clearScript(this._scriptElement);
+ this._scriptElement = null;
+ }
+
+ function Sys$_ScriptLoaderTask$execute() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ this._addScriptElementHandlers();
+ document.getElementsByTagName('HEAD')[0].appendChild(this._scriptElement);
+ }
+
+ function Sys$_ScriptLoaderTask$_addScriptElementHandlers() {
+ this._scriptLoadDelegate = Function.createDelegate(this, this._scriptLoadHandler);
+
+ if (Sys.Browser.agent !== Sys.Browser.InternetExplorer) {
+ this._scriptElement.readyState = 'loaded';
+ $addHandler(this._scriptElement, 'load', this._scriptLoadDelegate);
+ }
+ else {
+ $addHandler(this._scriptElement, 'readystatechange', this._scriptLoadDelegate);
+ }
+ this._scriptErrorDelegate = Function.createDelegate(this, this._scriptErrorHandler);
+ $addHandler(this._scriptElement, 'error', this._scriptErrorDelegate);
+ }
+
+ function Sys$_ScriptLoaderTask$_removeScriptElementHandlers() {
+ if(this._scriptLoadDelegate) {
+ var scriptElement = this.get_scriptElement();
+ if (Sys.Browser.agent !== Sys.Browser.InternetExplorer) {
+ $removeHandler(scriptElement, 'load', this._scriptLoadDelegate);
+ }
+ else {
+ $removeHandler(scriptElement, 'readystatechange', this._scriptLoadDelegate);
+ }
+ $removeHandler(scriptElement, 'error', this._scriptErrorDelegate);
+ this._scriptErrorDelegate = null;
+ this._scriptLoadDelegate = null;
+ }
+ }
+
+ function Sys$_ScriptLoaderTask$_scriptErrorHandler() {
+ if(this._disposed) {
+ return;
+ }
+
+ this._completedCallback(this.get_scriptElement(), false);
+ }
+
+ function Sys$_ScriptLoaderTask$_scriptLoadHandler() {
+ if(this._disposed) {
+ return;
+ }
+
+ var scriptElement = this.get_scriptElement();
+ if ((scriptElement.readyState !== 'loaded') &&
+ (scriptElement.readyState !== 'complete')) {
+ return;
+ }
+
+ var _this = this;
+ window.setTimeout(function() {
+ _this._completedCallback(scriptElement, true);
+ }, 0);
+ }
+Sys._ScriptLoaderTask.prototype = {
+ get_scriptElement: Sys$_ScriptLoaderTask$get_scriptElement,
+
+ dispose: Sys$_ScriptLoaderTask$dispose,
+
+ execute: Sys$_ScriptLoaderTask$execute,
+
+ _addScriptElementHandlers: Sys$_ScriptLoaderTask$_addScriptElementHandlers,
+
+ _removeScriptElementHandlers: Sys$_ScriptLoaderTask$_removeScriptElementHandlers,
+
+ _scriptErrorHandler: Sys$_ScriptLoaderTask$_scriptErrorHandler,
+
+ _scriptLoadHandler: Sys$_ScriptLoaderTask$_scriptLoadHandler
+}
+Sys._ScriptLoaderTask.registerClass("Sys._ScriptLoaderTask", null, Sys.IDisposable);
+Sys.ApplicationLoadEventArgs = function Sys$ApplicationLoadEventArgs(components, isPartialLoad) {
+ /// <param name="components" type="Array" elementType="Sys.Component"></param>
+ /// <param name="isPartialLoad" type="Boolean"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "components", type: Array, elementType: Sys.Component},
+ {name: "isPartialLoad", type: Boolean}
+ ]);
+ if (e) throw e;
+
+ Sys.ApplicationLoadEventArgs.initializeBase(this);
+ this._components = components;
+ this._isPartialLoad = isPartialLoad;
+}
+
+ function Sys$ApplicationLoadEventArgs$get_components() {
+ /// <value type="Array" elementType="Sys.Component"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._components;
+ }
+ function Sys$ApplicationLoadEventArgs$get_isPartialLoad() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._isPartialLoad;
+ }
+Sys.ApplicationLoadEventArgs.prototype = {
+ get_components: Sys$ApplicationLoadEventArgs$get_components,
+ get_isPartialLoad: Sys$ApplicationLoadEventArgs$get_isPartialLoad
+}
+Sys.ApplicationLoadEventArgs.registerClass('Sys.ApplicationLoadEventArgs', Sys.EventArgs);
+Sys._Application = function Sys$_Application() {
+ Sys._Application.initializeBase(this);
+
+ this._disposableObjects = [];
+ this._components = {};
+ this._createdComponents = [];
+ this._secondPassComponents = [];
+
+ this._unloadHandlerDelegate = Function.createDelegate(this, this._unloadHandler);
+ this._loadHandlerDelegate = Function.createDelegate(this, this._loadHandler);
+
+ Sys.UI.DomEvent.addHandler(window, "unload", this._unloadHandlerDelegate);
+ Sys.UI.DomEvent.addHandler(window, "load", this._loadHandlerDelegate);
+}
+
+
+
+
+ function Sys$_Application$get_isCreatingComponents() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._creatingComponents;
+ }
+ function Sys$_Application$add_load(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this.get_events().addHandler("load", handler);
+ }
+ function Sys$_Application$remove_load(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this.get_events().removeHandler("load", handler);
+ }
+ function Sys$_Application$add_init(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ if (this._initialized) {
+ handler(this, Sys.EventArgs.Empty);
+ }
+ else {
+ this.get_events().addHandler("init", handler);
+ }
+ }
+ function Sys$_Application$remove_init(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this.get_events().removeHandler("init", handler);
+ }
+ function Sys$_Application$add_unload(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this.get_events().addHandler("unload", handler);
+ }
+ function Sys$_Application$remove_unload(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this.get_events().removeHandler("unload", handler);
+ }
+ function Sys$_Application$addComponent(component) {
+ /// <param name="component" type="Sys.Component"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "component", type: Sys.Component}
+ ]);
+ if (e) throw e;
+
+ var id = component.get_id();
+ if (!id) throw Error.invalidOperation(Sys.Res.cantAddWithoutId);
+ if (typeof(this._components[id]) !== 'undefined') throw Error.invalidOperation(String.format(Sys.Res.appDuplicateComponent, id));
+ this._components[id] = component;
+ }
+ function Sys$_Application$beginCreateComponents() {
+ this._creatingComponents = true;
+ }
+ function Sys$_Application$dispose() {
+ if (!this._disposing) {
+ this._disposing = true;
+ if (window.pageUnload) {
+ window.pageUnload(this, Sys.EventArgs.Empty);
+ }
+ var unloadHandler = this.get_events().getHandler("unload");
+ if (unloadHandler) {
+ unloadHandler(this, Sys.EventArgs.Empty);
+ }
+ var disposableObjects = Array.clone(this._disposableObjects);
+ for (var i = 0, l = disposableObjects.length; i < l; i++) {
+ disposableObjects[i].dispose();
+ }
+ Array.clear(this._disposableObjects);
+
+ Sys.UI.DomEvent.removeHandler(window, "unload", this._unloadHandlerDelegate);
+ if(this._loadHandlerDelegate) {
+ Sys.UI.DomEvent.removeHandler(window, "load", this._loadHandlerDelegate);
+ this._loadHandlerDelegate = null;
+ }
+
+ var sl = Sys._ScriptLoader.getInstance();
+ if(sl) {
+ sl.dispose();
+ }
+
+ Sys._Application.callBaseMethod(this, 'dispose');
+ }
+ }
+ function Sys$_Application$endCreateComponents() {
+ var components = this._secondPassComponents;
+ for (var i = 0, l = components.length; i < l; i++) {
+ var component = components[i].component;
+ Sys$Component$_setReferences(component, components[i].references);
+ component.endUpdate();
+ }
+ this._secondPassComponents = [];
+ this._creatingComponents = false;
+ }
+ function Sys$_Application$findComponent(id, parent) {
+ /// <param name="id" type="String"></param>
+ /// <param name="parent" optional="true" mayBeNull="true"></param>
+ /// <returns type="Sys.Component" mayBeNull="true"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "id", type: String},
+ {name: "parent", mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ return (parent ?
+ ((Sys.IContainer.isInstanceOfType(parent)) ?
+ parent.findComponent(id) :
+ parent[id] || null) :
+ Sys.Application._components[id] || null);
+ }
+ function Sys$_Application$getComponents() {
+ /// <returns type="Array" elementType="Sys.Component"></returns>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ var res = [];
+ var components = this._components;
+ for (var name in components) {
+ res[res.length] = components[name];
+ }
+ return res;
+ }
+ function Sys$_Application$initialize() {
+ if(!this._initialized && !this._initializing) {
+ this._initializing = true;
+ window.setTimeout(Function.createDelegate(this, this._doInitialize), 0);
+ }
+ }
+ function Sys$_Application$notifyScriptLoaded() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ var sl = Sys._ScriptLoader.getInstance();
+ if(sl) {
+ sl.notifyScriptLoaded();
+ }
+ }
+ function Sys$_Application$registerDisposableObject(object) {
+ /// <param name="object" type="Sys.IDisposable"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "object", type: Sys.IDisposable}
+ ]);
+ if (e) throw e;
+
+ if (!this._disposing) {
+ this._disposableObjects[this._disposableObjects.length] = object;
+ }
+ }
+ function Sys$_Application$raiseLoad() {
+ var h = this.get_events().getHandler("load");
+ var args = new Sys.ApplicationLoadEventArgs(Array.clone(this._createdComponents), !this._initializing);
+ if (h) {
+ h(this, args);
+ }
+
+ if (window.pageLoad) {
+ window.pageLoad(this, args);
+ }
+ this._createdComponents = [];
+ }
+ function Sys$_Application$removeComponent(component) {
+ /// <param name="component" type="Sys.Component"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "component", type: Sys.Component}
+ ]);
+ if (e) throw e;
+
+ var id = component.get_id();
+ if (id) delete this._components[id];
+ }
+ function Sys$_Application$unregisterDisposableObject(object) {
+ /// <param name="object" type="Sys.IDisposable"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "object", type: Sys.IDisposable}
+ ]);
+ if (e) throw e;
+
+ if (!this._disposing) {
+ Array.remove(this._disposableObjects, object);
+ }
+ }
+ function Sys$_Application$_addComponentToSecondPass(component, references) {
+ this._secondPassComponents[this._secondPassComponents.length] = {component: component, references: references};
+ }
+ function Sys$_Application$_doInitialize() {
+ Sys._Application.callBaseMethod(this, 'initialize');
+
+ var handler = this.get_events().getHandler("init");
+ if (handler) {
+ this.beginCreateComponents();
+ handler(this, Sys.EventArgs.Empty);
+ this.endCreateComponents();
+ }
+ this.raiseLoad();
+ this._initializing = false;
+ }
+ function Sys$_Application$_loadHandler() {
+ if(this._loadHandlerDelegate) {
+ Sys.UI.DomEvent.removeHandler(window, "load", this._loadHandlerDelegate);
+ this._loadHandlerDelegate = null;
+ }
+ this.initialize();
+ }
+ function Sys$_Application$_unloadHandler(event) {
+ this.dispose();
+ }
+Sys._Application.prototype = {
+ _creatingComponents: false,
+ _disposing: false,
+
+ get_isCreatingComponents: Sys$_Application$get_isCreatingComponents,
+ add_load: Sys$_Application$add_load,
+ remove_load: Sys$_Application$remove_load,
+ add_init: Sys$_Application$add_init,
+ remove_init: Sys$_Application$remove_init,
+ add_unload: Sys$_Application$add_unload,
+ remove_unload: Sys$_Application$remove_unload,
+ addComponent: Sys$_Application$addComponent,
+ beginCreateComponents: Sys$_Application$beginCreateComponents,
+ dispose: Sys$_Application$dispose,
+ endCreateComponents: Sys$_Application$endCreateComponents,
+ findComponent: Sys$_Application$findComponent,
+ getComponents: Sys$_Application$getComponents,
+ initialize: Sys$_Application$initialize,
+ notifyScriptLoaded: Sys$_Application$notifyScriptLoaded,
+ registerDisposableObject: Sys$_Application$registerDisposableObject,
+ raiseLoad: Sys$_Application$raiseLoad,
+ removeComponent: Sys$_Application$removeComponent,
+ unregisterDisposableObject: Sys$_Application$unregisterDisposableObject,
+ _addComponentToSecondPass: Sys$_Application$_addComponentToSecondPass,
+ _doInitialize: Sys$_Application$_doInitialize,
+ _loadHandler: Sys$_Application$_loadHandler,
+ _unloadHandler: Sys$_Application$_unloadHandler
+}
+Sys._Application.registerClass('Sys._Application', Sys.Component, Sys.IContainer);
+
+Sys.Application = new Sys._Application();
+
+var $find = Sys.Application.findComponent;
+
+Type.registerNamespace('Sys.Net');
+
+Sys.Net.WebRequestExecutor = function Sys$Net$WebRequestExecutor() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ this._webRequest = null;
+ this._resultObject = null;
+}
+
+
+ function Sys$Net$WebRequestExecutor$get_webRequest() {
+ /// <value type="Sys.Net.WebRequest"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._webRequest;
+ }
+
+ function Sys$Net$WebRequestExecutor$_set_webRequest(value) {
+ if (this.get_started()) {
+ throw Error.invalidOperation(String.format(Sys.Res.cannotCallOnceStarted, 'set_webRequest'));
+ }
+
+ this._webRequest = value;
+ }
+
+
+ function Sys$Net$WebRequestExecutor$get_started() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+ }
+
+ function Sys$Net$WebRequestExecutor$get_responseAvailable() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+ }
+
+ function Sys$Net$WebRequestExecutor$get_timedOut() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+ }
+ function Sys$Net$WebRequestExecutor$get_aborted() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+ }
+ function Sys$Net$WebRequestExecutor$get_responseData() {
+ /// <value type="String"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+ }
+ function Sys$Net$WebRequestExecutor$get_statusCode() {
+ /// <value type="Number"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+ }
+ function Sys$Net$WebRequestExecutor$get_statusText() {
+ /// <value type="String"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+ }
+ function Sys$Net$WebRequestExecutor$get_xml() {
+ /// <value></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+ }
+ function Sys$Net$WebRequestExecutor$get_object() {
+ /// <value></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (!this._resultObject) {
+ this._resultObject = Sys.Serialization.JavaScriptSerializer.deserialize(this.get_responseData());
+ }
+ return this._resultObject;
+ }
+
+
+ function Sys$Net$WebRequestExecutor$executeRequest() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+ }
+ function Sys$Net$WebRequestExecutor$abort() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+ }
+ function Sys$Net$WebRequestExecutor$getResponseHeader(header) {
+ /// <param name="header" type="String"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "header", type: String}
+ ]);
+ if (e) throw e;
+
+ throw Error.notImplemented();
+ }
+ function Sys$Net$WebRequestExecutor$getAllResponseHeaders() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+ }
+Sys.Net.WebRequestExecutor.prototype = {
+ get_webRequest: Sys$Net$WebRequestExecutor$get_webRequest,
+
+ _set_webRequest: Sys$Net$WebRequestExecutor$_set_webRequest,
+
+ get_started: Sys$Net$WebRequestExecutor$get_started,
+
+ get_responseAvailable: Sys$Net$WebRequestExecutor$get_responseAvailable,
+
+ get_timedOut: Sys$Net$WebRequestExecutor$get_timedOut,
+ get_aborted: Sys$Net$WebRequestExecutor$get_aborted,
+ get_responseData: Sys$Net$WebRequestExecutor$get_responseData,
+ get_statusCode: Sys$Net$WebRequestExecutor$get_statusCode,
+ get_statusText: Sys$Net$WebRequestExecutor$get_statusText,
+ get_xml: Sys$Net$WebRequestExecutor$get_xml,
+ get_object: Sys$Net$WebRequestExecutor$get_object,
+
+ executeRequest: Sys$Net$WebRequestExecutor$executeRequest,
+ abort: Sys$Net$WebRequestExecutor$abort,
+ getResponseHeader: Sys$Net$WebRequestExecutor$getResponseHeader,
+ getAllResponseHeaders: Sys$Net$WebRequestExecutor$getAllResponseHeaders
+}
+Sys.Net.WebRequestExecutor.registerClass('Sys.Net.WebRequestExecutor');
+window.XMLDOM = function window$XMLDOM(markup) {
+ if (!window.DOMParser) {
+ var progIDs = [ 'Msxml2.DOMDocument.3.0', 'Msxml2.DOMDocument' ];
+ for (var i = 0; i < progIDs.length; i++) {
+ try {
+ var xmlDOM = new ActiveXObject(progIDs[i]);
+ xmlDOM.async = false;
+ xmlDOM.loadXML(markup);
+ xmlDOM.setProperty('SelectionLanguage', 'XPath');
+ return xmlDOM;
+ }
+ catch (ex) {
+ }
+ }
+ return null;
+ }
+ else {
+ try {
+ var domParser = new window.DOMParser();
+ return domParser.parseFromString(markup, 'text/xml');
+ } catch (ex) {
+ return null;
+ }
+ }
+ return null;
+ }
+
+Sys.Net.XMLHttpExecutor = function Sys$Net$XMLHttpExecutor() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+
+ Sys.Net.XMLHttpExecutor.initializeBase(this);
+
+ var _this = this;
+ this._xmlHttpRequest = null;
+ this._webRequest = null;
+ this._responseAvailable = false;
+ this._timedOut = false;
+ this._timer = null;
+ this._aborted = false;
+ this._started = false;
+
+ this._onReadyStateChange = function () {
+
+ if (_this._xmlHttpRequest.readyState === 4 ) {
+
+ _this._clearTimer();
+ _this._responseAvailable = true;
+ _this._webRequest.completed(Sys.EventArgs.Empty);
+ if (_this._xmlHttpRequest != null) {
+ _this._xmlHttpRequest.onreadystatechange = Function.emptyMethod;
+ _this._xmlHttpRequest = null;
+ }
+ }
+ }
+
+ this._clearTimer = function this$_clearTimer() {
+ if (_this._timer != null) {
+ window.clearTimeout(_this._timer);
+ _this._timer = null;
+ }
+ }
+
+ this._onTimeout = function this$_onTimeout() {
+ if (!_this._responseAvailable) {
+ _this._clearTimer();
+ _this._timedOut = true;
+ _this._xmlHttpRequest.onreadystatechange = Function.emptyMethod;
+ _this._xmlHttpRequest.abort();
+ _this._webRequest.completed(Sys.EventArgs.Empty);
+ _this._xmlHttpRequest = null;
+ }
+ }
+
+}
+
+
+
+ function Sys$Net$XMLHttpExecutor$get_timedOut() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._timedOut;
+ }
+
+ function Sys$Net$XMLHttpExecutor$get_started() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._started;
+ }
+
+ function Sys$Net$XMLHttpExecutor$get_responseAvailable() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._responseAvailable;
+ }
+
+ function Sys$Net$XMLHttpExecutor$get_aborted() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._aborted;
+ }
+
+ function Sys$Net$XMLHttpExecutor$executeRequest() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ this._webRequest = this.get_webRequest();
+
+ if (this._started) {
+ throw Error.invalidOperation(String.format(Sys.Res.cannotCallOnceStarted, 'executeRequest'));
+ }
+ if (this._webRequest === null) {
+ throw Error.invalidOperation(Sys.Res.nullWebRequest);
+ }
+
+ var body = this._webRequest.get_body();
+ var headers = this._webRequest.get_headers();
+ this._xmlHttpRequest = new XMLHttpRequest();
+ this._xmlHttpRequest.onreadystatechange = this._onReadyStateChange;
+ var verb = this._webRequest.get_httpVerb();
+ this._xmlHttpRequest.open(verb, this._webRequest.getResolvedUrl(), true );
+ if (headers) {
+ for (var header in headers) {
+ var val = headers[header];
+ if (typeof(val) !== "function")
+ this._xmlHttpRequest.setRequestHeader(header, val);
+ }
+ }
+
+ if (verb.toLowerCase() === "post") {
+ if ((headers === null) || !headers['Content-Type']) {
+ this._xmlHttpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded');
+ }
+
+ if (!body) {
+ body = "";
+ }
+ }
+
+ var timeout = this._webRequest.get_timeout();
+ if (timeout > 0) {
+ this._timer = window.setTimeout(Function.createDelegate(this, this._onTimeout), timeout);
+ }
+ this._xmlHttpRequest.send(body);
+ this._started = true;
+ }
+
+ function Sys$Net$XMLHttpExecutor$getResponseHeader(header) {
+ /// <param name="header" type="String"></param>
+ /// <returns type="String"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "header", type: String}
+ ]);
+ if (e) throw e;
+
+ if (!this._responseAvailable) {
+ throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'getResponseHeader'));
+ }
+ if (!this._xmlHttpRequest) {
+ throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'getResponseHeader'));
+ }
+
+ var result;
+ try {
+ result = this._xmlHttpRequest.getResponseHeader(header);
+ } catch (e) {
+ }
+ if (!result) result = "";
+ return result;
+ }
+
+ function Sys$Net$XMLHttpExecutor$getAllResponseHeaders() {
+ /// <returns type="String"></returns>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (!this._responseAvailable) {
+ throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'getAllResponseHeaders'));
+ }
+ if (!this._xmlHttpRequest) {
+ throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'getAllResponseHeaders'));
+ }
+
+ return this._xmlHttpRequest.getAllResponseHeaders();
+ }
+
+ function Sys$Net$XMLHttpExecutor$get_responseData() {
+ /// <value type="String"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (!this._responseAvailable) {
+ throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'get_responseData'));
+ }
+ if (!this._xmlHttpRequest) {
+ throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'get_responseData'));
+ }
+
+ return this._xmlHttpRequest.responseText;
+ }
+
+ function Sys$Net$XMLHttpExecutor$get_statusCode() {
+ /// <value type="Number"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (!this._responseAvailable) {
+ throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'get_statusCode'));
+ }
+ if (!this._xmlHttpRequest) {
+ throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'get_statusCode'));
+ }
+
+ return this._xmlHttpRequest.status;
+ }
+
+ function Sys$Net$XMLHttpExecutor$get_statusText() {
+ /// <value type="String"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (!this._responseAvailable) {
+ throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'get_statusText'));
+ }
+ if (!this._xmlHttpRequest) {
+ throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'get_statusText'));
+ }
+
+ return this._xmlHttpRequest.statusText;
+ }
+
+ function Sys$Net$XMLHttpExecutor$get_xml() {
+ /// <value></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (!this._responseAvailable) {
+ throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'get_xml'));
+ }
+ if (!this._xmlHttpRequest) {
+ throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'get_xml'));
+ }
+
+ var xml = this._xmlHttpRequest.responseXML;
+ if (!xml || !xml.documentElement) {
+
+ xml = new XMLDOM(this._xmlHttpRequest.responseText);
+
+ if (!xml || !xml.documentElement)
+ return null;
+ }
+ else if (navigator.userAgent.indexOf('MSIE') !== -1) {
+ xml.setProperty('SelectionLanguage', 'XPath');
+ }
+
+ if (xml.documentElement.namespaceURI === "http://www.mozilla.org/newlayout/xml/parsererror.xml" &&
+ xml.documentElement.tagName === "parsererror") {
+ return null;
+ }
+
+ if (xml.documentElement.firstChild && xml.documentElement.firstChild.tagName === "parsererror") {
+ return null;
+ }
+
+ return xml;
+ }
+
+ function Sys$Net$XMLHttpExecutor$abort() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (!this._started) {
+ throw Error.invalidOperation(Sys.Res.cannotAbortBeforeStart);
+ }
+
+ if (this._aborted || this._responseAvailable || this._timedOut)
+ return;
+
+ this._aborted = true;
+
+ this._clearTimer();
+
+ if (this._xmlHttpRequest && !this._responseAvailable) {
+
+ this._xmlHttpRequest.onreadystatechange = Function.emptyMethod;
+ this._xmlHttpRequest.abort();
+
+ this._xmlHttpRequest = null;
+ var handler = this._webRequest._get_eventHandlerList().getHandler("completed");
+ if (handler) {
+ handler(this, Sys.EventArgs.Empty);
+ }
+ }
+ }
+Sys.Net.XMLHttpExecutor.prototype = {
+
+ get_timedOut: Sys$Net$XMLHttpExecutor$get_timedOut,
+
+ get_started: Sys$Net$XMLHttpExecutor$get_started,
+
+ get_responseAvailable: Sys$Net$XMLHttpExecutor$get_responseAvailable,
+
+ get_aborted: Sys$Net$XMLHttpExecutor$get_aborted,
+
+ executeRequest: Sys$Net$XMLHttpExecutor$executeRequest,
+
+ getResponseHeader: Sys$Net$XMLHttpExecutor$getResponseHeader,
+
+ getAllResponseHeaders: Sys$Net$XMLHttpExecutor$getAllResponseHeaders,
+
+ get_responseData: Sys$Net$XMLHttpExecutor$get_responseData,
+
+ get_statusCode: Sys$Net$XMLHttpExecutor$get_statusCode,
+
+ get_statusText: Sys$Net$XMLHttpExecutor$get_statusText,
+
+ get_xml: Sys$Net$XMLHttpExecutor$get_xml,
+
+ abort: Sys$Net$XMLHttpExecutor$abort
+}
+Sys.Net.XMLHttpExecutor.registerClass('Sys.Net.XMLHttpExecutor', Sys.Net.WebRequestExecutor);
+Sys.Net._WebRequestManager = function Sys$Net$_WebRequestManager() {
+ this._this = this;
+ this._defaultTimeout = 0;
+ this._defaultExecutorType = "Sys.Net.XMLHttpExecutor";
+}
+
+
+ function Sys$Net$_WebRequestManager$add_invokingRequest(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this._get_eventHandlerList().addHandler("invokingRequest", handler);
+ }
+ function Sys$Net$_WebRequestManager$remove_invokingRequest(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this._get_eventHandlerList().removeHandler("invokingRequest", handler);
+ }
+
+ function Sys$Net$_WebRequestManager$add_completedRequest(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this._get_eventHandlerList().addHandler("completedRequest", handler);
+ }
+ function Sys$Net$_WebRequestManager$remove_completedRequest(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this._get_eventHandlerList().removeHandler("completedRequest", handler);
+ }
+
+ function Sys$Net$_WebRequestManager$_get_eventHandlerList() {
+ if (!this._events) {
+ this._events = new Sys.EventHandlerList();
+ }
+ return this._events;
+ }
+
+ function Sys$Net$_WebRequestManager$get_defaultTimeout() {
+ /// <value type="Number"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._defaultTimeout;
+ }
+ function Sys$Net$_WebRequestManager$set_defaultTimeout(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Number}]);
+ if (e) throw e;
+
+ if (value < 0) {
+ throw Error.argumentOutOfRange("value", value, Sys.Res.invalidTimeout);
+ }
+
+ this._defaultTimeout = value;
+ }
+
+ function Sys$Net$_WebRequestManager$get_defaultExecutorType() {
+ /// <value type="String"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._defaultExecutorType;
+ }
+ function Sys$Net$_WebRequestManager$set_defaultExecutorType(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: String}]);
+ if (e) throw e;
+
+ this._defaultExecutorType = value;
+ }
+
+ function Sys$Net$_WebRequestManager$executeRequest(webRequest) {
+ /// <param name="webRequest" type="Sys.Net.WebRequest"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "webRequest", type: Sys.Net.WebRequest}
+ ]);
+ if (e) throw e;
+
+ var executor = webRequest.get_executor();
+ if (!executor) {
+
+ var failed = false;
+ try {
+ var executorType = eval(this._defaultExecutorType);
+ executor = new executorType();
+ } catch (e) {
+ failed = true;
+ }
+
+ if (failed || !Sys.Net.WebRequestExecutor.isInstanceOfType(executor) || !executor) {
+ throw Error.argument("defaultExecutorType", String.format(Sys.Res.invalidExecutorType, this._defaultExecutorType));
+ }
+
+ webRequest.set_executor(executor);
+ }
+
+ if (executor.get_aborted()) {
+ return;
+ }
+
+ var evArgs = new Sys.Net.NetworkRequestEventArgs(webRequest);
+ var handler = this._get_eventHandlerList().getHandler("invokingRequest");
+ if (handler) {
+ handler(this, evArgs);
+ }
+
+ if (!evArgs.get_cancel()) {
+ executor.executeRequest();
+ }
+ }
+Sys.Net._WebRequestManager.prototype = {
+ add_invokingRequest: Sys$Net$_WebRequestManager$add_invokingRequest,
+ remove_invokingRequest: Sys$Net$_WebRequestManager$remove_invokingRequest,
+
+ add_completedRequest: Sys$Net$_WebRequestManager$add_completedRequest,
+ remove_completedRequest: Sys$Net$_WebRequestManager$remove_completedRequest,
+
+ _get_eventHandlerList: Sys$Net$_WebRequestManager$_get_eventHandlerList,
+
+ get_defaultTimeout: Sys$Net$_WebRequestManager$get_defaultTimeout,
+ set_defaultTimeout: Sys$Net$_WebRequestManager$set_defaultTimeout,
+
+ get_defaultExecutorType: Sys$Net$_WebRequestManager$get_defaultExecutorType,
+ set_defaultExecutorType: Sys$Net$_WebRequestManager$set_defaultExecutorType,
+
+ executeRequest: Sys$Net$_WebRequestManager$executeRequest
+}
+
+Sys.Net._WebRequestManager.registerClass('Sys.Net._WebRequestManager');
+
+Sys.Net.WebRequestManager = new Sys.Net._WebRequestManager();
+Sys.Net.NetworkRequestEventArgs = function Sys$Net$NetworkRequestEventArgs(webRequest) {
+ /// <param name="webRequest" type="Sys.Net.WebRequest"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "webRequest", type: Sys.Net.WebRequest}
+ ]);
+ if (e) throw e;
+
+ Sys.Net.NetworkRequestEventArgs.initializeBase(this);
+ this._webRequest = webRequest;
+}
+
+
+ function Sys$Net$NetworkRequestEventArgs$get_webRequest() {
+ /// <value type="Sys.Net.WebRequest"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._webRequest;
+ }
+Sys.Net.NetworkRequestEventArgs.prototype = {
+ get_webRequest: Sys$Net$NetworkRequestEventArgs$get_webRequest
+}
+
+Sys.Net.NetworkRequestEventArgs.registerClass('Sys.Net.NetworkRequestEventArgs', Sys.CancelEventArgs);
+Sys.Net.WebRequest = function Sys$Net$WebRequest() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ this._url = "";
+ this._headers = { };
+ this._body = null;
+ this._userContext = null;
+ this._httpVerb = null;
+ this._executor = null;
+ this._invokeCalled = false;
+ this._timeout = 0;
+}
+
+
+ function Sys$Net$WebRequest$add_completed(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this._get_eventHandlerList().addHandler("completed", handler);
+ }
+ function Sys$Net$WebRequest$remove_completed(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this._get_eventHandlerList().removeHandler("completed", handler);
+ }
+
+ function Sys$Net$WebRequest$completed(eventArgs) {
+ /// <param name="eventArgs" type="Sys.EventArgs"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "eventArgs", type: Sys.EventArgs}
+ ]);
+ if (e) throw e;
+
+ var handler = Sys.Net.WebRequestManager._get_eventHandlerList().getHandler("completedRequest");
+ if (handler) {
+ handler(this._executor, eventArgs);
+ }
+
+ handler = this._get_eventHandlerList().getHandler("completed");
+ if (handler) {
+ handler(this._executor, eventArgs);
+ }
+ }
+
+ function Sys$Net$WebRequest$_get_eventHandlerList() {
+ if (!this._events) {
+ this._events = new Sys.EventHandlerList();
+ }
+ return this._events;
+ }
+
+ function Sys$Net$WebRequest$get_url() {
+ /// <value type="String"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._url;
+ }
+ function Sys$Net$WebRequest$set_url(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: String}]);
+ if (e) throw e;
+
+ this._url = value;
+ }
+
+ function Sys$Net$WebRequest$get_headers() {
+ /// <value></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._headers;
+ }
+
+ function Sys$Net$WebRequest$get_httpVerb() {
+ /// <value type="String"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (this._httpVerb === null) {
+ if (this._body === null) {
+ return "GET";
+ }
+ return "POST";
+ }
+ return this._httpVerb;
+ }
+ function Sys$Net$WebRequest$set_httpVerb(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: String}]);
+ if (e) throw e;
+
+ if (value.length === 0) {
+ throw Error.argument('value', Sys.Res.invalidHttpVerb);
+ }
+
+ this._httpVerb = value;
+ }
+
+ function Sys$Net$WebRequest$get_body() {
+ /// <value mayBeNull="true"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._body;
+ }
+ function Sys$Net$WebRequest$set_body(value) {
+ var e = Function._validateParams(arguments, [{name: "value", mayBeNull: true}]);
+ if (e) throw e;
+
+ this._body = value;
+ }
+
+ function Sys$Net$WebRequest$get_userContext() {
+ /// <value mayBeNull="true"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._userContext;
+ }
+ function Sys$Net$WebRequest$set_userContext(value) {
+ var e = Function._validateParams(arguments, [{name: "value", mayBeNull: true}]);
+ if (e) throw e;
+
+ this._userContext = value;
+ }
+
+ function Sys$Net$WebRequest$get_executor() {
+ /// <value type="Sys.Net.WebRequestExecutor"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._executor;
+ }
+ function Sys$Net$WebRequest$set_executor(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Sys.Net.WebRequestExecutor}]);
+ if (e) throw e;
+
+ if (this._executor !== null && this._executor.get_started()) {
+ throw Error.invalidOperation(Sys.Res.setExecutorAfterActive);
+ }
+
+ this._executor = value;
+ this._executor._set_webRequest(this);
+ }
+
+ function Sys$Net$WebRequest$get_timeout() {
+ /// <value type="Number"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (this._timeout === 0) {
+ return Sys.Net.WebRequestManager.get_defaultTimeout();
+ }
+ return this._timeout;
+ }
+ function Sys$Net$WebRequest$set_timeout(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Number}]);
+ if (e) throw e;
+
+ if (value < 0) {
+ throw Error.argumentOutOfRange("value", value, Sys.Res.invalidTimeout);
+ }
+
+ this._timeout = value;
+ }
+
+ function Sys$Net$WebRequest$getResolvedUrl() {
+ /// <returns type="String"></returns>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return Sys.Net.WebRequest._resolveUrl(this._url);
+ }
+
+ function Sys$Net$WebRequest$invoke() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (this._invokeCalled) {
+ throw Error.invalidOperation(Sys.Res.invokeCalledTwice);
+ }
+
+ Sys.Net.WebRequestManager.executeRequest(this);
+ this._invokeCalled = true;
+ }
+Sys.Net.WebRequest.prototype = {
+ add_completed: Sys$Net$WebRequest$add_completed,
+ remove_completed: Sys$Net$WebRequest$remove_completed,
+
+ completed: Sys$Net$WebRequest$completed,
+
+ _get_eventHandlerList: Sys$Net$WebRequest$_get_eventHandlerList,
+
+ get_url: Sys$Net$WebRequest$get_url,
+ set_url: Sys$Net$WebRequest$set_url,
+
+ get_headers: Sys$Net$WebRequest$get_headers,
+
+ get_httpVerb: Sys$Net$WebRequest$get_httpVerb,
+ set_httpVerb: Sys$Net$WebRequest$set_httpVerb,
+
+ get_body: Sys$Net$WebRequest$get_body,
+ set_body: Sys$Net$WebRequest$set_body,
+
+ get_userContext: Sys$Net$WebRequest$get_userContext,
+ set_userContext: Sys$Net$WebRequest$set_userContext,
+
+ get_executor: Sys$Net$WebRequest$get_executor,
+ set_executor: Sys$Net$WebRequest$set_executor,
+
+ get_timeout: Sys$Net$WebRequest$get_timeout,
+ set_timeout: Sys$Net$WebRequest$set_timeout,
+
+ getResolvedUrl: Sys$Net$WebRequest$getResolvedUrl,
+
+ invoke: Sys$Net$WebRequest$invoke
+}
+
+Sys.Net.WebRequest._resolveUrl = function Sys$Net$WebRequest$_resolveUrl(url, baseUrl) {
+ if (url && url.indexOf('://') !== -1) {
+ return url;
+ }
+
+ if (!baseUrl || baseUrl.length === 0) {
+ var baseElement = document.getElementsByTagName('base')[0];
+ if (baseElement && baseElement.href && baseElement.href.length > 0) {
+ baseUrl = baseElement.href;
+ }
+ else {
+ baseUrl = document.URL;
+ }
+ }
+
+ var qsStart = baseUrl.indexOf('?');
+ if (qsStart !== -1) {
+ baseUrl = baseUrl.substr(0, qsStart);
+ }
+ baseUrl = baseUrl.substr(0, baseUrl.lastIndexOf('/') + 1);
+
+ if (!url || url.length === 0) {
+ return baseUrl;
+ }
+
+ if (url.charAt(0) === '/') {
+ var slashslash = baseUrl.indexOf('://');
+ if (slashslash === -1) {
+ throw Error.argument("baseUrl", Sys.Res.badBaseUrl1);
+ }
+
+ var nextSlash = baseUrl.indexOf('/', slashslash + 3);
+ if (nextSlash === -1) {
+ throw Error.argument("baseUrl", Sys.Res.badBaseUrl2);
+ }
+
+ return baseUrl.substr(0, nextSlash) + url;
+ }
+ else {
+ var lastSlash = baseUrl.lastIndexOf('/');
+ if (lastSlash === -1) {
+ throw Error.argument("baseUrl", Sys.Res.badBaseUrl3);
+ }
+
+ return baseUrl.substr(0, lastSlash+1) + url;
+ }
+}
+
+Sys.Net.WebRequest._createQueryString = function Sys$Net$WebRequest$_createQueryString(queryString, encodeMethod) {
+ if (!encodeMethod)
+ encodeMethod = encodeURIComponent;
+
+ var sb = new Sys.StringBuilder();
+
+ var i = 0;
+ for (var arg in queryString) {
+ var obj = queryString[arg];
+ if (typeof(obj) === "function") continue;
+ var val = Sys.Serialization.JavaScriptSerializer.serialize(obj);
+ if (i !== 0) {
+ sb.append('&');
+ }
+
+ sb.append(arg);
+ sb.append('=');
+ sb.append(encodeMethod(val));
+
+ i++;
+ }
+
+ return sb.toString();
+}
+
+Sys.Net.WebRequest._createUrl = function Sys$Net$WebRequest$_createUrl(url, queryString) {
+ if (!queryString) {
+ return url;
+ }
+
+ var qs = Sys.Net.WebRequest._createQueryString(queryString);
+ if (qs.length > 0) {
+ var sep = '?';
+ if (url && url.indexOf('?') !== -1)
+ sep = '&';
+ return url + sep + qs;
+ } else {
+ return url;
+ }
+}
+
+Sys.Net.WebRequest.registerClass('Sys.Net.WebRequest');
+Sys.Net.WebServiceProxy = function Sys$Net$WebServiceProxy() {
+}
+
+
+ function Sys$Net$WebServiceProxy$set_timeout(value) {
+ this._timeout = value;
+ }
+ function Sys$Net$WebServiceProxy$get_timeout() {
+ /// <value type="Number"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._timeout;
+ }
+ function Sys$Net$WebServiceProxy$set_defaultUserContext(value) {
+ this._userContext = value;
+ }
+ function Sys$Net$WebServiceProxy$get_defaultUserContext() {
+ /// <value></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._userContext;
+ }
+ function Sys$Net$WebServiceProxy$set_defaultSucceededCallback(value) {
+ this._succeeded = value;
+ }
+ function Sys$Net$WebServiceProxy$get_defaultSucceededCallback() {
+ /// <value type="Function"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._succeeded;
+ }
+ function Sys$Net$WebServiceProxy$set_defaultFailedCallback(value) {
+ this._failed = value;
+ }
+ function Sys$Net$WebServiceProxy$get_defaultFailedCallback() {
+ /// <value type="Function"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._failed;
+ }
+ function Sys$Net$WebServiceProxy$set_path(value) {
+ this._path = value;
+ }
+ function Sys$Net$WebServiceProxy$get_path() {
+ /// <value type="String"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._path;
+ }
+
+ function Sys$Net$WebServiceProxy$_invoke(servicePath, methodName, useGet, params, onSuccess, onFailure, userContext) {
+ /// <param name="servicePath" type="String"></param>
+ /// <param name="methodName" type="String"></param>
+ /// <param name="useGet" type="Boolean"></param>
+ /// <param name="params"></param>
+ /// <param name="onSuccess" type="Function" mayBeNull="true" optional="true"></param>
+ /// <param name="onFailure" type="Function" mayBeNull="true" optional="true"></param>
+ /// <param name="userContext" mayBeNull="true" optional="true"></param>
+ /// <returns type="Sys.Net.WebRequest"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "servicePath", type: String},
+ {name: "methodName", type: String},
+ {name: "useGet", type: Boolean},
+ {name: "params"},
+ {name: "onSuccess", type: Function, mayBeNull: true, optional: true},
+ {name: "onFailure", type: Function, mayBeNull: true, optional: true},
+ {name: "userContext", mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+
+ if (onSuccess === null || typeof onSuccess === 'undefined') onSuccess = this.get_defaultSucceededCallback();
+ if (onFailure === null || typeof onFailure === 'undefined') onFailure = this.get_defaultFailedCallback();
+ if (userContext === null || typeof userContext === 'undefined') userContext = this.get_defaultUserContext();
+
+ return Sys.Net.WebServiceProxy.invoke(servicePath, methodName, useGet, params, onSuccess, onFailure, userContext, this.get_timeout());
+ }
+Sys.Net.WebServiceProxy.prototype = {
+ set_timeout: Sys$Net$WebServiceProxy$set_timeout,
+ get_timeout: Sys$Net$WebServiceProxy$get_timeout,
+ set_defaultUserContext: Sys$Net$WebServiceProxy$set_defaultUserContext,
+ get_defaultUserContext: Sys$Net$WebServiceProxy$get_defaultUserContext,
+ set_defaultSucceededCallback: Sys$Net$WebServiceProxy$set_defaultSucceededCallback,
+ get_defaultSucceededCallback: Sys$Net$WebServiceProxy$get_defaultSucceededCallback,
+ set_defaultFailedCallback: Sys$Net$WebServiceProxy$set_defaultFailedCallback,
+ get_defaultFailedCallback: Sys$Net$WebServiceProxy$get_defaultFailedCallback,
+ set_path: Sys$Net$WebServiceProxy$set_path,
+ get_path: Sys$Net$WebServiceProxy$get_path,
+
+ _invoke: Sys$Net$WebServiceProxy$_invoke
+}
+Sys.Net.WebServiceProxy.registerClass('Sys.Net.WebServiceProxy');
+
+Sys.Net.WebServiceProxy.invoke = function Sys$Net$WebServiceProxy$invoke(servicePath, methodName, useGet, params, onSuccess, onFailure, userContext, timeout) {
+ /// <param name="servicePath" type="String"></param>
+ /// <param name="methodName" type="String"></param>
+ /// <param name="useGet" type="Boolean" optional="true"></param>
+ /// <param name="params" mayBeNull="true" optional="true"></param>
+ /// <param name="onSuccess" type="Function" mayBeNull="true" optional="true"></param>
+ /// <param name="onFailure" type="Function" mayBeNull="true" optional="true"></param>
+ /// <param name="userContext" mayBeNull="true" optional="true"></param>
+ /// <param name="timeout" type="Number" optional="true"></param>
+ /// <returns type="Sys.Net.WebRequest"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "servicePath", type: String},
+ {name: "methodName", type: String},
+ {name: "useGet", type: Boolean, optional: true},
+ {name: "params", mayBeNull: true, optional: true},
+ {name: "onSuccess", type: Function, mayBeNull: true, optional: true},
+ {name: "onFailure", type: Function, mayBeNull: true, optional: true},
+ {name: "userContext", mayBeNull: true, optional: true},
+ {name: "timeout", type: Number, optional: true}
+ ]);
+ if (e) throw e;
+
+
+ var request = new Sys.Net.WebRequest();
+
+ request.get_headers()['Content-Type'] = 'application/json; charset=utf-8';
+ if (!params) params = {};
+ var urlParams = params;
+ if (!useGet || !urlParams) urlParams = {};
+ request.set_url(Sys.Net.WebRequest._createUrl(servicePath+"/"+methodName, urlParams));
+
+ var body = null;
+ if (!useGet) {
+ body = Sys.Serialization.JavaScriptSerializer.serialize(params);
+
+ if (body === "{}") body = "";
+ }
+
+ request.set_body(body);
+ request.add_completed(onComplete);
+ if (timeout && timeout > 0) request.set_timeout(timeout);
+ request.invoke();
+
+ function onComplete(response, eventArgs) {
+ if (response.get_responseAvailable()) {
+ var statusCode = response.get_statusCode();
+ var result = null;
+
+ try {
+ var contentType = response.getResponseHeader("Content-Type");
+ if (contentType.startsWith("application/json")) {
+ result = response.get_object();
+ }
+ else if (contentType.startsWith("text/xml")) {
+ result = response.get_xml();
+ }
+ else {
+ result = response.get_responseData();
+ }
+ } catch (ex) {
+ }
+
+ var error = response.getResponseHeader("jsonerror");
+ var errorObj = (error === "true");
+ if (errorObj) {
+ result = new Sys.Net.WebServiceError(false, result.Message, result.StackTrace, result.ExceptionType);
+ }
+ if (((statusCode < 200) || (statusCode >= 300)) || errorObj) {
+ if (onFailure) {
+ if (!result || !errorObj) {
+ result = new Sys.Net.WebServiceError(false , String.format(Sys.Res.webServiceFailedNoMsg, methodName), "", "");
+ }
+ result._statusCode = statusCode;
+ onFailure(result, userContext, methodName);
+ }
+ else {
+ var error;
+ if (result && errorObj) {
+ error = result.get_exceptionType() + "-- " + result.get_message();
+ }
+ else {
+ error = response.get_responseData();
+ }
+ alert(String.format(Sys.Res.webServiceFailed, methodName, error));
+ }
+ }
+ else if (onSuccess) {
+ onSuccess(result, userContext, methodName);
+ }
+ }
+ else {
+ var msg;
+ if (response.get_timedOut()) {
+ msg = String.format(Sys.Res.webServiceTimedOut, methodName);
+ }
+ else {
+ msg = String.format(Sys.Res.webServiceFailedNoMsg, methodName)
+ }
+ if (onFailure) {
+ onFailure(new Sys.Net.WebServiceError(response.get_timedOut(), msg, "", ""), userContext, methodName);
+ }
+ else {
+ alert(msg);
+ }
+ }
+ }
+
+ return request;
+}
+
+Sys.Net.WebServiceProxy._generateTypedConstructor = function Sys$Net$WebServiceProxy$_generateTypedConstructor(type) {
+ return function(properties) {
+ if (properties) {
+ for (var name in properties) {
+ this[name] = properties[name];
+ }
+ }
+ this.__type = type;
+ }
+}
+Sys.Net.WebServiceError = function Sys$Net$WebServiceError(timedOut, message, stackTrace, exceptionType) {
+ /// <param name="timedOut" type="Boolean"></param>
+ /// <param name="message" type="String" mayBeNull="true"></param>
+ /// <param name="stackTrace" type="String" mayBeNull="true"></param>
+ /// <param name="exceptionType" type="String" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "timedOut", type: Boolean},
+ {name: "message", type: String, mayBeNull: true},
+ {name: "stackTrace", type: String, mayBeNull: true},
+ {name: "exceptionType", type: String, mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ this._timedOut = timedOut;
+ this._message = message;
+ this._stackTrace = stackTrace;
+ this._exceptionType = exceptionType;
+ this._statusCode = -1;
+}
+
+
+ function Sys$Net$WebServiceError$get_timedOut() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._timedOut;
+ }
+
+ function Sys$Net$WebServiceError$get_statusCode() {
+ /// <value type="Number"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._statusCode;
+ }
+
+ function Sys$Net$WebServiceError$get_message() {
+ /// <value type="String"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._message;
+ }
+
+ function Sys$Net$WebServiceError$get_stackTrace() {
+ /// <value type="String"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._stackTrace;
+ }
+
+ function Sys$Net$WebServiceError$get_exceptionType() {
+ /// <value type="String"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._exceptionType;
+ }
+Sys.Net.WebServiceError.prototype = {
+ get_timedOut: Sys$Net$WebServiceError$get_timedOut,
+
+ get_statusCode: Sys$Net$WebServiceError$get_statusCode,
+
+ get_message: Sys$Net$WebServiceError$get_message,
+
+ get_stackTrace: Sys$Net$WebServiceError$get_stackTrace,
+
+ get_exceptionType: Sys$Net$WebServiceError$get_exceptionType
+}
+Sys.Net.WebServiceError.registerClass('Sys.Net.WebServiceError');
+
+Type.registerNamespace('Sys.Services');
+
+Sys.Services._ProfileService = function Sys$Services$_ProfileService() {
+ Sys.Services._ProfileService.initializeBase(this);
+ this.properties = {};
+}
+Sys.Services._ProfileService.DefaultWebServicePath = '';
+
+
+
+
+
+
+
+
+ function Sys$Services$_ProfileService$get_defaultFailedCallback() {
+ /// <value type="Function" mayBeNull="true"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._defaultFailedCallback;
+ }
+ function Sys$Services$_ProfileService$set_defaultFailedCallback(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Function, mayBeNull: true}]);
+ if (e) throw e;
+
+ this._defaultFailedCallback = value;
+ }
+
+ function Sys$Services$_ProfileService$get_defaultLoadCompletedCallback() {
+ /// <value type="Function" mayBeNull="true"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._defaultLoadCompletedCallback;
+ }
+ function Sys$Services$_ProfileService$set_defaultLoadCompletedCallback(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Function, mayBeNull: true}]);
+ if (e) throw e;
+
+ this._defaultLoadCompletedCallback = value;
+ }
+
+ function Sys$Services$_ProfileService$get_defaultSaveCompletedCallback() {
+ /// <value type="Function" mayBeNull="true"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._defaultSaveCompletedCallback;
+ }
+ function Sys$Services$_ProfileService$set_defaultSaveCompletedCallback(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Function, mayBeNull: true}]);
+ if (e) throw e;
+
+ this._defaultSaveCompletedCallback = value;
+ }
+
+
+ function Sys$Services$_ProfileService$get_path() {
+ /// <value type="String" mayBeNull="true"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._path;
+ }
+ function Sys$Services$_ProfileService$set_path(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: String, mayBeNull: true}]);
+ if (e) throw e;
+
+ if((!value) || (!value.length)) {
+ value = '';
+ }
+ this._path = value;
+ }
+
+ function Sys$Services$_ProfileService$get_timeout() {
+ /// <value type="Number"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._timeout;
+ }
+ function Sys$Services$_ProfileService$set_timeout(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Number}]);
+ if (e) throw e;
+
+ this._timeout = value;
+ }
+
+ function Sys$Services$_ProfileService$load(propertyNames, loadCompletedCallback, failedCallback, userContext) {
+ /// <param name="propertyNames" type="Array" elementType="String" optional="true" elementMayBeNull="false" mayBeNull="true"></param>
+ /// <param name="loadCompletedCallback" type="Function" optional="true" mayBeNull="true"></param>
+ /// <param name="failedCallback" type="Function" optional="true" mayBeNull="true"></param>
+ /// <param name="userContext" optional="true" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "propertyNames", type: Array, mayBeNull: true, optional: true, elementType: String},
+ {name: "loadCompletedCallback", type: Function, mayBeNull: true, optional: true},
+ {name: "failedCallback", type: Function, mayBeNull: true, optional: true},
+ {name: "userContext", mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ var parameters = {};
+ var methodName;
+ if(!propertyNames) {
+ methodName = "GetAllPropertiesForCurrentUser";
+ }
+ else {
+ methodName = "GetPropertiesForCurrentUser";
+ parameters = { properties: this._clonePropertyNames(propertyNames) };
+ }
+ this._invoke(this._get_path(),
+ methodName,
+ false,
+ parameters,
+ Function.createDelegate(this, this._onLoadComplete),
+ Function.createDelegate(this, this._onLoadFailed), [loadCompletedCallback, failedCallback, userContext]);
+ }
+
+ function Sys$Services$_ProfileService$save(propertyNames, saveCompletedCallback, failedCallback, userContext) {
+ /// <param name="propertyNames" type="Array" elementType="String" optional="true" elementMayBeNull="false" mayBeNull="true"></param>
+ /// <param name="saveCompletedCallback" type="Function" optional="true" mayBeNull="true"></param>
+ /// <param name="failedCallback" type="Function" optional="true" mayBeNull="true"></param>
+ /// <param name="userContext" optional="true" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "propertyNames", type: Array, mayBeNull: true, optional: true, elementType: String},
+ {name: "saveCompletedCallback", type: Function, mayBeNull: true, optional: true},
+ {name: "failedCallback", type: Function, mayBeNull: true, optional: true},
+ {name: "userContext", mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ var flattenedProperties = this._flattenProperties(propertyNames, this.properties);
+ this._invoke(this._get_path(),
+ "SetPropertiesForCurrentUser",
+ false,
+ { values: flattenedProperties },
+ Function.createDelegate(this, this._onSaveComplete),
+ Function.createDelegate(this, this._onSaveFailed),
+ [saveCompletedCallback, failedCallback, userContext]);
+ }
+
+
+ function Sys$Services$_ProfileService$_clonePropertyNames(arr) {
+ var nodups = [];
+ var seen = {};
+ for(var i=0; i < arr.length; i++) {
+ var prop = arr[i];
+ if(!seen[prop]) { Array.add(nodups, prop); seen[prop]=true; };
+ }
+ return nodups;
+ }
+
+
+
+
+
+ function Sys$Services$_ProfileService$_flattenProperties(propertyNames, properties, groupName) {
+ var flattenedProperties = {};
+ var val;
+ var key;
+ if(propertyNames && propertyNames.length === 0) {
+ return flattenedProperties;
+ }
+
+ for (var property in properties) {
+ val = properties[property];
+ key = groupName ? groupName + "." + property : property;
+ if(Sys.Services.ProfileGroup.isInstanceOfType(val)) {
+ var groupProperties = this._flattenProperties(propertyNames, val, key);
+ for(var subKey in groupProperties) {
+ var subVal = groupProperties[subKey];
+ flattenedProperties[subKey] = subVal;
+ }
+ }
+ else {
+ if(!propertyNames || Array.indexOf(propertyNames, key) !== -1) {
+ flattenedProperties[key] = val;
+ }
+ }
+ }
+ return flattenedProperties;
+ }
+
+ function Sys$Services$_ProfileService$_get_path() {
+ var path = this.get_path();
+ if(!path.length) {
+ path = Sys.Services._ProfileService.DefaultWebServicePath;
+ }
+ if(!path || !path.length) {
+ throw Error.invalidOperation(Sys.Res.servicePathNotSet);
+ }
+ return path;
+ }
+
+ function Sys$Services$_ProfileService$_onLoadComplete(result, context, methodName) {
+ if(typeof(result) !== "object") {
+ throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType, methodName, "Object"));
+ }
+
+ var unflattened = this._unflattenProperties(result);
+ for(var name in unflattened) {
+ this.properties[name] = unflattened[name];
+ }
+
+ var userCallback = context[0];
+ var callback = userCallback ? userCallback : this._defaultLoadCompletedCallback;
+ if(callback) {
+ callback(result.length, context[2], "Sys.Services.ProfileService.load");
+ }
+ }
+
+ function Sys$Services$_ProfileService$_onLoadFailed(err, context, methodName) {
+ var userCallback = context[1];
+ var callback = userCallback ? userCallback : this._defaultFailedCallback;
+ if(callback) {
+ callback(err, context[2], "Sys.Services.ProfileService.load");
+ }
+ }
+
+ function Sys$Services$_ProfileService$_onSaveComplete(result, context, methodName) {
+ if(typeof(result) !== "number") {
+ throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType, methodName, "Number"));
+ }
+
+ var userCallback = context[0];
+ var userContext = context[2];
+ var callback = userCallback ? userCallback : this._defaultSaveCompletedCallback;
+ if(callback) {
+ callback(result, userContext, "Sys.Services.ProfileService.save");
+ }
+ }
+
+ function Sys$Services$_ProfileService$_onSaveFailed(err, context, methodName) {
+ var userCallback = context[1];
+ var userContext = context[2];
+ var callback = userCallback ? userCallback : this._defaultFailedCallback;
+ if(callback) {
+ callback(err, userContext, "Sys.Services.ProfileService.save");
+ }
+ }
+
+ function Sys$Services$_ProfileService$_unflattenProperties(properties) {
+ var unflattenedProperties = {};
+ var dotIndex;
+ var val;
+ var count = 0;
+ for(var key in properties) {
+ count++;
+ val = properties[key];
+
+ dotIndex = key.indexOf('.');
+ if(dotIndex !== -1) {
+ var groupName = key.substr(0, dotIndex);
+ key = key.substr(dotIndex+1);
+ var group = unflattenedProperties[groupName];
+ if((!group) || (!Sys.Services.ProfileGroup.isInstanceOfType(group))) {
+ group = new Sys.Services.ProfileGroup();
+ unflattenedProperties[groupName] = group;
+ }
+ group[key] = val;
+ }
+ else {
+ unflattenedProperties[key] = val;
+ }
+ }
+ properties.length = count;
+ return unflattenedProperties;
+ }
+Sys.Services._ProfileService.prototype = {
+ _defaultFailedCallback: null,
+ _defaultLoadCompletedCallback: null,
+ _defaultSaveCompletedCallback: null,
+ _path: '',
+ _timeout: 0,
+
+ get_defaultFailedCallback: Sys$Services$_ProfileService$get_defaultFailedCallback,
+ set_defaultFailedCallback: Sys$Services$_ProfileService$set_defaultFailedCallback,
+
+ get_defaultLoadCompletedCallback: Sys$Services$_ProfileService$get_defaultLoadCompletedCallback,
+ set_defaultLoadCompletedCallback: Sys$Services$_ProfileService$set_defaultLoadCompletedCallback,
+
+ get_defaultSaveCompletedCallback: Sys$Services$_ProfileService$get_defaultSaveCompletedCallback,
+ set_defaultSaveCompletedCallback: Sys$Services$_ProfileService$set_defaultSaveCompletedCallback,
+
+
+ get_path: Sys$Services$_ProfileService$get_path,
+ set_path: Sys$Services$_ProfileService$set_path,
+
+ get_timeout: Sys$Services$_ProfileService$get_timeout,
+ set_timeout: Sys$Services$_ProfileService$set_timeout,
+
+ load: Sys$Services$_ProfileService$load,
+
+ save: Sys$Services$_ProfileService$save,
+
+ _clonePropertyNames: Sys$Services$_ProfileService$_clonePropertyNames,
+
+ _flattenProperties: Sys$Services$_ProfileService$_flattenProperties,
+
+ _get_path: Sys$Services$_ProfileService$_get_path,
+
+ _onLoadComplete: Sys$Services$_ProfileService$_onLoadComplete,
+
+ _onLoadFailed: Sys$Services$_ProfileService$_onLoadFailed,
+
+ _onSaveComplete: Sys$Services$_ProfileService$_onSaveComplete,
+
+ _onSaveFailed: Sys$Services$_ProfileService$_onSaveFailed,
+
+ _unflattenProperties: Sys$Services$_ProfileService$_unflattenProperties
+}
+Sys.Services._ProfileService.registerClass('Sys.Services._ProfileService', Sys.Net.WebServiceProxy);
+Sys.Services.ProfileService = new Sys.Services._ProfileService();
+
+Sys.Services.ProfileGroup = function Sys$Services$ProfileGroup(properties) {
+ /// <param name="properties" optional="true" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "properties", mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ if(properties) {
+ for(var property in properties) {
+ this[property] = properties[property];
+ }
+ }
+}
+Sys.Services.ProfileGroup.registerClass('Sys.Services.ProfileGroup');
+
+
+
+
+
+
+
+
+Sys.Services._AuthenticationService = function Sys$Services$_AuthenticationService() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ Sys.Services._AuthenticationService.initializeBase(this);
+}
+Sys.Services._AuthenticationService.DefaultWebServicePath = '';
+
+
+
+
+
+
+
+
+ function Sys$Services$_AuthenticationService$get_defaultFailedCallback() {
+ /// <value type="Function" mayBeNull="true"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._defaultFailedCallback;
+ }
+ function Sys$Services$_AuthenticationService$set_defaultFailedCallback(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Function, mayBeNull: true}]);
+ if (e) throw e;
+
+ this._defaultFailedCallback = value;
+ }
+
+ function Sys$Services$_AuthenticationService$get_defaultLoginCompletedCallback() {
+ /// <value type="Function" mayBeNull="true"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._defaultLoginCompletedCallback;
+ }
+ function Sys$Services$_AuthenticationService$set_defaultLoginCompletedCallback(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Function, mayBeNull: true}]);
+ if (e) throw e;
+
+ this._defaultLoginCompletedCallback = value;
+ }
+
+ function Sys$Services$_AuthenticationService$get_defaultLogoutCompletedCallback() {
+ /// <value type="Function" mayBeNull="true"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._defaultLogoutCompletedCallback;
+ }
+ function Sys$Services$_AuthenticationService$set_defaultLogoutCompletedCallback(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Function, mayBeNull: true}]);
+ if (e) throw e;
+
+ this._defaultLogoutCompletedCallback = value;
+ }
+
+ function Sys$Services$_AuthenticationService$get_isLoggedIn() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._authenticated;
+ }
+
+ function Sys$Services$_AuthenticationService$get_path() {
+ /// <value type="String" mayBeNull="true"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._path;
+ }
+ function Sys$Services$_AuthenticationService$set_path(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: String, mayBeNull: true}]);
+ if (e) throw e;
+
+ if((!value) || (!value.length)) {
+ value = '';
+ }
+ this._path = value;
+ }
+
+ function Sys$Services$_AuthenticationService$get_timeout() {
+ /// <value type="Number"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._timeout;
+ }
+ function Sys$Services$_AuthenticationService$set_timeout(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Number}]);
+ if (e) throw e;
+
+ this._timeout = value;
+ }
+
+ function Sys$Services$_AuthenticationService$login(username, password, isPersistent, customInfo, redirectUrl, loginCompletedCallback, failedCallback, userContext) {
+ /// <param name="username" type="String" mayBeNull="false"></param>
+ /// <param name="password" type="String" mayBeNull="true"></param>
+ /// <param name="isPersistent" type="Boolean" optional="true" mayBeNull="true"></param>
+ /// <param name="customInfo" type="String" optional="true" mayBeNull="true"></param>
+ /// <param name="redirectUrl" type="String" optional="true" mayBeNull="true"></param>
+ /// <param name="loginCompletedCallback" type="Function" optional="true" mayBeNull="true"></param>
+ /// <param name="failedCallback" type="Function" optional="true" mayBeNull="true"></param>
+ /// <param name="userContext" optional="true" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "username", type: String},
+ {name: "password", type: String, mayBeNull: true},
+ {name: "isPersistent", type: Boolean, mayBeNull: true, optional: true},
+ {name: "customInfo", type: String, mayBeNull: true, optional: true},
+ {name: "redirectUrl", type: String, mayBeNull: true, optional: true},
+ {name: "loginCompletedCallback", type: Function, mayBeNull: true, optional: true},
+ {name: "failedCallback", type: Function, mayBeNull: true, optional: true},
+ {name: "userContext", mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ this._invoke(this._get_path(), "Login", false,
+ { userName: username, password: password, createPersistentCookie: isPersistent },
+ Function.createDelegate(this, this._onLoginComplete),
+ Function.createDelegate(this, this._onLoginFailed),
+ [username, password, isPersistent, redirectUrl, loginCompletedCallback, failedCallback, userContext]);
+ }
+
+ function Sys$Services$_AuthenticationService$logout(redirectUrl, logoutCompletedCallback, failedCallback, userContext) {
+ /// <param name="redirectUrl" type="String" optional="true" mayBeNull="true"></param>
+ /// <param name="logoutCompletedCallback" type="Function" optional="true" mayBeNull="true"></param>
+ /// <param name="failedCallback" type="Function" optional="true" mayBeNull="true"></param>
+ /// <param name="userContext" optional="true" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "redirectUrl", type: String, mayBeNull: true, optional: true},
+ {name: "logoutCompletedCallback", type: Function, mayBeNull: true, optional: true},
+ {name: "failedCallback", type: Function, mayBeNull: true, optional: true},
+ {name: "userContext", mayBeNull: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ this._invoke(this._get_path(), "Logout", false, {},
+ Function.createDelegate(this, this._onLogoutComplete),
+ Function.createDelegate(this, this._onLogoutFailed),
+ [redirectUrl, logoutCompletedCallback, failedCallback, userContext]);
+ }
+
+ function Sys$Services$_AuthenticationService$_get_path() {
+ var path = this.get_path();
+ if(!path.length) {
+ path = Sys.Services._AuthenticationService.DefaultWebServicePath;
+ }
+ if(!path || !path.length) {
+ throw Error.invalidOperation(Sys.Res.servicePathNotSet);
+ }
+ return path;
+ }
+
+ function Sys$Services$_AuthenticationService$_onLoginComplete(result, context, methodName) {
+ if(typeof(result) !== "boolean") {
+ throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType, methodName, "Boolean"));
+ }
+
+ var redirectUrl = context[3];
+ var userCallback = context[4];
+ var userContext = context[6];
+ var callback = userCallback ? userCallback : this._defaultLoginCompletedCallback;
+
+ if(result) {
+ this._authenticated = true;
+
+ if(callback) {
+ callback(true, userContext, "Sys.Services.AuthenticationService.login");
+ }
+
+ if(typeof(redirectUrl) !== "undefined" && redirectUrl !== null) {
+ window.location.href = redirectUrl;
+ }
+ }
+ else if (callback) {
+ callback(false, userContext, "Sys.Services.AuthenticationService.login");
+ }
+ }
+
+ function Sys$Services$_AuthenticationService$_onLoginFailed(err, context, methodName) {
+ var userCallback = context[5];
+ var callback = userCallback ? userCallback : this._defaultFailedCallback;
+ if(callback) {
+ callback(err, context[6], "Sys.Services.AuthenticationService.login");
+ }
+ }
+
+ function Sys$Services$_AuthenticationService$_onLogoutComplete(result, context, methodName) {
+ if(result !== null) {
+ throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType, methodName, "null"));
+ }
+
+ var redirectUrl = context[0];
+ var userCallback = context[1];
+ var userContext = context[3];
+ var callback = userCallback ? userCallback : this._defaultLogoutCompletedCallback;
+
+ this._authenticated = false;
+
+ if (callback) {
+ callback(null, userContext, "Sys.Services.AuthenticationService.logout");
+ }
+
+ if(!redirectUrl) {
+ window.location.reload();
+ }
+ else {
+ window.location.href = redirectUrl;
+ }
+ }
+
+ function Sys$Services$_AuthenticationService$_onLogoutFailed(err, context, methodName) {
+ var userCallback = context[2];
+ var callback = userCallback ? userCallback : this._defaultFailedCallback;
+ if(callback) {
+ callback(err, context[3], "Sys.Services.AuthenticationService.logout");
+ }
+ }
+
+ function Sys$Services$_AuthenticationService$_setAuthenticated(authenticated) {
+ this._authenticated = authenticated;
+ }
+Sys.Services._AuthenticationService.prototype = {
+ _defaultFailedCallback: null,
+ _defaultLoginCompletedCallback: null,
+ _defaultLogoutCompletedCallback: null,
+ _path: '',
+ _timeout: 0,
+ _authenticated: false,
+
+ get_defaultFailedCallback: Sys$Services$_AuthenticationService$get_defaultFailedCallback,
+ set_defaultFailedCallback: Sys$Services$_AuthenticationService$set_defaultFailedCallback,
+
+ get_defaultLoginCompletedCallback: Sys$Services$_AuthenticationService$get_defaultLoginCompletedCallback,
+ set_defaultLoginCompletedCallback: Sys$Services$_AuthenticationService$set_defaultLoginCompletedCallback,
+
+ get_defaultLogoutCompletedCallback: Sys$Services$_AuthenticationService$get_defaultLogoutCompletedCallback,
+ set_defaultLogoutCompletedCallback: Sys$Services$_AuthenticationService$set_defaultLogoutCompletedCallback,
+
+ get_isLoggedIn: Sys$Services$_AuthenticationService$get_isLoggedIn,
+
+ get_path: Sys$Services$_AuthenticationService$get_path,
+ set_path: Sys$Services$_AuthenticationService$set_path,
+
+ get_timeout: Sys$Services$_AuthenticationService$get_timeout,
+ set_timeout: Sys$Services$_AuthenticationService$set_timeout,
+
+ login: Sys$Services$_AuthenticationService$login,
+
+ logout: Sys$Services$_AuthenticationService$logout,
+
+ _get_path: Sys$Services$_AuthenticationService$_get_path,
+
+ _onLoginComplete: Sys$Services$_AuthenticationService$_onLoginComplete,
+
+ _onLoginFailed: Sys$Services$_AuthenticationService$_onLoginFailed,
+
+ _onLogoutComplete: Sys$Services$_AuthenticationService$_onLogoutComplete,
+
+ _onLogoutFailed: Sys$Services$_AuthenticationService$_onLogoutFailed,
+
+ _setAuthenticated: Sys$Services$_AuthenticationService$_setAuthenticated
+}
+
+Sys.Services._AuthenticationService.registerClass('Sys.Services._AuthenticationService', Sys.Net.WebServiceProxy);
+Sys.Services.AuthenticationService = new Sys.Services._AuthenticationService();
+
+Type.registerNamespace('Sys.Serialization');
+
+
+Sys.Serialization.JavaScriptSerializer = function Sys$Serialization$JavaScriptSerializer() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+}
+Sys.Serialization.JavaScriptSerializer.registerClass('Sys.Serialization.JavaScriptSerializer');
+
+Sys.Serialization.JavaScriptSerializer._stringRegEx = new RegExp('["\b\f\n\r\t\\\\\x00-\x1F]', 'i');
+
+Sys.Serialization.JavaScriptSerializer._serializeWithBuilder = function Sys$Serialization$JavaScriptSerializer$_serializeWithBuilder(object, stringBuilder, sort) {
+ var i;
+ switch (typeof object) {
+ case 'object':
+ if (object) {
+ if (Array.isInstanceOfType(object)) {
+ stringBuilder.append('[');
+ for (i = 0; i < object.length; ++i) {
+ if (i > 0) {
+ stringBuilder.append(',');
+ }
+ Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(object[i], stringBuilder);
+ }
+ stringBuilder.append(']');
+ }
+ else {
+ if (Date.isInstanceOfType(object)) {
+ stringBuilder.append('"\\/Date(');
+ stringBuilder.append(object.getTime());
+ stringBuilder.append(')\\/"');
+ break;
+ }
+
+ var properties = [];
+ var propertyCount = 0;
+ for (var name in object) {
+ if (name.startsWith('$')) {
+ continue;
+ }
+ properties[propertyCount++] = name;
+ }
+ if (sort) properties.sort();
+
+ stringBuilder.append('{');
+ var needComma = false;
+ for (i=0; i<propertyCount; i++) {
+ var value = object[properties[i]];
+ if (typeof value !== 'undefined' && typeof value !== 'function') {
+ if (needComma) {
+ stringBuilder.append(',');
+ }
+ else {
+ needComma = true;
+ }
+
+ Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(properties[i], stringBuilder, sort);
+ stringBuilder.append(':');
+ Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(value, stringBuilder, sort);
+ }
+ }
+ stringBuilder.append('}');
+ }
+ }
+ else {
+ stringBuilder.append('null');
+ }
+ break;
+
+ case 'number':
+ if (isFinite(object)) {
+ stringBuilder.append(String(object));
+ }
+ else {
+ throw Error.invalidOperation(Sys.Res.cannotSerializeNonFiniteNumbers);
+ }
+ break;
+
+ case 'string':
+ stringBuilder.append('"');
+
+ if (Sys.Browser.agent === Sys.Browser.Safari || Sys.Serialization.JavaScriptSerializer._stringRegEx.test(object)) {
+ var length = object.length;
+ for (i = 0; i < length; ++i) {
+ var curChar = object.charAt(i);
+ if (curChar >= ' ') {
+ if (curChar === '\\' || curChar === '"') {
+ stringBuilder.append('\\');
+ }
+ stringBuilder.append(curChar);
+ }
+ else {
+ switch (curChar) {
+ case '\b':
+ stringBuilder.append('\\b');
+ break;
+ case '\f':
+ stringBuilder.append('\\f');
+ break;
+ case '\n':
+ stringBuilder.append('\\n');
+ break;
+ case '\r':
+ stringBuilder.append('\\r');
+ break;
+ case '\t':
+ stringBuilder.append('\\t');
+ break;
+ default:
+ stringBuilder.append('\\u00');
+ if (curChar.charCodeAt() < 16) stringBuilder.append('0');
+ stringBuilder.append(curChar.charCodeAt().toString(16));
+ }
+ }
+ }
+ } else {
+ stringBuilder.append(object);
+ }
+ stringBuilder.append('"');
+ break;
+
+ case 'boolean':
+ stringBuilder.append(object.toString());
+ break;
+
+ default:
+ stringBuilder.append('null');
+ break;
+ }
+}
+
+Sys.Serialization.JavaScriptSerializer.serialize = function Sys$Serialization$JavaScriptSerializer$serialize(object) {
+ /// <param name="object" mayBeNull="true"></param>
+ /// <returns type="String"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "object", mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ var stringBuilder = new Sys.StringBuilder();
+ Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(object, stringBuilder, false);
+ return stringBuilder.toString();
+}
+
+Sys.Serialization.JavaScriptSerializer.deserialize = function Sys$Serialization$JavaScriptSerializer$deserialize(data) {
+ /// <param name="data" type="String"></param>
+ /// <returns></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "data", type: String}
+ ]);
+ if (e) throw e;
+
+ if (data.length === 0) throw Error.argument('data', Sys.Res.cannotDeserializeEmptyString);
+
+ try {
+ var exp = data.replace(new RegExp('(^|[^\\\\])\\"\\\\/Date\\((-?[0-9]+)\\)\\\\/\\"', 'g'), "$1new Date($2)");
+ return eval('(' + exp + ')');
+ }
+ catch (e) {
+ throw Error.argument('data', Sys.Res.cannotDeserializeInvalidJson);
+ }
+}
+
+Sys.CultureInfo = function Sys$CultureInfo(name, numberFormat, dateTimeFormat) {
+ /// <param name="name" type="String"></param>
+ /// <param name="numberFormat" type="Object"></param>
+ /// <param name="dateTimeFormat" type="Object"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "name", type: String},
+ {name: "numberFormat", type: Object},
+ {name: "dateTimeFormat", type: Object}
+ ]);
+ if (e) throw e;
+
+ this.name = name;
+ this.numberFormat = numberFormat;
+ this.dateTimeFormat = dateTimeFormat;
+}
+
+ function Sys$CultureInfo$_getDateTimeFormats() {
+ if (! this._dateTimeFormats) {
+ var dtf = this.dateTimeFormat;
+ this._dateTimeFormats =
+ [ dtf.MonthDayPattern,
+ dtf.YearMonthPattern,
+ dtf.ShortDatePattern,
+ dtf.ShortTimePattern,
+ dtf.LongDatePattern,
+ dtf.LongTimePattern,
+ dtf.FullDateTimePattern,
+ dtf.RFC1123Pattern,
+ dtf.SortableDateTimePattern,
+ dtf.UniversalSortableDateTimePattern ];
+ }
+ return this._dateTimeFormats;
+ }
+ function Sys$CultureInfo$_getMonthIndex(value) {
+ if (!this._upperMonths) {
+ this._upperMonths = this._toUpperArray(this.dateTimeFormat.MonthNames);
+ }
+ return Array.indexOf(this._upperMonths, this._toUpper(value));
+ }
+ function Sys$CultureInfo$_getAbbrMonthIndex(value) {
+ if (!this._upperAbbrMonths) {
+ this._upperAbbrMonths = this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthNames);
+ }
+ return Array.indexOf(this._upperMonths, this._toUpper(value));
+ }
+ function Sys$CultureInfo$_getDayIndex(value) {
+ if (!this._upperDays) {
+ this._upperDays = this._toUpperArray(this.dateTimeFormat.DayNames);
+ }
+ return Array.indexOf(this._upperDays, this._toUpper(value));
+ }
+ function Sys$CultureInfo$_getAbbrDayIndex(value) {
+ if (!this._upperAbbrDays) {
+ this._upperAbbrDays = this._toUpperArray(this.dateTimeFormat.AbbreviatedDayNames);
+ }
+ return Array.indexOf(this._upperAbbrDays, this._toUpper(value));
+ }
+ function Sys$CultureInfo$_toUpperArray(arr) {
+ var result = [];
+ for (var i = 0, il = arr.length; i < il; i++) {
+ result[i] = this._toUpper(arr[i]);
+ }
+ return result;
+ }
+ function Sys$CultureInfo$_toUpper(value) {
+ return value.split("\u00A0").join(' ').toUpperCase();
+ }
+Sys.CultureInfo.prototype = {
+ _getDateTimeFormats: Sys$CultureInfo$_getDateTimeFormats,
+ _getMonthIndex: Sys$CultureInfo$_getMonthIndex,
+ _getAbbrMonthIndex: Sys$CultureInfo$_getAbbrMonthIndex,
+ _getDayIndex: Sys$CultureInfo$_getDayIndex,
+ _getAbbrDayIndex: Sys$CultureInfo$_getAbbrDayIndex,
+ _toUpperArray: Sys$CultureInfo$_toUpperArray,
+ _toUpper: Sys$CultureInfo$_toUpper
+}
+Sys.CultureInfo._parse = function Sys$CultureInfo$_parse(value) {
+ var cultureInfo = Sys.Serialization.JavaScriptSerializer.deserialize(value);
+ return new Sys.CultureInfo(cultureInfo.name, cultureInfo.numberFormat, cultureInfo.dateTimeFormat);
+}
+Sys.CultureInfo.registerClass('Sys.CultureInfo');
+
+Sys.CultureInfo.InvariantCulture = Sys.CultureInfo._parse('{"name":"","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":true,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"\u00A4","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":true},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\':\'mm\':\'ss \'GMT\'","ShortDatePattern":"MM/dd/yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\'-\'MM\'-\'dd HH\':\'mm\':\'ss\'Z\'","YearMonthPattern":"yyyy MMMM","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":true,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}');
+
+if (typeof(__cultureInfo) === 'undefined') {
+ var __cultureInfo = '{"name":"en-US","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, MMMM dd, yyyy h:mm:ss tt","LongDatePattern":"dddd, MMMM dd, yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\':\'mm\':\'ss \'GMT\'","ShortDatePattern":"M/d/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\'-\'MM\'-\'dd HH\':\'mm\':\'ss\'Z\'","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';
+}
+Sys.CultureInfo.CurrentCulture = Sys.CultureInfo._parse(__cultureInfo);
+delete __cultureInfo;
+
+Sys.UI.Point = function Sys$UI$Point(x, y) {
+ /// <param name="x" type="Number" integer="true"></param>
+ /// <param name="y" type="Number" integer="true"></param>
+ /// <field name="x" type="Number" integer="true"></field>
+ /// <field name="y" type="Number" integer="true"></field>
+ var e = Function._validateParams(arguments, [
+ {name: "x", type: Number, integer: true},
+ {name: "y", type: Number, integer: true}
+ ]);
+ if (e) throw e;
+
+ this.x = x;
+ this.y = y;
+}
+Sys.UI.Point.registerClass('Sys.UI.Point');
+Sys.UI.Bounds = function Sys$UI$Bounds(x, y, width, height) {
+ /// <param name="x" type="Number" integer="true"></param>
+ /// <param name="y" type="Number" integer="true"></param>
+ /// <param name="height" type="Number" integer="true"></param>
+ /// <param name="width" type="Number" integer="true"></param>
+ /// <field name="x" type="Number" integer="true"></field>
+ /// <field name="y" type="Number" integer="true"></field>
+ /// <field name="height" type="Number" integer="true"></field>
+ /// <field name="width" type="Number" integer="true"></field>
+ var e = Function._validateParams(arguments, [
+ {name: "x", type: Number, integer: true},
+ {name: "y", type: Number, integer: true},
+ {name: "height", type: Number, integer: true},
+ {name: "width", type: Number, integer: true}
+ ]);
+ if (e) throw e;
+
+ this.x = x;
+ this.y = y;
+ this.height = height;
+ this.width = width;
+}
+Sys.UI.Bounds.registerClass('Sys.UI.Bounds');
+Sys.UI.DomElement = function Sys$UI$DomElement() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+}
+Sys.UI.DomElement.registerClass('Sys.UI.DomElement');
+
+Sys.UI.DomElement.addCssClass = function Sys$UI$DomElement$addCssClass(element, className) {
+ /// <param name="element" domElement="true"></param>
+ /// <param name="className" type="String"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true},
+ {name: "className", type: String}
+ ]);
+ if (e) throw e;
+
+ if (!Sys.UI.DomElement.containsCssClass(element, className)) {
+ if (element.className === '') {
+ element.className = className;
+ }
+ else {
+ element.className += ' ' + className;
+ }
+ }
+}
+
+Sys.UI.DomElement.containsCssClass = function Sys$UI$DomElement$containsCssClass(element, className) {
+ /// <param name="element" domElement="true"></param>
+ /// <param name="className" type="String"></param>
+ /// <returns type="Boolean"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true},
+ {name: "className", type: String}
+ ]);
+ if (e) throw e;
+
+ return Array.contains(element.className.split(' '), className);
+}
+
+Sys.UI.DomElement.getBounds = function Sys$UI$DomElement$getBounds(element) {
+ /// <param name="element" domElement="true"></param>
+ /// <returns type="Sys.UI.Bounds"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true}
+ ]);
+ if (e) throw e;
+
+ var offset = Sys.UI.DomElement.getLocation(element);
+
+ return new Sys.UI.Bounds(offset.x, offset.y, element.offsetWidth || 0, element.offsetHeight || 0);
+}
+
+var $get = Sys.UI.DomElement.getElementById = function Sys$UI$DomElement$getElementById(id, element) {
+ /// <param name="id" type="String"></param>
+ /// <param name="element" domElement="true" optional="true" mayBeNull="true"></param>
+ /// <returns domElement="true" mayBeNull="true"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "id", type: String},
+ {name: "element", mayBeNull: true, domElement: true, optional: true}
+ ]);
+ if (e) throw e;
+
+ if (!element) return document.getElementById(id);
+ if (element.getElementById) return element.getElementById(id);
+
+ var nodeQueue = [];
+ var childNodes = element.childNodes;
+ for (var i = 0; i < childNodes.length; i++) {
+ var node = childNodes[i];
+ if (node.nodeType == 1) {
+ nodeQueue[nodeQueue.length] = node;
+ }
+ }
+
+ while (nodeQueue.length) {
+ node = nodeQueue.shift();
+ if (node.id == id) {
+ return node;
+ }
+ childNodes = node.childNodes;
+ for (i = 0; i < childNodes.length; i++) {
+ node = childNodes[i];
+ if (node.nodeType == 1) {
+ nodeQueue[nodeQueue.length] = node;
+ }
+ }
+ }
+
+ return null;
+}
+
+
+
+switch(Sys.Browser.agent) {
+ case Sys.Browser.InternetExplorer:
+ Sys.UI.DomElement.getLocation = function Sys$UI$DomElement$getLocation(element) {
+ /// <param name="element" domElement="true"></param>
+ /// <returns type="Sys.UI.Point"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true}
+ ]);
+ if (e) throw e;
+
+ if (element.self || element.nodeType === 9) return new Sys.UI.Point(0,0);
+
+ var clientRects = element.getClientRects();
+ if (!clientRects || !clientRects.length) {
+ return new Sys.UI.Point(0,0);
+ }
+
+ var w = element.ownerDocument.parentWindow;
+ var offsetL = w.screenLeft - top.screenLeft - top.document.documentElement.scrollLeft + 2;
+ var offsetT = w.screenTop - top.screenTop - top.document.documentElement.scrollTop + 2;
+
+ var f = w.frameElement || null;
+ if (f) {
+ var fstyle = f.currentStyle;
+ offsetL += (f.frameBorder || 1) * 2 +
+ (parseInt(fstyle.paddingLeft) || 0) +
+ (parseInt(fstyle.borderLeftWidth) || 0) -
+ element.ownerDocument.documentElement.scrollLeft;
+ offsetT += (f.frameBorder || 1) * 2 +
+ (parseInt(fstyle.paddingTop) || 0) +
+ (parseInt(fstyle.borderTopWidth) || 0) -
+ element.ownerDocument.documentElement.scrollTop;
+ }
+
+ var clientRect = clientRects[0];
+
+ return new Sys.UI.Point(
+ clientRect.left - offsetL,
+ clientRect.top - offsetT);
+ }
+ break;
+ case Sys.Browser.Safari:
+ Sys.UI.DomElement.getLocation = function Sys$UI$DomElement$getLocation(element) {
+ /// <param name="element" domElement="true"></param>
+ /// <returns type="Sys.UI.Point"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true}
+ ]);
+ if (e) throw e;
+
+ if ((element.window && (element.window === element)) || element.nodeType === 9) return new Sys.UI.Point(0,0);
+
+ var offsetX = 0;
+ var offsetY = 0;
+
+ var previous = null;
+ var previousStyle = null;
+ var currentStyle;
+ for (var parent = element; parent; previous = parent, previousStyle = currentStyle, parent = parent.offsetParent) {
+ currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
+ var tagName = parent.tagName;
+
+ if ((parent.offsetLeft || parent.offsetTop) &&
+ ((tagName !== "BODY") || (!previousStyle || previousStyle.position !== "absolute"))) {
+
+ offsetX += parent.offsetLeft;
+ offsetY += parent.offsetTop;
+ }
+ }
+
+ currentStyle = Sys.UI.DomElement._getCurrentStyle(element);
+ var elementPosition = currentStyle ? currentStyle.position : null;
+ var elementPositioned = elementPosition && (elementPosition !== "static");
+ if (!elementPosition || (elementPosition !== "absolute")) {
+ for (var parent = element.parentNode; parent; parent = parent.parentNode) {
+ tagName = parent.tagName;
+
+ if ((tagName !== "BODY") && (tagName !== "HTML") && (parent.scrollLeft || parent.scrollTop)) {
+ offsetX -= (parent.scrollLeft || 0);
+ offsetY -= (parent.scrollTop || 0);
+ }
+ currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
+ var parentPosition = currentStyle ? currentStyle.position : null;
+
+ if (parentPosition && (parentPosition === "absolute")) break;
+ }
+ }
+
+ return new Sys.UI.Point(offsetX, offsetY);
+ }
+ break;
+ case Sys.Browser.Opera:
+ Sys.UI.DomElement.getLocation = function Sys$UI$DomElement$getLocation(element) {
+ /// <param name="element" domElement="true"></param>
+ /// <returns type="Sys.UI.Point"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true}
+ ]);
+ if (e) throw e;
+
+ if ((element.window && (element.window === element)) || element.nodeType === 9) return new Sys.UI.Point(0,0);
+
+ var offsetX = 0;
+ var offsetY = 0;
+
+ var previous = null;
+ for (var parent = element; parent; previous = parent, parent = parent.offsetParent) {
+
+ var tagName = parent.tagName;
+
+ offsetX += parent.offsetLeft || 0;
+ offsetY += parent.offsetTop || 0;
+ }
+
+ var elementPosition = element.style.position;
+ var elementPositioned = elementPosition && (elementPosition !== "static");
+
+ for (var parent = element.parentNode; parent; parent = parent.parentNode) {
+ tagName = parent.tagName;
+
+ if ((tagName !== "BODY") && (tagName !== "HTML") && (parent.scrollLeft || parent.scrollTop) &&
+ ((elementPositioned &&
+ ((parent.style.overflow === "scroll") || (parent.style.overflow === "auto"))))) {
+
+ offsetX -= (parent.scrollLeft || 0);
+ offsetY -= (parent.scrollTop || 0);
+ }
+ var parentPosition = (parent && parent.style) ? parent.style.position : null;
+
+ elementPositioned = elementPositioned || (parentPosition && (parentPosition !== "static"));
+ }
+
+
+ return new Sys.UI.Point(offsetX, offsetY);
+ }
+ break;
+ default:
+ Sys.UI.DomElement.getLocation = function Sys$UI$DomElement$getLocation(element) {
+ /// <param name="element" domElement="true"></param>
+ /// <returns type="Sys.UI.Point"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true}
+ ]);
+ if (e) throw e;
+
+ if ((element.window && (element.window === element)) || element.nodeType === 9) return new Sys.UI.Point(0,0);
+
+ var offsetX = 0;
+ var offsetY = 0;
+ var previous = null;
+ var previousStyle = null;
+ var currentStyle = null;
+ for (var parent = element; parent; previous = parent, previousStyle = currentStyle, parent = parent.offsetParent) {
+ var tagName = parent.tagName;
+ currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
+
+ if ((parent.offsetLeft || parent.offsetTop) &&
+ !((tagName === "BODY") &&
+ (!previousStyle || previousStyle.position !== "absolute"))) {
+
+ offsetX += parent.offsetLeft;
+ offsetY += parent.offsetTop;
+ }
+
+ if (previous !== null && currentStyle) {
+ if ((tagName !== "TABLE") && (tagName !== "TD") && (tagName !== "HTML")) {
+ offsetX += parseInt(currentStyle.borderLeftWidth) || 0;
+ offsetY += parseInt(currentStyle.borderTopWidth) || 0;
+ }
+ if (tagName === "TABLE" &&
+ (currentStyle.position === "relative" || currentStyle.position === "absolute")) {
+ offsetX += parseInt(currentStyle.marginLeft) || 0;
+ offsetY += parseInt(currentStyle.marginTop) || 0;
+ }
+ }
+ }
+
+ currentStyle = Sys.UI.DomElement._getCurrentStyle(element);
+ var elementPosition = currentStyle ? currentStyle.position : null;
+ var elementPositioned = elementPosition && (elementPosition !== "static");
+ if (!elementPosition || (elementPosition !== "absolute")) {
+ for (var parent = element.parentNode; parent; parent = parent.parentNode) {
+ tagName = parent.tagName;
+
+ if ((tagName !== "BODY") && (tagName !== "HTML") && (parent.scrollLeft || parent.scrollTop)) {
+
+ offsetX -= (parent.scrollLeft || 0);
+ offsetY -= (parent.scrollTop || 0);
+
+ currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
+ offsetX += parseInt(currentStyle.borderLeftWidth) || 0;
+ offsetY += parseInt(currentStyle.borderTopWidth) || 0;
+ }
+ }
+ }
+
+ return new Sys.UI.Point(offsetX, offsetY);
+ }
+ break;
+
+}
+
+
+Sys.UI.DomElement.removeCssClass = function Sys$UI$DomElement$removeCssClass(element, className) {
+ /// <param name="element" domElement="true"></param>
+ /// <param name="className" type="String"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true},
+ {name: "className", type: String}
+ ]);
+ if (e) throw e;
+
+ var currentClassName = ' ' + element.className + ' ';
+ var index = currentClassName.indexOf(' ' + className + ' ');
+ if (index >= 0) {
+ element.className = (currentClassName.substr(0, index) + ' ' +
+ currentClassName.substring(index + className.length + 1, currentClassName.length)).trim();
+ }
+}
+
+Sys.UI.DomElement.setLocation = function Sys$UI$DomElement$setLocation(element, x, y) {
+ /// <param name="element" domElement="true"></param>
+ /// <param name="x" type="Number" integer="true"></param>
+ /// <param name="y" type="Number" integer="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true},
+ {name: "x", type: Number, integer: true},
+ {name: "y", type: Number, integer: true}
+ ]);
+ if (e) throw e;
+
+ var style = element.style;
+ style.position = 'absolute';
+ style.left = x + "px";
+ style.top = y + "px";
+}
+
+Sys.UI.DomElement.toggleCssClass = function Sys$UI$DomElement$toggleCssClass(element, className) {
+ /// <param name="element" domElement="true"></param>
+ /// <param name="className" type="String"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true},
+ {name: "className", type: String}
+ ]);
+ if (e) throw e;
+
+ if (Sys.UI.DomElement.containsCssClass(element, className)) {
+ Sys.UI.DomElement.removeCssClass(element, className);
+ }
+ else {
+ Sys.UI.DomElement.addCssClass(element, className);
+ }
+}
+
+Sys.UI.DomElement._getCurrentStyle = function Sys$UI$DomElement$_getCurrentStyle(element) {
+ var w = (element.ownerDocument ? element.ownerDocument : element.documentElement).defaultView;
+ return ((w && (element !== w) && w.getComputedStyle) ? w.getComputedStyle(element, null) : element.style);
+}
+Sys.UI.Behavior = function Sys$UI$Behavior(element) {
+ /// <param name="element" domElement="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true}
+ ]);
+ if (e) throw e;
+
+ Sys.UI.Behavior.initializeBase(this);
+
+ this._element = element;
+
+ var behaviors = element._behaviors;
+ if (!behaviors) {
+ element._behaviors = [this];
+ }
+ else {
+ behaviors[behaviors.length] = this;
+ }
+}
+
+
+ function Sys$UI$Behavior$get_element() {
+ /// <value domElement="true"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._element;
+ }
+ function Sys$UI$Behavior$get_id() {
+ /// <value type="String"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ var baseId = Sys.UI.Behavior.callBaseMethod(this, 'get_id');
+ if (baseId) return baseId;
+ if (!this._element || !this._element.id) return '';
+ return this._element.id + '$' + this.get_name();
+ }
+ function Sys$UI$Behavior$get_name() {
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (this._name) return this._name;
+ var name = Object.getTypeName(this);
+ var i = name.lastIndexOf('.');
+ if (i != -1) name = name.substr(i + 1);
+ if (!this.get_isInitialized()) this._name = name;
+ return name;
+ }
+ function Sys$UI$Behavior$set_name(value) {
+ if ((value === '') || (value.charAt(0) === ' ') || (value.charAt(value.length - 1) === ' '))
+ throw Error.argument('value', Sys.Res.invalidId);
+ if (typeof(this._element[value]) !== 'undefined')
+ throw Error.invalidOperation(String.format(Sys.Res.behaviorDuplicateName, value));
+ if (this.get_isInitialized()) throw Error.invalidOperation(Sys.Res.cantSetNameAfterInit);
+ this._name = value;
+ }
+ function Sys$UI$Behavior$initialize() {
+ Sys.UI.Behavior.callBaseMethod(this, 'initialize');
+ var name = this.get_name();
+ if (name) this._element[name] = this;
+ }
+ function Sys$UI$Behavior$dispose() {
+ Sys.UI.Behavior.callBaseMethod(this, 'dispose');
+ if (this._element) {
+ var name = this.get_name();
+ if (name) {
+ this._element[name] = null;
+ }
+ Array.remove(this._element._behaviors, this);
+ delete this._element;
+ }
+ }
+Sys.UI.Behavior.prototype = {
+ _name: null,
+ get_element: Sys$UI$Behavior$get_element,
+ get_id: Sys$UI$Behavior$get_id,
+ get_name: Sys$UI$Behavior$get_name,
+ set_name: Sys$UI$Behavior$set_name,
+ initialize: Sys$UI$Behavior$initialize,
+ dispose: Sys$UI$Behavior$dispose
+}
+Sys.UI.Behavior.registerClass('Sys.UI.Behavior', Sys.Component);
+
+Sys.UI.Behavior.getBehaviorByName = function Sys$UI$Behavior$getBehaviorByName(element, name) {
+ /// <param name="element" domElement="true"></param>
+ /// <param name="name" type="String"></param>
+ /// <returns type="Sys.UI.Behavior" mayBeNull="true"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true},
+ {name: "name", type: String}
+ ]);
+ if (e) throw e;
+
+ var b = element[name];
+ return (b && Sys.UI.Behavior.isInstanceOfType(b)) ? b : null;
+}
+
+Sys.UI.Behavior.getBehaviors = function Sys$UI$Behavior$getBehaviors(element) {
+ /// <param name="element" domElement="true"></param>
+ /// <returns type="Array" elementType="Sys.UI.Behavior"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true}
+ ]);
+ if (e) throw e;
+
+ if (!element._behaviors) return [];
+ return Array.clone(element._behaviors);
+}
+
+Sys.UI.Behavior.getBehaviorsByType = function Sys$UI$Behavior$getBehaviorsByType(element, type) {
+ /// <param name="element" domElement="true"></param>
+ /// <param name="type" type="Type"></param>
+ /// <returns type="Array" elementType="Sys.UI.Behavior"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true},
+ {name: "type", type: Type}
+ ]);
+ if (e) throw e;
+
+ var behaviors = element._behaviors;
+ var results = [];
+ if (behaviors) {
+ for (var i = 0, l = behaviors.length; i < l; i++) {
+ if (type.isInstanceOfType(behaviors[i])) {
+ results[results.length] = behaviors[i];
+ }
+ }
+ }
+ return results;
+}
+Sys.UI.VisibilityMode = function Sys$UI$VisibilityMode() {
+ /// <field name="hide" type="Number" integer="true" static="true"></field>
+ /// <field name="collapse" type="Number" integer="true" static="true"></field>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ throw Error.notImplemented();
+}
+
+
+
+Sys.UI.VisibilityMode.prototype = {
+ hide: 0,
+ collapse: 1
+}
+Sys.UI.VisibilityMode.registerEnum("Sys.UI.VisibilityMode");
+
+Sys.UI.Control = function Sys$UI$Control(element) {
+ /// <param name="element" domElement="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "element", domElement: true}
+ ]);
+ if (e) throw e;
+
+ if (typeof(element.control) != 'undefined') throw Error.invalidOperation(Sys.Res.controlAlreadyDefined);
+ Sys.UI.Control.initializeBase(this);
+
+ this._element = element;
+ element.control = this;
+
+ this._oldDisplayMode = this._element.style.display;
+ if (!this._oldDisplayMode || (this._oldDisplayMode == 'none')) {
+ this._oldDisplayMode = '';
+ }
+}
+
+
+
+
+ function Sys$UI$Control$get_element() {
+ /// <value domElement="true"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._element;
+ }
+ function Sys$UI$Control$get_id() {
+ /// <value type="String"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (!this._element) return '';
+ return this._element.id;
+ }
+ function Sys$UI$Control$set_id(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: String}]);
+ if (e) throw e;
+
+ throw Error.invalidOperation(Sys.Res.cantSetId);
+ }
+ function Sys$UI$Control$get_parent() {
+ /// <value type="Sys.UI.Control"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ if (this._parent) {
+ return this._parent;
+ }
+ else {
+ var parentElement = this._element.parentNode;
+ while (parentElement) {
+ if (parentElement.control) {
+ return parentElement.control;
+ }
+ parentElement = parentElement.parentNode;
+ }
+ return null;
+ }
+ }
+ function Sys$UI$Control$set_parent(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Sys.UI.Control}]);
+ if (e) throw e;
+
+ var parents = [this];
+ var current = value;
+ while (current) {
+ if (Array.contains(parents, current)) throw Error.invalidOperation(Sys.Res.circularParentChain);
+ parents[parents.length] = current;
+ current = current.get_parent();
+ }
+ this._parent = value;
+ }
+ function Sys$UI$Control$get_visibilityMode() {
+ /// <value type="Sys.UI.VisibilityMode"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._visibilityMode;
+ }
+ function Sys$UI$Control$set_visibilityMode(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Sys.UI.VisibilityMode}]);
+ if (e) throw e;
+
+ if (this._visibilityMode !== value) {
+ this._visibilityMode = value;
+ if (this.get_visible() === false) {
+ if (this._visibilityMode === Sys.UI.VisibilityMode.hide) {
+ this._element.style.display = this._oldDisplayMode;
+ }
+ else {
+ this._element.style.display = 'none';
+ }
+ }
+ }
+ this._visibilityMode = value;
+ }
+ function Sys$UI$Control$get_visible() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return (this._element.style.visibility != 'hidden');
+ }
+ function Sys$UI$Control$set_visible(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
+ if (e) throw e;
+
+ if (value != this.get_visible()) {
+ this._element.style.visibility = value ? 'visible' : 'hidden';
+ if (value || (this._visibilityMode === Sys.UI.VisibilityMode.hide)) {
+ this._element.style.display = this._oldDisplayMode;
+ }
+ else {
+ this._element.style.display = 'none';
+ }
+ }
+ }
+ function Sys$UI$Control$addCssClass(className) {
+ /// <param name="className" type="String"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "className", type: String}
+ ]);
+ if (e) throw e;
+
+ Sys.UI.DomElement.addCssClass(this._element, className);
+ }
+ function Sys$UI$Control$dispose() {
+ Sys.UI.Control.callBaseMethod(this, 'dispose');
+ if (this._element) {
+ this._element.control = undefined;
+ delete this._element;
+ }
+ }
+ function Sys$UI$Control$initialize() {
+ Sys.UI.Control.callBaseMethod(this, 'initialize');
+ var elt = this._element;
+ }
+ function Sys$UI$Control$onBubbleEvent(source, args) {
+ /// <param name="source"></param>
+ /// <param name="args" type="Sys.EventArgs"></param>
+ /// <returns type="Boolean"></returns>
+ var e = Function._validateParams(arguments, [
+ {name: "source"},
+ {name: "args", type: Sys.EventArgs}
+ ]);
+ if (e) throw e;
+
+ return false;
+ }
+ function Sys$UI$Control$raiseBubbleEvent(source, args) {
+ /// <param name="source"></param>
+ /// <param name="args" type="Sys.EventArgs"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "source"},
+ {name: "args", type: Sys.EventArgs}
+ ]);
+ if (e) throw e;
+
+ var currentTarget = this.get_parent();
+ while (currentTarget) {
+ if (currentTarget.onBubbleEvent(source, args)) {
+ return;
+ }
+ currentTarget = currentTarget.get_parent();
+ }
+ }
+ function Sys$UI$Control$removeCssClass(className) {
+ /// <param name="className" type="String"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "className", type: String}
+ ]);
+ if (e) throw e;
+
+ Sys.UI.DomElement.removeCssClass(this._element, className);
+ }
+ function Sys$UI$Control$toggleCssClass(className) {
+ /// <param name="className" type="String"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "className", type: String}
+ ]);
+ if (e) throw e;
+
+ Sys.UI.DomElement.toggleCssClass(this._element, className);
+ }
+Sys.UI.Control.prototype = {
+ _parent: null,
+ _visibilityMode: Sys.UI.VisibilityMode.hide,
+
+ get_element: Sys$UI$Control$get_element,
+ get_id: Sys$UI$Control$get_id,
+ set_id: Sys$UI$Control$set_id,
+ get_parent: Sys$UI$Control$get_parent,
+ set_parent: Sys$UI$Control$set_parent,
+ get_visibilityMode: Sys$UI$Control$get_visibilityMode,
+ set_visibilityMode: Sys$UI$Control$set_visibilityMode,
+ get_visible: Sys$UI$Control$get_visible,
+ set_visible: Sys$UI$Control$set_visible,
+ addCssClass: Sys$UI$Control$addCssClass,
+ dispose: Sys$UI$Control$dispose,
+ initialize: Sys$UI$Control$initialize,
+ onBubbleEvent: Sys$UI$Control$onBubbleEvent,
+ raiseBubbleEvent: Sys$UI$Control$raiseBubbleEvent,
+ removeCssClass: Sys$UI$Control$removeCssClass,
+ toggleCssClass: Sys$UI$Control$toggleCssClass
+}
+Sys.UI.Control.registerClass('Sys.UI.Control', Sys.Component);
+
+Sys.Res={
+'argumentTypeName':'Value is not the name of an existing type.',
+'methodRegisteredTwice':'Method {0} has already been registered.',
+'cantSetIdAfterInit':'The id property can\'t be set on this object after initialization.',
+'componentCantSetIdAfterAddedToApp':'The id property of a component can\'t be set after it\'s been added to the Application object.',
+'behaviorDuplicateName':'A behavior with name \'{0}\' already exists or it is the name of an existing property on the target element.',
+'notATypeName':'Value is not a valid type name.',
+'typeShouldBeTypeOrString':'Value is not a valid type or a valid type name.',
+'boolTrueOrFalse':'Value must be \'true\' or \'false\'.',
+'stringFormatInvalid':'The format string is invalid.',
+'referenceNotFound':'Component \'{0}\' was not found.',
+'enumReservedName':'\'{0}\' is a reserved name that can\'t be used as an enum value name.',
+'eventHandlerNotFound':'Handler not found.',
+'circularParentChain':'The chain of control parents can\'t have circular references.',
+'undefinedEvent':'\'{0}\' is not an event.',
+'notAMethod':'{0} is not a method.',
+'propertyUndefined':'\'{0}\' is not a property or an existing field.',
+'eventHandlerInvalid':'Handler was not added through the Sys.UI.DomEvent.addHandler method.',
+'scriptLoadFailedDebug':'The script \'{0}\' failed to load. Check for:\r\n Inaccessible path.\r\n Script errors. (IE) Enable \'Display a notification about every script error\' under advanced settings.\r\n Missing call to Sys.Application.notifyScriptLoaded().',
+'propertyNotWritable':'\'{0}\' is not a writable property.',
+'enumInvalidValueName':'\'{0}\' is not a valid name for an enum value.',
+'controlAlreadyDefined':'A control is already associated with the element.',
+'namespaceContainsObject':'Object {0} already exists and is not a namespace.',
+'cantAddNonFunctionhandler':'Can\'t add a handler that is not a function.',
+'scriptLoaderAlreadyLoading':'ScriptLoader.loadScripts cannot be called while the ScriptLoader is already loading scripts.',
+'invalidNameSpace':'Value is not a valid namespace identifier.',
+'notAnInterface':'Value is not a valid interface.',
+'eventHandlerNotFunction':'Handler must be a function.',
+'propertyNotAnArray':'\'{0}\' is not an Array property.',
+'typeRegisteredTwice':'Type {0} has already been registered.',
+'cantSetNameAfterInit':'The name property can\'t be set on this object after initialization.',
+'appDuplicateComponent':'Two components with the same id \'{0}\' can\'t be added to the application.',
+'appComponentMustBeInitialized':'Components must be initialized before they are added to the Application object.',
+'baseNotAClass':'Value is not a class.',
+'methodNotFound':'No method found with name \'{0}\'.',
+'arrayParseBadFormat':'Value must be a valid string representation for an array. It must start with a \'[\' and end with a \']\'.',
+'cantSetId':'The id property can\'t be set on this object.',
+'stringFormatBraceMismatch':'The format string contains an unmatched opening or closing brace.',
+'enumValueNotInteger':'An enumeration definition can only contain integer values.',
+'propertyNullOrUndefined':'Cannot set the properties of \'{0}\' because it returned a null value.',
+'componentCantSetIdTwice':'The id property of a component can\'t be set more than once.',
+'createComponentOnDom':'Value must be null for Components that are not Controls or Behaviors.',
+'createNotComponent':'{0} does not derive from Sys.Component.',
+'createNoDom':'Value must not be null for Controls and Behaviors.',
+'cantAddWithoutId':'Can\'t add a component that doesn\'t have an id.',
+'badTypeName':'Value is not the name of the type being registered or the name is a reserved word.',
+'argumentInteger':'Value must be an integer.',
+'scriptLoadMultipleCallbacks':'The script \'{0}\' contains multiple calls to Sys.Application.notifyScriptLoaded(). Only one is allowed.',
+'invokeCalledTwice':'Cannot call invoke more than once.',
+'webServiceFailed':'The server method \'{0}\' failed with the following error: {1}',
+'argumentType':'Object cannot be converted to the required type.',
+'argumentNull':'Value cannot be null.',
+'controlCantSetId':'The id property can\'t be set on a control.',
+'formatBadFormatSpecifier':'Format specifier was invalid.',
+'webServiceFailedNoMsg':'The server method \'{0}\' failed.',
+'argumentDomElement':'Value must be a DOM element.',
+'invalidExecutorType':'Could not create a valid Sys.Net.WebRequestExecutor from: {0}.',
+'cannotCallBeforeResponse':'Cannot call {0} when responseAvailable is false.',
+'actualValue':'Actual value was {0}.',
+'enumInvalidValue':'\'{0}\' is not a valid value for enum {1}.',
+'scriptLoadFailed':'The script \'{0}\' could not be loaded.',
+'parameterCount':'Parameter count mismatch.',
+'cannotDeserializeEmptyString':'Cannot deserialize empty string.',
+'formatInvalidString':'Input string was not in a correct format.',
+'invalidTimeout':'Value must be greater than or equal to zero.',
+'cannotAbortBeforeStart':'Cannot abort when executor has not started.',
+'argument':'Value does not fall within the expected range.',
+'cannotDeserializeInvalidJson':'Cannot deserialize. The data does not correspond to valid JSON.',
+'invalidHttpVerb':'httpVerb cannot be set to an empty or null string.',
+'nullWebRequest':'Cannot call executeRequest with a null webRequest.',
+'eventHandlerInvalid':'Handler was not added through the Sys.UI.DomEvent.addHandler method.',
+'cannotSerializeNonFiniteNumbers':'Cannot serialize non finite numbers.',
+'argumentUndefined':'Value cannot be undefined.',
+'webServiceInvalidReturnType':'The server method \'{0}\' returned an invalid type. Expected type: {1}',
+'servicePathNotSet':'The path to the web service has not been set.',
+'argumentTypeWithTypes':'Object of type \'{0}\' cannot be converted to type \'{1}\'.',
+'cannotCallOnceStarted':'Cannot call {0} once started.',
+'badBaseUrl1':'Base URL does not contain ://.',
+'badBaseUrl2':'Base URL does not contain another /.',
+'badBaseUrl3':'Cannot find last / in base URL.',
+'setExecutorAfterActive':'Cannot set executor after it has become active.',
+'paramName':'Parameter name: {0}',
+'cannotCallOutsideHandler':'Cannot call {0} outside of a completed event handler.',
+'format':'One of the identified items was in an invalid format.',
+'assertFailedCaller':'Assertion Failed: {0}\r\nat {1}',
+'argumentOutOfRange':'Specified argument was out of the range of valid values.',
+'webServiceTimedOut':'The server method \'{0}\' timed out.',
+'notImplemented':'The method or operation is not implemented.',
+'assertFailed':'Assertion Failed: {0}',
+'invalidOperation':'Operation is not valid due to the current state of the object.',
+'breakIntoDebugger':'{0}\r\n\r\nBreak into debugger?'
+};
+
+if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjax.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjax.js
new file mode 100644
index 00000000000..ace7447060e
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjax.js
@@ -0,0 +1,7 @@
+//----------------------------------------------------------
+// Copyright (C) Microsoft Corporation. All rights reserved.
+//----------------------------------------------------------
+// MicrosoftAjax.js
+Function.__typeName="Function";Function.__class=true;Function.createCallback=function(b,a){return function(){var e=arguments.length;if(e>0){var d=[];for(var c=0;c<e;c++)d[c]=arguments[c];d[e]=a;return b.apply(this,d)}return b.call(this,a)}};Function.createDelegate=function(a,b){return function(){return b.apply(a,arguments)}};Function.emptyFunction=Function.emptyMethod=function(){};Function._validateParams=function(e,c){var a;a=Function._validateParameterCount(e,c);if(a){a.popStackFrame();return a}for(var b=0;b<e.length;b++){var d=c[Math.min(b,c.length-1)],f=d.name;if(d.parameterArray)f+="["+(b-c.length+1)+"]";a=Function._validateParameter(e[b],d,f);if(a){a.popStackFrame();return a}}return null};Function._validateParameterCount=function(e,a){var c=a.length,d=0;for(var b=0;b<a.length;b++)if(a[b].parameterArray)c=Number.MAX_VALUE;else if(!a[b].optional)d++;if(e.length<d||e.length>c){var f=Error.parameterCount();f.popStackFrame();return f}return null};Function._validateParameter=function(c,a,h){var b,g=a.type,l=!!a.integer,k=!!a.domElement,m=!!a.mayBeNull;b=Function._validateParameterType(c,g,l,k,m,h);if(b){b.popStackFrame();return b}var e=a.elementType,f=!!a.elementMayBeNull;if(g===Array&&typeof c!=="undefined"&&c!==null&&(e||!f)){var j=!!a.elementInteger,i=!!a.elementDomElement;for(var d=0;d<c.length;d++){var n=c[d];b=Function._validateParameterType(n,e,j,i,f,h+"["+d+"]");if(b){b.popStackFrame();return b}}}return null};Function._validateParameterType=function(b,c,k,j,h,d){var a;if(typeof b==="undefined")if(h)return null;else{a=Error.argumentUndefined(d);a.popStackFrame();return a}if(b===null)if(h)return null;else{a=Error.argumentNull(d);a.popStackFrame();return a}if(c&&c.__enum){if(typeof b!=="number"){a=Error.argumentType(d,Object.getType(b),c);a.popStackFrame();return a}if(b%1===0){var e=c.prototype;if(!c.__flags||b===0){for(var g in e)if(e[g]===b)return null}else{var i=b;for(var g in e){var f=e[g];if(f===0)continue;if((f&b)===f)i-=f;if(i===0)return null}}}a=Error.argumentOutOfRange(d,b,String.format(Sys.Res.enumInvalidValue,b,c.getName()));a.popStackFrame();return a}if(j&&b!==window&&b!==document&&!(window.HTMLElement&&b instanceof HTMLElement)&&typeof b.nodeName!=="string"){a=Error.argument(d,Sys.Res.argumentDomElement);a.popStackFrame();return a}if(c&&!c.isInstanceOfType(b)){a=Error.argumentType(d,Object.getType(b),c);a.popStackFrame();return a}if(c===Number&&k)if(b%1!==0){a=Error.argumentOutOfRange(d,b,Sys.Res.argumentInteger);a.popStackFrame();return a}return null};Error.__typeName="Error";Error.__class=true;Error.create=function(d,b){var a=new Error(d);a.message=d;if(b)for(var c in b)a[c]=b[c];a.popStackFrame();return a};Error.argument=function(a,c){var b="Sys.ArgumentException: "+(c?c:Sys.Res.argument);if(a)b+="\n"+String.format(Sys.Res.paramName,a);var d=Error.create(b,{name:"Sys.ArgumentException",paramName:a});d.popStackFrame();return d};Error.argumentNull=function(a,c){var b="Sys.ArgumentNullException: "+(c?c:Sys.Res.argumentNull);if(a)b+="\n"+String.format(Sys.Res.paramName,a);var d=Error.create(b,{name:"Sys.ArgumentNullException",paramName:a});d.popStackFrame();return d};Error.argumentOutOfRange=function(c,a,d){var b="Sys.ArgumentOutOfRangeException: "+(d?d:Sys.Res.argumentOutOfRange);if(c)b+="\n"+String.format(Sys.Res.paramName,c);if(typeof a!=="undefined"&&a!==null)b+="\n"+String.format(Sys.Res.actualValue,a);var e=Error.create(b,{name:"Sys.ArgumentOutOfRangeException",paramName:c,actualValue:a});e.popStackFrame();return e};Error.argumentType=function(d,c,b,e){var a="Sys.ArgumentTypeException: ";if(e)a+=e;else if(c&&b)a+=String.format(Sys.Res.argumentTypeWithTypes,c.getName(),b.getName());else a+=Sys.Res.argumentType;if(d)a+="\n"+String.format(Sys.Res.paramName,d);var f=Error.create(a,{name:"Sys.ArgumentTypeException",paramName:d,actualType:c,expectedType:b});f.popStackFrame();return f};Error.argumentUndefined=function(a,c){var b="Sys.ArgumentUndefinedException: "+(c?c:Sys.Res.argumentUndefined);if(a)b+="\n"+String.format(Sys.Res.paramName,a);var d=Error.create(b,{name:"Sys.ArgumentUndefinedException",paramName:a});d.popStackFrame();return d};Error.format=function(a){var c="Sys.FormatException: "+(a?a:Sys.Res.format),b=Error.create(c,{name:"Sys.FormatException"});b.popStackFrame();return b};Error.invalidOperation=function(a){var c="Sys.InvalidOperationException: "+(a?a:Sys.Res.invalidOperation),b=Error.create(c,{name:"Sys.InvalidOperationException"});b.popStackFrame();return b};Error.notImplemented=function(a){var c="Sys.NotImplementedException: "+(a?a:Sys.Res.notImplemented),b=Error.create(c,{name:"Sys.NotImplementedException"});b.popStackFrame();return b};Error.parameterCount=function(a){var c="Sys.ParameterCountException: "+(a?a:Sys.Res.parameterCount),b=Error.create(c,{name:"Sys.ParameterCountException"});b.popStackFrame();return b};Error.prototype.popStackFrame=function(){if(typeof this.stack==="undefined"||this.stack===null||typeof this.fileName==="undefined"||this.fileName===null||typeof this.lineNumber==="undefined"||this.lineNumber===null)return;var a=this.stack.split("\n"),c=a[0],e=this.fileName+":"+this.lineNumber;while(typeof c!=="undefined"&&c!==null&&c.indexOf(e)===-1){a.shift();c=a[0]}var d=a[1];if(typeof d==="undefined"||d===null)return;var b=d.match(/@(.*):(\d+)$/);if(typeof b==="undefined"||b===null)return;this.fileName=b[1];this.lineNumber=parseInt(b[2]);a.shift();this.stack=a.join("\n")};if(!window)this.window=this;window.Type=Function;window.__rootNamespaces=[];window.__registeredTypes={};Type.prototype.callBaseMethod=function(a,d,b){var c=this.getBaseMethod(a,d);if(!b)return c.apply(a);else return c.apply(a,b)};Type.prototype.getBaseMethod=function(d,c){var b=this.getBaseType();if(b){var a=b.prototype[c];return a instanceof Function?a:null}return null};Type.prototype.getBaseType=function(){return typeof this.__baseType==="undefined"?null:this.__baseType};Type.prototype.getInterfaces=function(){var a=[],b=this;while(b){var c=b.__interfaces;if(c)for(var d=0,f=c.length;d<f;d++){var e=c[d];if(!Array.contains(a,e))a[a.length]=e}b=b.__baseType}return a};Type.prototype.getName=function(){return typeof this.__typeName==="undefined"?"":this.__typeName};Type.prototype.implementsInterface=function(d){this.resolveInheritance();var c=d.getName(),a=this.__interfaceCache;if(a){var e=a[c];if(typeof e!=="undefined")return e}else a=this.__interfaceCache={};var b=this;while(b){var f=b.__interfaces;if(f)if(Array.indexOf(f,d)!==-1)return a[c]=true;b=b.__baseType}return a[c]=false};Type.prototype.inheritsFrom=function(b){this.resolveInheritance();var a=this.__baseType;while(a){if(a===b)return true;a=a.__baseType}return false};Type.prototype.initializeBase=function(a,b){this.resolveInheritance();if(this.__baseType)if(!b)this.__baseType.apply(a);else this.__baseType.apply(a,b);return a};Type.prototype.isImplementedBy=function(a){if(typeof a==="undefined"||a===null)return false;var b=Object.getType(a);return !!(b.implementsInterface&&b.implementsInterface(this))};Type.prototype.isInstanceOfType=function(b){if(typeof b==="undefined"||b===null)return false;if(b instanceof this)return true;var a=Object.getType(b);return !!(a===this)||a.inheritsFrom&&a.inheritsFrom(this)||a.implementsInterface&&a.implementsInterface(this)};Type.prototype.registerClass=function(c,b,d){this.prototype.constructor=this;this.__typeName=c;this.__class=true;if(b){this.__baseType=b;this.__basePrototypePending=true}if(!window.__classes)window.__classes={};window.__classes[c.toUpperCase()]=this;if(d){this.__interfaces=[];for(var a=2;a<arguments.length;a++){var e=arguments[a];this.__interfaces.push(e)}}return this};Type.prototype.registerInterface=function(a){this.prototype.constructor=this;this.__typeName=a;this.__interface=true;return this};Type.prototype.resolveInheritance=function(){if(this.__basePrototypePending){var b=this.__baseType;b.resolveInheritance();for(var a in b.prototype){var c=b.prototype[a];if(!this.prototype[a])this.prototype[a]=c}delete this.__basePrototypePending}};Type.getRootNamespaces=function(){return Array.clone(window.__rootNamespaces)};Type.isClass=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__class};Type.isInterface=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__interface};Type.isNamespace=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__namespace};Type.parse=function(typeName,ns){var fn;if(ns){if(!window.__classes)return null;fn=window.__classes[ns.getName().toUpperCase()+"."+typeName.toUpperCase()];return fn||null}if(!typeName)return null;if(!Type.__htClasses)Type.__htClasses={};fn=Type.__htClasses[typeName];if(!fn){fn=eval(typeName);Type.__htClasses[typeName]=fn}return fn};Type.registerNamespace=function(f){var d=window,c=f.split(".");for(var b=0;b<c.length;b++){var e=c[b],a=d[e];if(!a){a=d[e]={};if(b===0)window.__rootNamespaces[window.__rootNamespaces.length]=a;a.__namespace=true;a.__typeName=c.slice(0,b+1).join(".");a.getName=function(){return this.__typeName}}d=a}};Object.__typeName="Object";Object.__class=true;Object.getType=function(b){var a=b.constructor;if(!a||typeof a!=="function"||!a.__typeName||a.__typeName==="Object")return Object;return a};Object.getTypeName=function(a){return Object.getType(a).getName()};Boolean.__typeName="Boolean";Boolean.__class=true;Boolean.parse=function(b){var a=b.trim().toLowerCase();if(a==="false")return false;if(a==="true")return true};Date.__typeName="Date";Date.__class=true;Date._appendPreOrPostMatch=function(e,b){var d=0,a=false;for(var c=0,g=e.length;c<g;c++){var f=e.charAt(c);switch(f){case "'":if(a)b.append("'");else d++;a=false;break;case "\\":if(a)b.append("\\");a=!a;break;default:b.append(f);a=false;break}}return d};Date._expandFormat=function(a,b){if(!b)b="F";if(b.length===1)switch(b){case "d":return a.ShortDatePattern;case "D":return a.LongDatePattern;case "t":return a.ShortTimePattern;case "T":return a.LongTimePattern;case "F":return a.FullDateTimePattern;case "M":case "m":return a.MonthDayPattern;case "s":return a.SortableDateTimePattern;case "Y":case "y":return a.YearMonthPattern;default:throw Error.format(Sys.Res.formatInvalidString)}return b};Date._expandYear=function(c,a){if(a<100){var b=(new Date).getFullYear();a+=b-b%100;if(a>c.Calendar.TwoDigitYearMax)return a-100}return a};Date._getParseRegExp=function(b,e){if(!b._parseRegExp)b._parseRegExp={};else if(b._parseRegExp[e])return b._parseRegExp[e];var c=Date._expandFormat(b,e);c=c.replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g,"\\\\$1");var a=new Sys.StringBuilder("^"),j=[],f=0,i=0,h=Date._getTokenRegExp(),d;while((d=h.exec(c))!==null){var l=c.slice(f,d.index);f=h.lastIndex;i+=Date._appendPreOrPostMatch(l,a);if(i%2===1){a.append(d[0]);continue}switch(d[0]){case "dddd":case "ddd":case "MMMM":case "MMM":a.append("(\\D+)");break;case "tt":case "t":a.append("(\\D*)");break;case "yyyy":a.append("(\\d{4})");break;case "fff":a.append("(\\d{3})");break;case "ff":a.append("(\\d{2})");break;case "f":a.append("(\\d)");break;case "dd":case "d":case "MM":case "M":case "yy":case "y":case "HH":case "H":case "hh":case "h":case "mm":case "m":case "ss":case "s":a.append("(\\d\\d?)");break;case "zzz":a.append("([+-]?\\d\\d?:\\d{2})");break;case "zz":case "z":a.append("([+-]?\\d\\d?)");break}Array.add(j,d[0])}Date._appendPreOrPostMatch(c.slice(f),a);a.append("$");var k=a.toString().replace(/\s+/g,"\\s+"),g={"regExp":k,"groups":j};b._parseRegExp[e]=g;return g};Date._getTokenRegExp=function(){return /dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z/g};Date.parseLocale=function(a){return Date._parse(a,Sys.CultureInfo.CurrentCulture,arguments)};Date.parseInvariant=function(a){return Date._parse(a,Sys.CultureInfo.InvariantCulture,arguments)};Date._parse=function(g,c,h){var e=false;for(var a=1,i=h.length;a<i;a++){var f=h[a];if(f){e=true;var b=Date._parseExact(g,f,c);if(b)return b}}if(!e){var d=c._getDateTimeFormats();for(var a=0,i=d.length;a<i;a++){var b=Date._parseExact(g,d[a],c);if(b)return b}}return null};Date._parseExact=function(s,y,j){s=s.trim();var m=j.dateTimeFormat,v=Date._getParseRegExp(m,y),x=(new RegExp(v.regExp)).exec(s);if(x!==null){var w=v.groups,f=null,c=null,h=null,g=null,d=0,n=0,o=0,e=0,k=null,r=false;for(var p=0,z=w.length;p<z;p++){var a=x[p+1];if(a)switch(w[p]){case "dd":case "d":h=Date._parseInt(a);if(h<1||h>31)return null;break;case "MMMM":c=j._getMonthIndex(a);if(c<0||c>11)return null;break;case "MMM":c=j._getAbbrMonthIndex(a);if(c<0||c>11)return null;break;case "M":case "MM":var c=Date._parseInt(a)-1;if(c<0||c>11)return null;break;case "y":case "yy":f=Date._expandYear(m,Date._parseInt(a));if(f<0||f>9999)return null;break;case "yyyy":f=Date._parseInt(a);if(f<0||f>9999)return null;break;case "h":case "hh":d=Date._parseInt(a);if(d===12)d=0;if(d<0||d>11)return null;break;case "H":case "HH":d=Date._parseInt(a);if(d<0||d>23)return null;break;case "m":case "mm":n=Date._parseInt(a);if(n<0||n>59)return null;break;case "s":case "ss":o=Date._parseInt(a);if(o<0||o>59)return null;break;case "tt":case "t":var u=a.toUpperCase();r=u===m.PMDesignator.toUpperCase();if(!r&&u!==m.AMDesignator.toUpperCase())return null;break;case "f":e=Date._parseInt(a)*100;if(e<0||e>999)return null;break;case "ff":e=Date._parseInt(a)*10;if(e<0||e>999)return null;break;case "fff":e=Date._parseInt(a);if(e<0||e>999)return null;break;case "dddd":g=j._getDayIndex(a);if(g<0||g>6)return null;break;case "ddd":g=j._getAbbrDayIndex(a);if(g<0||g>6)return null;break;case "zzz":var q=a.split(/:/);if(q.length!==2)return null;var i=Date._parseInt(q[0]);if(i<-12||i>13)return null;var l=Date._parseInt(q[1]);if(l<0||l>59)return null;k=i*60+(a.startsWith("-")?-l:l);break;case "z":case "zz":var i=Date._parseInt(a);if(i<-12||i>13)return null;k=i*60;break}}var b=new Date;if(f===null)f=b.getFullYear();if(c===null)c=b.getMonth();if(h===null)h=b.getDate();b.setFullYear(f,c,h);if(b.getDate()!==h)return null;if(g!==null&&b.getDay()!==g)return null;if(r&&d<12)d+=12;b.setHours(d,n,o,e);if(k!==null){var t=b.getMinutes()-(k+b.getTimezoneOffset());b.setHours(b.getHours()+parseInt(t/60),t%60)}return b}};Date._parseInt=function(a){return parseInt(a.replace(/^[\s0]+(\d+)$/,"$1"))};Date.prototype.format=function(a){return this._toFormattedString(a,Sys.CultureInfo.InvariantCulture)};Date.prototype.localeFormat=function(a){return this._toFormattedString(a,Sys.CultureInfo.CurrentCulture)};Date.prototype._toFormattedString=function(e,h){if(!e||e.length===0||e==="i")if(h&&h.name.length>0)return this.toLocaleString();else return this.toString();var d=h.dateTimeFormat;e=Date._expandFormat(d,e);var a=new Sys.StringBuilder,b;function c(a){if(a<10)return "0"+a;return a.toString()}function g(a){if(a<10)return "00"+a;if(a<100)return "0"+a;return a.toString()}var j=0,i=Date._getTokenRegExp();for(;true;){var l=i.lastIndex,f=i.exec(e),k=e.slice(l,f?f.index:e.length);j+=Date._appendPreOrPostMatch(k,a);if(!f)break;if(j%2===1){a.append(f[0]);continue}switch(f[0]){case "dddd":a.append(d.DayNames[this.getDay()]);break;case "ddd":a.append(d.AbbreviatedDayNames[this.getDay()]);break;case "dd":a.append(c(this.getDate()));break;case "d":a.append(this.getDate());break;case "MMMM":a.append(d.MonthNames[this.getMonth()]);break;case "MMM":a.append(d.AbbreviatedMonthNames[this.getMonth()]);break;case "MM":a.append(c(this.getMonth()+1));break;case "M":a.append(this.getMonth()+1);break;case "yyyy":a.append(this.getFullYear());break;case "yy":a.append(c(this.getFullYear()%100));break;case "y":a.append(this.getFullYear()%100);break;case "hh":b=this.getHours()%12;if(b===0)b=12;a.append(c(b));break;case "h":b=this.getHours()%12;if(b===0)b=12;a.append(b);break;case "HH":a.append(c(this.getHours()));break;case "H":a.append(this.getHours());break;case "mm":a.append(c(this.getMinutes()));break;case "m":a.append(this.getMinutes());break;case "ss":a.append(c(this.getSeconds()));break;case "s":a.append(this.getSeconds());break;case "tt":a.append(this.getHours()<12?d.AMDesignator:d.PMDesignator);break;case "t":a.append((this.getHours()<12?d.AMDesignator:d.PMDesignator).charAt(0));break;case "f":a.append(g(this.getMilliseconds()).charAt(0));break;case "ff":a.append(g(this.getMilliseconds()).substr(0,2));break;case "fff":a.append(g(this.getMilliseconds()));break;case "z":b=this.getTimezoneOffset()/60;a.append((b>=0?"+":"-")+Math.floor(Math.abs(b)));break;case "zz":b=this.getTimezoneOffset()/60;a.append((b>=0?"+":"-")+c(Math.floor(Math.abs(b))));break;case "zzz":b=this.getTimezoneOffset()/60;a.append((b>=0?"+":"-")+c(Math.floor(Math.abs(b)))+d.TimeSeparator+c(Math.abs(this.getTimezoneOffset()%60)));break}}return a.toString()};Number.__typeName="Number";Number.__class=true;Number.parseLocale=function(a){return Number._parse(a,Sys.CultureInfo.CurrentCulture)};Number.parseInvariant=function(a){return Number._parse(a,Sys.CultureInfo.InvariantCulture)};Number._parse=function(g,f){var a=g.trim();if(a.match(/infinity/i)!==null)return parseFloat(a);if(a.match(/^0x[a-f0-9]+$/i)!==null)return parseInt(a);var d=f.numberFormat,b=d.NumberDecimalSeparator,c=d.NumberGroupSeparator,e=new RegExp("^[+-]?[\\d\\"+c+"]*\\"+b+"?\\d*([eE][+-]?\\d+)?$");if(!a.match(e))return Number.NaN;a=a.split(c).join("");a=a.replace(b,".");return parseFloat(a)};Number.prototype.format=function(a){return this._toFormattedString(a,Sys.CultureInfo.InvariantCulture)};Number.prototype.localeFormat=function(a){return this._toFormattedString(a,Sys.CultureInfo.CurrentCulture)};Number.prototype._toFormattedString=function(d,j){if(!d||d.length===0||d==="i")if(j&&j.name.length>0)return this.toLocaleString();else return this.toString();var q=["n %","n%","%n"],p=["-n %","-n%","-%n"],r=["(n)","-n","- n","n-","n -"],o=["$n","n$","$ n","n $"],n=["($n)","-$n","$-n","$n-","(n$)","-n$","n-$","n$-","-n $","-$ n","n $-","$ n-","$ -n","n- $","($ n)","(n $)"];function i(p,k,j,l,o){var e=j[0],g=1,c=p.toString(),a="",m="",i=c.split(".");if(i.length>1){c=i[0];a=i[1];var h=a.split(/e/i);if(h.length>1){a=h[0];m="e"+h[1]}}if(k>0){var f=a.length-k;if(f>0)a=a.slice(0,k);else if(f<0)for(var n=0;n<Math.abs(f);n++)a+="0";a=o+a}else a="";a+=m;var b=c.length-1,d="";while(b>=0){if(e===0||e>b)if(d.length>0)return c.slice(0,b+1)+l+d+a;else return c.slice(0,b+1)+a;if(d.length>0)d=c.slice(b-e+1,b+1)+l+d;else d=c.slice(b-e+1,b+1);b-=e;if(g<j.length){e=j[g];g++}}return c.slice(0,b+1)+l+d+a}var a=j.numberFormat,e=Math.abs(this);if(!d)d="D";var b=-1;if(d.length>1)b=parseInt(d.slice(1));var c;switch(d.charAt(0)){case "d":case "D":c="n";if(b!==-1){var g=""+e,k=b-g.length;if(k>0)for(var m=0;m<k;m++)g="0"+g;e=g}if(this<0)e=-e;break;case "c":case "C":if(this<0)c=n[a.CurrencyNegativePattern];else c=o[a.CurrencyPositivePattern];if(b===-1)b=a.CurrencyDecimalDigits;e=i(Math.abs(this),b,a.CurrencyGroupSizes,a.CurrencyGroupSeparator,a.CurrencyDecimalSeparator);break;case "n":case "N":if(this<0)c=r[a.NumberNegativePattern];else c="n";if(b===-1)b=a.NumberDecimalDigits;e=i(Math.abs(this),b,a.NumberGroupSizes,a.NumberGroupSeparator,a.NumberDecimalSeparator);break;case "p":case "P":if(this<0)c=p[a.PercentNegativePattern];else c=q[a.PercentPositivePattern];if(b===-1)b=a.PercentDecimalDigits;e=i(Math.abs(this),b,a.PercentGroupSizes,a.PercentGroupSeparator,a.PercentDecimalSeparator);break;default:throw Error.format(Sys.Res.formatBadFormatSpecifier)}var l=/n|\$|-|%/g,f="";for(;true;){var s=l.lastIndex,h=l.exec(c);f+=c.slice(s,h?h.index:c.length);if(!h)break;switch(h[0]){case "n":f+=e;break;case "$":f+=a.CurrencySymbol;break;case "-":f+=a.NegativeSign;break;case "%":f+=a.PercentSymbol;break}}return f};RegExp.__typeName="RegExp";RegExp.__class=true;Array.__typeName="Array";Array.__class=true;Array.add=Array.enqueue=function(a,b){a[a.length]=b};Array.addRange=function(a,b){a.push.apply(a,b)};Array.clear=function(a){a.length=0};Array.clone=function(a){if(a.length===1)return [a[0]];else return Array.apply(null,a)};Array.contains=function(a,b){return Array.indexOf(a,b)>=0};Array.dequeue=function(a){return a.shift()};Array.forEach=function(b,e,d){for(var a=0,f=b.length;a<f;a++){var c=b[a];if(typeof c!=="undefined")e.call(d,c,a,b)}};Array.indexOf=function(d,e,a){if(typeof e==="undefined")return -1;var c=d.length;if(c!==0){a=a-0;if(isNaN(a))a=0;else{if(isFinite(a))a=a-a%1;if(a<0)a=Math.max(0,c+a)}for(var b=a;b<c;b++)if(typeof d[b]!=="undefined"&&d[b]===e)return b}return -1};Array.insert=function(a,b,c){a.splice(b,0,c)};Array.parse=function(value){if(!value)return [];return eval(value)};Array.remove=function(b,c){var a=Array.indexOf(b,c);if(a>=0)b.splice(a,1);return a>=0};Array.removeAt=function(a,b){a.splice(b,1)};String.__typeName="String";String.__class=true;String.prototype.endsWith=function(a){return this.substr(this.length-a.length)===a};String.prototype.startsWith=function(a){return this.substr(0,a.length)===a};String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")};String.prototype.trimEnd=function(){return this.replace(/\s+$/,"")};String.prototype.trimStart=function(){return this.replace(/^\s+/,"")};String.format=function(){return String._toFormattedString(false,arguments)};String.localeFormat=function(){return String._toFormattedString(true,arguments)};String._toFormattedString=function(l,j){var c="",e=j[0];for(var a=0;true;){var f=e.indexOf("{",a),d=e.indexOf("}",a);if(f<0&&d<0){c+=e.slice(a);break}if(d>0&&(d<f||f<0)){c+=e.slice(a,d+1);a=d+2;continue}c+=e.slice(a,f);a=f+1;if(e.charAt(a)==="{"){c+="{";a++;continue}if(d<0)break;var h=e.substring(a,d),g=h.indexOf(":"),k=parseInt(g<0?h:h.substring(0,g))+1,i=g<0?"":h.substring(g+1),b=j[k];if(typeof b==="undefined"||b===null)b="";if(b.toFormattedString)c+=b.toFormattedString(i);else if(l&&b.localeFormat)c+=b.localeFormat(i);else if(b.format)c+=b.format(i);else c+=b.toString();a=d+1}return c};Type.registerNamespace("Sys");Sys.IDisposable=function(){};Sys.IDisposable.prototype={};Sys.IDisposable.registerInterface("Sys.IDisposable");Sys.StringBuilder=function(a){this._parts=typeof a!=="undefined"&&a!==null&&a!==""?[a.toString()]:[];this._value={};this._len=0};Sys.StringBuilder.prototype={append:function(a){this._parts[this._parts.length]=a},appendLine:function(a){this._parts[this._parts.length]=typeof a==="undefined"||a===null||a===""?"\r\n":a+"\r\n"},clear:function(){this._parts=[];this._value={};this._len=0},isEmpty:function(){if(this._parts.length===0)return true;return this.toString()===""},toString:function(a){a=a||"";var b=this._parts;if(this._len!==b.length){this._value={};this._len=b.length}var d=this._value;if(typeof d[a]==="undefined"){if(a!=="")for(var c=0;c<b.length;)if(typeof b[c]==="undefined"||b[c]===""||b[c]===null)b.splice(c,1);else c++;d[a]=this._parts.join(a)}return d[a]}};Sys.StringBuilder.registerClass("Sys.StringBuilder");if(!window.XMLHttpRequest)window.XMLHttpRequest=function(){var b=["Msxml2.XMLHTTP","Microsoft.XMLHTTP"];for(var a=0;a<b.length;a++)try{var c=new ActiveXObject(b[a]);return c}catch(d){}return null};Sys.Browser={};Sys.Browser.InternetExplorer={};Sys.Browser.Firefox={};Sys.Browser.Safari={};Sys.Browser.Opera={};Sys.Browser.agent=null;Sys.Browser.hasDebuggerStatement=false;Sys.Browser.name=navigator.appName;Sys.Browser.version=parseFloat(navigator.appVersion);if(navigator.userAgent.indexOf(" MSIE ")>-1){Sys.Browser.agent=Sys.Browser.InternetExplorer;Sys.Browser.version=parseFloat(navigator.userAgent.match(/MSIE (\d+\.\d+)/)[1]);Sys.Browser.hasDebuggerStatement=true}else if(navigator.userAgent.indexOf(" Firefox/")>-1){Sys.Browser.agent=Sys.Browser.Firefox;Sys.Browser.version=parseFloat(navigator.userAgent.match(/Firefox\/(\d+\.\d+)/)[1]);Sys.Browser.name="Firefox";Sys.Browser.hasDebuggerStatement=true}else if(navigator.userAgent.indexOf(" Safari/")>-1){Sys.Browser.agent=Sys.Browser.Safari;Sys.Browser.version=parseFloat(navigator.userAgent.match(/Safari\/(\d+\.\d+)/)[1]);Sys.Browser.name="Safari"}else if(navigator.userAgent.indexOf("Opera/")>-1)Sys.Browser.agent=Sys.Browser.Opera;Type.registerNamespace("Sys.UI");Sys._Debug=function(){};Sys._Debug.prototype={_appendConsole:function(a){if(typeof Debug!=="undefined"&&Debug.writeln)Debug.writeln(a);if(window.console&&window.console.log)window.console.log(a);if(window.opera)window.opera.postError(a);if(window.debugService)window.debugService.trace(a)},_appendTrace:function(b){var a=document.getElementById("TraceConsole");if(a&&a.tagName.toUpperCase()==="TEXTAREA")a.value+=b+"\n"},assert:function(c,a,b){if(!c){a=b&&this.assert.caller?String.format(Sys.Res.assertFailedCaller,a,this.assert.caller):String.format(Sys.Res.assertFailed,a);if(confirm(String.format(Sys.Res.breakIntoDebugger,a)))this.fail(a)}},clearTrace:function(){var a=document.getElementById("TraceConsole");if(a&&a.tagName.toUpperCase()==="TEXTAREA")a.value=""},fail:function(message){this._appendConsole(message);if(Sys.Browser.hasDebuggerStatement)eval("debugger")},trace:function(a){this._appendConsole(a);this._appendTrace(a)},traceDump:function(a,b){var c=this._traceDump(a,b,true)},_traceDump:function(a,c,f,b,d){c=c?c:"traceDump";b=b?b:"";if(a===null){this.trace(b+c+": null");return}switch(typeof a){case "undefined":this.trace(b+c+": Undefined");break;case "number":case "string":case "boolean":this.trace(b+c+": "+a);break;default:if(Date.isInstanceOfType(a)||RegExp.isInstanceOfType(a)){this.trace(b+c+": "+a.toString());break}if(!d)d=[];else if(Array.contains(d,a)){this.trace(b+c+": ...");return}Array.add(d,a);if(a==window||a===document||window.HTMLElement&&a instanceof HTMLElement||typeof a.nodeName==="string"){var k=a.tagName?a.tagName:"DomElement";if(a.id)k+=" - "+a.id;this.trace(b+c+" {"+k+"}")}else{var i=Object.getTypeName(a);this.trace(b+c+(typeof i==="string"?" {"+i+"}":""));if(b===""||f){b+=" ";var e,j,l,g,h;if(Array.isInstanceOfType(a)){j=a.length;for(e=0;e<j;e++)this._traceDump(a[e],"["+e+"]",f,b,d)}else for(g in a){h=a[g];if(!Function.isInstanceOfType(h))this._traceDump(h,g,f,b,d)}}}Array.remove(d,a)}}};Sys._Debug.registerClass("Sys._Debug");Sys.Debug=new Sys._Debug;Sys.Debug.isDebug=false;function Sys$Enum$parse(c,e){var a,b,i;if(e){a=this.__lowerCaseValues;if(!a){this.__lowerCaseValues=a={};var g=this.prototype;for(var f in g)a[f.toLowerCase()]=g[f]}}else a=this.prototype;if(!this.__flags){i=e?c.toLowerCase():c;b=a[i.trim()];if(typeof b!=="number")throw Error.argument("value",String.format(Sys.Res.enumInvalidValue,c,this.__typeName));return b}else{var h=(e?c.toLowerCase():c).split(","),j=0;for(var d=h.length-1;d>=0;d--){var k=h[d].trim();b=a[k];if(typeof b!=="number")throw Error.argument("value",String.format(Sys.Res.enumInvalidValue,c.split(",")[d].trim(),this.__typeName));j|=b}return j}}function Sys$Enum$toString(c){if(typeof c==="undefined"||c===null)return this.__string;var d=this.prototype,a;if(!this.__flags||c===0){for(a in d)if(d[a]===c)return a}else{var b=this.__sortedValues;if(!b){b=[];for(a in d)b[b.length]={key:a,value:d[a]};b.sort(function(a,b){return a.value-b.value});this.__sortedValues=b}var e=[],g=c;for(a=b.length-1;a>=0;a--){var h=b[a],f=h.value;if(f===0)continue;if((f&c)===f){e[e.length]=h.key;g-=f;if(g===0)break}}if(e.length&&g===0)return e.reverse().join(", ")}return ""}Type.prototype.registerEnum=function(c,b){for(var a in this.prototype)this[a]=this.prototype[a];this.__typeName=c;this.parse=Sys$Enum$parse;this.__string=this.toString();this.toString=Sys$Enum$toString;this.__flags=b;this.__enum=true};Type.isEnum=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__enum};Type.isFlags=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__flags};Sys.EventHandlerList=function(){this._list={}};Sys.EventHandlerList.prototype={addHandler:function(b,a){Array.add(this._getEvent(b,true),a)},removeHandler:function(c,b){var a=this._getEvent(c);if(!a)return;Array.remove(a,b)},getHandler:function(b){var a=this._getEvent(b);if(!a||a.length===0)return null;a=Array.clone(a);if(!a._handler)a._handler=function(c,d){for(var b=0,e=a.length;b<e;b++)a[b](c,d)};return a._handler},_getEvent:function(a,b){if(!this._list[a]){if(!b)return null;this._list[a]=[]}return this._list[a]}};Sys.EventHandlerList.registerClass("Sys.EventHandlerList");Sys.EventArgs=function(){};Sys.EventArgs.registerClass("Sys.EventArgs");Sys.EventArgs.Empty=new Sys.EventArgs;Sys.CancelEventArgs=function(){Sys.CancelEventArgs.initializeBase(this);this._cancel=false};Sys.CancelEventArgs.prototype={get_cancel:function(){return this._cancel},set_cancel:function(a){this._cancel=a}};Sys.CancelEventArgs.registerClass("Sys.CancelEventArgs",Sys.EventArgs);Sys.INotifyPropertyChange=function(){};Sys.INotifyPropertyChange.prototype={};Sys.INotifyPropertyChange.registerInterface("Sys.INotifyPropertyChange");Sys.PropertyChangedEventArgs=function(a){Sys.PropertyChangedEventArgs.initializeBase(this);this._propertyName=a};Sys.PropertyChangedEventArgs.prototype={get_propertyName:function(){return this._propertyName}};Sys.PropertyChangedEventArgs.registerClass("Sys.PropertyChangedEventArgs",Sys.EventArgs);Sys.INotifyDisposing=function(){};Sys.INotifyDisposing.prototype={};Sys.INotifyDisposing.registerInterface("Sys.INotifyDisposing");Sys.Component=function(){if(Sys.Application)Sys.Application.registerDisposableObject(this)};Sys.Component.prototype={_id:null,_initialized:false,_updating:false,get_events:function(){if(!this._events)this._events=new Sys.EventHandlerList;return this._events},get_id:function(){return this._id},set_id:function(a){this._id=a},get_isInitialized:function(){return this._initialized},get_isUpdating:function(){return this._updating},add_disposing:function(a){this.get_events().addHandler("disposing",a)},remove_disposing:function(a){this.get_events().removeHandler("disposing",a)},add_propertyChanged:function(a){this.get_events().addHandler("propertyChanged",a)},remove_propertyChanged:function(a){this.get_events().removeHandler("propertyChanged",a)},beginUpdate:function(){this._updating=true},dispose:function(){if(this._events){var a=this._events.getHandler("disposing");if(a)a(this,Sys.EventArgs.Empty)}delete this._events;Sys.Application.unregisterDisposableObject(this);Sys.Application.removeComponent(this)},endUpdate:function(){this._updating=false;if(!this._initialized)this.initialize();this.updated()},initialize:function(){this._initialized=true},raisePropertyChanged:function(b){if(!this._events)return;var a=this._events.getHandler("propertyChanged");if(a)a(this,new Sys.PropertyChangedEventArgs(b))},updated:function(){}};Sys.Component.registerClass("Sys.Component",null,Sys.IDisposable,Sys.INotifyPropertyChange,Sys.INotifyDisposing);function Sys$Component$_setProperties(a,i){var d,j=Object.getType(a),e=j===Object||j===Sys.UI.DomElement,h=Sys.Component.isInstanceOfType(a)&&!a.get_isUpdating();if(h)a.beginUpdate();for(var c in i){var b=i[c],f=e?null:a["get_"+c];if(e||typeof f!=="function"){var k=a[c];if(!b||typeof b!=="object"||e&&!k)a[c]=b;else Sys$Component$_setProperties(k,b)}else{var l=a["set_"+c];if(typeof l==="function")l.apply(a,[b]);else if(b instanceof Array){d=f.apply(a);for(var g=0,m=d.length,n=b.length;g<n;g++,m++)d[m]=b[g]}else if(typeof b==="object"&&Object.getType(b)===Object){d=f.apply(a);Sys$Component$_setProperties(d,b)}}}if(h)a.endUpdate()}function Sys$Component$_setReferences(c,b){for(var a in b){var e=c["set_"+a],d=$find(b[a]);e.apply(c,[d])}}var $create=Sys.Component.create=function(h,f,d,c,g){var a=g?new h(g):new h,b=Sys.Application,i=b.get_isCreatingComponents();a.beginUpdate();if(f)Sys$Component$_setProperties(a,f);if(d)for(var e in d)a["add_"+e](d[e]);b._createdComponents[b._createdComponents.length]=a;if(a.get_id())b.addComponent(a);if(i)if(c)b._addComponentToSecondPass(a,c);else a.endUpdate();else{if(c)Sys$Component$_setReferences(a,c);a.endUpdate()}return a};Sys.UI.MouseButton=function(){throw Error.notImplemented()};Sys.UI.MouseButton.prototype={leftButton:0,middleButton:1,rightButton:2};Sys.UI.MouseButton.registerEnum("Sys.UI.MouseButton");Sys.UI.Key=function(){throw Error.notImplemented()};Sys.UI.Key.prototype={backspace:8,tab:9,enter:13,esc:27,space:32,pageUp:33,pageDown:34,end:35,home:36,left:37,up:38,right:39,down:40,del:127};Sys.UI.Key.registerEnum("Sys.UI.Key");Sys.UI.DomEvent=function(c){var a=c;this.rawEvent=a;this.altKey=a.altKey;if(typeof a.button!=="undefined")this.button=typeof a.which!=="undefined"?a.button:a.button===4?Sys.UI.MouseButton.middleButton:a.button===2?Sys.UI.MouseButton.rightButton:Sys.UI.MouseButton.leftButton;if(a.type==="keypress")this.charCode=a.charCode||a.keyCode;else if(a.keyCode&&a.keyCode===46)this.keyCode=127;else this.keyCode=a.keyCode;this.clientX=a.clientX;this.clientY=a.clientY;this.ctrlKey=a.ctrlKey;this.target=a.target?a.target:a.srcElement;if(this.target){var b=Sys.UI.DomElement.getLocation(this.target);this.offsetX=typeof a.offsetX!=="undefined"?a.offsetX:window.pageXOffset+(a.clientX||0)-b.x;this.offsetY=typeof a.offsetY!=="undefined"?a.offsetY:window.pageYOffset+(a.clientY||0)-b.y}this.screenX=a.screenX;this.screenY=a.screenY;this.shiftKey=a.shiftKey;this.type=a.type};Sys.UI.DomEvent.prototype={preventDefault:function(){if(this.rawEvent.preventDefault)this.rawEvent.preventDefault();else if(window.event)window.event.returnValue=false},stopPropagation:function(){if(this.rawEvent.stopPropagation)this.rawEvent.stopPropagation();else if(window.event)window.event.cancelBubble=true}};Sys.UI.DomEvent.registerClass("Sys.UI.DomEvent");var $addHandler=Sys.UI.DomEvent.addHandler=function(a,d,e){if(!a._events)a._events={};var c=a._events[d];if(!c)a._events[d]=c=[];var b;if(a.addEventListener){b=function(b){return e.call(a,new Sys.UI.DomEvent(b))};a.addEventListener(d,b,false)}else if(a.attachEvent){b=function(){return e.call(a,new Sys.UI.DomEvent(window.event))};a.attachEvent("on"+d,b)}c[c.length]={handler:e,browserHandler:b}},$addHandlers=Sys.UI.DomEvent.addHandlers=function(e,d,c){for(var b in d){var a=d[b];if(c)a=Function.createDelegate(c,a);$addHandler(e,b,a)}},$clearHandlers=Sys.UI.DomEvent.clearHandlers=function(a){if(a._events){var e=a._events;for(var b in e){var d=e[b];for(var c=d.length-1;c>=0;c--)$removeHandler(a,b,d[c].handler)}a._events=null}},$removeHandler=Sys.UI.DomEvent.removeHandler=function(a,e,f){var d=null,c=a._events[e],d=null;for(var b=0,g=c.length;b<g;b++)if(c[b].handler===f){d=c[b].browserHandler;break}if(a.removeEventListener)a.removeEventListener(e,d,false);else if(a.detachEvent)a.detachEvent("on"+e,d);c.splice(b,1)};Sys.IContainer=function(){};Sys.IContainer.prototype={};Sys.IContainer.registerInterface("Sys.IContainer");Sys._ScriptLoader=function(){this._scriptsToLoad=null;this._scriptLoadedDelegate=Function.createDelegate(this,this._scriptLoadedHandler)};Sys._ScriptLoader.prototype={dispose:function(){this._stopLoading();if(this._events)delete this._events;this._scriptLoadedDelegate=null},loadScripts:function(a,c,d,b){this._loading=true;this._allScriptsLoadedCallback=c;this._scriptLoadFailedCallback=d;this._scriptLoadTimeoutCallback=b;if(a>0)this._timeoutCookie=window.setTimeout(Function.createDelegate(this,this._scriptLoadTimeoutHandler),a*1000);this._loadScriptsInternal()},notifyScriptLoaded:function(){if(!this._loading)return;this._currentTask._notified++;if(Sys.Browser.agent===Sys.Browser.Safari)if(this._currentTask._notified===1)window.setTimeout(Function.createDelegate(this,function(){this._scriptLoadedHandler(this._currentTask.get_scriptElement(),true)}),0)},queueCustomScriptTag:function(a){if(!this._scriptsToLoad)this._scriptsToLoad=[];Array.add(this._scriptsToLoad,a)},queueScriptBlock:function(a){if(!this._scriptsToLoad)this._scriptsToLoad=[];Array.add(this._scriptsToLoad,{text:a})},queueScriptReference:function(a){if(!this._scriptsToLoad)this._scriptsToLoad=[];Array.add(this._scriptsToLoad,{src:a})},_createScriptElement:function(c){var a=document.createElement("SCRIPT");a.type="text/javascript";for(var b in c)a[b]=c[b];return a},_loadScriptsInternal:function(){if(this._scriptsToLoad&&this._scriptsToLoad.length>0){var b=Array.dequeue(this._scriptsToLoad),a=this._createScriptElement(b);if(a.text&&Sys.Browser.agent===Sys.Browser.Safari){a.innerHTML=a.text;delete a.text}if(typeof b.src==="string"){this._currentTask=new Sys._ScriptLoaderTask(a,this._scriptLoadedDelegate);this._currentTask.execute()}else{document.getElementsByTagName("HEAD")[0].appendChild(a);Sys._ScriptLoader._clearScript(a);this._loadScriptsInternal()}}else{var c=this._allScriptsLoadedCallback;this._stopLoading();if(c)c(this)}},_raiseError:function(a){var c=this._scriptLoadFailedCallback,b=this._currentTask.get_scriptElement();this._stopLoading();if(c)c(this,b,a);else throw Sys._ScriptLoader._errorScriptLoadFailed(b.src,a)},_scriptLoadedHandler:function(a,b){if(b&&this._currentTask._notified)if(this._currentTask._notified>1)this._raiseError(true);else{Array.add(Sys._ScriptLoader._getLoadedScripts(),a.src);this._currentTask.dispose();this._currentTask=null;this._loadScriptsInternal()}else this._raiseError(false)},_scriptLoadTimeoutHandler:function(){var a=this._scriptLoadTimeoutCallback;this._stopLoading();if(a)a(this)},_stopLoading:function(){if(this._timeoutCookie){window.clearTimeout(this._timeoutCookie);this._timeoutCookie=null}if(this._currentTask){this._currentTask.dispose();this._currentTask=null}this._scriptsToLoad=null;this._loading=null;this._allScriptsLoadedCallback=null;this._scriptLoadFailedCallback=null;this._scriptLoadTimeoutCallback=null}};Sys._ScriptLoader.registerClass("Sys._ScriptLoader",null,Sys.IDisposable);Sys._ScriptLoader.getInstance=function(){var a=Sys._ScriptLoader._activeInstance;if(!a)a=Sys._ScriptLoader._activeInstance=new Sys._ScriptLoader;return a};Sys._ScriptLoader.isScriptLoaded=function(b){var a=document.createElement("script");a.src=b;return Array.contains(Sys._ScriptLoader._getLoadedScripts(),a.src)};Sys._ScriptLoader.readLoadedScripts=function(){if(!Sys._ScriptLoader._referencedScripts){var b=Sys._ScriptLoader._referencedScripts=[],c=document.getElementsByTagName("SCRIPT");for(i=c.length-1;i>=0;i--){var d=c[i],a=d.src;if(a.length)if(!Array.contains(b,a))Array.add(b,a)}}};Sys._ScriptLoader._clearScript=function(a){if(!Sys.Debug.isDebug)a.parentNode.removeChild(a)};Sys._ScriptLoader._errorScriptLoadFailed=function(b,d){var a;if(d)a=Sys.Res.scriptLoadMultipleCallbacks;else a=Sys.Res.scriptLoadFailed;var e="Sys.ScriptLoadFailedException: "+String.format(a,b),c=Error.create(e,{name:"Sys.ScriptLoadFailedException","scriptUrl":b});c.popStackFrame();return c};Sys._ScriptLoader._getLoadedScripts=function(){if(!Sys._ScriptLoader._referencedScripts){Sys._ScriptLoader._referencedScripts=[];Sys._ScriptLoader.readLoadedScripts()}return Sys._ScriptLoader._referencedScripts};Sys._ScriptLoaderTask=function(b,a){this._scriptElement=b;this._completedCallback=a;this._notified=0};Sys._ScriptLoaderTask.prototype={get_scriptElement:function(){return this._scriptElement},dispose:function(){if(this._disposed)return;this._disposed=true;this._removeScriptElementHandlers();Sys._ScriptLoader._clearScript(this._scriptElement);this._scriptElement=null},execute:function(){this._addScriptElementHandlers();document.getElementsByTagName("HEAD")[0].appendChild(this._scriptElement)},_addScriptElementHandlers:function(){this._scriptLoadDelegate=Function.createDelegate(this,this._scriptLoadHandler);if(Sys.Browser.agent!==Sys.Browser.InternetExplorer){this._scriptElement.readyState="loaded";$addHandler(this._scriptElement,"load",this._scriptLoadDelegate)}else $addHandler(this._scriptElement,"readystatechange",this._scriptLoadDelegate);this._scriptErrorDelegate=Function.createDelegate(this,this._scriptErrorHandler);$addHandler(this._scriptElement,"error",this._scriptErrorDelegate)},_removeScriptElementHandlers:function(){if(this._scriptLoadDelegate){var a=this.get_scriptElement();if(Sys.Browser.agent!==Sys.Browser.InternetExplorer)$removeHandler(a,"load",this._scriptLoadDelegate);else $removeHandler(a,"readystatechange",this._scriptLoadDelegate);$removeHandler(a,"error",this._scriptErrorDelegate);this._scriptErrorDelegate=null;this._scriptLoadDelegate=null}},_scriptErrorHandler:function(){if(this._disposed)return;this._completedCallback(this.get_scriptElement(),false)},_scriptLoadHandler:function(){if(this._disposed)return;var a=this.get_scriptElement();if(a.readyState!=="loaded"&&a.readyState!=="complete")return;var b=this;window.setTimeout(function(){b._completedCallback(a,true)},0)}};Sys._ScriptLoaderTask.registerClass("Sys._ScriptLoaderTask",null,Sys.IDisposable);Sys.ApplicationLoadEventArgs=function(b,a){Sys.ApplicationLoadEventArgs.initializeBase(this);this._components=b;this._isPartialLoad=a};Sys.ApplicationLoadEventArgs.prototype={get_components:function(){return this._components},get_isPartialLoad:function(){return this._isPartialLoad}};Sys.ApplicationLoadEventArgs.registerClass("Sys.ApplicationLoadEventArgs",Sys.EventArgs);Sys._Application=function(){Sys._Application.initializeBase(this);this._disposableObjects=[];this._components={};this._createdComponents=[];this._secondPassComponents=[];this._unloadHandlerDelegate=Function.createDelegate(this,this._unloadHandler);this._loadHandlerDelegate=Function.createDelegate(this,this._loadHandler);Sys.UI.DomEvent.addHandler(window,"unload",this._unloadHandlerDelegate);Sys.UI.DomEvent.addHandler(window,"load",this._loadHandlerDelegate)};Sys._Application.prototype={_creatingComponents:false,_disposing:false,get_isCreatingComponents:function(){return this._creatingComponents},add_load:function(a){this.get_events().addHandler("load",a)},remove_load:function(a){this.get_events().removeHandler("load",a)},add_init:function(a){if(this._initialized)a(this,Sys.EventArgs.Empty);else this.get_events().addHandler("init",a)},remove_init:function(a){this.get_events().removeHandler("init",a)},add_unload:function(a){this.get_events().addHandler("unload",a)},remove_unload:function(a){this.get_events().removeHandler("unload",a)},addComponent:function(a){this._components[a.get_id()]=a},beginCreateComponents:function(){this._creatingComponents=true},dispose:function(){if(!this._disposing){this._disposing=true;if(window.pageUnload)window.pageUnload(this,Sys.EventArgs.Empty);var c=this.get_events().getHandler("unload");if(c)c(this,Sys.EventArgs.Empty);var b=Array.clone(this._disposableObjects);for(var a=0,e=b.length;a<e;a++)b[a].dispose();Array.clear(this._disposableObjects);Sys.UI.DomEvent.removeHandler(window,"unload",this._unloadHandlerDelegate);if(this._loadHandlerDelegate){Sys.UI.DomEvent.removeHandler(window,"load",this._loadHandlerDelegate);this._loadHandlerDelegate=null}var d=Sys._ScriptLoader.getInstance();if(d)d.dispose();Sys._Application.callBaseMethod(this,"dispose")}},endCreateComponents:function(){var b=this._secondPassComponents;for(var a=0,d=b.length;a<d;a++){var c=b[a].component;Sys$Component$_setReferences(c,b[a].references);c.endUpdate()}this._secondPassComponents=[];this._creatingComponents=false},findComponent:function(b,a){return a?Sys.IContainer.isInstanceOfType(a)?a.findComponent(b):a[b]||null:Sys.Application._components[b]||null},getComponents:function(){var a=[],b=this._components;for(var c in b)a[a.length]=b[c];return a},initialize:function(){if(!this._initialized&&!this._initializing){this._initializing=true;window.setTimeout(Function.createDelegate(this,this._doInitialize),0)}},notifyScriptLoaded:function(){var a=Sys._ScriptLoader.getInstance();if(a)a.notifyScriptLoaded()},registerDisposableObject:function(a){if(!this._disposing)this._disposableObjects[this._disposableObjects.length]=a},raiseLoad:function(){var b=this.get_events().getHandler("load"),a=new Sys.ApplicationLoadEventArgs(Array.clone(this._createdComponents),!this._initializing);if(b)b(this,a);if(window.pageLoad)window.pageLoad(this,a);this._createdComponents=[]},removeComponent:function(b){var a=b.get_id();if(a)delete this._components[a]},unregisterDisposableObject:function(a){if(!this._disposing)Array.remove(this._disposableObjects,a)},_addComponentToSecondPass:function(b,a){this._secondPassComponents[this._secondPassComponents.length]={component:b,references:a}},_doInitialize:function(){Sys._Application.callBaseMethod(this,"initialize");var a=this.get_events().getHandler("init");if(a){this.beginCreateComponents();a(this,Sys.EventArgs.Empty);this.endCreateComponents()}this.raiseLoad();this._initializing=false},_loadHandler:function(){if(this._loadHandlerDelegate){Sys.UI.DomEvent.removeHandler(window,"load",this._loadHandlerDelegate);this._loadHandlerDelegate=null}this.initialize()},_unloadHandler:function(){this.dispose()}};Sys._Application.registerClass("Sys._Application",Sys.Component,Sys.IContainer);Sys.Application=new Sys._Application;var $find=Sys.Application.findComponent;Type.registerNamespace("Sys.Net");Sys.Net.WebRequestExecutor=function(){this._webRequest=null;this._resultObject=null};Sys.Net.WebRequestExecutor.prototype={get_webRequest:function(){return this._webRequest},_set_webRequest:function(a){this._webRequest=a},get_started:function(){throw Error.notImplemented()},get_responseAvailable:function(){throw Error.notImplemented()},get_timedOut:function(){throw Error.notImplemented()},get_aborted:function(){throw Error.notImplemented()},get_responseData:function(){throw Error.notImplemented()},get_statusCode:function(){throw Error.notImplemented()},get_statusText:function(){throw Error.notImplemented()},get_xml:function(){throw Error.notImplemented()},get_object:function(){if(!this._resultObject)this._resultObject=Sys.Serialization.JavaScriptSerializer.deserialize(this.get_responseData());return this._resultObject},executeRequest:function(){throw Error.notImplemented()},abort:function(){throw Error.notImplemented()},getResponseHeader:function(){throw Error.notImplemented()},getAllResponseHeaders:function(){throw Error.notImplemented()}};Sys.Net.WebRequestExecutor.registerClass("Sys.Net.WebRequestExecutor");window.XMLDOM=function(d){if(!window.DOMParser){var c=["Msxml2.DOMDocument.3.0","Msxml2.DOMDocument"];for(var b=0;b<c.length;b++)try{var a=new ActiveXObject(c[b]);a.async=false;a.loadXML(d);a.setProperty("SelectionLanguage","XPath");return a}catch(f){}return null}else try{var e=new window.DOMParser;return e.parseFromString(d,"text/xml")}catch(f){return null}return null};Sys.Net.XMLHttpExecutor=function(){Sys.Net.XMLHttpExecutor.initializeBase(this);var a=this;this._xmlHttpRequest=null;this._webRequest=null;this._responseAvailable=false;this._timedOut=false;this._timer=null;this._aborted=false;this._started=false;this._onReadyStateChange=function(){if(a._xmlHttpRequest.readyState===4){a._clearTimer();a._responseAvailable=true;a._webRequest.completed(Sys.EventArgs.Empty);if(a._xmlHttpRequest!=null){a._xmlHttpRequest.onreadystatechange=Function.emptyMethod;a._xmlHttpRequest=null}}};this._clearTimer=function(){if(a._timer!=null){window.clearTimeout(a._timer);a._timer=null}};this._onTimeout=function(){if(!a._responseAvailable){a._clearTimer();a._timedOut=true;a._xmlHttpRequest.onreadystatechange=Function.emptyMethod;a._xmlHttpRequest.abort();a._webRequest.completed(Sys.EventArgs.Empty);a._xmlHttpRequest=null}}};Sys.Net.XMLHttpExecutor.prototype={get_timedOut:function(){return this._timedOut},get_started:function(){return this._started},get_responseAvailable:function(){return this._responseAvailable},get_aborted:function(){return this._aborted},executeRequest:function(){this._webRequest=this.get_webRequest();var c=this._webRequest.get_body(),a=this._webRequest.get_headers();this._xmlHttpRequest=new XMLHttpRequest;this._xmlHttpRequest.onreadystatechange=this._onReadyStateChange;var e=this._webRequest.get_httpVerb();this._xmlHttpRequest.open(e,this._webRequest.getResolvedUrl(),true);if(a)for(var b in a){var f=a[b];if(typeof f!=="function")this._xmlHttpRequest.setRequestHeader(b,f)}if(e.toLowerCase()==="post"){if(a===null||!a["Content-Type"])this._xmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded");if(!c)c=""}var d=this._webRequest.get_timeout();if(d>0)this._timer=window.setTimeout(Function.createDelegate(this,this._onTimeout),d);this._xmlHttpRequest.send(c);this._started=true},getResponseHeader:function(b){var a;try{a=this._xmlHttpRequest.getResponseHeader(b)}catch(c){}if(!a)a="";return a},getAllResponseHeaders:function(){return this._xmlHttpRequest.getAllResponseHeaders()},get_responseData:function(){return this._xmlHttpRequest.responseText},get_statusCode:function(){return this._xmlHttpRequest.status},get_statusText:function(){return this._xmlHttpRequest.statusText},get_xml:function(){var a=this._xmlHttpRequest.responseXML;if(!a||!a.documentElement){a=new XMLDOM(this._xmlHttpRequest.responseText);if(!a||!a.documentElement)return null}else if(navigator.userAgent.indexOf("MSIE")!==-1)a.setProperty("SelectionLanguage","XPath");if(a.documentElement.namespaceURI==="http://www.mozilla.org/newlayout/xml/parsererror.xml"&&a.documentElement.tagName==="parsererror")return null;if(a.documentElement.firstChild&&a.documentElement.firstChild.tagName==="parsererror")return null;return a},abort:function(){if(this._aborted||this._responseAvailable||this._timedOut)return;this._aborted=true;this._clearTimer();if(this._xmlHttpRequest&&!this._responseAvailable){this._xmlHttpRequest.onreadystatechange=Function.emptyMethod;this._xmlHttpRequest.abort();this._xmlHttpRequest=null;var a=this._webRequest._get_eventHandlerList().getHandler("completed");if(a)a(this,Sys.EventArgs.Empty)}}};Sys.Net.XMLHttpExecutor.registerClass("Sys.Net.XMLHttpExecutor",Sys.Net.WebRequestExecutor);Sys.Net._WebRequestManager=function(){this._this=this;this._defaultTimeout=0;this._defaultExecutorType="Sys.Net.XMLHttpExecutor"};Sys.Net._WebRequestManager.prototype={add_invokingRequest:function(a){this._get_eventHandlerList().addHandler("invokingRequest",a)},remove_invokingRequest:function(a){this._get_eventHandlerList().removeHandler("invokingRequest",a)},add_completedRequest:function(a){this._get_eventHandlerList().addHandler("completedRequest",a)},remove_completedRequest:function(a){this._get_eventHandlerList().removeHandler("completedRequest",a)},_get_eventHandlerList:function(){if(!this._events)this._events=new Sys.EventHandlerList;return this._events},get_defaultTimeout:function(){return this._defaultTimeout},set_defaultTimeout:function(a){this._defaultTimeout=a},get_defaultExecutorType:function(){return this._defaultExecutorType},set_defaultExecutorType:function(a){this._defaultExecutorType=a},executeRequest:function(webRequest){var executor=webRequest.get_executor();if(!executor){var failed=false;try{var executorType=eval(this._defaultExecutorType);executor=new executorType}catch(a){failed=true}webRequest.set_executor(executor)}if(executor.get_aborted())return;var evArgs=new Sys.Net.NetworkRequestEventArgs(webRequest),handler=this._get_eventHandlerList().getHandler("invokingRequest");if(handler)handler(this,evArgs);if(!evArgs.get_cancel())executor.executeRequest()}};Sys.Net._WebRequestManager.registerClass("Sys.Net._WebRequestManager");Sys.Net.WebRequestManager=new Sys.Net._WebRequestManager;Sys.Net.NetworkRequestEventArgs=function(a){Sys.Net.NetworkRequestEventArgs.initializeBase(this);this._webRequest=a};Sys.Net.NetworkRequestEventArgs.prototype={get_webRequest:function(){return this._webRequest}};Sys.Net.NetworkRequestEventArgs.registerClass("Sys.Net.NetworkRequestEventArgs",Sys.CancelEventArgs);Sys.Net.WebRequest=function(){this._url="";this._headers={};this._body=null;this._userContext=null;this._httpVerb=null;this._executor=null;this._invokeCalled=false;this._timeout=0};Sys.Net.WebRequest.prototype={add_completed:function(a){this._get_eventHandlerList().addHandler("completed",a)},remove_completed:function(a){this._get_eventHandlerList().removeHandler("completed",a)},completed:function(b){var a=Sys.Net.WebRequestManager._get_eventHandlerList().getHandler("completedRequest");if(a)a(this._executor,b);a=this._get_eventHandlerList().getHandler("completed");if(a)a(this._executor,b)},_get_eventHandlerList:function(){if(!this._events)this._events=new Sys.EventHandlerList;return this._events},get_url:function(){return this._url},set_url:function(a){this._url=a},get_headers:function(){return this._headers},get_httpVerb:function(){if(this._httpVerb===null){if(this._body===null)return "GET";return "POST"}return this._httpVerb},set_httpVerb:function(a){this._httpVerb=a},get_body:function(){return this._body},set_body:function(a){this._body=a},get_userContext:function(){return this._userContext},set_userContext:function(a){this._userContext=a},get_executor:function(){return this._executor},set_executor:function(a){this._executor=a;this._executor._set_webRequest(this)},get_timeout:function(){if(this._timeout===0)return Sys.Net.WebRequestManager.get_defaultTimeout();return this._timeout},set_timeout:function(a){this._timeout=a},getResolvedUrl:function(){return Sys.Net.WebRequest._resolveUrl(this._url)},invoke:function(){Sys.Net.WebRequestManager.executeRequest(this);this._invokeCalled=true}};Sys.Net.WebRequest._resolveUrl=function(b,a){if(b&&b.indexOf("://")!==-1)return b;if(!a||a.length===0){var c=document.getElementsByTagName("base")[0];if(c&&c.href&&c.href.length>0)a=c.href;else a=document.URL}var d=a.indexOf("?");if(d!==-1)a=a.substr(0,d);a=a.substr(0,a.lastIndexOf("/")+1);if(!b||b.length===0)return a;if(b.charAt(0)==="/"){var e=a.indexOf("://"),g=a.indexOf("/",e+3);return a.substr(0,g)+b}else{var f=a.lastIndexOf("/");return a.substr(0,f+1)+b}};Sys.Net.WebRequest._createQueryString=function(d,b){if(!b)b=encodeURIComponent;var a=new Sys.StringBuilder,f=0;for(var c in d){var e=d[c];if(typeof e==="function")continue;var g=Sys.Serialization.JavaScriptSerializer.serialize(e);if(f!==0)a.append("&");a.append(c);a.append("=");a.append(b(g));f++}return a.toString()};Sys.Net.WebRequest._createUrl=function(a,b){if(!b)return a;var d=Sys.Net.WebRequest._createQueryString(b);if(d.length>0){var c="?";if(a&&a.indexOf("?")!==-1)c="&";return a+c+d}else return a};Sys.Net.WebRequest.registerClass("Sys.Net.WebRequest");Sys.Net.WebServiceProxy=function(){};Sys.Net.WebServiceProxy.prototype={set_timeout:function(a){this._timeout=a},get_timeout:function(){return this._timeout},set_defaultUserContext:function(a){this._userContext=a},get_defaultUserContext:function(){return this._userContext},set_defaultSucceededCallback:function(a){this._succeeded=a},get_defaultSucceededCallback:function(){return this._succeeded},set_defaultFailedCallback:function(a){this._failed=a},get_defaultFailedCallback:function(){return this._failed},set_path:function(a){this._path=a},get_path:function(){return this._path},_invoke:function(d,e,g,f,c,b,a){if(c===null||typeof c==="undefined")c=this.get_defaultSucceededCallback();if(b===null||typeof b==="undefined")b=this.get_defaultFailedCallback();if(a===null||typeof a==="undefined")a=this.get_defaultUserContext();return Sys.Net.WebServiceProxy.invoke(d,e,g,f,c,b,a,this.get_timeout())}};Sys.Net.WebServiceProxy.registerClass("Sys.Net.WebServiceProxy");Sys.Net.WebServiceProxy.invoke=function(k,a,j,d,i,c,f,h){var b=new Sys.Net.WebRequest;b.get_headers()["Content-Type"]="application/json; charset=utf-8";if(!d)d={};var g=d;if(!j||!g)g={};b.set_url(Sys.Net.WebRequest._createUrl(k+"/"+a,g));var e=null;if(!j){e=Sys.Serialization.JavaScriptSerializer.serialize(d);if(e==="{}")e=""}b.set_body(e);b.add_completed(l);if(h&&h>0)b.set_timeout(h);b.invoke();function l(d){if(d.get_responseAvailable()){var e=d.get_statusCode(),b=null;try{var j=d.getResponseHeader("Content-Type");if(j.startsWith("application/json"))b=d.get_object();else if(j.startsWith("text/xml"))b=d.get_xml();else b=d.get_responseData()}catch(m){}var k=d.getResponseHeader("jsonerror"),g=k==="true";if(g)b=new Sys.Net.WebServiceError(false,b.Message,b.StackTrace,b.ExceptionType);if(e<200||e>=300||g){if(c){if(!b||!g)b=new Sys.Net.WebServiceError(false,String.format(Sys.Res.webServiceFailedNoMsg,a),"","");b._statusCode=e;c(b,f,a)}}else if(i)i(b,f,a)}else{var h;if(d.get_timedOut())h=String.format(Sys.Res.webServiceTimedOut,a);else h=String.format(Sys.Res.webServiceFailedNoMsg,a);if(c)c(new Sys.Net.WebServiceError(d.get_timedOut(),h,"",""),f,a)}}return b};Sys.Net.WebServiceProxy._generateTypedConstructor=function(a){return function(b){if(b)for(var c in b)this[c]=b[c];this.__type=a}};Sys.Net.WebServiceError=function(c,d,b,a){this._timedOut=c;this._message=d;this._stackTrace=b;this._exceptionType=a;this._statusCode=-1};Sys.Net.WebServiceError.prototype={get_timedOut:function(){return this._timedOut},get_statusCode:function(){return this._statusCode},get_message:function(){return this._message},get_stackTrace:function(){return this._stackTrace},get_exceptionType:function(){return this._exceptionType}};Sys.Net.WebServiceError.registerClass("Sys.Net.WebServiceError");Type.registerNamespace("Sys.Services");Sys.Services._ProfileService=function(){Sys.Services._ProfileService.initializeBase(this);this.properties={}};Sys.Services._ProfileService.DefaultWebServicePath="";Sys.Services._ProfileService.prototype={_defaultFailedCallback:null,_defaultLoadCompletedCallback:null,_defaultSaveCompletedCallback:null,_path:"",_timeout:0,get_defaultFailedCallback:function(){return this._defaultFailedCallback},set_defaultFailedCallback:function(a){this._defaultFailedCallback=a},get_defaultLoadCompletedCallback:function(){return this._defaultLoadCompletedCallback},set_defaultLoadCompletedCallback:function(a){this._defaultLoadCompletedCallback=a},get_defaultSaveCompletedCallback:function(){return this._defaultSaveCompletedCallback},set_defaultSaveCompletedCallback:function(a){this._defaultSaveCompletedCallback=a},get_path:function(){return this._path},set_path:function(a){if(!a||!a.length)a="";this._path=a},get_timeout:function(){return this._timeout},set_timeout:function(a){this._timeout=a},load:function(b,d,e,f){var c={},a;if(!b)a="GetAllPropertiesForCurrentUser";else{a="GetPropertiesForCurrentUser";c={properties:this._clonePropertyNames(b)}}this._invoke(this._get_path(),a,false,c,Function.createDelegate(this,this._onLoadComplete),Function.createDelegate(this,this._onLoadFailed),[d,e,f])},save:function(d,a,c,e){var b=this._flattenProperties(d,this.properties);this._invoke(this._get_path(),"SetPropertiesForCurrentUser",false,{values:b},Function.createDelegate(this,this._onSaveComplete),Function.createDelegate(this,this._onSaveFailed),[a,c,e])},_clonePropertyNames:function(e){var c=[],d={};for(var b=0;b<e.length;b++){var a=e[b];if(!d[a]){Array.add(c,a);d[a]=true}}return c},_flattenProperties:function(a,h,i){var b={},e,d;if(a&&a.length===0)return b;for(var c in h){e=h[c];d=i?i+"."+c:c;if(Sys.Services.ProfileGroup.isInstanceOfType(e)){var g=this._flattenProperties(a,e,d);for(var f in g){var j=g[f];b[f]=j}}else if(!a||Array.indexOf(a,d)!==-1)b[d]=e}return b},_get_path:function(){var a=this.get_path();if(!a.length)a=Sys.Services._ProfileService.DefaultWebServicePath;if(!a||!a.length)throw Error.invalidOperation(Sys.Res.servicePathNotSet);return a},_onLoadComplete:function(a,f,g){if(typeof a!=="object")throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,g,"Object"));var d=this._unflattenProperties(a);for(var b in d)this.properties[b]=d[b];var c=f[0],e=c?c:this._defaultLoadCompletedCallback;if(e)e(a.length,f[2],"Sys.Services.ProfileService.load")},_onLoadFailed:function(d,c){var a=c[1],b=a?a:this._defaultFailedCallback;if(b)b(d,c[2],"Sys.Services.ProfileService.load")},_onSaveComplete:function(d,c,f){if(typeof d!=="number")throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,f,"Number"));var a=c[0],e=c[2],b=a?a:this._defaultSaveCompletedCallback;if(b)b(d,e,"Sys.Services.ProfileService.save")},_onSaveFailed:function(e,c){var a=c[1],d=c[2],b=a?a:this._defaultFailedCallback;if(b)b(e,d,"Sys.Services.ProfileService.save")},_unflattenProperties:function(e){var c={},d,f,h=0;for(var a in e){h++;f=e[a];d=a.indexOf(".");if(d!==-1){var g=a.substr(0,d);a=a.substr(d+1);var b=c[g];if(!b||!Sys.Services.ProfileGroup.isInstanceOfType(b)){b=new Sys.Services.ProfileGroup;c[g]=b}b[a]=f}else c[a]=f}e.length=h;return c}};Sys.Services._ProfileService.registerClass("Sys.Services._ProfileService",Sys.Net.WebServiceProxy);Sys.Services.ProfileService=new Sys.Services._ProfileService;Sys.Services.ProfileGroup=function(a){if(a)for(var b in a)this[b]=a[b]};Sys.Services.ProfileGroup.registerClass("Sys.Services.ProfileGroup");Sys.Services._AuthenticationService=function(){Sys.Services._AuthenticationService.initializeBase(this)};Sys.Services._AuthenticationService.DefaultWebServicePath="";Sys.Services._AuthenticationService.prototype={_defaultFailedCallback:null,_defaultLoginCompletedCallback:null,_defaultLogoutCompletedCallback:null,_path:"",_timeout:0,_authenticated:false,get_defaultFailedCallback:function(){return this._defaultFailedCallback},set_defaultFailedCallback:function(a){this._defaultFailedCallback=a},get_defaultLoginCompletedCallback:function(){return this._defaultLoginCompletedCallback},set_defaultLoginCompletedCallback:function(a){this._defaultLoginCompletedCallback=a},get_defaultLogoutCompletedCallback:function(){return this._defaultLogoutCompletedCallback},set_defaultLogoutCompletedCallback:function(a){this._defaultLogoutCompletedCallback=a},get_isLoggedIn:function(){return this._authenticated},get_path:function(){return this._path},set_path:function(a){if(!a||!a.length)a="";this._path=a},get_timeout:function(){return this._timeout},set_timeout:function(a){this._timeout=a},login:function(c,b,a,h,f,d,e,g){this._invoke(this._get_path(),"Login",false,{userName:c,password:b,createPersistentCookie:a},Function.createDelegate(this,this._onLoginComplete),Function.createDelegate(this,this._onLoginFailed),[c,b,a,f,d,e,g])},logout:function(c,a,b,d){this._invoke(this._get_path(),"Logout",false,{},Function.createDelegate(this,this._onLogoutComplete),Function.createDelegate(this,this._onLogoutFailed),[c,a,b,d])},_get_path:function(){var a=this.get_path();if(!a.length)a=Sys.Services._AuthenticationService.DefaultWebServicePath;if(!a||!a.length)throw Error.invalidOperation(Sys.Res.servicePathNotSet);return a},_onLoginComplete:function(f,c,g){if(typeof f!=="boolean")throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,g,"Boolean"));var b=c[3],d=c[4],e=c[6],a=d?d:this._defaultLoginCompletedCallback;if(f){this._authenticated=true;if(a)a(true,e,"Sys.Services.AuthenticationService.login");if(typeof b!=="undefined"&&b!==null)window.location.href=b}else if(a)a(false,e,"Sys.Services.AuthenticationService.login")},_onLoginFailed:function(d,c){var a=c[5],b=a?a:this._defaultFailedCallback;if(b)b(d,c[6],"Sys.Services.AuthenticationService.login")},_onLogoutComplete:function(g,a,f){if(g!==null)throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,f,"null"));var c=a[0],b=a[1],e=a[3],d=b?b:this._defaultLogoutCompletedCallback;this._authenticated=false;if(d)d(null,e,"Sys.Services.AuthenticationService.logout");if(!c)window.location.reload();else window.location.href=c},_onLogoutFailed:function(d,c){var a=c[2],b=a?a:this._defaultFailedCallback;if(b)b(d,c[3],"Sys.Services.AuthenticationService.logout")},_setAuthenticated:function(a){this._authenticated=a}};Sys.Services._AuthenticationService.registerClass("Sys.Services._AuthenticationService",Sys.Net.WebServiceProxy);Sys.Services.AuthenticationService=new Sys.Services._AuthenticationService;Type.registerNamespace("Sys.Serialization");Sys.Serialization.JavaScriptSerializer=function(){};Sys.Serialization.JavaScriptSerializer.registerClass("Sys.Serialization.JavaScriptSerializer");Sys.Serialization.JavaScriptSerializer._stringRegEx=new RegExp('["\b\f\n\r\t\\\\\x00-\x1F]',"i");Sys.Serialization.JavaScriptSerializer._serializeWithBuilder=function(b,a,h){var c;switch(typeof b){case "object":if(b)if(Array.isInstanceOfType(b)){a.append("[");for(c=0;c<b.length;++c){if(c>0)a.append(",");Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(b[c],a)}a.append("]")}else{if(Date.isInstanceOfType(b)){a.append('"\\/Date(');a.append(b.getTime());a.append(')\\/"');break}var e=[],i=0;for(var g in b){if(g.startsWith("$"))continue;e[i++]=g}if(h)e.sort();a.append("{");var j=false;for(c=0;c<i;c++){var f=b[e[c]];if(typeof f!=="undefined"&&typeof f!=="function"){if(j)a.append(",");else j=true;Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(e[c],a,h);a.append(":");Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(f,a,h)}}a.append("}")}else a.append("null");break;case "number":if(isFinite(b))a.append(String(b));else throw Error.invalidOperation(Sys.Res.cannotSerializeNonFiniteNumbers);break;case "string":a.append('"');if(Sys.Browser.agent===Sys.Browser.Safari||Sys.Serialization.JavaScriptSerializer._stringRegEx.test(b)){var k=b.length;for(c=0;c<k;++c){var d=b.charAt(c);if(d>=" "){if(d==="\\"||d==='"')a.append("\\");a.append(d)}else switch(d){case "\b":a.append("\\b");break;case "\f":a.append("\\f");break;case "\n":a.append("\\n");break;case "\r":a.append("\\r");break;case "\t":a.append("\\t");break;default:a.append("\\u00");if(d.charCodeAt()<16)a.append("0");a.append(d.charCodeAt().toString(16))}}}else a.append(b);a.append('"');break;case "boolean":a.append(b.toString());break;default:a.append("null");break}};Sys.Serialization.JavaScriptSerializer.serialize=function(b){var a=new Sys.StringBuilder;Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(b,a,false);return a.toString()};Sys.Serialization.JavaScriptSerializer.deserialize=function(data){if(data.length===0)throw Error.argument("data",Sys.Res.cannotDeserializeEmptyString);try{var exp=data.replace(new RegExp('(^|[^\\\\])\\"\\\\/Date\\((-?[0-9]+)\\)\\\\/\\"',"g"),"$1new Date($2)");return eval("("+exp+")")}catch(a){throw Error.argument("data",Sys.Res.cannotDeserializeInvalidJson)}};Sys.CultureInfo=function(c,b,a){this.name=c;this.numberFormat=b;this.dateTimeFormat=a};Sys.CultureInfo.prototype={_getDateTimeFormats:function(){if(!this._dateTimeFormats){var a=this.dateTimeFormat;this._dateTimeFormats=[a.MonthDayPattern,a.YearMonthPattern,a.ShortDatePattern,a.ShortTimePattern,a.LongDatePattern,a.LongTimePattern,a.FullDateTimePattern,a.RFC1123Pattern,a.SortableDateTimePattern,a.UniversalSortableDateTimePattern]}return this._dateTimeFormats},_getMonthIndex:function(a){if(!this._upperMonths)this._upperMonths=this._toUpperArray(this.dateTimeFormat.MonthNames);return Array.indexOf(this._upperMonths,this._toUpper(a))},_getAbbrMonthIndex:function(a){if(!this._upperAbbrMonths)this._upperAbbrMonths=this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthNames);return Array.indexOf(this._upperMonths,this._toUpper(a))},_getDayIndex:function(a){if(!this._upperDays)this._upperDays=this._toUpperArray(this.dateTimeFormat.DayNames);return Array.indexOf(this._upperDays,this._toUpper(a))},_getAbbrDayIndex:function(a){if(!this._upperAbbrDays)this._upperAbbrDays=this._toUpperArray(this.dateTimeFormat.AbbreviatedDayNames);return Array.indexOf(this._upperAbbrDays,this._toUpper(a))},_toUpperArray:function(c){var b=[];for(var a=0,d=c.length;a<d;a++)b[a]=this._toUpper(c[a]);return b},_toUpper:function(a){return a.split("\u00A0").join(" ").toUpperCase()}};Sys.CultureInfo._parse=function(b){var a=Sys.Serialization.JavaScriptSerializer.deserialize(b);return new Sys.CultureInfo(a.name,a.numberFormat,a.dateTimeFormat)};Sys.CultureInfo.registerClass("Sys.CultureInfo");Sys.CultureInfo.InvariantCulture=Sys.CultureInfo._parse('{"name":"","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":true,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"\u00A4","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":true},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\':\'mm\':\'ss \'GMT\'","ShortDatePattern":"MM/dd/yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\'-\'MM\'-\'dd HH\':\'mm\':\'ss\'Z\'","YearMonthPattern":"yyyy MMMM","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":true,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}');if(typeof __cultureInfo==="undefined")var __cultureInfo='{"name":"en-US","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, MMMM dd, yyyy h:mm:ss tt","LongDatePattern":"dddd, MMMM dd, yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\':\'mm\':\'ss \'GMT\'","ShortDatePattern":"M/d/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\'-\'MM\'-\'dd HH\':\'mm\':\'ss\'Z\'","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]}}';Sys.CultureInfo.CurrentCulture=Sys.CultureInfo._parse(__cultureInfo);delete __cultureInfo;Sys.UI.Point=function(a,b){this.x=a;this.y=b};Sys.UI.Point.registerClass("Sys.UI.Point");Sys.UI.Bounds=function(c,d,b,a){this.x=c;this.y=d;this.height=a;this.width=b};Sys.UI.Bounds.registerClass("Sys.UI.Bounds");Sys.UI.DomElement=function(){};Sys.UI.DomElement.registerClass("Sys.UI.DomElement");Sys.UI.DomElement.addCssClass=function(a,b){if(!Sys.UI.DomElement.containsCssClass(a,b))if(a.className==="")a.className=b;else a.className+=" "+b};Sys.UI.DomElement.containsCssClass=function(b,a){return Array.contains(b.className.split(" "),a)};Sys.UI.DomElement.getBounds=function(a){var b=Sys.UI.DomElement.getLocation(a);return new Sys.UI.Bounds(b.x,b.y,a.offsetWidth||0,a.offsetHeight||0)};var $get=Sys.UI.DomElement.getElementById=function(f,e){if(!e)return document.getElementById(f);if(e.getElementById)return e.getElementById(f);var c=[],d=e.childNodes;for(var b=0;b<d.length;b++){var a=d[b];if(a.nodeType==1)c[c.length]=a}while(c.length){a=c.shift();if(a.id==f)return a;d=a.childNodes;for(b=0;b<d.length;b++){a=d[b];if(a.nodeType==1)c[c.length]=a}}return null};switch(Sys.Browser.agent){case Sys.Browser.InternetExplorer:Sys.UI.DomElement.getLocation=function Sys$UI$DomElement$getLocation(a){if(a.self||a.nodeType===9)return new Sys.UI.Point(0,0);var d=a.getClientRects();if(!d||!d.length)return new Sys.UI.Point(0,0);var e=a.ownerDocument.parentWindow,g=e.screenLeft-top.screenLeft-top.document.documentElement.scrollLeft+2,h=e.screenTop-top.screenTop-top.document.documentElement.scrollTop+2,c=e.frameElement||null;if(c){var b=c.currentStyle;g+=(c.frameBorder||1)*2+(parseInt(b.paddingLeft)||0)+(parseInt(b.borderLeftWidth)||0)-a.ownerDocument.documentElement.scrollLeft;h+=(c.frameBorder||1)*2+(parseInt(b.paddingTop)||0)+(parseInt(b.borderTopWidth)||0)-a.ownerDocument.documentElement.scrollTop}var f=d[0];return new Sys.UI.Point(f.left-g,f.top-h)};break;case Sys.Browser.Safari:Sys.UI.DomElement.getLocation=function(c){if(c.window&&c.window===c||c.nodeType===9)return new Sys.UI.Point(0,0);var g=0,h=0,j=null,f=null,b;for(var a=c;a;j=a,(f=b,a=a.offsetParent)){b=Sys.UI.DomElement._getCurrentStyle(a);var e=a.tagName;if((a.offsetLeft||a.offsetTop)&&(e!=="BODY"||(!f||f.position!=="absolute"))){g+=a.offsetLeft;h+=a.offsetTop}}b=Sys.UI.DomElement._getCurrentStyle(c);var d=b?b.position:null,k=d&&d!=="static";if(!d||d!=="absolute")for(var a=c.parentNode;a;a=a.parentNode){e=a.tagName;if(e!=="BODY"&&e!=="HTML"&&(a.scrollLeft||a.scrollTop)){g-=a.scrollLeft||0;h-=a.scrollTop||0}b=Sys.UI.DomElement._getCurrentStyle(a);var i=b?b.position:null;if(i&&i==="absolute")break}return new Sys.UI.Point(g,h)};break;case Sys.Browser.Opera:Sys.UI.DomElement.getLocation=function(b){if(b.window&&b.window===b||b.nodeType===9)return new Sys.UI.Point(0,0);var d=0,e=0,i=null;for(var a=b;a;i=a,a=a.offsetParent){var f=a.tagName;d+=a.offsetLeft||0;e+=a.offsetTop||0}var g=b.style.position,c=g&&g!=="static";for(var a=b.parentNode;a;a=a.parentNode){f=a.tagName;if(f!=="BODY"&&f!=="HTML"&&(a.scrollLeft||a.scrollTop)&&(c&&(a.style.overflow==="scroll"||a.style.overflow==="auto"))){d-=a.scrollLeft||0;e-=a.scrollTop||0}var h=a&&a.style?a.style.position:null;c=c||h&&h!=="static"}return new Sys.UI.Point(d,e)};break;default:Sys.UI.DomElement.getLocation=function(d){if(d.window&&d.window===d||d.nodeType===9)return new Sys.UI.Point(0,0);var e=0,f=0,i=null,h=null,b=null;for(var a=d;a;i=a,(h=b,a=a.offsetParent)){var c=a.tagName;b=Sys.UI.DomElement._getCurrentStyle(a);if((a.offsetLeft||a.offsetTop)&&!(c==="BODY"&&(!h||h.position!=="absolute"))){e+=a.offsetLeft;f+=a.offsetTop}if(i!==null&&b){if(c!=="TABLE"&&c!=="TD"&&c!=="HTML"){e+=parseInt(b.borderLeftWidth)||0;f+=parseInt(b.borderTopWidth)||0}if(c==="TABLE"&&(b.position==="relative"||b.position==="absolute")){e+=parseInt(b.marginLeft)||0;f+=parseInt(b.marginTop)||0}}}b=Sys.UI.DomElement._getCurrentStyle(d);var g=b?b.position:null,j=g&&g!=="static";if(!g||g!=="absolute")for(var a=d.parentNode;a;a=a.parentNode){c=a.tagName;if(c!=="BODY"&&c!=="HTML"&&(a.scrollLeft||a.scrollTop)){e-=a.scrollLeft||0;f-=a.scrollTop||0;b=Sys.UI.DomElement._getCurrentStyle(a);e+=parseInt(b.borderLeftWidth)||0;f+=parseInt(b.borderTopWidth)||0}}return new Sys.UI.Point(e,f)};break}Sys.UI.DomElement.removeCssClass=function(d,c){var a=" "+d.className+" ",b=a.indexOf(" "+c+" ");if(b>=0)d.className=(a.substr(0,b)+" "+a.substring(b+c.length+1,a.length)).trim()};Sys.UI.DomElement.setLocation=function(b,c,d){var a=b.style;a.position="absolute";a.left=c+"px";a.top=d+"px"};Sys.UI.DomElement.toggleCssClass=function(b,a){if(Sys.UI.DomElement.containsCssClass(b,a))Sys.UI.DomElement.removeCssClass(b,a);else Sys.UI.DomElement.addCssClass(b,a)};Sys.UI.DomElement._getCurrentStyle=function(a){var b=(a.ownerDocument?a.ownerDocument:a.documentElement).defaultView;return b&&a!==b&&b.getComputedStyle?b.getComputedStyle(a,null):a.style};Sys.UI.Behavior=function(b){Sys.UI.Behavior.initializeBase(this);this._element=b;var a=b._behaviors;if(!a)b._behaviors=[this];else a[a.length]=this};Sys.UI.Behavior.prototype={_name:null,get_element:function(){return this._element},get_id:function(){var a=Sys.UI.Behavior.callBaseMethod(this,"get_id");if(a)return a;if(!this._element||!this._element.id)return "";return this._element.id+"$"+this.get_name()},get_name:function(){if(this._name)return this._name;var a=Object.getTypeName(this),b=a.lastIndexOf(".");if(b!=-1)a=a.substr(b+1);if(!this.get_isInitialized())this._name=a;return a},set_name:function(a){this._name=a},initialize:function(){Sys.UI.Behavior.callBaseMethod(this,"initialize");var a=this.get_name();if(a)this._element[a]=this},dispose:function(){Sys.UI.Behavior.callBaseMethod(this,"dispose");if(this._element){var a=this.get_name();if(a)this._element[a]=null;Array.remove(this._element._behaviors,this);delete this._element}}};Sys.UI.Behavior.registerClass("Sys.UI.Behavior",Sys.Component);Sys.UI.Behavior.getBehaviorByName=function(b,c){var a=b[c];return a&&Sys.UI.Behavior.isInstanceOfType(a)?a:null};Sys.UI.Behavior.getBehaviors=function(a){if(!a._behaviors)return [];return Array.clone(a._behaviors)};Sys.UI.Behavior.getBehaviorsByType=function(d,e){var a=d._behaviors,c=[];if(a)for(var b=0,f=a.length;b<f;b++)if(e.isInstanceOfType(a[b]))c[c.length]=a[b];return c};Sys.UI.VisibilityMode=function(){throw Error.notImplemented()};Sys.UI.VisibilityMode.prototype={hide:0,collapse:1};Sys.UI.VisibilityMode.registerEnum("Sys.UI.VisibilityMode");Sys.UI.Control=function(a){Sys.UI.Control.initializeBase(this);this._element=a;a.control=this;this._oldDisplayMode=this._element.style.display;if(!this._oldDisplayMode||this._oldDisplayMode=="none")this._oldDisplayMode=""};Sys.UI.Control.prototype={_parent:null,_visibilityMode:Sys.UI.VisibilityMode.hide,get_element:function(){return this._element},get_id:function(){if(!this._element)return "";return this._element.id},set_id:function(){throw Error.invalidOperation(Sys.Res.cantSetId)},get_parent:function(){if(this._parent)return this._parent;else{var a=this._element.parentNode;while(a){if(a.control)return a.control;a=a.parentNode}return null}},set_parent:function(a){this._parent=a},get_visibilityMode:function(){return this._visibilityMode},set_visibilityMode:function(a){if(this._visibilityMode!==a){this._visibilityMode=a;if(this.get_visible()===false)if(this._visibilityMode===Sys.UI.VisibilityMode.hide)this._element.style.display=this._oldDisplayMode;else this._element.style.display="none"}this._visibilityMode=a},get_visible:function(){return this._element.style.visibility!="hidden"},set_visible:function(a){if(a!=this.get_visible()){this._element.style.visibility=a?"visible":"hidden";if(a||this._visibilityMode===Sys.UI.VisibilityMode.hide)this._element.style.display=this._oldDisplayMode;else this._element.style.display="none"}},addCssClass:function(a){Sys.UI.DomElement.addCssClass(this._element,a)},dispose:function(){Sys.UI.Control.callBaseMethod(this,"dispose");if(this._element){this._element.control=undefined;delete this._element}},initialize:function(){Sys.UI.Control.callBaseMethod(this,"initialize");var a=this._element},onBubbleEvent:function(){return false},raiseBubbleEvent:function(b,c){var a=this.get_parent();while(a){if(a.onBubbleEvent(b,c))return;a=a.get_parent()}},removeCssClass:function(a){Sys.UI.DomElement.removeCssClass(this._element,a)},toggleCssClass:function(a){Sys.UI.DomElement.toggleCssClass(this._element,a)}};Sys.UI.Control.registerClass("Sys.UI.Control",Sys.Component)
+Sys.Res={'argumentInteger':'Value must be an integer.','scriptLoadMultipleCallbacks':'The script \'{0}\' contains multiple calls to Sys.Application.notifyScriptLoaded(). Only one is allowed.','invokeCalledTwice':'Cannot call invoke more than once.','webServiceFailed':'The server method \'{0}\' failed with the following error: {1}','argumentType':'Object cannot be converted to the required type.','argumentNull':'Value cannot be null.','controlCantSetId':'The id property can\'t be set on a control.','formatBadFormatSpecifier':'Format specifier was invalid.','webServiceFailedNoMsg':'The server method \'{0}\' failed.','argumentDomElement':'Value must be a DOM element.','invalidExecutorType':'Could not create a valid Sys.Net.WebRequestExecutor from: {0}.','cannotCallBeforeResponse':'Cannot call {0} when responseAvailable is false.','actualValue':'Actual value was {0}.','enumInvalidValue':'\'{0}\' is not a valid value for enum {1}.','scriptLoadFailed':'The script \'{0}\' could not be loaded.','parameterCount':'Parameter count mismatch.','cannotDeserializeEmptyString':'Cannot deserialize empty string.','formatInvalidString':'Input string was not in a correct format.','invalidTimeout':'Value must be greater than or equal to zero.','cannotAbortBeforeStart':'Cannot abort when executor has not started.','argument':'Value does not fall within the expected range.','cannotDeserializeInvalidJson':'Cannot deserialize. The data does not correspond to valid JSON.','invalidHttpVerb':'httpVerb cannot be set to an empty or null string.','nullWebRequest':'Cannot call executeRequest with a null webRequest.','eventHandlerInvalid':'Handler was not added through the Sys.UI.DomEvent.addHandler method.','cannotSerializeNonFiniteNumbers':'Cannot serialize non finite numbers.','argumentUndefined':'Value cannot be undefined.','webServiceInvalidReturnType':'The server method \'{0}\' returned an invalid type. Expected type: {1}','servicePathNotSet':'The path to the web service has not been set.','argumentTypeWithTypes':'Object of type \'{0}\' cannot be converted to type \'{1}\'.','cannotCallOnceStarted':'Cannot call {0} once started.','badBaseUrl1':'Base URL does not contain ://.','badBaseUrl2':'Base URL does not contain another /.','badBaseUrl3':'Cannot find last / in base URL.','setExecutorAfterActive':'Cannot set executor after it has become active.','paramName':'Parameter name: {0}','cannotCallOutsideHandler':'Cannot call {0} outside of a completed event handler.','format':'One of the identified items was in an invalid format.','assertFailedCaller':'Assertion Failed: {0}\r\nat {1}','argumentOutOfRange':'Specified argument was out of the range of valid values.','webServiceTimedOut':'The server method \'{0}\' timed out.','notImplemented':'The method or operation is not implemented.','assertFailed':'Assertion Failed: {0}','invalidOperation':'Operation is not valid due to the current state of the object.','breakIntoDebugger':'{0}\r\n\r\nBreak into debugger?'};
+if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxTimer.debug.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxTimer.debug.js
new file mode 100644
index 00000000000..9647dcc566f
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxTimer.debug.js
@@ -0,0 +1,141 @@
+//-----------------------------------------------------------------------
+// Copyright (C) Microsoft Corporation. All rights reserved.
+//-----------------------------------------------------------------------
+// MicrosoftAjaxTimer.js
+// Sys.UI._Timer component
+
+///////////////////////////////////////////////////////////////////////////////
+
+Sys.UI._Timer = function Sys$UI$_Timer(element) {
+ Sys.UI._Timer.initializeBase(this,[element]);
+ this._interval = 60000;
+ this._enabled = true;
+ this._postbackPending = false;
+ this._raiseTickDelegate = null;
+ this._endRequestHandlerDelegate = null;
+ this._timer = null;
+ this._pageRequestManager = null;
+ this._uniqueID = null;
+}
+
+ function Sys$UI$_Timer$get_enabled() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._enabled;
+ }
+ function Sys$UI$_Timer$set_enabled(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
+ if (e) throw e;
+
+ this._enabled = value;
+ }
+ function Sys$UI$_Timer$get_interval() {
+ /// <value type="Number"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._interval;
+ }
+ function Sys$UI$_Timer$set_interval(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Number}]);
+ if (e) throw e;
+
+ this._interval = value;
+ }
+ function Sys$UI$_Timer$get_uniqueID(){
+ /// <value type="String"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._uniqueID;
+ }
+ function Sys$UI$_Timer$set_uniqueID(value){
+ var e = Function._validateParams(arguments, [{name: "value", type: String}]);
+ if (e) throw e;
+
+ this._uniqueID = value;
+ }
+ function Sys$UI$_Timer$dispose(){
+ this._stopTimer();
+ if(this._pageRequestManager !== null){
+ this._pageRequestManager.remove_endRequest(this._endRequestHandlerDelegate);
+ }
+ Sys.UI._Timer.callBaseMethod(this,"dispose");
+ }
+ function Sys$UI$_Timer$_doPostback(){
+ __doPostBack(this.get_uniqueID(),'');
+ }
+ function Sys$UI$_Timer$_handleEndRequest(sender, arg){
+ var dataItem = arg.get_dataItems()[this.get_id()];
+ if (dataItem){
+ this._update(dataItem[0],dataItem[1]);
+ }
+
+ if ((this._postbackPending === true) && (this._pageRequestManager !== null)&&(this._pageRequestManager.get_isInAsyncPostBack() === false)){
+ this._postbackPending = false;
+ this._doPostback();
+ }
+
+ }
+ function Sys$UI$_Timer$initialize(){
+ Sys.UI._Timer.callBaseMethod(this, 'initialize');
+ this._raiseTickDelegate = Function.createDelegate(this,this._raiseTick);
+ this._endRequestHandlerDelegate = Function.createDelegate(this,this._handleEndRequest);
+ if (Sys.WebForms && Sys.WebForms.PageRequestManager){
+ this._pageRequestManager = Sys.WebForms.PageRequestManager.getInstance();
+ }
+ if (this._pageRequestManager !== null ){
+ this._pageRequestManager.add_endRequest(this._endRequestHandlerDelegate);
+ }
+ if(this.get_enabled()) {
+ this._startTimer();
+ }
+ }
+ function Sys$UI$_Timer$_raiseTick() {
+ this._startTimer();
+ if ((this._pageRequestManager === null) || (!this._pageRequestManager.get_isInAsyncPostBack())){
+ this._doPostback();
+ this._postbackPending = false;
+ }
+ else {
+ this._postbackPending = true;
+ }
+ }
+ function Sys$UI$_Timer$_startTimer(){
+ this._timer = window.setTimeout(Function.createDelegate(this,this._raiseTick),this.get_interval());
+ }
+ function Sys$UI$_Timer$_stopTimer(){
+ if (this._timer !== null){
+ window.clearTimeout(this._timer);
+ this._timer = null;
+ }
+ }
+ function Sys$UI$_Timer$_update(enabled,interval) {
+ var stopped = !this.get_enabled();
+ var intervalChanged= (this.get_interval() !== interval);
+ if ((!stopped) && ((!enabled)||(intervalChanged))){
+ this._stopTimer();
+ stopped = true;
+ }
+ this.set_enabled(enabled);
+ this.set_interval(interval);
+ if ((this.get_enabled()) && (stopped)){
+ this._startTimer();
+ }
+ }
+Sys.UI._Timer.prototype = {
+ get_enabled: Sys$UI$_Timer$get_enabled,
+ set_enabled: Sys$UI$_Timer$set_enabled,
+ get_interval: Sys$UI$_Timer$get_interval,
+ set_interval: Sys$UI$_Timer$set_interval,
+ get_uniqueID: Sys$UI$_Timer$get_uniqueID,
+ set_uniqueID: Sys$UI$_Timer$set_uniqueID,
+ dispose: Sys$UI$_Timer$dispose,
+ _doPostback: Sys$UI$_Timer$_doPostback,
+ _handleEndRequest: Sys$UI$_Timer$_handleEndRequest,
+ initialize: Sys$UI$_Timer$initialize,
+ _raiseTick: Sys$UI$_Timer$_raiseTick,
+ _startTimer: Sys$UI$_Timer$_startTimer,
+ _stopTimer: Sys$UI$_Timer$_stopTimer,
+ _update: Sys$UI$_Timer$_update
+}
+Sys.UI._Timer.registerClass('Sys.UI._Timer', Sys.UI.Control);
+
+
+if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxTimer.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxTimer.js
new file mode 100644
index 00000000000..9c0e7384665
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxTimer.js
@@ -0,0 +1,5 @@
+//----------------------------------------------------------
+// Copyright (C) Microsoft Corporation. All rights reserved.
+//----------------------------------------------------------
+// MicrosoftAjaxTimer.js
+Sys.UI._Timer=function(a){Sys.UI._Timer.initializeBase(this,[a]);this._interval=60000;this._enabled=true;this._postbackPending=false;this._raiseTickDelegate=null;this._endRequestHandlerDelegate=null;this._timer=null;this._pageRequestManager=null;this._uniqueID=null};Sys.UI._Timer.prototype={get_enabled:function(){return this._enabled},set_enabled:function(a){this._enabled=a},get_interval:function(){return this._interval},set_interval:function(a){this._interval=a},get_uniqueID:function(){return this._uniqueID},set_uniqueID:function(a){this._uniqueID=a},dispose:function(){this._stopTimer();if(this._pageRequestManager!==null)this._pageRequestManager.remove_endRequest(this._endRequestHandlerDelegate);Sys.UI._Timer.callBaseMethod(this,"dispose")},_doPostback:function(){__doPostBack(this.get_uniqueID(),"")},_handleEndRequest:function(c,b){var a=b.get_dataItems()[this.get_id()];if(a)this._update(a[0],a[1]);if(this._postbackPending===true&&this._pageRequestManager!==null&&this._pageRequestManager.get_isInAsyncPostBack()===false){this._postbackPending=false;this._doPostback()}},initialize:function(){Sys.UI._Timer.callBaseMethod(this,"initialize");this._raiseTickDelegate=Function.createDelegate(this,this._raiseTick);this._endRequestHandlerDelegate=Function.createDelegate(this,this._handleEndRequest);if(Sys.WebForms&&Sys.WebForms.PageRequestManager)this._pageRequestManager=Sys.WebForms.PageRequestManager.getInstance();if(this._pageRequestManager!==null)this._pageRequestManager.add_endRequest(this._endRequestHandlerDelegate);if(this.get_enabled())this._startTimer()},_raiseTick:function(){this._startTimer();if(this._pageRequestManager===null||!this._pageRequestManager.get_isInAsyncPostBack()){this._doPostback();this._postbackPending=false}else this._postbackPending=true},_startTimer:function(){this._timer=window.setTimeout(Function.createDelegate(this,this._raiseTick),this.get_interval())},_stopTimer:function(){if(this._timer!==null){window.clearTimeout(this._timer);this._timer=null}},_update:function(c,b){var a=!this.get_enabled(),d=this.get_interval()!==b;if(!a&&(!c||d)){this._stopTimer();a=true}this.set_enabled(c);this.set_interval(b);if(this.get_enabled()&&a)this._startTimer()}};Sys.UI._Timer.registerClass("Sys.UI._Timer",Sys.UI.Control)if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxWebForms.debug.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxWebForms.debug.js
new file mode 100644
index 00000000000..4396b1f360e
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxWebForms.debug.js
@@ -0,0 +1,1557 @@
+//-----------------------------------------------------------------------
+// Copyright (C) Microsoft Corporation. All rights reserved.
+//-----------------------------------------------------------------------
+// MicrosoftAjaxWebForms.js
+// Microsoft AJAX ASP.NET WebForms Framework.
+
+
+Type.registerNamespace('Sys.WebForms');
+
+
+Sys.WebForms.BeginRequestEventArgs = function Sys$WebForms$BeginRequestEventArgs(request, postBackElement) {
+ /// <param name="request" type="Sys.Net.WebRequest"></param>
+ /// <param name="postBackElement" domElement="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "request", type: Sys.Net.WebRequest},
+ {name: "postBackElement", domElement: true}
+ ]);
+ if (e) throw e;
+
+
+ Sys.WebForms.BeginRequestEventArgs.initializeBase(this);
+ this._request = request;
+ this._postBackElement = postBackElement;
+}
+
+
+ function Sys$WebForms$BeginRequestEventArgs$get_postBackElement() {
+ /// <value domElement="true"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._postBackElement;
+ }
+
+ function Sys$WebForms$BeginRequestEventArgs$get_request() {
+ /// <value type="Sys.Net.WebRequest"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._request;
+ }
+Sys.WebForms.BeginRequestEventArgs.prototype = {
+ get_postBackElement: Sys$WebForms$BeginRequestEventArgs$get_postBackElement,
+
+ get_request: Sys$WebForms$BeginRequestEventArgs$get_request
+}
+
+Sys.WebForms.BeginRequestEventArgs.registerClass('Sys.WebForms.BeginRequestEventArgs', Sys.EventArgs);
+
+Sys.WebForms.EndRequestEventArgs = function Sys$WebForms$EndRequestEventArgs(error, dataItems, response) {
+ /// <param name="error" type="Error" mayBeNull="true"></param>
+ /// <param name="dataItems" type="Object" mayBeNull="true"></param>
+ /// <param name="response" type="Sys.Net.WebRequestExecutor"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "error", type: Error, mayBeNull: true},
+ {name: "dataItems", type: Object, mayBeNull: true},
+ {name: "response", type: Sys.Net.WebRequestExecutor}
+ ]);
+ if (e) throw e;
+
+
+ Sys.WebForms.EndRequestEventArgs.initializeBase(this);
+ this._errorHandled = false;
+ this._error = error;
+ this._dataItems = dataItems || new Object();
+ this._response = response;
+}
+
+
+ function Sys$WebForms$EndRequestEventArgs$get_dataItems() {
+ /// <value type="Object"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._dataItems;
+ }
+
+ function Sys$WebForms$EndRequestEventArgs$get_error() {
+ /// <value type="Error"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._error;
+ }
+
+ function Sys$WebForms$EndRequestEventArgs$get_errorHandled() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._errorHandled;
+ }
+ function Sys$WebForms$EndRequestEventArgs$set_errorHandled(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
+ if (e) throw e;
+
+ this._errorHandled = value;
+ }
+
+ function Sys$WebForms$EndRequestEventArgs$get_response() {
+ /// <value type="Sys.Net.WebRequestExecutor"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._response;
+ }
+Sys.WebForms.EndRequestEventArgs.prototype = {
+ get_dataItems: Sys$WebForms$EndRequestEventArgs$get_dataItems,
+
+ get_error: Sys$WebForms$EndRequestEventArgs$get_error,
+
+ get_errorHandled: Sys$WebForms$EndRequestEventArgs$get_errorHandled,
+ set_errorHandled: Sys$WebForms$EndRequestEventArgs$set_errorHandled,
+
+ get_response: Sys$WebForms$EndRequestEventArgs$get_response
+}
+
+Sys.WebForms.EndRequestEventArgs.registerClass('Sys.WebForms.EndRequestEventArgs', Sys.EventArgs);
+
+Sys.WebForms.InitializeRequestEventArgs = function Sys$WebForms$InitializeRequestEventArgs(request, postBackElement) {
+ /// <param name="request" type="Sys.Net.WebRequest"></param>
+ /// <param name="postBackElement" domElement="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "request", type: Sys.Net.WebRequest},
+ {name: "postBackElement", domElement: true}
+ ]);
+ if (e) throw e;
+
+
+ Sys.WebForms.InitializeRequestEventArgs.initializeBase(this);
+ this._request = request;
+ this._postBackElement = postBackElement;
+}
+
+
+ function Sys$WebForms$InitializeRequestEventArgs$get_postBackElement() {
+ /// <value domElement="true"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._postBackElement;
+ }
+
+ function Sys$WebForms$InitializeRequestEventArgs$get_request() {
+ /// <value type="Sys.Net.WebRequest"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._request;
+ }
+Sys.WebForms.InitializeRequestEventArgs.prototype = {
+ get_postBackElement: Sys$WebForms$InitializeRequestEventArgs$get_postBackElement,
+
+ get_request: Sys$WebForms$InitializeRequestEventArgs$get_request
+}
+
+Sys.WebForms.InitializeRequestEventArgs.registerClass('Sys.WebForms.InitializeRequestEventArgs', Sys.CancelEventArgs);
+
+Sys.WebForms.PageLoadedEventArgs = function Sys$WebForms$PageLoadedEventArgs(panelsUpdated, panelsCreated, dataItems) {
+ /// <param name="panelsUpdated" type="Array"></param>
+ /// <param name="panelsCreated" type="Array"></param>
+ /// <param name="dataItems" type="Object" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "panelsUpdated", type: Array},
+ {name: "panelsCreated", type: Array},
+ {name: "dataItems", type: Object, mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ Sys.WebForms.PageLoadedEventArgs.initializeBase(this);
+
+ this._panelsUpdated = panelsUpdated;
+ this._panelsCreated = panelsCreated;
+ this._dataItems = dataItems || new Object();
+}
+
+
+ function Sys$WebForms$PageLoadedEventArgs$get_dataItems() {
+ /// <value type="Object"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._dataItems;
+ }
+
+ function Sys$WebForms$PageLoadedEventArgs$get_panelsCreated() {
+ /// <value type="Array"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._panelsCreated;
+ }
+
+ function Sys$WebForms$PageLoadedEventArgs$get_panelsUpdated() {
+ /// <value type="Array"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._panelsUpdated;
+ }
+Sys.WebForms.PageLoadedEventArgs.prototype = {
+ get_dataItems: Sys$WebForms$PageLoadedEventArgs$get_dataItems,
+
+ get_panelsCreated: Sys$WebForms$PageLoadedEventArgs$get_panelsCreated,
+
+ get_panelsUpdated: Sys$WebForms$PageLoadedEventArgs$get_panelsUpdated
+}
+
+Sys.WebForms.PageLoadedEventArgs.registerClass('Sys.WebForms.PageLoadedEventArgs', Sys.EventArgs);
+
+Sys.WebForms.PageLoadingEventArgs = function Sys$WebForms$PageLoadingEventArgs(panelsUpdating, panelsDeleting, dataItems) {
+ /// <param name="panelsUpdating" type="Array"></param>
+ /// <param name="panelsDeleting" type="Array"></param>
+ /// <param name="dataItems" type="Object" mayBeNull="true"></param>
+ var e = Function._validateParams(arguments, [
+ {name: "panelsUpdating", type: Array},
+ {name: "panelsDeleting", type: Array},
+ {name: "dataItems", type: Object, mayBeNull: true}
+ ]);
+ if (e) throw e;
+
+ Sys.WebForms.PageLoadingEventArgs.initializeBase(this);
+
+ this._panelsUpdating = panelsUpdating;
+ this._panelsDeleting = panelsDeleting;
+ this._dataItems = dataItems || new Object();
+}
+
+
+ function Sys$WebForms$PageLoadingEventArgs$get_dataItems() {
+ /// <value type="Object"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._dataItems;
+ }
+
+ function Sys$WebForms$PageLoadingEventArgs$get_panelsDeleting() {
+ /// <value type="Array"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._panelsDeleting;
+ }
+
+ function Sys$WebForms$PageLoadingEventArgs$get_panelsUpdating() {
+ /// <value type="Array"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._panelsUpdating;
+ }
+Sys.WebForms.PageLoadingEventArgs.prototype = {
+ get_dataItems: Sys$WebForms$PageLoadingEventArgs$get_dataItems,
+
+ get_panelsDeleting: Sys$WebForms$PageLoadingEventArgs$get_panelsDeleting,
+
+ get_panelsUpdating: Sys$WebForms$PageLoadingEventArgs$get_panelsUpdating
+}
+
+Sys.WebForms.PageLoadingEventArgs.registerClass('Sys.WebForms.PageLoadingEventArgs', Sys.EventArgs);
+Sys.WebForms.PageRequestManager = function Sys$WebForms$PageRequestManager() {
+ this._form = null;
+ this._updatePanelIDs = null;
+ this._updatePanelClientIDs = null;
+ this._oldUpdatePanelIDs = null;
+ this._childUpdatePanelIDs = null;
+ this._panelsToRefreshIDs = null;
+ this._updatePanelHasChildrenAsTriggers = null;
+ this._asyncPostBackControlIDs = null;
+ this._asyncPostBackControlClientIDs = null;
+ this._postBackControlIDs = null;
+ this._postBackControlClientIDs = null;
+ this._scriptManagerID = null;
+ this._pageLoadedHandler = null;
+
+ this._additionalInput = null;
+ this._onsubmit = null;
+ this._onSubmitStatements = [];
+ this._originalDoPostBack = null;
+ this._postBackSettings = null;
+ this._request = null;
+ this._onFormSubmitHandler = null;
+ this._onFormElementClickHandler = null;
+ this._onWindowUnloadHandler = null;
+ this._asyncPostBackTimeout = null;
+
+ this._controlIDToFocus = null;
+ this._scrollPosition = null;
+ this._dataItems = null;
+ this._response = null;
+ this._processingRequest = false;
+ this._scriptDisposes = {};
+}
+
+
+
+ function Sys$WebForms$PageRequestManager$_get_eventHandlerList() {
+ if (!this._events) {
+ this._events = new Sys.EventHandlerList();
+ }
+ return this._events;
+ }
+
+ function Sys$WebForms$PageRequestManager$get_isInAsyncPostBack() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._request !== null;
+ }
+
+
+ function Sys$WebForms$PageRequestManager$add_beginRequest(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this._get_eventHandlerList().addHandler("beginRequest", handler);
+ }
+ function Sys$WebForms$PageRequestManager$remove_beginRequest(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this._get_eventHandlerList().removeHandler("beginRequest", handler);
+ }
+
+ function Sys$WebForms$PageRequestManager$add_endRequest(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this._get_eventHandlerList().addHandler("endRequest", handler);
+ }
+ function Sys$WebForms$PageRequestManager$remove_endRequest(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this._get_eventHandlerList().removeHandler("endRequest", handler);
+ }
+
+ function Sys$WebForms$PageRequestManager$add_initializeRequest(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this._get_eventHandlerList().addHandler("initializeRequest", handler);
+ }
+ function Sys$WebForms$PageRequestManager$remove_initializeRequest(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this._get_eventHandlerList().removeHandler("initializeRequest", handler);
+ }
+
+ function Sys$WebForms$PageRequestManager$add_pageLoaded(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this._get_eventHandlerList().addHandler("pageLoaded", handler);
+ }
+ function Sys$WebForms$PageRequestManager$remove_pageLoaded(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this._get_eventHandlerList().removeHandler("pageLoaded", handler);
+ }
+
+ function Sys$WebForms$PageRequestManager$add_pageLoading(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this._get_eventHandlerList().addHandler("pageLoading", handler);
+ }
+ function Sys$WebForms$PageRequestManager$remove_pageLoading(handler) {
+ var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
+ if (e) throw e;
+
+ this._get_eventHandlerList().removeHandler("pageLoading", handler);
+ }
+
+ function Sys$WebForms$PageRequestManager$abortPostBack() {
+ if (!this._processingRequest && this._request) {
+ this._request.get_executor().abort();
+ this._request = null;
+ }
+ }
+
+ function Sys$WebForms$PageRequestManager$_createPageRequestManagerTimeoutError() {
+ var displayMessage = "Sys.WebForms.PageRequestManagerTimeoutException: " + Sys.WebForms.Res.PRM_TimeoutError;
+ var e = Error.create(displayMessage, {name: 'Sys.WebForms.PageRequestManagerTimeoutException'});
+ e.popStackFrame();
+ return e;
+ }
+
+ function Sys$WebForms$PageRequestManager$_createPageRequestManagerServerError(httpStatusCode, message) {
+ var displayMessage = message || ("Sys.WebForms.PageRequestManagerServerErrorException: " + String.format(Sys.WebForms.Res.PRM_ServerError, httpStatusCode));
+ var e = Error.create(displayMessage, {
+ name: 'Sys.WebForms.PageRequestManagerServerErrorException',
+ httpStatusCode: httpStatusCode
+ });
+ e.popStackFrame();
+ return e;
+ }
+
+ function Sys$WebForms$PageRequestManager$_createPageRequestManagerParserError(parserErrorMessage) {
+ var displayMessage = "Sys.WebForms.PageRequestManagerParserErrorException: " + String.format(Sys.WebForms.Res.PRM_ParserError, parserErrorMessage);
+ var e = Error.create(displayMessage, {name: 'Sys.WebForms.PageRequestManagerParserErrorException'});
+ e.popStackFrame();
+ return e;
+ }
+
+ function Sys$WebForms$PageRequestManager$_createPostBackSettings(async, panelID, sourceElement) {
+
+ return { async:async, panelID:panelID, sourceElement:sourceElement };
+ }
+
+ function Sys$WebForms$PageRequestManager$_convertToClientIDs(source, destinationIDs, destinationClientIDs) {
+ if (source) {
+ for (var i = 0; i < source.length; i++) {
+ Array.add(destinationIDs, source[i]);
+ Array.add(destinationClientIDs, this._uniqueIDToClientID(source[i]));
+ }
+ }
+ }
+
+ function Sys$WebForms$PageRequestManager$_decodeString(encodedValue) {
+ return encodedValue.replace(/\\\u00FF\\/g, "\u0000").replace(/\u00FF\u00FF/g, "\u00FF");
+ }
+
+ function Sys$WebForms$PageRequestManager$_destroyTree(element) {
+ if (element.nodeType === 1) {
+ var childNodes = element.childNodes;
+ for (var i = childNodes.length - 1; i >= 0; i--) {
+ var node = childNodes[i];
+ if (node.nodeType === 1) {
+ if (node.dispose && typeof(node.dispose) === "function") {
+ node.dispose();
+ }
+ else if (node.control && typeof(node.control.dispose) === "function") {
+ node.control.dispose();
+ }
+ var behaviors = Sys.UI.Behavior.getBehaviors(node);
+ for (var j = behaviors.length - 1; j >= 0; j--) {
+ behaviors[j].dispose();
+ }
+ this._destroyTree(node);
+ }
+ }
+ }
+ }
+
+ function Sys$WebForms$PageRequestManager$dispose() {
+ if (this._form) {
+ Sys.UI.DomEvent.removeHandler(this._form, 'submit', this._onFormSubmitHandler);
+ Sys.UI.DomEvent.removeHandler(this._form, 'click', this._onFormElementClickHandler);
+ Sys.UI.DomEvent.removeHandler(window, 'unload', this._onWindowUnloadHandler);
+ Sys.UI.DomEvent.removeHandler(window, 'load', this._pageLoadedHandler);
+ }
+
+ if (this._originalDoPostBack) {
+ window.__doPostBack = this._originalDoPostBack;
+ this._originalDoPostBack = null;
+ }
+
+ this._form = null;
+ this._updatePanelIDs = null;
+ this._oldUpdatePanelIDs = null;
+ this._childUpdatePanelIDs = null;
+ this._updatePanelClientIDs = null;
+ this._asyncPostBackControlIDs = null;
+ this._asyncPostBackControlClientIDs = null;
+ this._postBackControlIDs = null;
+ this._postBackControlClientIDs = null;
+ this._asyncPostBackTimeout = null;
+ this._scrollPosition = null;
+ this._dataItems = null;
+ }
+
+
+ function Sys$WebForms$PageRequestManager$_doPostBack(eventTarget, eventArgument) {
+ this._additionalInput = null;
+
+ var form = this._form;
+ if (form.action !== form._initialAction) {
+ this._postBackSettings = this._createPostBackSettings(false, null, null);
+ }
+ else {
+ var clientID = this._uniqueIDToClientID(eventTarget);
+ var postBackElement = document.getElementById(clientID);
+ if (!postBackElement) {
+ if (Array.contains(this._asyncPostBackControlIDs, eventTarget)) {
+ this._postBackSettings = this._createPostBackSettings(true, this._scriptManagerID + '|' + eventTarget, null);
+ }
+ else {
+ if (Array.contains(this._postBackControlIDs, eventTarget)) {
+ this._postBackSettings = this._createPostBackSettings(false, null, null);
+ }
+ else {
+ var nearestUniqueIDMatch = this._findNearestElement(eventTarget);
+ if (nearestUniqueIDMatch) {
+ this._postBackSettings = this._getPostBackSettings(nearestUniqueIDMatch, eventTarget);
+ }
+ else {
+ this._postBackSettings = this._createPostBackSettings(false, null, null);
+ }
+ }
+ }
+ }
+ else {
+ this._postBackSettings = this._getPostBackSettings(postBackElement, eventTarget);
+ }
+ }
+
+ if (!this._postBackSettings.async) {
+ form.onsubmit = this._onsubmit;
+ this._originalDoPostBack(eventTarget, eventArgument);
+ form.onsubmit = null;
+ return;
+ }
+
+ form.__EVENTTARGET.value = eventTarget;
+ form.__EVENTARGUMENT.value = eventArgument;
+ this._onFormSubmit();
+ }
+
+ function Sys$WebForms$PageRequestManager$_elementContains(container, element) {
+ while (element) {
+ if (element === container) {
+ return true;
+ }
+ element = element.parentNode;
+ }
+ return false;
+ }
+
+ function Sys$WebForms$PageRequestManager$_endPostBack(error, response) {
+ this._processingRequest = false;
+
+ this._request = null;
+ this._additionalInput = null;
+
+ var handler = this._get_eventHandlerList().getHandler("endRequest");
+ var errorHandled = false;
+ if (handler) {
+ var eventArgs = new Sys.WebForms.EndRequestEventArgs(error, this._dataItems, response);
+ handler(this, eventArgs);
+ errorHandled = eventArgs.get_errorHandled();
+ }
+ this._dataItems = null;
+ if (error && !errorHandled) {
+ alert(error.message);
+ }
+ }
+
+
+
+ function Sys$WebForms$PageRequestManager$_findNearestElement(uniqueID) {
+ while (uniqueID.length > 0) {
+ var clientID = this._uniqueIDToClientID(uniqueID);
+ var element = document.getElementById(clientID);
+ if (element) {
+ return element;
+ }
+ var indexOfLastDollar = uniqueID.lastIndexOf('$');
+ if (indexOfLastDollar === -1) {
+ return null;
+ }
+ uniqueID = uniqueID.substring(0, indexOfLastDollar);
+ }
+ return null;
+ }
+
+ function Sys$WebForms$PageRequestManager$_findText(text, location) {
+ var startIndex = Math.max(0, location - 20);
+ var endIndex = Math.min(text.length, location + 20);
+ return text.substring(startIndex, endIndex);
+ }
+
+ function Sys$WebForms$PageRequestManager$_getPageLoadedEventArgs(initialLoad) {
+
+ var updated = [];
+ var created = [];
+
+ var oldIDs = this._oldUpdatePanelIDs || []; var newIDs = this._updatePanelIDs; var childIDs = this._childUpdatePanelIDs || []; var refreshedIDs = this._panelsToRefreshIDs || [];
+ for (var i = 0; i < refreshedIDs.length; i++) {
+ Array.add(updated, document.getElementById(this._uniqueIDToClientID(refreshedIDs[i])));
+ }
+
+ for (var i = 0; i < newIDs.length; i++) {
+ if (initialLoad || Array.indexOf(childIDs, newIDs[i]) !== -1) {
+ Array.add(created, document.getElementById(this._uniqueIDToClientID(newIDs[i])));
+ }
+ }
+
+ return new Sys.WebForms.PageLoadedEventArgs(updated, created, this._dataItems);
+ }
+
+ function Sys$WebForms$PageRequestManager$_getPageLoadingEventArgs() {
+
+ var updated = [];
+ var deleted = [];
+
+ var oldIDs = this._oldUpdatePanelIDs;
+ var newIDs = this._updatePanelIDs;
+ var childIDs = this._childUpdatePanelIDs;
+ var refreshedIDs = this._panelsToRefreshIDs;
+
+ for (var i = 0; i < refreshedIDs.length; i++) {
+ Array.add(updated, document.getElementById(this._uniqueIDToClientID(refreshedIDs[i])));
+ }
+
+ for (var i = 0; i < oldIDs.length; i++) {
+ if (Array.indexOf(refreshedIDs, oldIDs[i]) === -1 &&
+ (Array.indexOf(newIDs, oldIDs[i]) === -1 || Array.indexOf(childIDs, oldIDs[i]) > -1)) {
+ Array.add(deleted, document.getElementById(this._uniqueIDToClientID(oldIDs[i])));
+ }
+ }
+
+ return new Sys.WebForms.PageLoadingEventArgs(updated, deleted, this._dataItems);
+ }
+
+ function Sys$WebForms$PageRequestManager$_getPostBackSettings(element, elementUniqueID) {
+
+
+ var originalElement = element;
+
+ var proposedSettings = null;
+
+ while (element) {
+ if (element.id) {
+ if (!proposedSettings && Array.contains(this._asyncPostBackControlClientIDs, element.id)) {
+ proposedSettings = this._createPostBackSettings(true, this._scriptManagerID + '|' + elementUniqueID, originalElement);
+ }
+ else {
+ if (!proposedSettings && Array.contains(this._postBackControlClientIDs, element.id)) {
+ return this._createPostBackSettings(false, null, null);
+ }
+ else {
+ var indexOfPanel = Array.indexOf(this._updatePanelClientIDs, element.id);
+ if (indexOfPanel !== -1) {
+ if (this._updatePanelHasChildrenAsTriggers[indexOfPanel]) {
+
+ return this._createPostBackSettings(true, this._updatePanelIDs[indexOfPanel] + '|' + elementUniqueID, originalElement);
+ }
+ else {
+ return this._createPostBackSettings(true, this._scriptManagerID + '|' + elementUniqueID, originalElement);
+ }
+ }
+ }
+ }
+
+ if (!proposedSettings && this._matchesParentIDInList(element.id, this._asyncPostBackControlClientIDs)) {
+ proposedSettings = this._createPostBackSettings(true, this._scriptManagerID + '|' + elementUniqueID, originalElement);
+ }
+ else {
+ if (!proposedSettings && this._matchesParentIDInList(element.id, this._postBackControlClientIDs)) {
+ return this._createPostBackSettings(false, null, null);
+ }
+ }
+ }
+
+ element = element.parentNode;
+ }
+
+ if (!proposedSettings) {
+ return this._createPostBackSettings(false, null, null);
+ }
+ else {
+ return proposedSettings;
+ }
+ }
+
+ function Sys$WebForms$PageRequestManager$_getScrollPosition() {
+ var d = document.documentElement;
+ if (d && (this._validPosition(d.scrollLeft) || this._validPosition(d.scrollTop))) {
+ return {
+ x: d.scrollLeft,
+ y: d.scrollTop
+ };
+ }
+ else {
+ d = document.body;
+ if (d && (this._validPosition(d.scrollLeft) || this._validPosition(d.scrollTop))) {
+ return {
+ x: d.scrollLeft,
+ y: d.scrollTop
+ };
+ }
+ else {
+ if (this._validPosition(window.pageXOffset) || this._validPosition(window.pageYOffset)) {
+ return {
+ x: window.pageXOffset,
+ y: window.pageYOffset
+ };
+ }
+ else {
+ return {
+ x: 0,
+ y: 0
+ };
+ }
+ }
+ }
+ }
+
+ function Sys$WebForms$PageRequestManager$_initializeInternal(scriptManagerID, formElement) {
+ this._scriptManagerID = scriptManagerID;
+
+ this._form = formElement;
+
+
+ this._form._initialAction = this._form.action;
+
+ this._onsubmit = this._form.onsubmit;
+ this._form.onsubmit = null;
+ this._onFormSubmitHandler = Function.createDelegate(this, this._onFormSubmit);
+ this._onFormElementClickHandler = Function.createDelegate(this, this._onFormElementClick);
+ this._onWindowUnloadHandler = Function.createDelegate(this, this._onWindowUnload);
+ Sys.UI.DomEvent.addHandler(this._form, 'submit', this._onFormSubmitHandler);
+ Sys.UI.DomEvent.addHandler(this._form, 'click', this._onFormElementClickHandler);
+ Sys.UI.DomEvent.addHandler(window, 'unload', this._onWindowUnloadHandler);
+
+ this._originalDoPostBack = window.__doPostBack;
+ if (this._originalDoPostBack) {
+ window.__doPostBack = Function.createDelegate(this, this._doPostBack);
+ }
+
+ this._pageLoadedHandler = Function.createDelegate(this, this._pageLoadedInitialLoad);
+ Sys.UI.DomEvent.addHandler(window, 'load', this._pageLoadedHandler);
+ }
+
+ function Sys$WebForms$PageRequestManager$_matchesParentIDInList(clientID, parentIDList) {
+ for (var i = 0; i < parentIDList.length; i++) {
+ if (clientID.startsWith(parentIDList[i] + "_")) {
+ return true;
+ }
+ }
+ return false;
+ }
+
+ function Sys$WebForms$PageRequestManager$_onFormElementClick(evt) {
+ var element = evt.target;
+ if (element.disabled) {
+ return;
+ }
+
+ this._postBackSettings = this._getPostBackSettings(element, element.name);
+
+
+ if (element.name) {
+ if (element.tagName === 'INPUT') {
+ var type = element.type;
+ if (type === 'submit') {
+ this._additionalInput = element.name + '=' + encodeURIComponent(element.value);
+ }
+ else if (type === 'image') {
+ var x = evt.offsetX;
+ var y = evt.offsetY;
+ this._additionalInput = element.name + '.x=' + x + '&' + element.name + '.y=' + y;
+ }
+ }
+ else if ((element.tagName === 'BUTTON') && (element.name.length !== 0) && (element.type === 'submit')) {
+ this._additionalInput = element.name + '=' + encodeURIComponent(element.value);
+ }
+ }
+ }
+
+ function Sys$WebForms$PageRequestManager$_onFormSubmit(evt) {
+ var continueSubmit = true;
+
+ if (this._onsubmit) {
+ continueSubmit = this._onsubmit();
+ }
+
+ if (continueSubmit) {
+ for (var i = 0; i < this._onSubmitStatements.length; i++) {
+ if (!this._onSubmitStatements[i]()) {
+ continueSubmit = false;
+ break;
+ }
+ }
+ }
+
+ if (!continueSubmit) {
+ if (evt) {
+ evt.preventDefault();
+ }
+ return;
+ }
+
+ var form = this._form;
+ if (form.action !== form._initialAction) {
+ return;
+ }
+
+ if (!this._postBackSettings.async) {
+ return;
+ }
+
+ var formBody = new Sys.StringBuilder();
+ formBody.append(this._scriptManagerID + '=' + this._postBackSettings.panelID + '&');
+
+ var count = form.elements.length;
+ for (var i = 0; i < count; i++) {
+ var element = form.elements[i];
+ var name = element.name;
+ if (typeof(name) === "undefined" || (name === null) || (name.length === 0)) {
+ continue;
+ }
+
+ var tagName = element.tagName;
+
+ if (tagName === 'INPUT') {
+ var type = element.type;
+ if ((type === 'text') ||
+ (type === 'password') ||
+ (type === 'hidden') ||
+ (((type === 'checkbox') || (type === 'radio')) && element.checked)) {
+ formBody.append(name);
+ formBody.append('=');
+ formBody.append(encodeURIComponent(element.value));
+ formBody.append('&');
+ }
+ }
+ else if (tagName === 'SELECT') {
+ var optionCount = element.options.length;
+ for (var j = 0; j < optionCount; j++) {
+ var option = element.options[j];
+ if (option.selected) {
+ formBody.append(name);
+ formBody.append('=');
+ formBody.append(encodeURIComponent(option.value));
+ formBody.append('&');
+ }
+ }
+ }
+ else if (tagName === 'TEXTAREA') {
+ formBody.append(name);
+ formBody.append('=');
+ formBody.append(encodeURIComponent(element.value));
+ formBody.append('&');
+ }
+ }
+
+ if (this._additionalInput) {
+ formBody.append(this._additionalInput);
+ this._additionalInput = null;
+ }
+
+ var request = new Sys.Net.WebRequest();
+ request.set_url(form.action);
+ request.get_headers()['X-MicrosoftAjax'] = 'Delta=true';
+ request.get_headers()['Cache-Control'] = 'no-cache';
+ request.set_timeout(this._asyncPostBackTimeout);
+ request.add_completed(Function.createDelegate(this, this._onFormSubmitCompleted));
+ request.set_body(formBody.toString());
+
+ var handler = this._get_eventHandlerList().getHandler("initializeRequest");
+ if (handler) {
+ var eventArgs = new Sys.WebForms.InitializeRequestEventArgs(request, this._postBackSettings.sourceElement);
+ handler(this, eventArgs);
+ continueSubmit = !eventArgs.get_cancel();
+ }
+
+ if (!continueSubmit) {
+ if (evt) {
+ evt.preventDefault();
+ }
+ return;
+ }
+
+ this._scrollPosition = this._getScrollPosition();
+
+
+ this.abortPostBack();
+
+ handler = this._get_eventHandlerList().getHandler("beginRequest");
+ if (handler) {
+ var eventArgs = new Sys.WebForms.BeginRequestEventArgs(request, this._postBackSettings.sourceElement);
+ handler(this, eventArgs);
+ }
+
+ this._request = request;
+ request.invoke();
+
+ if (evt) {
+ evt.preventDefault();
+ }
+ }
+
+ function Sys$WebForms$PageRequestManager$_onFormSubmitCompleted(sender, eventArgs) {
+ this._processingRequest = true;
+
+ var delimitByLengthDelimiter = '|';
+
+ if (sender.get_timedOut()) {
+ this._endPostBack(this._createPageRequestManagerTimeoutError(), sender);
+ return;
+ }
+
+ if (sender.get_aborted()) {
+ this._endPostBack(null, sender);
+ return;
+ }
+
+ if (!this._request || sender.get_webRequest() !== this._request) {
+ return;
+ }
+
+ var errorMessage;
+ var delta = [];
+
+ if (sender.get_statusCode() !== 200) {
+ this._endPostBack(this._createPageRequestManagerServerError(sender.get_statusCode()), sender);
+ return;
+ }
+
+ var reply = sender.get_responseData();
+ var delimiterIndex, len, type, id, content;
+ var replyIndex = 0;
+ var parserErrorDetails = null;
+
+ while (replyIndex < reply.length) {
+ delimiterIndex = reply.indexOf(delimitByLengthDelimiter, replyIndex);
+ if (delimiterIndex === -1) {
+ parserErrorDetails = this._findText(reply, replyIndex);
+ break;
+ }
+ len = parseInt(reply.substring(replyIndex, delimiterIndex), 10);
+ if ((len % 1) !== 0) {
+ parserErrorDetails = this._findText(reply, replyIndex);
+ break;
+ }
+ replyIndex = delimiterIndex + 1;
+
+ delimiterIndex = reply.indexOf(delimitByLengthDelimiter, replyIndex);
+ if (delimiterIndex === -1) {
+ parserErrorDetails = this._findText(reply, replyIndex);
+ break;
+ }
+ type = reply.substring(replyIndex, delimiterIndex);
+ replyIndex = delimiterIndex + 1;
+
+ delimiterIndex = reply.indexOf(delimitByLengthDelimiter, replyIndex);
+ if (delimiterIndex === -1) {
+ parserErrorDetails = this._findText(reply, replyIndex);
+ break;
+ }
+ id = reply.substring(replyIndex, delimiterIndex);
+ replyIndex = delimiterIndex + 1;
+
+ if ((replyIndex + len) >= reply.length) {
+ parserErrorDetails = this._findText(reply, reply.length);
+ break;
+ }
+ content = this._decodeString(reply.substr(replyIndex, len));
+ replyIndex += len;
+
+ if (reply.charAt(replyIndex) !== delimitByLengthDelimiter) {
+ parserErrorDetails = this._findText(reply, replyIndex);
+ break;
+ }
+
+ replyIndex++;
+
+ Array.add(delta, {type: type, id: id, content: content});
+ }
+
+ if (parserErrorDetails) {
+ this._endPostBack(this._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_ParserErrorDetails, parserErrorDetails)), sender);
+ return;
+ }
+
+
+ var updatePanelNodes = [];
+ var hiddenFieldNodes = [];
+ var arrayDeclarationNodes = [];
+ var scriptBlockNodes = [];
+ var expandoNodes = [];
+ var onSubmitNodes = [];
+ var dataItemNodes = [];
+ var dataItemJsonNodes = [];
+ var scriptDisposeNodes = [];
+ var asyncPostBackControlIDsNode, postBackControlIDsNode,
+ updatePanelIDsNode, asyncPostBackTimeoutNode,
+ childUpdatePanelIDsNode, panelsToRefreshNode, formActionNode;
+
+ for (var i = 0; i < delta.length; i++) {
+ var deltaNode = delta[i];
+ switch (deltaNode.type) {
+ case "updatePanel":
+ Array.add(updatePanelNodes, deltaNode);
+ break;
+ case "hiddenField":
+ Array.add(hiddenFieldNodes, deltaNode);
+ break;
+ case "arrayDeclaration":
+ Array.add(arrayDeclarationNodes, deltaNode);
+ break;
+ case "scriptBlock":
+ Array.add(scriptBlockNodes, deltaNode);
+ break;
+ case "expando":
+ Array.add(expandoNodes, deltaNode);
+ break;
+ case "onSubmit":
+ Array.add(onSubmitNodes, deltaNode);
+ break;
+ case "asyncPostBackControlIDs":
+ asyncPostBackControlIDsNode = deltaNode;
+ break;
+ case "postBackControlIDs":
+ postBackControlIDsNode = deltaNode;
+ break;
+ case "updatePanelIDs":
+ updatePanelIDsNode = deltaNode;
+ break;
+ case "asyncPostBackTimeout":
+ asyncPostBackTimeoutNode = deltaNode;
+ break;
+ case "childUpdatePanelIDs":
+ childUpdatePanelIDsNode = deltaNode;
+ break;
+ case "panelsToRefreshIDs":
+ panelsToRefreshNode = deltaNode;
+ break;
+ case "formAction":
+ formActionNode = deltaNode;
+ break;
+ case "dataItem":
+ Array.add(dataItemNodes, deltaNode);
+ break;
+ case "dataItemJson":
+ Array.add(dataItemJsonNodes, deltaNode);
+ break;
+ case "scriptDispose":
+ Array.add(scriptDisposeNodes, deltaNode);
+ break;
+ case "pageRedirect":
+ window.location.href = deltaNode.content;
+ return;
+ case "error":
+ this._endPostBack(this._createPageRequestManagerServerError(Number.parseInvariant(deltaNode.id), deltaNode.content), sender);
+ return;
+ case "pageTitle":
+ document.title = deltaNode.content;
+ break;
+ case "focus":
+ this._controlIDToFocus = deltaNode.content;
+ break;
+ default:
+ this._endPostBack(this._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_UnknownToken, deltaNode.type)), sender);
+ return;
+ }
+ }
+
+ var i;
+
+ if (asyncPostBackControlIDsNode && postBackControlIDsNode &&
+ updatePanelIDsNode && panelsToRefreshNode &&
+ asyncPostBackTimeoutNode && childUpdatePanelIDsNode) {
+
+ this._oldUpdatePanelIDs = this._updatePanelIDs;
+ var childUpdatePanelIDsString = childUpdatePanelIDsNode.content;
+ this._childUpdatePanelIDs = childUpdatePanelIDsString.length ? childUpdatePanelIDsString.split(',') : [];
+
+ var asyncPostBackControlIDsArray = this._splitNodeIntoArray(asyncPostBackControlIDsNode);
+ var postBackControlIDsArray = this._splitNodeIntoArray(postBackControlIDsNode);
+ var updatePanelIDsArray = this._splitNodeIntoArray(updatePanelIDsNode);
+ this._panelsToRefreshIDs = this._splitNodeIntoArray(panelsToRefreshNode);
+
+ for (i = 0; i < this._panelsToRefreshIDs.length; i++) {
+ var panelClientID = this._uniqueIDToClientID(this._panelsToRefreshIDs[i]);
+ if (!document.getElementById(panelClientID)) {
+ this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel, panelClientID)), sender);
+ return;
+ }
+ }
+
+ var asyncPostBackTimeout = asyncPostBackTimeoutNode.content;
+ this._updateControls(updatePanelIDsArray, asyncPostBackControlIDsArray, postBackControlIDsArray, asyncPostBackTimeout);
+ }
+
+ this._dataItems = {};
+ for (i = 0; i < dataItemNodes.length; i++) {
+ var dataItemNode = dataItemNodes[i];
+ this._dataItems[dataItemNode.id] = dataItemNode.content;
+ }
+ for (i = 0; i < dataItemJsonNodes.length; i++) {
+ var dataItemJsonNode = dataItemJsonNodes[i];
+ this._dataItems[dataItemJsonNode.id] = eval(dataItemJsonNode.content);
+ }
+
+
+ var handler = this._get_eventHandlerList().getHandler("pageLoading");
+ if (handler) {
+ handler(this, this._getPageLoadingEventArgs());
+ }
+
+
+ if (formActionNode) {
+ this._form.action = formActionNode.content;
+ this._form._initialAction = this._form.action;
+ }
+
+ for (i = 0; i < updatePanelNodes.length; i++) {
+ var deltaUpdatePanel = updatePanelNodes[i];
+
+ var deltaPanelID = deltaUpdatePanel.id;
+ var deltaPanelRendering = deltaUpdatePanel.content;
+
+ var updatePanelElement = document.getElementById(deltaPanelID);
+
+ if (!updatePanelElement) {
+ this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel, deltaPanelID)), sender);
+ return;
+ }
+
+ this._updatePanel(updatePanelElement, deltaPanelRendering);
+ }
+
+ for (i = 0; i < scriptDisposeNodes.length; i++) {
+ var disposePanelId = scriptDisposeNodes[i].id;
+ var disposeScript = scriptDisposeNodes[i].content;
+ this._registerDisposeScript(disposePanelId, disposeScript);
+ }
+
+ for (i = 0; i < hiddenFieldNodes.length; i++) {
+ var id = hiddenFieldNodes[i].id;
+ var value = hiddenFieldNodes[i].content;
+
+ var hiddenFieldElement = document.getElementById(id);
+ if (!hiddenFieldElement) {
+ hiddenFieldElement = document.createElement('input');
+ hiddenFieldElement.id = id;
+ hiddenFieldElement.name = id;
+ hiddenFieldElement.type = 'hidden';
+ this._form.appendChild(hiddenFieldElement);
+ }
+ hiddenFieldElement.value = value;
+ }
+
+ var arrayScript = '';
+ for (i = 0; i < arrayDeclarationNodes.length; i++) {
+ arrayScript += "Sys.WebForms.PageRequestManager._addArrayElement('" + arrayDeclarationNodes[i].id + "', " + arrayDeclarationNodes[i].content + ");\r\n";
+ }
+
+ var expandoScript = '';
+ for (i = 0; i < expandoNodes.length; i++) {
+ var propertyReference = expandoNodes[i].id;
+ var propertyValue = expandoNodes[i].content;
+ expandoScript += propertyReference + " = " + propertyValue + "\r\n";
+ }
+
+ Sys._ScriptLoader.readLoadedScripts();
+
+ Sys.Application.beginCreateComponents();
+
+ var scriptLoader = Sys._ScriptLoader.getInstance();
+
+ if (arrayScript.length) {
+ scriptLoader.queueScriptBlock(arrayScript);
+ }
+ if (expandoScript.length) {
+ scriptLoader.queueScriptBlock(expandoScript);
+ }
+
+ for (i = 0; i < scriptBlockNodes.length; i++) {
+ var scriptBlockType = scriptBlockNodes[i].id;
+ switch (scriptBlockType) {
+ case "ScriptContentNoTags":
+ scriptLoader.queueScriptBlock(scriptBlockNodes[i].content);
+ break;
+ case "ScriptContentWithTags":
+ var scriptTagAttributes;
+ eval("scriptTagAttributes = " + scriptBlockNodes[i].content);
+
+ if (scriptTagAttributes.src && Sys._ScriptLoader.isScriptLoaded(scriptTagAttributes.src)) {
+ continue;
+ }
+
+ scriptLoader.queueCustomScriptTag(scriptTagAttributes);
+ break;
+ case "ScriptPath":
+ if (Sys._ScriptLoader.isScriptLoaded(scriptBlockNodes[i].content)) {
+ continue;
+ }
+
+ scriptLoader.queueScriptReference(scriptBlockNodes[i].content);
+ break;
+ }
+ }
+
+ var onSubmitStatementScript = '';
+ for (var i = 0; i < onSubmitNodes.length; i++) {
+ if (i === 0) {
+ onSubmitStatementScript = 'Array.add(Sys.WebForms.PageRequestManager.getInstance()._onSubmitStatements, function() {\r\n';
+ }
+
+ onSubmitStatementScript += onSubmitNodes[i].content + "\r\n";
+ }
+ if (onSubmitStatementScript.length) {
+ onSubmitStatementScript += "\r\nreturn true;\r\n});\r\n";
+ scriptLoader.queueScriptBlock(onSubmitStatementScript);
+ }
+
+ this._response = sender;
+
+ scriptLoader.loadScripts(0, Function.createDelegate(this, this._scriptsLoadComplete), null, null);
+
+ }
+
+ function Sys$WebForms$PageRequestManager$_onWindowUnload(evt) {
+ this.dispose();
+ }
+
+ function Sys$WebForms$PageRequestManager$_pageLoaded(initialLoad) {
+ var handler = this._get_eventHandlerList().getHandler("pageLoaded");
+ if (handler) {
+ handler(this, this._getPageLoadedEventArgs(initialLoad));
+ }
+ if (!initialLoad) {
+ Sys.Application.raiseLoad();
+ }
+ }
+
+ function Sys$WebForms$PageRequestManager$_pageLoadedInitialLoad(evt) {
+ this._pageLoaded(true);
+ }
+
+ function Sys$WebForms$PageRequestManager$_registerDisposeScript(panelID, disposeScript) {
+ if (!this._scriptDisposes[panelID]) {
+ this._scriptDisposes[panelID] = [disposeScript];
+ }
+ else {
+ Array.add(this._scriptDisposes[panelID], disposeScript);
+ }
+ }
+
+ function Sys$WebForms$PageRequestManager$_scriptsLoadComplete() {
+
+ if (window.__theFormPostData) {
+ window.__theFormPostData = "";
+ }
+ if (window.__theFormPostCollection) {
+ window.__theFormPostCollection = [];
+ }
+ if (window.WebForm_InitCallback) {
+ window.WebForm_InitCallback();
+ }
+
+ if (this._scrollPosition) {
+ if (window.scrollTo) {
+ window.scrollTo(this._scrollPosition.x, this._scrollPosition.y);
+ }
+ this._scrollPosition = null;
+ }
+
+ Sys.Application.endCreateComponents();
+
+ this._pageLoaded(false);
+
+ this._endPostBack(null, this._response);
+ this._response = null;
+
+ if (this._controlIDToFocus) {
+ var focusTarget;
+ var oldContentEditableSetting;
+ if (Sys.Browser.agent === Sys.Browser.InternetExplorer) {
+ var targetControl = $get(this._controlIDToFocus);
+
+ var focusTarget = targetControl;
+ if (targetControl && (!WebForm_CanFocus(targetControl))) {
+ focusTarget = WebForm_FindFirstFocusableChild(targetControl);
+ }
+ if (focusTarget && (typeof(focusTarget.contentEditable) !== "undefined")) {
+ oldContentEditableSetting = focusTarget.contentEditable;
+ focusTarget.contentEditable = false;
+ }
+ else {
+ focusTarget = null;
+ }
+ }
+ WebForm_AutoFocus(this._controlIDToFocus);
+ if (focusTarget) {
+ focusTarget.contentEditable = oldContentEditableSetting;
+ }
+ this._controlIDToFocus = null;
+ }
+ }
+
+ function Sys$WebForms$PageRequestManager$_splitNodeIntoArray(node) {
+ var str = node.content;
+ var arr = str.length ? str.split(',') : [];
+ return arr;
+ }
+
+ function Sys$WebForms$PageRequestManager$_uniqueIDToClientID(uniqueID) {
+ return uniqueID.replace(/\$/g, '_');
+ }
+
+ function Sys$WebForms$PageRequestManager$_updateControls(updatePanelIDs, asyncPostBackControlIDs, postBackControlIDs, asyncPostBackTimeout) {
+ if (updatePanelIDs) {
+ this._updatePanelIDs = new Array(updatePanelIDs.length);
+ this._updatePanelClientIDs = new Array(updatePanelIDs.length);
+ this._updatePanelHasChildrenAsTriggers = new Array(updatePanelIDs.length);
+ for (var i = 0; i < updatePanelIDs.length; i++) {
+ var realPanelID = updatePanelIDs[i].substr(1);
+ var childrenAsTriggers = (updatePanelIDs[i].charAt(0) === 't');
+
+ this._updatePanelHasChildrenAsTriggers[i] = childrenAsTriggers;
+ this._updatePanelIDs[i] = realPanelID;
+ this._updatePanelClientIDs[i] = this._uniqueIDToClientID(realPanelID);
+ }
+ this._asyncPostBackTimeout = asyncPostBackTimeout * 1000;
+ }
+ else {
+ this._updatePanelIDs = [];
+ this._updatePanelClientIDs = [];
+ this._updatePanelHasChildrenAsTriggers = [];
+ this._asyncPostBackTimeout = 0;
+ }
+
+ this._asyncPostBackControlIDs = [];
+ this._asyncPostBackControlClientIDs = [];
+ this._convertToClientIDs(asyncPostBackControlIDs, this._asyncPostBackControlIDs, this._asyncPostBackControlClientIDs);
+
+ this._postBackControlIDs = [];
+ this._postBackControlClientIDs = [];
+ this._convertToClientIDs(postBackControlIDs, this._postBackControlIDs, this._postBackControlClientIDs);
+ }
+
+ function Sys$WebForms$PageRequestManager$_updatePanel(updatePanelElement, rendering) {
+
+ for (var updatePanelID in this._scriptDisposes) {
+ if (this._elementContains(updatePanelElement, document.getElementById(updatePanelID))) {
+ var disposeScripts = this._scriptDisposes[updatePanelID];
+ for (var i = 0; i < disposeScripts.length; i++) {
+ eval(disposeScripts[i]);
+ }
+
+ delete this._scriptDisposes[updatePanelID];
+ }
+ }
+
+ this._destroyTree(updatePanelElement);
+
+ updatePanelElement.innerHTML = rendering;
+ }
+
+ function Sys$WebForms$PageRequestManager$_validPosition(position) {
+ return (typeof(position) !== "undefined") && (position !== null) && (position !== 0);
+ }
+Sys.WebForms.PageRequestManager.prototype = {
+
+ _get_eventHandlerList: Sys$WebForms$PageRequestManager$_get_eventHandlerList,
+
+ get_isInAsyncPostBack: Sys$WebForms$PageRequestManager$get_isInAsyncPostBack,
+
+ add_beginRequest: Sys$WebForms$PageRequestManager$add_beginRequest,
+ remove_beginRequest: Sys$WebForms$PageRequestManager$remove_beginRequest,
+
+ add_endRequest: Sys$WebForms$PageRequestManager$add_endRequest,
+ remove_endRequest: Sys$WebForms$PageRequestManager$remove_endRequest,
+
+ add_initializeRequest: Sys$WebForms$PageRequestManager$add_initializeRequest,
+ remove_initializeRequest: Sys$WebForms$PageRequestManager$remove_initializeRequest,
+
+ add_pageLoaded: Sys$WebForms$PageRequestManager$add_pageLoaded,
+ remove_pageLoaded: Sys$WebForms$PageRequestManager$remove_pageLoaded,
+
+ add_pageLoading: Sys$WebForms$PageRequestManager$add_pageLoading,
+ remove_pageLoading: Sys$WebForms$PageRequestManager$remove_pageLoading,
+
+ abortPostBack: Sys$WebForms$PageRequestManager$abortPostBack,
+
+ _createPageRequestManagerTimeoutError: Sys$WebForms$PageRequestManager$_createPageRequestManagerTimeoutError,
+
+ _createPageRequestManagerServerError: Sys$WebForms$PageRequestManager$_createPageRequestManagerServerError,
+
+ _createPageRequestManagerParserError: Sys$WebForms$PageRequestManager$_createPageRequestManagerParserError,
+
+ _createPostBackSettings: Sys$WebForms$PageRequestManager$_createPostBackSettings,
+
+ _convertToClientIDs: Sys$WebForms$PageRequestManager$_convertToClientIDs,
+
+ _decodeString: Sys$WebForms$PageRequestManager$_decodeString,
+
+ _destroyTree: Sys$WebForms$PageRequestManager$_destroyTree,
+
+ dispose: Sys$WebForms$PageRequestManager$dispose,
+
+ _doPostBack: Sys$WebForms$PageRequestManager$_doPostBack,
+
+ _elementContains: Sys$WebForms$PageRequestManager$_elementContains,
+
+ _endPostBack: Sys$WebForms$PageRequestManager$_endPostBack,
+
+ _findNearestElement: Sys$WebForms$PageRequestManager$_findNearestElement,
+
+ _findText: Sys$WebForms$PageRequestManager$_findText,
+
+ _getPageLoadedEventArgs: Sys$WebForms$PageRequestManager$_getPageLoadedEventArgs,
+
+ _getPageLoadingEventArgs: Sys$WebForms$PageRequestManager$_getPageLoadingEventArgs,
+
+ _getPostBackSettings: Sys$WebForms$PageRequestManager$_getPostBackSettings,
+
+ _getScrollPosition: Sys$WebForms$PageRequestManager$_getScrollPosition,
+
+ _initializeInternal: Sys$WebForms$PageRequestManager$_initializeInternal,
+
+ _matchesParentIDInList: Sys$WebForms$PageRequestManager$_matchesParentIDInList,
+
+ _onFormElementClick: Sys$WebForms$PageRequestManager$_onFormElementClick,
+
+ _onFormSubmit: Sys$WebForms$PageRequestManager$_onFormSubmit,
+
+ _onFormSubmitCompleted: Sys$WebForms$PageRequestManager$_onFormSubmitCompleted,
+
+ _onWindowUnload: Sys$WebForms$PageRequestManager$_onWindowUnload,
+
+ _pageLoaded: Sys$WebForms$PageRequestManager$_pageLoaded,
+
+ _pageLoadedInitialLoad: Sys$WebForms$PageRequestManager$_pageLoadedInitialLoad,
+
+ _registerDisposeScript: Sys$WebForms$PageRequestManager$_registerDisposeScript,
+
+ _scriptsLoadComplete: Sys$WebForms$PageRequestManager$_scriptsLoadComplete,
+
+ _splitNodeIntoArray: Sys$WebForms$PageRequestManager$_splitNodeIntoArray,
+
+ _uniqueIDToClientID: Sys$WebForms$PageRequestManager$_uniqueIDToClientID,
+
+ _updateControls: Sys$WebForms$PageRequestManager$_updateControls,
+
+ _updatePanel: Sys$WebForms$PageRequestManager$_updatePanel,
+
+ _validPosition: Sys$WebForms$PageRequestManager$_validPosition
+}
+
+Sys.WebForms.PageRequestManager.getInstance = function Sys$WebForms$PageRequestManager$getInstance() {
+ /// <returns type="Sys.WebForms.PageRequestManager"></returns>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return Sys.WebForms.PageRequestManager._instance || null;
+}
+
+Sys.WebForms.PageRequestManager._addArrayElement = function Sys$WebForms$PageRequestManager$_addArrayElement(arrayName, arrayValue) {
+ if (typeof(window[arrayName]) === "undefined") {
+ window[arrayName] = [ arrayValue ];
+ }
+ else {
+ Array.add(window[arrayName], arrayValue);
+ }
+}
+
+Sys.WebForms.PageRequestManager._initialize = function Sys$WebForms$PageRequestManager$_initialize(scriptManagerID, formElement) {
+ if (Sys.WebForms.PageRequestManager.getInstance()) {
+ throw Error.invalidOperation(Sys.WebForms.Res.PRM_CannotRegisterTwice);
+ }
+ Sys.WebForms.PageRequestManager._instance = new Sys.WebForms.PageRequestManager();
+ Sys.WebForms.PageRequestManager.getInstance()._initializeInternal(scriptManagerID, formElement);
+}
+
+Sys.WebForms.PageRequestManager.registerClass('Sys.WebForms.PageRequestManager');
+Sys.UI._UpdateProgress = function Sys$UI$_UpdateProgress(element) {
+ Sys.UI._UpdateProgress.initializeBase(this,[element]);
+ this._displayAfter = 500;
+ this._dynamicLayout = true;
+ this._associatedUpdatePanelId = null;
+ this._beginRequestHandlerDelegate = null;
+ this._startDelegate = null;
+ this._endRequestHandlerDelegate = null;
+ this._pageRequestManager = null;
+ this._timerCookie = null;
+}
+
+ function Sys$UI$_UpdateProgress$get_displayAfter() {
+ /// <value type="Number"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._displayAfter;
+ }
+ function Sys$UI$_UpdateProgress$set_displayAfter(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Number}]);
+ if (e) throw e;
+
+ this._displayAfter = value;
+ }
+ function Sys$UI$_UpdateProgress$get_dynamicLayout() {
+ /// <value type="Boolean"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._dynamicLayout;
+ }
+ function Sys$UI$_UpdateProgress$set_dynamicLayout(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
+ if (e) throw e;
+
+ this._dynamicLayout = value;
+ }
+ function Sys$UI$_UpdateProgress$get_associatedUpdatePanelId() {
+ /// <value type="String" mayBeNull="true"></value>
+ if (arguments.length !== 0) throw Error.parameterCount();
+ return this._associatedUpdatePanelId;
+ }
+ function Sys$UI$_UpdateProgress$set_associatedUpdatePanelId(value) {
+ var e = Function._validateParams(arguments, [{name: "value", type: String, mayBeNull: true}]);
+ if (e) throw e;
+
+ this._associatedUpdatePanelId = value;
+ }
+ function Sys$UI$_UpdateProgress$_handleBeginRequest(sender, arg) {
+ var curElem = arg.get_postBackElement();
+ var showProgress = !this._associatedUpdatePanelId;
+ while (!showProgress && curElem) {
+ if (curElem.id && this._associatedUpdatePanelId === curElem.id) {
+ showProgress = true;
+ }
+ curElem = curElem.parentNode;
+ }
+ if (showProgress) {
+ this._timerCookie = window.setTimeout(this._startDelegate, this._displayAfter);
+ }
+ }
+ function Sys$UI$_UpdateProgress$_startRequest() {
+ if (this._pageRequestManager.get_isInAsyncPostBack()) {
+ if (this._dynamicLayout) this.get_element().style.display = 'block';
+ else this.get_element().style.visibility = 'visible';
+ }
+ this._timerCookie = null;
+ }
+ function Sys$UI$_UpdateProgress$_handleEndRequest(sender, arg) {
+ if (this._dynamicLayout) this.get_element().style.display = 'none';
+ else this.get_element().style.visibility = 'hidden';
+ if (this._timerCookie) {
+ window.clearTimeout(this._timerCookie);
+ this._timerCookie = null;
+ }
+ }
+ function Sys$UI$_UpdateProgress$dispose() {
+ if (this._pageRequestManager !== null) {
+ this._pageRequestManager.remove_beginRequest(this._beginRequestHandlerDelegate);
+ this._pageRequestManager.remove_endRequest(this._endRequestHandlerDelegate);
+ }
+ Sys.UI._UpdateProgress.callBaseMethod(this,"dispose");
+ }
+ function Sys$UI$_UpdateProgress$initialize() {
+ Sys.UI._UpdateProgress.callBaseMethod(this, 'initialize');
+ this._beginRequestHandlerDelegate = Function.createDelegate(this, this._handleBeginRequest);
+ this._endRequestHandlerDelegate = Function.createDelegate(this, this._handleEndRequest);
+ this._startDelegate = Function.createDelegate(this, this._startRequest);
+ if (Sys.WebForms && Sys.WebForms.PageRequestManager) {
+ this._pageRequestManager = Sys.WebForms.PageRequestManager.getInstance();
+ }
+ if (this._pageRequestManager !== null ) {
+ this._pageRequestManager.add_beginRequest(this._beginRequestHandlerDelegate);
+ this._pageRequestManager.add_endRequest(this._endRequestHandlerDelegate);
+ }
+ }
+Sys.UI._UpdateProgress.prototype = {
+ get_displayAfter: Sys$UI$_UpdateProgress$get_displayAfter,
+ set_displayAfter: Sys$UI$_UpdateProgress$set_displayAfter,
+ get_dynamicLayout: Sys$UI$_UpdateProgress$get_dynamicLayout,
+ set_dynamicLayout: Sys$UI$_UpdateProgress$set_dynamicLayout,
+ get_associatedUpdatePanelId: Sys$UI$_UpdateProgress$get_associatedUpdatePanelId,
+ set_associatedUpdatePanelId: Sys$UI$_UpdateProgress$set_associatedUpdatePanelId,
+ _handleBeginRequest: Sys$UI$_UpdateProgress$_handleBeginRequest,
+ _startRequest: Sys$UI$_UpdateProgress$_startRequest,
+ _handleEndRequest: Sys$UI$_UpdateProgress$_handleEndRequest,
+ dispose: Sys$UI$_UpdateProgress$dispose,
+ initialize: Sys$UI$_UpdateProgress$initialize
+}
+Sys.UI._UpdateProgress.registerClass('Sys.UI._UpdateProgress', Sys.UI.Control);
+
+Sys.WebForms.Res={
+'PRM_MissingPanel':'Could not find UpdatePanel with ID \'{0}\'. If it is being updated dynamically then it must be inside another UpdatePanel.',
+'PRM_ServerError':'An unknown error occurred while processing the request on the server. The status code returned from the server was: {0}',
+'PRM_ParserError':'The message received from the server could not be parsed.',
+'PRM_TimeoutError':'The server request timed out.',
+'PRM_CannotRegisterTwice':'The PageRequestManager cannot be initialized more than once.',
+'PRM_UnknownToken':'Unknown token: \'{0}\'.',
+'PRM_MissingPanel':'Could not find UpdatePanel with ID \'{0}\'. If it is being updated dynamically then it must be inside another UpdatePanel.',
+'PRM_ServerError':'An unknown error occurred while processing the request on the server. The status code returned from the server was: {0}',
+'PRM_ParserError':'The message received from the server could not be parsed. Common causes for this error are when the response is modified by calls to Response.Write(), response filters, HttpModules, or server trace is enabled.\r\nDetails: {0}',
+'PRM_TimeoutError':'The server request timed out.',
+'PRM_ParserErrorDetails':'Error parsing near \'{0}\'.',
+'PRM_CannotRegisterTwice':'The PageRequestManager cannot be initialized more than once.'
+};
+
+if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();
diff --git a/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxWebForms.js b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxWebForms.js
new file mode 100644
index 00000000000..576aec39b7f
--- /dev/null
+++ b/mcs/class/MicrosoftAjaxLibrary/System.Web.Extensions/1.0.61025.0/MicrosoftAjaxWebForms.js
@@ -0,0 +1,7 @@
+//----------------------------------------------------------
+// Copyright (C) Microsoft Corporation. All rights reserved.
+//----------------------------------------------------------
+// MicrosoftAjaxWebForms.js
+Type.registerNamespace("Sys.WebForms");Sys.WebForms.BeginRequestEventArgs=function(b,a){Sys.WebForms.BeginRequestEventArgs.initializeBase(this);this._request=b;this._postBackElement=a};Sys.WebForms.BeginRequestEventArgs.prototype={get_postBackElement:function(){return this._postBackElement},get_request:function(){return this._request}};Sys.WebForms.BeginRequestEventArgs.registerClass("Sys.WebForms.BeginRequestEventArgs",Sys.EventArgs);Sys.WebForms.EndRequestEventArgs=function(c,a,b){Sys.WebForms.EndRequestEventArgs.initializeBase(this);this._errorHandled=false;this._error=c;this._dataItems=a||new Object;this._response=b};Sys.WebForms.EndRequestEventArgs.prototype={get_dataItems:function(){return this._dataItems},get_error:function(){return this._error},get_errorHandled:function(){return this._errorHandled},set_errorHandled:function(a){this._errorHandled=a},get_response:function(){return this._response}};Sys.WebForms.EndRequestEventArgs.registerClass("Sys.WebForms.EndRequestEventArgs",Sys.EventArgs);Sys.WebForms.InitializeRequestEventArgs=function(b,a){Sys.WebForms.InitializeRequestEventArgs.initializeBase(this);this._request=b;this._postBackElement=a};Sys.WebForms.InitializeRequestEventArgs.prototype={get_postBackElement:function(){return this._postBackElement},get_request:function(){return this._request}};Sys.WebForms.InitializeRequestEventArgs.registerClass("Sys.WebForms.InitializeRequestEventArgs",Sys.CancelEventArgs);Sys.WebForms.PageLoadedEventArgs=function(b,a,c){Sys.WebForms.PageLoadedEventArgs.initializeBase(this);this._panelsUpdated=b;this._panelsCreated=a;this._dataItems=c||new Object};Sys.WebForms.PageLoadedEventArgs.prototype={get_dataItems:function(){return this._dataItems},get_panelsCreated:function(){return this._panelsCreated},get_panelsUpdated:function(){return this._panelsUpdated}};Sys.WebForms.PageLoadedEventArgs.registerClass("Sys.WebForms.PageLoadedEventArgs",Sys.EventArgs);Sys.WebForms.PageLoadingEventArgs=function(b,a,c){Sys.WebForms.PageLoadingEventArgs.initializeBase(this);this._panelsUpdating=b;this._panelsDeleting=a;this._dataItems=c||new Object};Sys.WebForms.PageLoadingEventArgs.prototype={get_dataItems:function(){return this._dataItems},get_panelsDeleting:function(){return this._panelsDeleting},get_panelsUpdating:function(){return this._panelsUpdating}};Sys.WebForms.PageLoadingEventArgs.registerClass("Sys.WebForms.PageLoadingEventArgs",Sys.EventArgs);Sys.WebForms.PageRequestManager=function(){this._form=null;this._updatePanelIDs=null;this._updatePanelClientIDs=null;this._oldUpdatePanelIDs=null;this._childUpdatePanelIDs=null;this._panelsToRefreshIDs=null;this._updatePanelHasChildrenAsTriggers=null;this._asyncPostBackControlIDs=null;this._asyncPostBackControlClientIDs=null;this._postBackControlIDs=null;this._postBackControlClientIDs=null;this._scriptManagerID=null;this._pageLoadedHandler=null;this._additionalInput=null;this._onsubmit=null;this._onSubmitStatements=[];this._originalDoPostBack=null;this._postBackSettings=null;this._request=null;this._onFormSubmitHandler=null;this._onFormElementClickHandler=null;this._onWindowUnloadHandler=null;this._asyncPostBackTimeout=null;this._controlIDToFocus=null;this._scrollPosition=null;this._dataItems=null;this._response=null;this._processingRequest=false;this._scriptDisposes={}};Sys.WebForms.PageRequestManager.prototype={_get_eventHandlerList:function(){if(!this._events)this._events=new Sys.EventHandlerList;return this._events},get_isInAsyncPostBack:function(){return this._request!==null},add_beginRequest:function(a){this._get_eventHandlerList().addHandler("beginRequest",a)},remove_beginRequest:function(a){this._get_eventHandlerList().removeHandler("beginRequest",a)},add_endRequest:function(a){this._get_eventHandlerList().addHandler("endRequest",a)},remove_endRequest:function(a){this._get_eventHandlerList().removeHandler("endRequest",a)},add_initializeRequest:function(a){this._get_eventHandlerList().addHandler("initializeRequest",a)},remove_initializeRequest:function(a){this._get_eventHandlerList().removeHandler("initializeRequest",a)},add_pageLoaded:function(a){this._get_eventHandlerList().addHandler("pageLoaded",a)},remove_pageLoaded:function(a){this._get_eventHandlerList().removeHandler("pageLoaded",a)},add_pageLoading:function(a){this._get_eventHandlerList().addHandler("pageLoading",a)},remove_pageLoading:function(a){this._get_eventHandlerList().removeHandler("pageLoading",a)},abortPostBack:function(){if(!this._processingRequest&&this._request){this._request.get_executor().abort();this._request=null}},_createPageRequestManagerTimeoutError:function(){var b="Sys.WebForms.PageRequestManagerTimeoutException: "+Sys.WebForms.Res.PRM_TimeoutError,a=Error.create(b,{name:"Sys.WebForms.PageRequestManagerTimeoutException"});a.popStackFrame();return a},_createPageRequestManagerServerError:function(a,d){var c=d||"Sys.WebForms.PageRequestManagerServerErrorException: "+String.format(Sys.WebForms.Res.PRM_ServerError,a),b=Error.create(c,{name:"Sys.WebForms.PageRequestManagerServerErrorException",httpStatusCode:a});b.popStackFrame();return b},_createPageRequestManagerParserError:function(b){var c="Sys.WebForms.PageRequestManagerParserErrorException: "+String.format(Sys.WebForms.Res.PRM_ParserError,b),a=Error.create(c,{name:"Sys.WebForms.PageRequestManagerParserErrorException"});a.popStackFrame();return a},_createPostBackSettings:function(c,b,a){return {async:c,panelID:b,sourceElement:a}},_convertToClientIDs:function(a,d,c){if(a)for(var b=0;b<a.length;b++){Array.add(d,a[b]);Array.add(c,this._uniqueIDToClientID(a[b]))}},_decodeString:function(a){return a.replace(/\\\u00FF\\/g,"\x00").replace(/\u00FF\u00FF/g,"\u00FF")},_destroyTree:function(f){if(f.nodeType===1){var d=f.childNodes;for(var b=d.length-1;b>=0;b--){var a=d[b];if(a.nodeType===1){if(a.dispose&&typeof a.dispose==="function")a.dispose();else if(a.control&&typeof a.control.dispose==="function")a.control.dispose();var e=Sys.UI.Behavior.getBehaviors(a);for(var c=e.length-1;c>=0;c--)e[c].dispose();this._destroyTree(a)}}}},dispose:function(){if(this._form){Sys.UI.DomEvent.removeHandler(this._form,"submit",this._onFormSubmitHandler);Sys.UI.DomEvent.removeHandler(this._form,"click",this._onFormElementClickHandler);Sys.UI.DomEvent.removeHandler(window,"unload",this._onWindowUnloadHandler);Sys.UI.DomEvent.removeHandler(window,"load",this._pageLoadedHandler)}if(this._originalDoPostBack){window.__doPostBack=this._originalDoPostBack;this._originalDoPostBack=null}this._form=null;this._updatePanelIDs=null;this._oldUpdatePanelIDs=null;this._childUpdatePanelIDs=null;this._updatePanelClientIDs=null;this._asyncPostBackControlIDs=null;this._asyncPostBackControlClientIDs=null;this._postBackControlIDs=null;this._postBackControlClientIDs=null;this._asyncPostBackTimeout=null;this._scrollPosition=null;this._dataItems=null},_doPostBack:function(a,e){this._additionalInput=null;var b=this._form;if(b.action!==b._initialAction)this._postBackSettings=this._createPostBackSettings(false,null,null);else{var f=this._uniqueIDToClientID(a),d=document.getElementById(f);if(!d)if(Array.contains(this._asyncPostBackControlIDs,a))this._postBackSettings=this._createPostBackSettings(true,this._scriptManagerID+"|"+a,null);else if(Array.contains(this._postBackControlIDs,a))this._postBackSettings=this._createPostBackSettings(false,null,null);else{var c=this._findNearestElement(a);if(c)this._postBackSettings=this._getPostBackSettings(c,a);else this._postBackSettings=this._createPostBackSettings(false,null,null)}else this._postBackSettings=this._getPostBackSettings(d,a)}if(!this._postBackSettings.async){b.onsubmit=this._onsubmit;this._originalDoPostBack(a,e);b.onsubmit=null;return}b.__EVENTTARGET.value=a;b.__EVENTARGUMENT.value=e;this._onFormSubmit()},_elementContains:function(b,a){while(a){if(a===b)return true;a=a.parentNode}return false},_endPostBack:function(a,e){this._processingRequest=false;this._request=null;this._additionalInput=null;var d=this._get_eventHandlerList().getHandler("endRequest"),b=false;if(d){var c=new Sys.WebForms.EndRequestEventArgs(a,this._dataItems,e);d(this,c);b=c.get_errorHandled()}this._dataItems=null;if(a&&!b)alert(a.message)},_findNearestElement:function(a){while(a.length>0){var d=this._uniqueIDToClientID(a),c=document.getElementById(d);if(c)return c;var b=a.lastIndexOf("$");if(b===-1)return null;a=a.substring(0,b)}return null},_findText:function(b,a){var c=Math.max(0,a-20),d=Math.min(b.length,a+20);return b.substring(c,d)},_getPageLoadedEventArgs:function(f){var e=[],d=[],h=this._oldUpdatePanelIDs||[],b=this._updatePanelIDs,g=this._childUpdatePanelIDs||[],c=this._panelsToRefreshIDs||[];for(var a=0;a<c.length;a++)Array.add(e,document.getElementById(this._uniqueIDToClientID(c[a])));for(var a=0;a<b.length;a++)if(f||Array.indexOf(g,b[a])!==-1)Array.add(d,document.getElementById(this._uniqueIDToClientID(b[a])));return new Sys.WebForms.PageLoadedEventArgs(e,d,this._dataItems)},_getPageLoadingEventArgs:function(){var e=[],d=[],b=this._oldUpdatePanelIDs,g=this._updatePanelIDs,f=this._childUpdatePanelIDs,c=this._panelsToRefreshIDs;for(var a=0;a<c.length;a++)Array.add(e,document.getElementById(this._uniqueIDToClientID(c[a])));for(var a=0;a<b.length;a++)if(Array.indexOf(c,b[a])===-1&&(Array.indexOf(g,b[a])===-1||Array.indexOf(f,b[a])>-1))Array.add(d,document.getElementById(this._uniqueIDToClientID(b[a])));return new Sys.WebForms.PageLoadingEventArgs(e,d,this._dataItems)},_getPostBackSettings:function(a,c){var d=a,b=null;while(a){if(a.id){if(!b&&Array.contains(this._asyncPostBackControlClientIDs,a.id))b=this._createPostBackSettings(true,this._scriptManagerID+"|"+c,d);else if(!b&&Array.contains(this._postBackControlClientIDs,a.id))return this._createPostBackSettings(false,null,null);else{var e=Array.indexOf(this._updatePanelClientIDs,a.id);if(e!==-1)if(this._updatePanelHasChildrenAsTriggers[e])return this._createPostBackSettings(true,this._updatePanelIDs[e]+"|"+c,d);else return this._createPostBackSettings(true,this._scriptManagerID+"|"+c,d)}if(!b&&this._matchesParentIDInList(a.id,this._asyncPostBackControlClientIDs))b=this._createPostBackSettings(true,this._scriptManagerID+"|"+c,d);else if(!b&&this._matchesParentIDInList(a.id,this._postBackControlClientIDs))return this._createPostBackSettings(false,null,null)}a=a.parentNode}if(!b)return this._createPostBackSettings(false,null,null);else return b},_getScrollPosition:function(){var a=document.documentElement;if(a&&(this._validPosition(a.scrollLeft)||this._validPosition(a.scrollTop)))return {x:a.scrollLeft,y:a.scrollTop};else{a=document.body;if(a&&(this._validPosition(a.scrollLeft)||this._validPosition(a.scrollTop)))return {x:a.scrollLeft,y:a.scrollTop};else if(this._validPosition(window.pageXOffset)||this._validPosition(window.pageYOffset))return {x:window.pageXOffset,y:window.pageYOffset};else return {x:0,y:0}}},_initializeInternal:function(a,b){this._scriptManagerID=a;this._form=b;this._form._initialAction=this._form.action;this._onsubmit=this._form.onsubmit;this._form.onsubmit=null;this._onFormSubmitHandler=Function.createDelegate(this,this._onFormSubmit);this._onFormElementClickHandler=Function.createDelegate(this,this._onFormElementClick);this._onWindowUnloadHandler=Function.createDelegate(this,this._onWindowUnload);Sys.UI.DomEvent.addHandler(this._form,"submit",this._onFormSubmitHandler);Sys.UI.DomEvent.addHandler(this._form,"click",this._onFormElementClickHandler);Sys.UI.DomEvent.addHandler(window,"unload",this._onWindowUnloadHandler);this._originalDoPostBack=window.__doPostBack;if(this._originalDoPostBack)window.__doPostBack=Function.createDelegate(this,this._doPostBack);this._pageLoadedHandler=Function.createDelegate(this,this._pageLoadedInitialLoad);Sys.UI.DomEvent.addHandler(window,"load",this._pageLoadedHandler)},_matchesParentIDInList:function(c,b){for(var a=0;a<b.length;a++)if(c.startsWith(b[a]+"_"))return true;return false},_onFormElementClick:function(b){var a=b.target;if(a.disabled)return;this._postBackSettings=this._getPostBackSettings(a,a.name);if(a.name)if(a.tagName==="INPUT"){var c=a.type;if(c==="submit")this._additionalInput=a.name+"="+encodeURIComponent(a.value);else if(c==="image"){var d=b.offsetX,e=b.offsetY;this._additionalInput=a.name+".x="+d+"&"+a.name+".y="+e}}else if(a.tagName==="BUTTON"&&a.name.length!==0&&a.type==="submit")this._additionalInput=a.name+"="+encodeURIComponent(a.value)},_onFormSubmit:function(f){var d=true;if(this._onsubmit)d=this._onsubmit();if(d)for(var g=0;g<this._onSubmitStatements.length;g++)if(!this._onSubmitStatements[g]()){d=false;break}if(!d){if(f)f.preventDefault();return}var i=this._form;if(i.action!==i._initialAction)return;if(!this._postBackSettings.async)return;var a=new Sys.StringBuilder;a.append(this._scriptManagerID+"="+this._postBackSettings.panelID+"&");var p=i.elements.length;for(var g=0;g<p;g++){var c=i.elements[g],e=c.name;if(typeof e==="undefined"||e===null||e.length===0)continue;var l=c.tagName;if(l==="INPUT"){var j=c.type;if(j==="text"||j==="password"||j==="hidden"||(j==="checkbox"||j==="radio")&&c.checked){a.append(e);a.append("=");a.append(encodeURIComponent(c.value));a.append("&")}}else if(l==="SELECT"){var o=c.options.length;for(var m=0;m<o;m++){var n=c.options[m];if(n.selected){a.append(e);a.append("=");a.append(encodeURIComponent(n.value));a.append("&")}}}else if(l==="TEXTAREA"){a.append(e);a.append("=");a.append(encodeURIComponent(c.value));a.append("&")}}if(this._additionalInput){a.append(this._additionalInput);this._additionalInput=null}var b=new Sys.Net.WebRequest;b.set_url(i.action);b.get_headers()["X-MicrosoftAjax"]="Delta=true";b.get_headers()["Cache-Control"]="no-cache";b.set_timeout(this._asyncPostBackTimeout);b.add_completed(Function.createDelegate(this,this._onFormSubmitCompleted));b.set_body(a.toString());var h=this._get_eventHandlerList().getHandler("initializeRequest");if(h){var k=new Sys.WebForms.InitializeRequestEventArgs(b,this._postBackSettings.sourceElement);h(this,k);d=!k.get_cancel()}if(!d){if(f)f.preventDefault();return}this._scrollPosition=this._getScrollPosition();this.abortPostBack();h=this._get_eventHandlerList().getHandler("beginRequest");if(h){var k=new Sys.WebForms.BeginRequestEventArgs(b,this._postBackSettings.sourceElement);h(this,k)}this._request=b;b.invoke();if(f)f.preventDefault()},_onFormSubmitCompleted:function(sender,eventArgs){this._processingRequest=true;var delimitByLengthDelimiter="|";if(sender.get_timedOut()){this._endPostBack(this._createPageRequestManagerTimeoutError(),sender);return}if(sender.get_aborted()){this._endPostBack(null,sender);return}if(!this._request||sender.get_webRequest()!==this._request)return;var errorMessage,delta=[];if(sender.get_statusCode()!==200){this._endPostBack(this._createPageRequestManagerServerError(sender.get_statusCode()),sender);return}var reply=sender.get_responseData(),delimiterIndex,len,type,id,content,replyIndex=0,parserErrorDetails=null;while(replyIndex<reply.length){delimiterIndex=reply.indexOf(delimitByLengthDelimiter,replyIndex);if(delimiterIndex===-1){parserErrorDetails=this._findText(reply,replyIndex);break}len=parseInt(reply.substring(replyIndex,delimiterIndex),10);if(len%1!==0){parserErrorDetails=this._findText(reply,replyIndex);break}replyIndex=delimiterIndex+1;delimiterIndex=reply.indexOf(delimitByLengthDelimiter,replyIndex);if(delimiterIndex===-1){parserErrorDetails=this._findText(reply,replyIndex);break}type=reply.substring(replyIndex,delimiterIndex);replyIndex=delimiterIndex+1;delimiterIndex=reply.indexOf(delimitByLengthDelimiter,replyIndex);if(delimiterIndex===-1){parserErrorDetails=this._findText(reply,replyIndex);break}id=reply.substring(replyIndex,delimiterIndex);replyIndex=delimiterIndex+1;if(replyIndex+len>=reply.length){parserErrorDetails=this._findText(reply,reply.length);break}content=this._decodeString(reply.substr(replyIndex,len));replyIndex+=len;if(reply.charAt(replyIndex)!==delimitByLengthDelimiter){parserErrorDetails=this._findText(reply,replyIndex);break}replyIndex++;Array.add(delta,{type:type,id:id,content:content})}if(parserErrorDetails){this._endPostBack(this._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_ParserErrorDetails,parserErrorDetails)),sender);return}var updatePanelNodes=[],hiddenFieldNodes=[],arrayDeclarationNodes=[],scriptBlockNodes=[],expandoNodes=[],onSubmitNodes=[],dataItemNodes=[],dataItemJsonNodes=[],scriptDisposeNodes=[],asyncPostBackControlIDsNode,postBackControlIDsNode,updatePanelIDsNode,asyncPostBackTimeoutNode,childUpdatePanelIDsNode,panelsToRefreshNode,formActionNode;for(var i=0;i<delta.length;i++){var deltaNode=delta[i];switch(deltaNode.type){case "updatePanel":Array.add(updatePanelNodes,deltaNode);break;case "hiddenField":Array.add(hiddenFieldNodes,deltaNode);break;case "arrayDeclaration":Array.add(arrayDeclarationNodes,deltaNode);break;case "scriptBlock":Array.add(scriptBlockNodes,deltaNode);break;case "expando":Array.add(expandoNodes,deltaNode);break;case "onSubmit":Array.add(onSubmitNodes,deltaNode);break;case "asyncPostBackControlIDs":asyncPostBackControlIDsNode=deltaNode;break;case "postBackControlIDs":postBackControlIDsNode=deltaNode;break;case "updatePanelIDs":updatePanelIDsNode=deltaNode;break;case "asyncPostBackTimeout":asyncPostBackTimeoutNode=deltaNode;break;case "childUpdatePanelIDs":childUpdatePanelIDsNode=deltaNode;break;case "panelsToRefreshIDs":panelsToRefreshNode=deltaNode;break;case "formAction":formActionNode=deltaNode;break;case "dataItem":Array.add(dataItemNodes,deltaNode);break;case "dataItemJson":Array.add(dataItemJsonNodes,deltaNode);break;case "scriptDispose":Array.add(scriptDisposeNodes,deltaNode);break;case "pageRedirect":window.location.href=deltaNode.content;return;case "error":this._endPostBack(this._createPageRequestManagerServerError(Number.parseInvariant(deltaNode.id),deltaNode.content),sender);return;case "pageTitle":document.title=deltaNode.content;break;case "focus":this._controlIDToFocus=deltaNode.content;break;default:this._endPostBack(this._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_UnknownToken,deltaNode.type)),sender);return}}var i;if(asyncPostBackControlIDsNode&&postBackControlIDsNode&&updatePanelIDsNode&&panelsToRefreshNode&&asyncPostBackTimeoutNode&&childUpdatePanelIDsNode){this._oldUpdatePanelIDs=this._updatePanelIDs;var childUpdatePanelIDsString=childUpdatePanelIDsNode.content;this._childUpdatePanelIDs=childUpdatePanelIDsString.length?childUpdatePanelIDsString.split(","):[];var asyncPostBackControlIDsArray=this._splitNodeIntoArray(asyncPostBackControlIDsNode),postBackControlIDsArray=this._splitNodeIntoArray(postBackControlIDsNode),updatePanelIDsArray=this._splitNodeIntoArray(updatePanelIDsNode);this._panelsToRefreshIDs=this._splitNodeIntoArray(panelsToRefreshNode);for(i=0;i<this._panelsToRefreshIDs.length;i++){var panelClientID=this._uniqueIDToClientID(this._panelsToRefreshIDs[i]);if(!document.getElementById(panelClientID)){this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel,panelClientID)),sender);return}}var asyncPostBackTimeout=asyncPostBackTimeoutNode.content;this._updateControls(updatePanelIDsArray,asyncPostBackControlIDsArray,postBackControlIDsArray,asyncPostBackTimeout)}this._dataItems={};for(i=0;i<dataItemNodes.length;i++){var dataItemNode=dataItemNodes[i];this._dataItems[dataItemNode.id]=dataItemNode.content}for(i=0;i<dataItemJsonNodes.length;i++){var dataItemJsonNode=dataItemJsonNodes[i];this._dataItems[dataItemJsonNode.id]=eval(dataItemJsonNode.content)}var handler=this._get_eventHandlerList().getHandler("pageLoading");if(handler)handler(this,this._getPageLoadingEventArgs());if(formActionNode){this._form.action=formActionNode.content;this._form._initialAction=this._form.action}for(i=0;i<updatePanelNodes.length;i++){var deltaUpdatePanel=updatePanelNodes[i],deltaPanelID=deltaUpdatePanel.id,deltaPanelRendering=deltaUpdatePanel.content,updatePanelElement=document.getElementById(deltaPanelID);if(!updatePanelElement){this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel,deltaPanelID)),sender);return}this._updatePanel(updatePanelElement,deltaPanelRendering)}for(i=0;i<scriptDisposeNodes.length;i++){var disposePanelId=scriptDisposeNodes[i].id,disposeScript=scriptDisposeNodes[i].content;this._registerDisposeScript(disposePanelId,disposeScript)}for(i=0;i<hiddenFieldNodes.length;i++){var id=hiddenFieldNodes[i].id,value=hiddenFieldNodes[i].content,hiddenFieldElement=document.getElementById(id);if(!hiddenFieldElement){hiddenFieldElement=document.createElement("input");hiddenFieldElement.id=id;hiddenFieldElement.name=id;hiddenFieldElement.type="hidden";this._form.appendChild(hiddenFieldElement)}hiddenFieldElement.value=value}var arrayScript="";for(i=0;i<arrayDeclarationNodes.length;i++)arrayScript+="Sys.WebForms.PageRequestManager._addArrayElement('"+arrayDeclarationNodes[i].id+"', "+arrayDeclarationNodes[i].content+");\r\n";var expandoScript="";for(i=0;i<expandoNodes.length;i++){var propertyReference=expandoNodes[i].id,propertyValue=expandoNodes[i].content;expandoScript+=propertyReference+" = "+propertyValue+"\r\n"}Sys._ScriptLoader.readLoadedScripts();Sys.Application.beginCreateComponents();var scriptLoader=Sys._ScriptLoader.getInstance();if(arrayScript.length)scriptLoader.queueScriptBlock(arrayScript);if(expandoScript.length)scriptLoader.queueScriptBlock(expandoScript);for(i=0;i<scriptBlockNodes.length;i++){var scriptBlockType=scriptBlockNodes[i].id;switch(scriptBlockType){case "ScriptContentNoTags":scriptLoader.queueScriptBlock(scriptBlockNodes[i].content);break;case "ScriptContentWithTags":var scriptTagAttributes;eval("scriptTagAttributes = "+scriptBlockNodes[i].content);if(scriptTagAttributes.src&&Sys._ScriptLoader.isScriptLoaded(scriptTagAttributes.src))continue;scriptLoader.queueCustomScriptTag(scriptTagAttributes);break;case "ScriptPath":if(Sys._ScriptLoader.isScriptLoaded(scriptBlockNodes[i].content))continue;scriptLoader.queueScriptReference(scriptBlockNodes[i].content);break}}var onSubmitStatementScript="";for(var i=0;i<onSubmitNodes.length;i++){if(i===0)onSubmitStatementScript="Array.add(Sys.WebForms.PageRequestManager.getInstance()._onSubmitStatements, function() {\r\n";onSubmitStatementScript+=onSubmitNodes[i].content+"\r\n"}if(onSubmitStatementScript.length){onSubmitStatementScript+="\r\nreturn true;\r\n});\r\n";scriptLoader.queueScriptBlock(onSubmitStatementScript)}this._response=sender;scriptLoader.loadScripts(0,Function.createDelegate(this,this._scriptsLoadComplete),null,null)},_onWindowUnload:function(){this.dispose()},_pageLoaded:function(a){var b=this._get_eventHandlerList().getHandler("pageLoaded");if(b)b(this,this._getPageLoadedEventArgs(a));if(!a)Sys.Application.raiseLoad()},_pageLoadedInitialLoad:function(){this._pageLoaded(true)},_registerDisposeScript:function(a,b){if(!this._scriptDisposes[a])this._scriptDisposes[a]=[b];else Array.add(this._scriptDisposes[a],b)},_scriptsLoadComplete:function(){if(window.__theFormPostData)window.__theFormPostData="";if(window.__theFormPostCollection)window.__theFormPostCollection=[];if(window.WebForm_InitCallback)window.WebForm_InitCallback();if(this._scrollPosition){if(window.scrollTo)window.scrollTo(this._scrollPosition.x,this._scrollPosition.y);this._scrollPosition=null}Sys.Application.endCreateComponents();this._pageLoaded(false);this._endPostBack(null,this._response);this._response=null;if(this._controlIDToFocus){var a,c;if(Sys.Browser.agent===Sys.Browser.InternetExplorer){var b=$get(this._controlIDToFocus),a=b;if(b&&!WebForm_CanFocus(b))a=WebForm_FindFirstFocusableChild(b);if(a&&typeof a.contentEditable!=="undefined"){c=a.contentEditable;a.contentEditable=false}else a=null}WebForm_AutoFocus(this._controlIDToFocus);if(a)a.contentEditable=c;this._controlIDToFocus=null}},_splitNodeIntoArray:function(b){var a=b.content,c=a.length?a.split(","):[];return c},_uniqueIDToClientID:function(a){return a.replace(/\$/g,"_")},_updateControls:function(a,d,g,e){if(a){this._updatePanelIDs=new Array(a.length);this._updatePanelClientIDs=new Array(a.length);this._updatePanelHasChildrenAsTriggers=new Array(a.length);for(var b=0;b<a.length;b++){var c=a[b].substr(1),f=a[b].charAt(0)==="t";this._updatePanelHasChildrenAsTriggers[b]=f;this._updatePanelIDs[b]=c;this._updatePanelClientIDs[b]=this._uniqueIDToClientID(c)}this._asyncPostBackTimeout=e*1000}else{this._updatePanelIDs=[];this._updatePanelClientIDs=[];this._updatePanelHasChildrenAsTriggers=[];this._asyncPostBackTimeout=0}this._asyncPostBackControlIDs=[];this._asyncPostBackControlClientIDs=[];this._convertToClientIDs(d,this._asyncPostBackControlIDs,this._asyncPostBackControlClientIDs);this._postBackControlIDs=[];this._postBackControlClientIDs=[];this._convertToClientIDs(g,this._postBackControlIDs,this._postBackControlClientIDs)},_updatePanel:function(updatePanelElement,rendering){for(var updatePanelID in this._scriptDisposes)if(this._elementContains(updatePanelElement,document.getElementById(updatePanelID))){var disposeScripts=this._scriptDisposes[updatePanelID];for(var i=0;i<disposeScripts.length;i++)eval(disposeScripts[i]);delete this._scriptDisposes[updatePanelID]}this._destroyTree(updatePanelElement);updatePanelElement.innerHTML=rendering},_validPosition:function(a){return typeof a!=="undefined"&&a!==null&&a!==0}};Sys.WebForms.PageRequestManager.getInstance=function(){return Sys.WebForms.PageRequestManager._instance||null};Sys.WebForms.PageRequestManager._addArrayElement=function(a,b){if(typeof window[a]==="undefined")window[a]=[b];else Array.add(window[a],b)};Sys.WebForms.PageRequestManager._initialize=function(a,b){if(Sys.WebForms.PageRequestManager.getInstance())throw Error.invalidOperation(Sys.WebForms.Res.PRM_CannotRegisterTwice);Sys.WebForms.PageRequestManager._instance=new Sys.WebForms.PageRequestManager;Sys.WebForms.PageRequestManager.getInstance()._initializeInternal(a,b)};Sys.WebForms.PageRequestManager.registerClass("Sys.WebForms.PageRequestManager");Sys.UI._UpdateProgress=function(a){Sys.UI._UpdateProgress.initializeBase(this,[a]);this._displayAfter=500;this._dynamicLayout=true;this._associatedUpdatePanelId=null;this._beginRequestHandlerDelegate=null;this._startDelegate=null;this._endRequestHandlerDelegate=null;this._pageRequestManager=null;this._timerCookie=null};Sys.UI._UpdateProgress.prototype={get_displayAfter:function(){return this._displayAfter},set_displayAfter:function(a){this._displayAfter=a},get_dynamicLayout:function(){return this._dynamicLayout},set_dynamicLayout:function(a){this._dynamicLayout=a},get_associatedUpdatePanelId:function(){return this._associatedUpdatePanelId},set_associatedUpdatePanelId:function(a){this._associatedUpdatePanelId=a},_handleBeginRequest:function(d,c){var a=c.get_postBackElement(),b=!this._associatedUpdatePanelId;while(!b&&a){if(a.id&&this._associatedUpdatePanelId===a.id)b=true;a=a.parentNode}if(b)this._timerCookie=window.setTimeout(this._startDelegate,this._displayAfter)},_startRequest:function(){if(this._pageRequestManager.get_isInAsyncPostBack())if(this._dynamicLayout)this.get_element().style.display="block";else this.get_element().style.visibility="visible";this._timerCookie=null},_handleEndRequest:function(){if(this._dynamicLayout)this.get_element().style.display="none";else this.get_element().style.visibility="hidden";if(this._timerCookie){window.clearTimeout(this._timerCookie);this._timerCookie=null}},dispose:function(){if(this._pageRequestManager!==null){this._pageRequestManager.remove_beginRequest(this._beginRequestHandlerDelegate);this._pageRequestManager.remove_endRequest(this._endRequestHandlerDelegate)}Sys.UI._UpdateProgress.callBaseMethod(this,"dispose")},initialize:function(){Sys.UI._UpdateProgress.callBaseMethod(this,"initialize");this._beginRequestHandlerDelegate=Function.createDelegate(this,this._handleBeginRequest);this._endRequestHandlerDelegate=Function.createDelegate(this,this._handleEndRequest);this._startDelegate=Function.createDelegate(this,this._startRequest);if(Sys.WebForms&&Sys.WebForms.PageRequestManager)this._pageRequestManager=Sys.WebForms.PageRequestManager.getInstance();if(this._pageRequestManager!==null){this._pageRequestManager.add_beginRequest(this._beginRequestHandlerDelegate);this._pageRequestManager.add_endRequest(this._endRequestHandlerDelegate)}}};Sys.UI._UpdateProgress.registerClass("Sys.UI._UpdateProgress",Sys.UI.Control)
+Sys.WebForms.Res={'PRM_UnknownToken':'Unknown token: \'{0}\'.','PRM_MissingPanel':'Could not find UpdatePanel with ID \'{0}\'. If it is being updated dynamically then it must be inside another UpdatePanel.','PRM_ServerError':'An unknown error occurred while processing the request on the server. The status code returned from the server was: {0}','PRM_ParserError':'The message received from the server could not be parsed. Common causes for this error are when the response is modified by calls to Response.Write(), response filters, HttpModules, or server trace is enabled.\r\nDetails: {0}','PRM_TimeoutError':'The server request timed out.','PRM_ParserErrorDetails':'Error parsing near \'{0}\'.','PRM_CannotRegisterTwice':'The PageRequestManager cannot be initialized more than once.'};
+if(typeof(Sys)!=='undefined')Sys.Application.notifyScriptLoaded();