From: "Saved by Windows Internet Explorer 7"
Subject: Pact Sudan holds ECB in Kodrofan
Date: Wed, 3 Mar 2010 07:28:57 -0500
MIME-Version: 1.0
Content-Type: multipart/related;
	type="text/html";
	boundary="----=_NextPart_000_0000_01CABAA3.2F896710"
X-MimeOLE: Produced By Microsoft MimeOLE V6.0.6001.18049

This is a multi-part message in MIME format.

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.gurtong.net/ECM/Editorial/tabid/124/ID/3250/Default.aspx

=EF=BB=BF<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" =
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<HTML lang=3Den-US xml:lang=3D"en-US" =
xmlns=3D"http://www.w3.org/1999/xhtml"><HEAD=20
id=3DHead><TITLE>Pact Sudan holds ECB in Kodrofan</TITLE>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dutf-8"><!--****************************************************=
******************************--><!-- DotNetNuke=EF=BF=BD - =
http://www.dotnetnuke.com                                          =
--><!-- Copyright (c) 2002-2008                                          =
                --><!-- by DotNetNuke Corporation                        =
                                =
--><!--******************************************************************=
****************-->
<META id=3DMetaDescription=20
content=3D"Over 200 civil society and traditional leaders attended the =
Enabling Conditions Barometer assesment and cosultations in Kordofan."=20
name=3DDESCRIPTION>
<META id=3DMetaKeywords content=3D"Sudan, South Sudan, Pact Sudan, CPA." =

name=3DKEYWORDS>
<META id=3DMetaCopyright content=3D"Copyright 2009 by Brand X" =
name=3DCOPYRIGHT>
<META id=3DMetaGenerator content=3D"MSHTML 6.00.6001.18385" =
name=3DGENERATOR>
<META id=3DMetaAuthor content=3D"Gurtong Trust" name=3DAUTHOR>
<META content=3DDOCUMENT name=3DRESOURCE-TYPE>
<META content=3DGLOBAL name=3DDISTRIBUTION>
<META content=3D"INDEX, FOLLOW" name=3DROBOTS>
<META content=3D"1 DAYS" name=3DREVISIT-AFTER>
<META content=3DGENERAL name=3DRATING>
<META http-equiv=3DPAGE-ENTER =
content=3DRevealTrans(Duration=3D0,Transition=3D1)>
<STYLE id=3DStylePlaceholder type=3Dtext/css></STYLE>
<LINK id=3D_DesktopModules_DnnForge___NewsArticles=20
href=3D"/DesktopModules/DnnForge - NewsArticles/module.css" =
type=3Dtext/css=20
rel=3Dstylesheet><LINK id=3DTemplate_519=20
href=3D"http://www.gurtong.net/DesktopModules/DnnForge - =
NewsArticles/Templates/Gurtong/Template.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK =
id=3D_DesktopModules_BX_DropLineMenu=20
href=3D"http://www.gurtong.net/DesktopModules/BX_DropLineMenu/module.css"=
=20
type=3Dtext/css rel=3Dstylesheet><LINK =
id=3D_DesktopModules_pnc_Publisher_Content=20
href=3D"http://www.gurtong.net/DesktopModules/pnc.Publisher.Content/modul=
e.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK id=3D_Portals__default_=20
href=3D"http://www.gurtong.net/Portals/_default/default.css" =
type=3Dtext/css=20
rel=3Dstylesheet><LINK id=3D_Portals__default_Skins_GTN_Skin_5_3_=20
href=3D"http://www.gurtong.net/Portals/_default/Skins/GTN_Skin_5-3/skin.c=
ss"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
id=3D_Portals__default_Containers_Gurtong_Containers_=20
href=3D"http://www.gurtong.net/Portals/_default/Containers/Gurtong_Contai=
ners/container.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK id=3D_Portals_0_=20
href=3D"http://www.gurtong.net/Portals/0/portal.css" type=3Dtext/css =
rel=3Dstylesheet>
<SCRIPT =
src=3D"http://partner.googleadservices.com/gampad/google_service.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT =
type=3Dtext/javascript>GS_googleAddAdSenseService("ca-pub-943016846263970=
0"); GS_googleEnableAllServices();</SCRIPT>

<SCRIPT type=3Dtext/javascript>GA_googleFetchAds();</SCRIPT>
<LINK=20
href=3D"http://www.gurtong.net/ECM/Editorial/tabid/124/ID/3250/Pact-Sudan=
-holds-ECB-in-Kordofan.aspx"=20
rel=3Dcanonical>
<SCRIPT =
type=3Dtext/javascript>GA_googleAddSlot("ca-pub-9430168462639700", =
"GUR_468_124");</SCRIPT>

<SCRIPT =
type=3Dtext/javascript>GA_googleAddSlot("ca-pub-9430168462639700", =
"GUR_LB_124");</SCRIPT>

<SCRIPT =
type=3Dtext/javascript>GA_googleAddSlot("ca-pub-9430168462639700", =
"GUR_MPU_124");</SCRIPT>

<META http-equiv=3DContent-Language content=3Den-US></HEAD>
<BODY id=3DBody><NOSCRIPT></NOSCRIPT>
<FORM id=3DForm style=3D"HEIGHT: 100%" name=3DForm=20
action=3D/ECM/Editorial/tabid/124/ID/3250/Default.aspx method=3Dpost=20
encType=3Dmultipart/form-data autocomplete=3D"off">
<DIV><INPUT id=3D__EVENTTARGET type=3Dhidden name=3D__EVENTTARGET> =
<INPUT=20
id=3D__EVENTARGUMENT type=3Dhidden name=3D__EVENTARGUMENT> <INPUT =
id=3D__VIEWSTATE=20
type=3Dhidden=20
value=3D/wEPDwUJMjgzMDU3ODk3D2QWBmYPFgIeBFRleHQFeTwhRE9DVFlQRSBodG1sIFBVQ=
kxJQyAiLS8vVzNDLy9EVEQgWEhUTUwgMS4wIFRyYW5zaXRpb25hbC8vRU4iICJodHRwOi8vd3=
d3LnczLm9yZy9UUi94aHRtbDEvRFREL3hodG1sMS10cmFuc2l0aW9uYWwuZHRkIj5kAgEPZBY=
MAgEPFgIeB1Zpc2libGVoZAICDxYCHgdjb250ZW50BYEBT3ZlciAyMDAgY2l2aWwgc29jaWV0=
eSBhbmQgdHJhZGl0aW9uYWwgbGVhZGVycyBhdHRlbmRlZCB0aGUgRW5hYmxpbmcgQ29uZGl0a=
W9ucyBCYXJvbWV0ZXIgYXNzZXNtZW50IGFuZCBjb3N1bHRhdGlvbnMgaW4gS29yZG9mYW4uZA=
IDDxYCHwIFJFN1ZGFuLCBTb3V0aCBTdWRhbiwgUGFjdCBTdWRhbiwgQ1BBLmQCBA8WAh8CBRl=
Db3B5cmlnaHQgMjAwOSBieSBCcmFuZCBYZAIFDxYCHwIFC0RvdE5ldE51a2UgZAIGDxYCHwIF=
DUd1cnRvbmcgVHJ1c3RkAgIPZBYCAgEPZBYCAgQPZBYCZg9kFhQCAQ9kFgICAQ9kFgJmD2QWA=
gIBD2QWAgIBD2QWAmYPFgIeCWlubmVyaHRtbAVJPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3=
JpcHQiPkdBX2dvb2dsZUZpbGxTbG90KCJHVVJfTEJfMTI0Iik7IDwvc2NyaXB0PmQCAw8WAh8=
BZxYCAgEPZBYCZg9kFgICAQ9kFgICAQ9kFgJmDw8WAh8ABQozIE1hciAyMDEwZGQCBQ9kFgJm=
Dw8WBB4HVG9vbFRpcAUNR3VydG9uZyBUcnVzdB4LTmF2aWdhdGVVcmwFI2h0dHA6Ly93d3cuZ=
3VydG9uZy5uZXQvRGVmYXVsdC5hc3B4ZGQCBw8WAh8BZxYCAgMPZBYCZg9kFgICAQ9kFgICAQ=
9kFg4CAQ9kFgJmDw8WBh4IQ3NzQ2xhc3MFCUxvZ2luTGluax8ABQVMb2dpbh4EXyFTQgICZGQ=
CAw8WAh8BaBYCZg8PFgIfBQU2aHR0cDovL3d3dy5ndXJ0b25nLm5ldC9NeUd1cnRvbmcvdGFi=
aWQvODcvRGVmYXVsdC5hc3B4ZGQCBQ9kFgJmDw8WAh8FBTVodHRwOi8vd3d3Lmd1cnRvbmcub=
mV0L1JlZ2lzdGVyL3RhYmlkLzg2L0RlZmF1bHQuYXNweGRkAgcPDxYCHwUFMWh0dHA6Ly93d3=
cuZ3VydG9uZy5uZXQvSm9icy90YWJpZC84NS9EZWZhdWx0LmFzcHhkZAIJDw8WAh8FBThodHR=
wOi8vd3d3Lmd1cnRvbmcubmV0L0FkdmVydGlzaW5nL3RhYmlkLzg0L0RlZmF1bHQuYXNweGRk=
AgsPDxYCHwUFM2h0dHA6Ly93d3cuZ3VydG9uZy5uZXQvRG9uYXRlL3RhYmlkLzgzL0RlZmF1b=
HQuYXNweGRkAg0PDxYCHwUFMWh0dHA6Ly93d3cuZ3VydG9uZy5uZXQvU2hvcC90YWJpZC84Mi=
9EZWZhdWx0LmFzcHhkZAIJDxYCHwFnZAILDxYCHwFnFgICAQ9kFgJmD2QWAgIBD2QWAgIBD2Q=
WAgIBDxYCHwMF6z88dWwgY2xhc3M9InNlbGVjdCI+DQoJPGxpPjxhIGhyZWY9Imh0dHA6Ly93=
d3cuZ3VydG9uZy5uZXQvSG9tZS90YWJpZC8zOC9EZWZhdWx0LmFzcHgiPjxiPkhvbWU8L2I+P=
CEtLVtpZiBJRSA3XT48IS0tPjwvYT48IS0tPCFbZW5kaWZdLS0+DQoJPCEtLVtpZiBsdGUgSU=
UgNl0+PHRhYmxlPjx0cj48dGQ+PCFbZW5kaWZdLS0+DQoJPGRpdiBjbGFzcz0ic2VsZWN0X3N=
1YiIgc3R5bGU9ImhlaWdodDogMjVweCI+DQoJCTx1bCBjbGFzcz0ic3ViIiBzdHlsZT0ibWFy=
Z2luLWxlZnQ6IDBweDsiPg0KDQoJCTwvdWw+DQoJPC9kaXY+PCEtLVtpZiBsdGUgSUUgNl0+P=
C90ZD48L3RyPjwvdGFibGU+PC9hPjwhW2VuZGlmXS0tPg0KCTwvbGk+DQo8L3VsPjx1bCBjbG=
Fzcz0ic2VsZWN0Ij4NCgk8bGk+PGEgaHJlZj0iaHR0cDovL3d3dy5ndXJ0b25nLm5ldC9CdXN=
pbmVzcy90YWJpZC81OS9EZWZhdWx0LmFzcHgiPjxiPkJ1c2luZXNzPC9iPjwhLS1baWYgSUUg=
N10+PCEtLT48L2E+PCEtLTwhW2VuZGlmXS0tPg0KCTwhLS1baWYgbHRlIElFIDZdPjx0YWJsZ=
T48dHI+PHRkPjwhW2VuZGlmXS0tPg0KCTxkaXYgY2xhc3M9InNlbGVjdF9zdWIiIHN0eWxlPS=
JoZWlnaHQ6IDI1cHgiPg0KCQk8dWwgY2xhc3M9InN1YiIgc3R5bGU9Im1hcmdpbi1sZWZ0OiA=
wcHg7Ij4NCgkJCTxsaT48YSBocmVmPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L0J1c2luZXNz=
L0NvbnN0cnVjdGlvbi90YWJpZC83MC9EZWZhdWx0LmFzcHgiPkNvbnN0cnVjdGlvbjwvYT48L=
2xpPjxsaT48YSBocmVmPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L0J1c2luZXNzL0ZpbmFuY2=
UvdGFiaWQvNjgvRGVmYXVsdC5hc3B4Ij5GaW5hbmNlPC9hPjwvbGk+PGxpPjxhIGhyZWY9Imh=
0dHA6Ly93d3cuZ3VydG9uZy5uZXQvQnVzaW5lc3MvSW52ZXN0bWVudC90YWJpZC82OS9EZWZh=
dWx0LmFzcHgiPkludmVzdG1lbnQ8L2E+PC9saT48bGk+PGEgaHJlZj0iaHR0cDovL3d3dy5nd=
XJ0b25nLm5ldC9CdXNpbmVzcy9PaWwvdGFiaWQvMjUyL0RlZmF1bHQuYXNweCI+T2lsPC9hPj=
wvbGk+PGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cuZ3VydG9uZy5uZXQvQnVzaW5lc3MvVGVsZWN=
vbW11bmljYXRpb25zL3RhYmlkLzI1My9EZWZhdWx0LmFzcHgiPlRlbGVjb21tdW5pY2F0aW9u=
czwvYT48L2xpPjxsaT48YSBocmVmPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L0J1c2luZXNzL=
1RvdXJpc20vdGFiaWQvNjcvRGVmYXVsdC5hc3B4Ij5Ub3VyaXNtPC9hPjwvbGk+PGxpPjxhIG=
hyZWY9Imh0dHA6Ly93d3cuZ3VydG9uZy5uZXQvQnVzaW5lc3MvVHJhbnNwb3J0TG9naXN0aWN=
zL3RhYmlkLzI1NC9EZWZhdWx0LmFzcHgiPlRyYW5zcG9ydCAmIExvZ2lzdGljczwvYT48L2xp=
Pg0KCQk8L3VsPg0KCTwvZGl2PjwhLS1baWYgbHRlIElFIDZdPjwvdGQ+PC90cj48L3RhYmxlP=
jwvYT48IVtlbmRpZl0tLT4NCgk8L2xpPg0KPC91bD48dWwgY2xhc3M9InNlbGVjdCI+DQoJPG=
xpPjxhIGhyZWY9Imh0dHA6Ly93d3cuZ3VydG9uZy5uZXQvUGVvcGxlcy90YWJpZC82MC9EZWZ=
hdWx0LmFzcHgiPjxiPlBlb3BsZXM8L2I+PCEtLVtpZiBJRSA3XT48IS0tPjwvYT48IS0tPCFb=
ZW5kaWZdLS0+DQoJPCEtLVtpZiBsdGUgSUUgNl0+PHRhYmxlPjx0cj48dGQ+PCFbZW5kaWZdL=
S0+DQoJPGRpdiBjbGFzcz0ic2VsZWN0X3N1YiIgc3R5bGU9ImhlaWdodDogMjVweCI+DQoJCT=
x1bCBjbGFzcz0ic3ViIiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDBweDsiPg0KCQkJPGxpPjxhIGh=
yZWY9Imh0dHA6Ly93d3cuZ3VydG9uZy5uZXQvUGVvcGxlcy9QZW9wbGVzUHJvZmlsZXMvdGFi=
aWQvNzEvRGVmYXVsdC5hc3B4Ij5QZW9wbGVzJyBQcm9maWxlczwvYT48L2xpPjxsaT48YSBoc=
mVmPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L1Blb3BsZXMvQXJ0cy90YWJpZC83Mi9EZWZhdW=
x0LmFzcHgiPkFydHM8L2E+PC9saT48bGk+PGEgaHJlZj0iaHR0cDovL3d3dy5ob3VzZW9mbmF=
0aW9uYWxpdGllcy5vcmcvIj5Ib3VzZSBvZiBOYXRpb25hbGl0aWVzPC9hPjwvbGk+DQoJCTwv=
dWw+DQoJPC9kaXY+PCEtLVtpZiBsdGUgSUUgNl0+PC90ZD48L3RyPjwvdGFibGU+PC9hPjwhW=
2VuZGlmXS0tPg0KCTwvbGk+DQo8L3VsPjx1bCBjbGFzcz0ic2VsZWN0Ij4NCgk8bGk+PGEgaH=
JlZj0iaHR0cDovL3d3dy5ndXJ0b25nLm5ldC9Hb3Zlcm5hbmNlL3RhYmlkLzYzL0RlZmF1bHQ=
uYXNweCI+PGI+R292ZXJuYW5jZTwvYj48IS0tW2lmIElFIDddPjwhLS0+PC9hPjwhLS08IVtl=
bmRpZl0tLT4NCgk8IS0tW2lmIGx0ZSBJRSA2XT48dGFibGU+PHRyPjx0ZD48IVtlbmRpZl0tL=
T4NCgk8ZGl2IGNsYXNzPSJzZWxlY3Rfc3ViIiBzdHlsZT0iaGVpZ2h0OiAyNXB4Ij4NCgkJPH=
VsIGNsYXNzPSJzdWIiIHN0eWxlPSJtYXJnaW4tbGVmdDogMTkwcHg7Ij4NCgkJCTxsaT48YSB=
ocmVmPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L0dvdmVybmFuY2UvR292ZXJubWVudHMvdGFi=
aWQvMTA3L0RlZmF1bHQuYXNweCI+R292ZXJubWVudHM8L2E+PC9saT48bGk+PGEgaHJlZj0ia=
HR0cDovL3d3dy5ndXJ0b25nLm5ldC9Hb3Zlcm5hbmNlL0NvbnN0aXR1dGlvbkxhd3MvdGFiaW=
QvMTA2L0RlZmF1bHQuYXNweCI+Q29uc3RpdHV0aW9uICYgTGF3czwvYT48L2xpPjxsaT48YSB=
ocmVmPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L0dvdmVybmFuY2UvUGFybGlhbWVudHMvdGFi=
aWQvMTA4L0RlZmF1bHQuYXNweCI+UGFybGlhbWVudHM8L2E+PC9saT48bGk+PGEgaHJlZj0ia=
HR0cDovL3d3dy5ndXJ0b25nLm5ldC9Hb3Zlcm5hbmNlL1BvbGl0aWNhbFBhcnRpZXMvdGFiaW=
QvMTEwL0RlZmF1bHQuYXNweCI+UG9saXRpY2FsIFBhcnRpZXM8L2E+PC9saT48bGk+PGEgaHJ=
lZj0iaHR0cDovL3d3dy5ndXJ0b25nLm5ldC9Hb3Zlcm5hbmNlL0ZvcmVpZ25SZWxhdGlvbnMv=
dGFiaWQvNjIvRGVmYXVsdC5hc3B4Ij5Gb3JlaWduIFJlbGF0aW9uczwvYT48L2xpPjxsaT48Y=
SBocmVmPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L0dvdmVybmFuY2UvR29TU0ZvcmVpZ25NaX=
NzaW9uL3RhYmlkLzk2L0RlZmF1bHQuYXNweCI+R29TUyBGb3JlaWduIE1pc3Npb248L2E+PC9=
saT4NCgkJPC91bD4NCgk8L2Rpdj48IS0tW2lmIGx0ZSBJRSA2XT48L3RkPjwvdHI+PC90YWJs=
ZT48L2E+PCFbZW5kaWZdLS0+DQoJPC9saT4NCjwvdWw+PHVsIGNsYXNzPSJzZWxlY3QiPg0KC=
TxsaT48YSBocmVmPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L0VkdWNhdGlvbi90YWJpZC82MS=
9EZWZhdWx0LmFzcHgiPjxiPkVkdWNhdGlvbjwvYj48IS0tW2lmIElFIDddPjwhLS0+PC9hPjw=
hLS08IVtlbmRpZl0tLT4NCgk8IS0tW2lmIGx0ZSBJRSA2XT48dGFibGU+PHRyPjx0ZD48IVtl=
bmRpZl0tLT4NCgk8ZGl2IGNsYXNzPSJzZWxlY3Rfc3ViIiBzdHlsZT0iaGVpZ2h0OiAyNXB4I=
j4NCgkJPHVsIGNsYXNzPSJzdWIiIHN0eWxlPSJtYXJnaW4tbGVmdDogMjYwcHg7Ij4NCgkJCT=
xsaT48YSBocmVmPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L0VkdWNhdGlvbi9FZHVjYXRpb25=
TeXN0ZW0vdGFiaWQvODgvRGVmYXVsdC5hc3B4Ij5FZHVjYXRpb24gU3lzdGVtPC9hPjwvbGk+=
PGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cuZ3VydG9uZy5uZXQvRWR1Y2F0aW9uL0xpc3RlZEluc=
3RpdHV0aW9ucy90YWJpZC85MC9EZWZhdWx0LmFzcHgiPkxpc3RlZCBJbnN0aXR1dGlvbnM8L2=
E+PC9saT4NCgkJPC91bD4NCgk8L2Rpdj48IS0tW2lmIGx0ZSBJRSA2XT48L3RkPjwvdHI+PC9=
0YWJsZT48L2E+PCFbZW5kaWZdLS0+DQoJPC9saT4NCjwvdWw+PHVsIGNsYXNzPSJzZWxlY3Qi=
Pg0KCTxsaT48YSBocmVmPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L0hlYWx0aC90YWJpZC82N=
C9EZWZhdWx0LmFzcHgiPjxiPkhlYWx0aDwvYj48IS0tW2lmIElFIDddPjwhLS0+PC9hPjwhLS=
08IVtlbmRpZl0tLT4NCgk8IS0tW2lmIGx0ZSBJRSA2XT48dGFibGU+PHRyPjx0ZD48IVtlbmR=
pZl0tLT4NCgk8ZGl2IGNsYXNzPSJzZWxlY3Rfc3ViIiBzdHlsZT0iaGVpZ2h0OiAyNXB4Ij4N=
CgkJPHVsIGNsYXNzPSJzdWIiIHN0eWxlPSJtYXJnaW4tbGVmdDogMjEwcHg7Ij4NCgkJCTxsa=
T48YSBocmVmPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L0hlYWx0aC9IZWFsdGhTeXN0ZW0vdG=
FiaWQvOTgvRGVmYXVsdC5hc3B4Ij5IZWFsdGggU3lzdGVtPC9hPjwvbGk+PGxpPjxhIGhyZWY=
9Imh0dHA6Ly93d3cuZ3VydG9uZy5uZXQvSGVhbHRoL0hlYWx0aERvY3VtZW50YXJpZXNGZWF0=
dXJlcy90YWJpZC8xMDIvRGVmYXVsdC5hc3B4Ij5IZWFsdGggRG9jdW1lbnRhcmllcyAmIEZlY=
XR1cmVzPC9hPjwvbGk+PGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cuZ3VydG9uZy5uZXQvSGVhbH=
RoL0NvbW1vbkFpbG1lbnRzUGFuZGVtaWNzL3RhYmlkLzEwMy9EZWZhdWx0LmFzcHgiPkNvbW1=
vbiBBaWxtZW50cyAmIFBhbmRlbWljczwvYT48L2xpPg0KCQk8L3VsPg0KCTwvZGl2PjwhLS1b=
aWYgbHRlIElFIDZdPjwvdGQ+PC90cj48L3RhYmxlPjwvYT48IVtlbmRpZl0tLT4NCgk8L2xpP=
g0KPC91bD48dWwgY2xhc3M9InNlbGVjdCI+DQoJPGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cuZ3=
VydG9uZy5uZXQvVHJhdmVsL3RhYmlkLzY2L0RlZmF1bHQuYXNweCI+PGI+VHJhdmVsPC9iPjw=
hLS1baWYgSUUgN10+PCEtLT48L2E+PCEtLTwhW2VuZGlmXS0tPg0KCTwhLS1baWYgbHRlIElF=
IDZdPjx0YWJsZT48dHI+PHRkPjwhW2VuZGlmXS0tPg0KCTxkaXYgY2xhc3M9InNlbGVjdF9zd=
WIiIHN0eWxlPSJoZWlnaHQ6IDI1cHgiPg0KCQk8dWwgY2xhc3M9InN1YiIgc3R5bGU9Im1hcm=
dpbi1sZWZ0OiAyNzBweDsiPg0KCQkJPGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cuZ3VydG9uZy5=
uZXQvVHJhdmVsL0ludHJvZHVjdGlvbnRvU291dGhTdWRhbi90YWJpZC85MS9EZWZhdWx0LmFz=
cHgiPkludHJvZHVjdGlvbiB0byBTb3V0aCBTdWRhbjwvYT48L2xpPjxsaT48YSBocmVmPSJod=
HRwOi8vd3d3Lmd1cnRvbmcubmV0L1RyYXZlbC9UcmF2ZWxSZXF1aXJlbWVudHMvdGFiaWQvOT=
IvRGVmYXVsdC5hc3B4Ij5UcmF2ZWwgUmVxdWlyZW1lbnRzPC9hPjwvbGk+PGxpPjxhIGhyZWY=
9Imh0dHA6Ly93d3cuZ3VydG9uZy5uZXQvVHJhdmVsL1RyYW5zcG9ydENvbW11bmljYXRpb24v=
dGFiaWQvOTMvRGVmYXVsdC5hc3B4Ij5UcmFuc3BvcnQgJiBDb21tdW5pY2F0aW9uPC9hPjwvb=
Gk+PGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cuZ3VydG9uZy5uZXQvVHJhdmVsL0FjY29tbW9kYX=
Rpb24vdGFiaWQvOTQvRGVmYXVsdC5hc3B4Ij5BY2NvbW1vZGF0aW9uPC9hPjwvbGk+DQoJCTw=
vdWw+DQoJPC9kaXY+PCEtLVtpZiBsdGUgSUUgNl0+PC90ZD48L3RyPjwvdGFibGU+PC9hPjwh=
W2VuZGlmXS0tPg0KCTwvbGk+DQo8L3VsPjx1bCBjbGFzcz0ic2VsZWN0Ij4NCgk8bGk+PGEga=
HJlZj0iaHR0cDovL3d3dy5ndXJ0b25nLm5ldC9IdW1hbml0YXJpYW4vdGFiaWQvNjUvRGVmYX=
VsdC5hc3B4Ij48Yj5IdW1hbml0YXJpYW48L2I+PCEtLVtpZiBJRSA3XT48IS0tPjwvYT48IS0=
tPCFbZW5kaWZdLS0+DQoJPCEtLVtpZiBsdGUgSUUgNl0+PHRhYmxlPjx0cj48dGQ+PCFbZW5k=
aWZdLS0+DQoJPGRpdiBjbGFzcz0ic2VsZWN0X3N1YiIgc3R5bGU9ImhlaWdodDogMjVweCI+D=
QoJCTx1bCBjbGFzcz0ic3ViIiBzdHlsZT0ibWFyZ2luLWxlZnQ6IDUwMHB4OyI+DQoJCQk8bG=
k+PGEgaHJlZj0iaHR0cDovL3d3dy5ndXJ0b25nLm5ldC9IdW1hbml0YXJpYW4vSGVhbHRoRWR=
1Y2F0aW9uL3RhYmlkLzExMi9EZWZhdWx0LmFzcHgiPkhlYWx0aCAmIEVkdWNhdGlvbjwvYT48=
L2xpPjxsaT48YSBocmVmPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L0h1bWFuaXRhcmlhbi9Id=
W1hbml0YXJpYW5Pcmdhbml6YXRpb25zL3RhYmlkLzExNC9EZWZhdWx0LmFzcHgiPkh1bWFuaX=
RhcmlhbiBPcmdhbml6YXRpb25zPC9hPjwvbGk+PGxpPjxhIGhyZWY9Imh0dHA6Ly93d3cuZ3V=
ydG9uZy5uZXQvSHVtYW5pdGFyaWFuL0ZvcmVpZ25BaWRBc3Npc3RhbmNlL3RhYmlkLzk3L0Rl=
ZmF1bHQuYXNweCI+Rm9yZWlnbiBBaWQvQXNzaXN0YW5jZTwvYT48L2xpPg0KCQk8L3VsPg0KC=
TwvZGl2PjwhLS1baWYgbHRlIElFIDZdPjwvdGQ+PC90cj48L3RhYmxlPjwvYT48IVtlbmRpZl=
0tLT4NCgk8L2xpPg0KPC91bD48dWwgY2xhc3M9InNlbGVjdCI+DQoJPGxpPjxhIGhyZWY9Imh=
0dHA6Ly93d3cuZ3VydG9uZy5uZXQvRUNNL0VkaXRvcmlhbC90YWJpZC8xMjQvYXJ0aWNsZVR5=
cGUvQXJjaGl2ZXMvRGVmYXVsdC5hc3B4Ij48Yj5OZXdzICYgQXJjaGl2ZXM8L2I+PC9hPjwhL=
S1baWYgbHRlIElFIDZdPjx0YWJsZT48dHI+PHRkPjwhW2VuZGlmXS0tPg0KCTxkaXYgY2xhc3=
M9InNlbGVjdF9zdWIgc2hvdyIgc3R5bGU9ImhlaWdodDogMjVweCI+DQoNCgk8L2Rpdj48IS0=
tW2lmIGx0ZSBJRSA2XT48L3RkPjwvdHI+PC90YWJsZT48L2E+PCFbZW5kaWZdLS0+DQoJPC9s=
aT4NCjwvdWw+PHVsIGNsYXNzPSJzZWxlY3QiPg0KCTxsaT48YSBocmVmPSJodHRwOi8vd3d3L=
md1cnRvbmcubmV0L1Jlc291cmNlQ2VudGVyL3RhYmlkLzQwMy9EZWZhdWx0LmFzcHgiPjxiPk=
RvY3VtZW50czwvYj48L2E+PCEtLVtpZiBsdGUgSUUgNl0+PHRhYmxlPjx0cj48dGQ+PCFbZW5=
kaWZdLS0+DQoJPGRpdiBjbGFzcz0ic2VsZWN0X3N1YiBzaG93IiBzdHlsZT0iaGVpZ2h0OiAy=
NXB4Ij4NCg0KCTwvZGl2PjwhLS1baWYgbHRlIElFIDZdPjwvdGQ+PC90cj48L3RhYmxlPjwvY=
T48IVtlbmRpZl0tLT4NCgk8L2xpPg0KPC91bD48dWwgY2xhc3M9InNlbGVjdCI+DQoJPGxpPj=
xhIGhyZWY9Imh0dHA6Ly93d3cuZ3VydG9uZy5uZXQvRWxlY3Rpb25zL3RhYmlkLzE2Ni9EZWZ=
hdWx0LmFzcHgiPjxiPkVsZWN0aW9uczwvYj48IS0tW2lmIElFIDddPjwhLS0+PC9hPjwhLS08=
IVtlbmRpZl0tLT4NCgk8IS0tW2lmIGx0ZSBJRSA2XT48dGFibGU+PHRyPjx0ZD48IVtlbmRpZ=
l0tLT4NCgk8ZGl2IGNsYXNzPSJzZWxlY3Rfc3ViIiBzdHlsZT0iaGVpZ2h0OiAyNXB4Ij4NCg=
kJPHVsIGNsYXNzPSJzdWIiIHN0eWxlPSJtYXJnaW4tbGVmdDogMHB4OyI+DQoJCQk8bGk+PGE=
gaHJlZj0iaHR0cDovL3d3dy5ndXJ0b25nLm5ldC9FbGVjdGlvbnMvQ29uc3RpdHVlbmNpZXMv=
dGFiaWQvMzkyL0RlZmF1bHQuYXNweCI+Q29uc3RpdHVlbmNpZXM8L2E+PC9saT48bGk+PGEga=
HJlZj0iaHR0cDovL3d3dy5ndXJ0b25nLm5ldC9FbGVjdGlvbnMvRWxlY3Rpb25zTGF3cy90YW=
JpZC8zOTQvRGVmYXVsdC5hc3B4Ij5FbGVjdGlvbnMgTGF3czwvYT48L2xpPjxsaT48YSBocmV=
mPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L0VsZWN0aW9ucy9FbGVjdGlvblJlcG9ydHMvdGFi=
aWQvMzk4L0RlZmF1bHQuYXNweCI+RWxlY3Rpb24gUmVwb3J0czwvYT48L2xpPjxsaT48YSBoc=
mVmPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L0VsZWN0aW9ucy9Wb3RlclNlbnNpdGl6YXRpb2=
4vdGFiaWQvMzk5L0RlZmF1bHQuYXNweCI+Vm90ZXIgU2Vuc2l0aXphdGlvbjwvYT48L2xpPjx=
saT48YSBocmVmPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L0VsZWN0aW9ucy9DYW5kaWRhdGVz=
cHJvZmlsZXMvdGFiaWQvNDMzL0RlZmF1bHQuYXNweCI+Q2FuZGlkYXRlcyBwcm9maWxlczwvY=
T48L2xpPjxsaT48YSBocmVmPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L0VsZWN0aW9ucy9HZW=
9ncmFwaGljYWxTZWF0cy90YWJpZC80MjIvRGVmYXVsdC5hc3B4Ij5HZW9ncmFwaGljYWwgU2V=
hdHM8L2E+PC9saT4NCgkJPC91bD4NCgk8L2Rpdj48IS0tW2lmIGx0ZSBJRSA2XT48L3RkPjwv=
dHI+PC90YWJsZT48L2E+PCFbZW5kaWZdLS0+DQoJPC9saT4NCjwvdWw+PHVsIGNsYXNzPSJzZ=
WxlY3QiPg0KCTxsaT48YSBocmVmPSJodHRwOi8vd3d3Lmd1cnRvbmcubmV0L01hcHNvZlNTdW=
Rhbi90YWJpZC80MzEvRGVmYXVsdC5hc3B4Ij48Yj5NYXBzIG9mIFMuIFN1ZGFuPC9iPjwvYT4=
8IS0tW2lmIGx0ZSBJRSA2XT48dGFibGU+PHRyPjx0ZD48IVtlbmRpZl0tLT4NCgk8ZGl2IGNs=
YXNzPSJzZWxlY3Rfc3ViIHNob3ciIHN0eWxlPSJoZWlnaHQ6IDI1cHgiPg0KDQoJPC9kaXY+P=
CEtLVtpZiBsdGUgSUUgNl0+PC90ZD48L3RyPjwvdGFibGU+PC9hPjwhW2VuZGlmXS0tPg0KCT=
wvbGk+DQo8L3VsPjx1bCBjbGFzcz0iY3VycmVudCI+DQoJPGxpPjxhIGhyZWY9IiMiPjxiPjw=
vYj48ZGl2IGNsYXNzPSJzZWxlY3Rfc3ViIHNob3ciIHN0eWxlPSJoZWlnaHQ6IDI1cHgiPg0K=
DQoJPC9kaXY+PC9hPjwvbGk+DQo8L3VsPmQCDQ8WAh8BZxYCAgEPZBYCZg9kFgICAQ9kFgICA=
Q9kFgJmDxYCHwFoFgICAw8WAh8DBWk8ZGl2IGlkPSJzdWItbmF2Ij48ZGl2IGNsYXNzPSJ0aW=
NrZXIiPjxzcGFuIGNsYXNzPSJ0aWNrZXItaG9sZGVyIiBzdHlsZT0id2lkdGg6IDEwMCUiPjw=
vc3Bhbj48L2Rpdj48L2Rpdj5kAg8PFgIfAWcWBAIBD2QWAmYPZBYEAgEPDxYCHwFoZGQCBA9k=
FgICAQ9kFgICAQ9kFgJmD2QWAgIGD2QWAgIeD2QWBGYPFgIfAWgWDmYPZBYEAgMPDxYCHwAFD=
05hbWUgKHJlcXVpcmVkKWRkAgUPDxYEHgxFcnJvck1lc3NhZ2UFEE5hbWUgSXMgUmVxdWlyZW=
QeD1ZhbGlkYXRpb25Hcm91cAUQUG9zdENvbW1lbnQtMzI1MGRkAgEPZBYGAgMPDxYCHwAFEEV=
tYWlsIChyZXF1aXJlZClkZAIFDw8WBB8IBRFFbWFpbCBJcyBSZXF1aXJlZB8JBRBQb3N0Q29t=
bWVudC0zMjUwZGQCBw8PFgQfCAUVSW52YWxpZCBFbWFpbCBBZGRyZXNzHwkFEFBvc3RDb21tZ=
W50LTMyNTBkZAICD2QWAgIDDw8WAh8ABQdXZWJzaXRlZGQCBQ8PFgQfCAUXPGJyPkNvbW1lbn=
QgSXMgUmVxdWlyZWQfCQUQUG9zdENvbW1lbnQtMzI1MGRkAgcPFCsAAw8WAh8BaGRkZGQCCQ8=
QDxYEHwAFKU5vdGlmeSBtZSBvZiBmb2xsb3d1cCBjb21tZW50cyB2aWEgZS1tYWlsHgdDaGVj=
a2VkZ2RkZGQCCw9kFgJmD2QWAmYPZBYCZg8PFgQfAAULQWRkIENvbW1lbnQfCQUQUG9zdENvb=
W1lbnQtMzI1MGRkAgQPFgIfAWcWAgIDDw8WAh8ABXR0byBwb3N0IGEgY29tbWVudC4gSWYgeW=
91IGFyZSBub3QgYSBHdXJ0b25nIG1lbWJlciB5ZXQsIDxhIGhyZWY9Ii9SZWdpc3Rlci90YWJ=
pZC84Ni9EZWZhdWx0LmFzcHgiPnJlZ2lzdGVyIGhlcmU8L2E+LmRkAgMPDxYCHwFoZGQCEQ8W=
Ah8BZxYCAgMPZBYCZg9kFgICAQ9kFgICAQ9kFgJmDxYCHwMFSjxzY3JpcHQgdHlwZT0idGV4d=
C9qYXZhc2NyaXB0Ij5HQV9nb29nbGVGaWxsU2xvdCgiR1VSX01QVV8xMjQiKTsgPC9zY3JpcH=
Q+ZAITDxYCHwFnZBgBBR5fX0NvbnRyb2xzUmVxdWlyZVBvc3RCYWNrS2V5X18WAQUfZG5uJGN=
0cjEzNTUkQlhfU2VhcmNoJGltZ1NlYXJjaNNb9CxA3LhrSa5oTKxDvPPlTiBW=20
name=3D__VIEWSTATE> </DIV>
<SCRIPT type=3Dtext/javascript>
//<![CDATA[
var theForm =3D document.forms['Form'];
if (!theForm) {
    theForm =3D document.Form;
}
function __doPostBack(eventTarget, eventArgument) {
    if (!theForm.onsubmit || (theForm.onsubmit() !=3D false)) {
        theForm.__EVENTTARGET.value =3D eventTarget;
        theForm.__EVENTARGUMENT.value =3D eventArgument;
        theForm.submit();
    }
}
//]]>
</SCRIPT>

<SCRIPT=20
src=3D"http://www.gurtong.net/WebResource.axd?d=3D5iEyd-aZkqTkoZiI0sElJw2=
&amp;t=3D633884055906216209"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT src=3D"http://www.gurtong.net/js/dnncore.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT=20
src=3D"http://www.gurtong.net/ScriptResource.axd?d=3DSfjSoLGRsOpAW_hyk0nI=
9Ptp7jGvs8reMwZIcJNWsRSK3zkRE6JIsWbaR88mRobW9_9JalsqmnVRUuCRPkpeHDebDBFIl=
XnzWATk22CDfyk1&amp;t=3Dfec45"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT type=3Dtext/javascript>
//<![CDATA[
if (typeof(Sys) =3D=3D=3D 'undefined') throw new Error('ASP.NET Ajax =
client-side framework failed to load.');
//]]>
</SCRIPT>

<SCRIPT=20
src=3D"http://www.gurtong.net/ScriptResource.axd?d=3DSfjSoLGRsOpAW_hyk0nI=
9Ptp7jGvs8reMwZIcJNWsRSK3zkRE6JIsWbaR88mRobW9_9JalsqmnW4vDjb02anb4Ca0CO5u=
HF2cvA6ZOR0qPUd0LVwelYMRg2&amp;t=3Dfec45"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT type=3Dtext/javascript>
//<![CDATA[
Sys.WebForms.PageRequestManager._initialize('ScriptManager', =
document.getElementById('Form'));
Sys.WebForms.PageRequestManager.getInstance()._updateControls([], [], =
[], 90);
//]]>
</SCRIPT>
<!--[if lte IE 6]>
    <link rel=3D"stylesheet" type=3D"text/css" =
href=3D"http://www.gurtong.net/Portals/_default/iehacks.css">
<![endif]-->
<DIV id=3DWrap><!-- Global Containers -->
<DIV id=3DPageHolder><!-- Header Containers -->
<DIV id=3DtopBanner>
<DIV class=3DContainerBanner id=3Ddnn_TopBannerPane><A =
name=3D457></A><SPAN=20
class=3DDNNAlignleft id=3Ddnn_ctr457_ContentPane><!-- Start_Module_457 =
-->
<DIV id=3Ddnn_ctr457_ModuleContent>
<DIV class=3DGAM_LB_style =
id=3Ddnn_ctr457_BX_GoogleAdManagerLB_GAM_Ad_Script>
<SCRIPT type=3Dtext/javascript>GA_googleFillSlot("GUR_LB_124"); =
</SCRIPT>
</DIV><!-- End_Module_457 --></DIV></SPAN><A name=3D1451></A><SPAN=20
class=3DDNNAlignleft id=3Ddnn_ctr1451_ContentPane><!-- Start_Module_1451 =
-->
<DIV id=3Ddnn_ctr1451_ModuleContent><SPAN class=3DNormal=20
id=3Ddnn_ctr1451_pnc.Publisher.Content_MessageHolder>
<P>&nbsp;</P>
<DIV style=3D"FLOAT: right"><A=20
href=3D"http://translate.google.com/translate?js=3Dy&amp;prev=3D_t&amp;hl=
=3Den&amp;ie=3DUTF-8&amp;layout=3D1&amp;eotf=3D1&amp;u=3Dwww.gurtong.net&=
amp;sl=3Den&amp;tl=3Dar"=20
target=3D_blank><STRONG>Arabic =
Version</STRONG></A>&nbsp;&nbsp;&nbsp;&nbsp;<A=20
lang=3DAR title=3D"Arabic Version"=20
href=3D"http://translate.google.com/translate?js=3Dy&amp;prev=3D_t&amp;hl=
=3Den&amp;ie=3DUTF-8&amp;layout=3D1&amp;eotf=3D1&amp;u=3Dwww.gurtong.net&=
amp;sl=3Den&amp;tl=3Dar"=20
target=3D_blank><STRONG>=D8=A7=D9=84=D9=86=D8=B3=D8=AE=D8=A9=20
=D8=A7=D9=84=D8=B9=D8=B1=D8=A8=D9=8A=D8=A9</STRONG></A><STRONG>&nbsp;&nbs=
p;</STRONG><STRONG>&nbsp;</STRONG></DIV>
<P>&nbsp;</P></SPAN><SPAN class=3DStatHolder=20
id=3Ddnn_ctr1451_pnc.Publisher.Content_StatHolder></SPAN><!-- =
End_Module_1451 --></DIV></SPAN></DIV></DIV>
<DIV id=3DtopArea>
<DIV id=3DDateTimeContainer>
<DIV id=3Ddnn_DateTimePane><A name=3D419></A><SPAN class=3DDNNAlignleft=20
id=3Ddnn_ctr419_ContentPane><!-- Start_Module_419 -->
<DIV id=3Ddnn_ctr419_ModuleContent><SPAN class=3DDateTime=20
id=3Ddnn_ctr419_BX_DateTime_lbl_Date>3 Mar 2010</SPAN><!-- =
End_Module_419 -->=20
</DIV></SPAN></DIV></DIV>
<DIV id=3DLogo><A id=3Ddnn_dnnLOGO_hypLogo title=3D"Gurtong Trust"=20
href=3D"http://www.gurtong.net/Default.aspx"><IMG =
id=3Ddnn_dnnLOGO_imgLogo=20
style=3D"BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; =
BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"=20
alt=3D"Gurtong Trust"=20
src=3D"http://www.gurtong.net/Portals/0/GlobalResources/EN/images/logo_gu=
rtong.gif"></A>=20
</DIV>
<DIV id=3DHeaderContainer>
<DIV class=3DHeaderContentPaneStyle id=3Ddnn_HeaderContentPane><A=20
name=3D1355></A><SPAN class=3DDNNAlignleft =
id=3Ddnn_ctr1355_ContentPane><!-- Start_Module_1355 -->
<DIV id=3Ddnn_ctr1355_ModuleContent>
<DIV class=3DSearch><INPUT class=3DSearchButton =
id=3Ddnn_ctr1355_BX_Search_imgSearch=20
style=3D"BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; =
BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"=20
type=3Dimage=20
src=3D"http://www.gurtong.net/Portals/0/GlobalResources/EN/images/but_sea=
rch.gif"=20
name=3Ddnn$ctr1355$BX_Search$imgSearch> <INPUT class=3DSearchTextBox=20
id=3Ddnn_ctr1355_BX_Search_txtSearch=20
style=3D"BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; =
BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"=20
maxLength=3D30 size=3D35 name=3Ddnn$ctr1355$BX_Search$txtSearch> =
</DIV><!-- End_Module_1355 --></DIV></SPAN><A name=3D417></A><SPAN=20
class=3DDNNAlignleft id=3Ddnn_ctr417_ContentPane><!-- Start_Module_417 =
-->
<DIV id=3Ddnn_ctr417_ModuleContent>
<DIV class=3DTopLinks><A class=3DLoginLink=20
id=3Ddnn_ctr417_BX_HeaderLinks_LOGIN1_cmdLogin=20
href=3D"javascript:__doPostBack('dnn$ctr417$BX_HeaderLinks$LOGIN1$cmdLogi=
n','')">Login</A>=20

<DIV class=3DTopLink id=3Ddnn_ctr417_BX_HeaderLinks_div_Register><A =
class=3DHeaderLink=20
id=3Ddnn_ctr417_BX_HeaderLinks_hlk_Register=20
href=3D"http://www.gurtong.net/Register/tabid/86/Default.aspx">Register</=
A></DIV>
<DIV class=3DTopLink><A class=3DHeaderLink =
id=3Ddnn_ctr417_BX_HeaderLinks_hlk_Jobs=20
href=3D"http://www.gurtong.net/Jobs/tabid/85/Default.aspx">Jobs</A></DIV>=

<DIV class=3DTopLink><A class=3DHeaderLink=20
id=3Ddnn_ctr417_BX_HeaderLinks_hlk_Advertise=20
href=3D"http://www.gurtong.net/Advertising/tabid/84/Default.aspx">Adverti=
se</A></DIV>
<DIV class=3DTopLink><A class=3DHeaderLink =
id=3Ddnn_ctr417_BX_HeaderLinks_hlk_Donate=20
href=3D"http://www.gurtong.net/Donate/tabid/83/Default.aspx">Donate</A></=
DIV>
<DIV class=3DTopLink=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px"=20
visible=3D"false"></DIV></DIV><!-- End_Module_417 --></DIV></SPAN></DIV>
<DIV class=3DFeatureNewsPaneStyle id=3Ddnn_FeatureNewsPane><A =
name=3D418></A><SPAN=20
class=3DDNNAlignleft id=3Ddnn_ctr418_ContentPane><!-- Start_Module_418 =
-->
<DIV id=3Ddnn_ctr418_ModuleContent><SPAN class=3DNormal=20
id=3Ddnn_ctr418_pnc.Publisher.Content_MessageHolder>
<DIV style=3D"FLOAT: right; WIDTH: 179px"><A=20
href=3D"http://www.gurtong.net/LinkClick.aspx?link=3D166&amp;tabid=3D38">=
<IMG=20
height=3D76 alt=3D""=20
src=3D"http://www.gurtong.net/Portals/0/GlobalResources/EN/images/GUR_fea=
ture_elections_register%20copy2.jpg"=20
width=3D179 border=3D0></A></DIV></SPAN><SPAN class=3DStatHolder=20
id=3Ddnn_ctr418_pnc.Publisher.Content_StatHolder></SPAN><!-- =
End_Module_418 --></DIV></SPAN></DIV></DIV></DIV>
<DIV id=3DTopNav>
<DIV class=3DTopNavPaneStyle id=3Ddnn_TopNavPane><A name=3D421></A><SPAN =

class=3DDNNAlignleft id=3Ddnn_ctr421_ContentPane><!-- Start_Module_421 =
-->
<DIV id=3Ddnn_ctr421_ModuleContent>
<DIV class=3DBX_DropLineMenu>
<DIV class=3DContent id=3Ddnn_ctr421_BX_DropLineMenu_MainContent>
<UL class=3Dselect>
  <LI><A =
href=3D"http://www.gurtong.net/Home/tabid/38/Default.aspx"><B>Home</B><!-=
-[if IE 7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

  <DIV class=3Dselect_sub style=3D"HEIGHT: 25px">
  <UL class=3Dsub style=3D"MARGIN-LEFT: 0px"></UL></DIV><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI></UL>
<UL class=3Dselect>
  <LI><A=20
  =
href=3D"http://www.gurtong.net/Business/tabid/59/Default.aspx"><B>Busines=
s</B><!--[if IE 7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

  <DIV class=3Dselect_sub style=3D"HEIGHT: 25px">
  <UL class=3Dsub style=3D"MARGIN-LEFT: 0px">
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Business/Construction/tabid/70/Default.asp=
x">Construction</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Business/Finance/tabid/68/Default.aspx">Fi=
nance</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Business/Investment/tabid/69/Default.aspx"=
>Investment</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Business/Oil/tabid/252/Default.aspx">Oil</=
A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Business/Telecommunications/tabid/253/Defa=
ult.aspx">Telecommunications</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Business/Tourism/tabid/67/Default.aspx">To=
urism</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Business/TransportLogistics/tabid/254/Defa=
ult.aspx">Transport=20
    &amp; Logistics</A> </LI></UL></DIV><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI></UL>
<UL class=3Dselect>
  <LI><A=20
  =
href=3D"http://www.gurtong.net/Peoples/tabid/60/Default.aspx"><B>Peoples<=
/B><!--[if IE 7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

  <DIV class=3Dselect_sub style=3D"HEIGHT: 25px">
  <UL class=3Dsub style=3D"MARGIN-LEFT: 0px">
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Peoples/PeoplesProfiles/tabid/71/Default.a=
spx">Peoples'=20
    Profiles</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Peoples/Arts/tabid/72/Default.aspx">Arts</=
A></LI>
    <LI><A href=3D"http://www.houseofnationalities.org/">House of=20
    Nationalities</A> </LI></UL></DIV><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI></UL>
<UL class=3Dselect>
  <LI><A=20
  =
href=3D"http://www.gurtong.net/Governance/tabid/63/Default.aspx"><B>Gover=
nance</B><!--[if IE 7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

  <DIV class=3Dselect_sub style=3D"HEIGHT: 25px">
  <UL class=3Dsub style=3D"MARGIN-LEFT: 190px">
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Governance/Governments/tabid/107/Default.a=
spx">Governments</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Governance/ConstitutionLaws/tabid/106/Defa=
ult.aspx">Constitution=20
    &amp; Laws</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Governance/Parliaments/tabid/108/Default.a=
spx">Parliaments</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Governance/PoliticalParties/tabid/110/Defa=
ult.aspx">Political=20
    Parties</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Governance/ForeignRelations/tabid/62/Defau=
lt.aspx">Foreign=20
    Relations</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Governance/GoSSForeignMission/tabid/96/Def=
ault.aspx">GoSS=20
    Foreign Mission</A> </LI></UL></DIV><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI></UL>
<UL class=3Dselect>
  <LI><A=20
  =
href=3D"http://www.gurtong.net/Education/tabid/61/Default.aspx"><B>Educat=
ion</B><!--[if IE 7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

  <DIV class=3Dselect_sub style=3D"HEIGHT: 25px">
  <UL class=3Dsub style=3D"MARGIN-LEFT: 260px">
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Education/EducationSystem/tabid/88/Default=
.aspx">Education=20
    System</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Education/ListedInstitutions/tabid/90/Defa=
ult.aspx">Listed=20
    Institutions</A> </LI></UL></DIV><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI></UL>
<UL class=3Dselect>
  <LI><A=20
href=3D"http://www.gurtong.net/Health/tabid/64/Default.aspx"><B>Health</B=
><!--[if IE 7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

  <DIV class=3Dselect_sub style=3D"HEIGHT: 25px">
  <UL class=3Dsub style=3D"MARGIN-LEFT: 210px">
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Health/HealthSystem/tabid/98/Default.aspx"=
>Health=20
    System</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Health/HealthDocumentariesFeatures/tabid/1=
02/Default.aspx">Health=20
    Documentaries &amp; Features</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Health/CommonAilmentsPandemics/tabid/103/D=
efault.aspx">Common=20
    Ailments &amp; Pandemics</A> </LI></UL></DIV><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI></UL>
<UL class=3Dselect>
  <LI><A=20
href=3D"http://www.gurtong.net/Travel/tabid/66/Default.aspx"><B>Travel</B=
><!--[if IE 7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

  <DIV class=3Dselect_sub style=3D"HEIGHT: 25px">
  <UL class=3Dsub style=3D"MARGIN-LEFT: 270px">
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Travel/IntroductiontoSouthSudan/tabid/91/D=
efault.aspx">Introduction=20
    to South Sudan</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Travel/TravelRequirements/tabid/92/Default=
.aspx">Travel=20
    Requirements</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Travel/TransportCommunication/tabid/93/Def=
ault.aspx">Transport=20
    &amp; Communication</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Travel/Accommodation/tabid/94/Default.aspx=
">Accommodation</A>=20
    </LI></UL></DIV><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI></UL>
<UL class=3Dselect>
  <LI><A=20
  =
href=3D"http://www.gurtong.net/Humanitarian/tabid/65/Default.aspx"><B>Hum=
anitarian</B><!--[if IE 7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

  <DIV class=3Dselect_sub style=3D"HEIGHT: 25px">
  <UL class=3Dsub style=3D"MARGIN-LEFT: 500px">
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Humanitarian/HealthEducation/tabid/112/Def=
ault.aspx">Health=20
    &amp; Education</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Humanitarian/HumanitarianOrganizations/tab=
id/114/Default.aspx">Humanitarian=20
    Organizations</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Humanitarian/ForeignAidAssistance/tabid/97=
/Default.aspx">Foreign=20
    Aid/Assistance</A> </LI></UL></DIV><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI></UL>
<UL class=3Dselect>
  <LI><A=20
  =
href=3D"http://www.gurtong.net/ECM/Editorial/tabid/124/articleType/Archiv=
es/Default.aspx"><B>News=20
  &amp; Archives</B></A><!--[if lte IE 6]><table><tr><td><![endif]-->=20
  <DIV class=3D"select_sub show" style=3D"HEIGHT: 25px"></DIV><!--[if =
lte IE 6]></td></tr></table></a><![endif]--></LI></UL>
<UL class=3Dselect>
  <LI><A=20
  =
href=3D"http://www.gurtong.net/ResourceCenter/tabid/403/Default.aspx"><B>=
Documents</B></A><!--[if lte IE 6]><table><tr><td><![endif]-->=20

  <DIV class=3D"select_sub show" style=3D"HEIGHT: 25px"></DIV><!--[if =
lte IE 6]></td></tr></table></a><![endif]--></LI></UL>
<UL class=3Dselect>
  <LI><A=20
  =
href=3D"http://www.gurtong.net/Elections/tabid/166/Default.aspx"><B>Elect=
ions</B><!--[if IE 7]><!--></A><!--<![endif]--><!--[if lte IE =
6]><table><tr><td><![endif]-->=20

  <DIV class=3Dselect_sub style=3D"HEIGHT: 25px">
  <UL class=3Dsub style=3D"MARGIN-LEFT: 0px">
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Elections/Constituencies/tabid/392/Default=
.aspx">Constituencies</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Elections/ElectionsLaws/tabid/394/Default.=
aspx">Elections=20
    Laws</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Elections/ElectionReports/tabid/398/Defaul=
t.aspx">Election=20
    Reports</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Elections/VoterSensitization/tabid/399/Def=
ault.aspx">Voter=20
    Sensitization</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Elections/Candidatesprofiles/tabid/433/Def=
ault.aspx">Candidates=20
    profiles</A></LI>
    <LI><A=20
    =
href=3D"http://www.gurtong.net/Elections/GeographicalSeats/tabid/422/Defa=
ult.aspx">Geographical=20
    Seats</A>=20
  </LI></UL></DIV><!--[if lte IE =
6]></td></tr></table></a><![endif]--></LI></UL>
<UL class=3Dselect>
  <LI><A=20
  =
href=3D"http://www.gurtong.net/MapsofSSudan/tabid/431/Default.aspx"><B>Ma=
ps of=20
  S. Sudan</B></A><!--[if lte IE 6]><table><tr><td><![endif]-->=20
  <DIV class=3D"select_sub show" style=3D"HEIGHT: 25px"></DIV><!--[if =
lte IE 6]></td></tr></table></a><![endif]--></LI></UL>
<UL class=3Dcurrent>
  <LI><A=20
  =
href=3D"http://www.gurtong.net/ECM/Editorial/tabid/124/ID/3250/Default.as=
px#"><B></B>
  <DIV class=3D"select_sub show"=20
style=3D"HEIGHT: 25px"></DIV></A></LI></UL></DIV></DIV><!-- =
End_Module_421 --></DIV></SPAN></DIV></DIV><!-- End Header Containers =
--><!-- Main Containers -->
<DIV id=3DContentHolder>
<DIV id=3DTickerPaneContainer>
<DIV id=3Ddnn_TickerPane><A name=3D1062></A><SPAN class=3DDNNAlignleft=20
id=3Ddnn_ctr1062_ContentPane><!-- Start_Module_1062 -->
<DIV=20
id=3Ddnn_ctr1062_ModuleContent><!-- End_Module_1062 =
--></DIV></SPAN></DIV></DIV>
<DIV id=3DcontainerContent_5-3>
<DIV id=3Ddnn_ContentPane><A name=3D519></A>
<DIV class=3DGurtong_Container_Transparent id=3Ddnn_ctr519_contentpane>
<DIV class=3DContainerSelection></DIV><!-- Start_Module_519 -->
<DIV id=3Ddnn_ctr519_ModuleContent>
<DIV class=3DNewsArticles><LINK=20
href=3D"http://www.gurtong.net/DesktopModules/DnnForge%20-%20NewsArticles=
/Tracking/Pingback.ashx"=20
rel=3Dpingback><!--<rdf:RDF =
xmlns:rdf=3D"http://www.w3.org/1999/02/22-rdf-syntax-ns#" =
xmlns:dc=3D"http://purl.org/dc/elements/1.1/" =
xmlns:trackback=3D"http://madskills.com/public/xml/rss/module/trackback/"=
><rdf:Description =
rdf:about=3D"http://www.gurtong.net/ECM/Editorial/tabid/124/ID/3250/Pact-=
Sudan-holds-ECB-in-Kordofan.aspx" =
dc:identifier=3D"http://www.gurtong.net/ECM/Editorial/tabid/124/ID/3250/P=
act-Sudan-holds-ECB-in-Kordofan.aspx" dc:title=3D"Pact Sudan holds ECB =
in Kordofan" =
trackback:ping=3D"http://www.gurtong.net/DesktopModules/DnnForge%20-%20Ne=
wsArticles/Tracking/Trackback.aspx?ArticleID=3D3250&PortalID=3D0&TabID=3D=
124" /></rdf:RDF>--><!-- View.Item -->
<DIV class=3Darticle>
<DIV></DIV>
<DIV class=3DarticleHeadline>
<H1>Pact Sudan holds ECB in Kodrofan</H1></DIV>
<DIV class=3DarticleSummary>
<H4>Over 200 civil society and traditional leaders attended the Enabling =

Conditions Barometer assesment and cosultations in Kordofan.</H4></DIV>
<DIV class=3DarticleAuthor>
<DIV class=3DarticleauthorPane>02 March 2010 </DIV>
<DIV class=3DarticleratingPane></DIV></DIV>
<DIV class=3DarticleEntry>
<P style=3D"TEXT-ALIGN: justify">By Juma John Stephen</P>
<P style=3D"TEXT-ALIGN: justify">JUBA, March 1 2010 (Gurtong) =E2=80=93 =
Pact Sudan=20
conducted a Three Areas Peace Fund (TAPF) for three day networking last =
week in=20
order to get a feedback of the findings of the Enabling Conditions =
Barometer=20
(ECB) assessments and consultations.</P>
<P style=3D"TEXT-ALIGN: justify">This event attracted a total of 200 =
participants=20
from the civil society, traditional leaders and government officials =
from the=20
Three Areas.</P>
<P style=3D"TEXT-ALIGN: justify">The workshop this time took place in =
Southern=20
Kordofan and last year it was in Juba, Kauda, Kadugli, Damazin and Agok =
with=20
facilitation of Andriamoraniaina Harijaona, an expert from Pact =
Madagascar=20
Multi-Sector Information Service (MSIS).</P>
<P style=3D"TEXT-ALIGN: justify">=E2=80=9CWe designed it in such a way =
that we could get=20
feedback from you (participants) because you are the ones who know the =
situation=20
and constraints on the grounds and you are the ones that should take the =

responsibility to lead for positive change. Pact is just facilitating =
this=20
process to get this information, to take into account the findings to =
improve=20
its capacity building interventions and share it with the relevant =
partners=20
especially for areas that go beyond our mandate,=E2=80=9D Harijaona =
said.</P>
<P style=3D"TEXT-ALIGN: justify">=E2=80=9CWe tried to find criteria =
which respond best to=20
your needs and situation on the ground for each part of the Three =
Areas,=E2=80=9D he=20
added.</P>
<P style=3D"TEXT-ALIGN: justify">According to the findings, Kauda scored =
25% in=20
general score of Enabling Condition Barometer Index; the lowest of the 4 =
areas=20
assessed, with very high security risks, low institutional capacity and =
very=20
limited access to the basic services and livelihoods. On the other hand, =
Abyei=20
was next with 28%. It was identified that the area was still very far =
from being=20
stable and a lot needed to be done to improve the situation. Another =
issue=20
identified that needed immediate attention was the rule of law =
institutions.=20
Kadugli scored 36% and the main issues identified were poor basic =
services, rule=20
of law and security which scored relatively low points.</P>
<P style=3D"TEXT-ALIGN: justify">In the comparison to the other areas, =
Blue Nile=20
got the highest score in general ECBI with 47% but it was clear that a =
lot=20
needed to be done to improve the situation in all the 4 areas. Kauda and =

Kadugli; both of South Kordofan, were treated as different entities =
because=20
despite their location, they have different political and socio-cultural =

settings.</P>
<P style=3D"TEXT-ALIGN: justify">The report concluded that the general =
score of=20
the Three Areas according to the 5 criteria was 50%, an indication that =
a lot of=20
work is needed to improve the political, social and economic set up of =
these=20
three disputed areas.</P>
<P style=3D"TEXT-ALIGN: justify">Participants from each of the Three =
Areas also=20
used these days for networking amongst themselves. One of Pact=E2=80=99s =
peace building=20
strategies is bringing people of different political and religious =
backgrounds=20
to spend some time together to discuss common issues that in the long =
run will=20
bring tolerance and peaceful coexistence among them.</P>
<P style=3D"TEXT-ALIGN: justify">The ECB is a participatory tool that =
was=20
undertaken by the TAPF project to identify and measure the key criteria =
for an=20
enabling environment for peace in the Three Areas and capacity building=20
interventions in the region. With these findings, the TAPF will use this =

baseline information for following and monitoring the CPA implementation =

situation in this part of the country.</P>
<P style=3D"TEXT-ALIGN: justify"><BR>&nbsp;</P></DIV>
<DIV class=3DarticleCategories>Posted in: <A=20
href=3D"http://www.gurtong.net/ECM/Editorial/tabid/124/articleType/Catego=
ryView/categoryId/1/Home.aspx">Home</A>,=20
<A=20
href=3D"http://www.gurtong.net/ECM/Editorial/tabid/124/articleType/Catego=
ryView/categoryId/8/Humanitarian.aspx">Humanitarian</A>=20
</DIV></DIV>
<DIV class=3DarticleComments>
<DIV class=3DarticleCommentTitlePane>
<DIV class=3DarticleCommentTitle>Comments</DIV>
<DIV class=3DarticleCommentRSS><A=20
href=3D"http://www.gurtong.net/DesktopModules/DnnForge%20-%20NewsArticles=
/RssComments.aspx?TabID=3D124&amp;ModuleID=3D519&amp;ArticleID=3D3250"=20
rel=3Dnofollow><IMG=20
style=3D"BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; =
BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"=20
alt=3D"RSS comment feed"=20
src=3D"http://www.gurtong.net/DesktopModules/DnnForge%20-%20NewsArticles/=
Templates/Gurtong/Images/rssbutton.gif"></A></DIV></DIV><SPAN=20
style=3D"MARGIN-TOP: 10px">There are currently no comments, be the first =
to post=20
one.</SPAN> </DIV>
<DIV class=3DpostComment>
<DIV class=3DarticleAddCommentTitlePane>Add Comment</DIV>
<DIV class=3DNormal>
<DIV class=3DPostCommentLogin=20
onclick=3D"javascript:__doPostBack('dnn$ctr417$BX_HeaderLinks$LOGIN1$cmdL=
ogin','')"><SPAN=20
id=3Ddnn_ctr519_NewsArticles_ViewArticle_NewsArticles_62753250_96_Label1>=
Log in=20
</SPAN></DIV>
<DIV style=3D"FLOAT: left; MARGIN-LEFT: 3px"><SPAN=20
id=3Ddnn_ctr519_NewsArticles_ViewArticle_NewsArticles_62753250_96_lblRequ=
iresAccess>to=20
post a comment. If you are not a Gurtong member yet, <A=20
href=3D"http://www.gurtong.net/Register/tabid/86/Default.aspx">register=20
here</A>.</SPAN></DIV></DIV></DIV>
<DIV class=3DGAM_468_Article_Style>
<SCRIPT type=3Dtext/javascript>GA_googleFillSlot("GUR_468_124"); =
</SCRIPT>
</DIV><!-- Menu.Item -->
<DIV class=3DEditorialMenu align=3Dcenter><A class=3DMenuTopSelected=20
href=3D"http://www.gurtong.net/ECM/Editorial/tabid/124/Default.aspx">Curr=
ent=20
Articles</A> | <A class=3DMenuTop=20
href=3D"http://www.gurtong.net/ECM/Editorial/tabid/124/articleType/Archiv=
es/Default.aspx">Archives</A>=20
| <A class=3DMenuTop=20
href=3D"http://www.gurtong.net/ECM/Editorial/tabid/124/articleType/Search=
/Default.aspx">Search</A>=20
<A=20
href=3D"http://www.gurtong.net/DesktopModules/DnnForge%20-%20NewsArticles=
/Rss.aspx?TabID=3D124&amp;ModuleID=3D519&amp;MaxCount=3D25"=20
rel=3Dnofollow>| <IMG=20
style=3D"BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; =
BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"=20
alt=3D"25 Latest Articles"=20
src=3D"http://www.gurtong.net/DesktopModules/DnnForge%20-%20NewsArticles/=
Templates/Gurtong/Images/rssbutton.gif"></A>=20
</DIV></DIV><!-- End_Module_519 --></DIV></DIV><A =
name=3D1640></A></DIV></DIV><!-- Side Containers -->
<DIV id=3DContainerSidebar_5-3>
<DIV id=3Ddnn_SideBarPane><A name=3D1125></A><SPAN class=3DDNNAlignleft=20
id=3Ddnn_ctr1125_ContentPane><!-- Start_Module_1125 -->
<DIV id=3Ddnn_ctr1125_ModuleContent><SPAN class=3DNormal=20
id=3Ddnn_ctr1125_pnc.Publisher.Content_MessageHolder>
<P=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
MARGIN: 0px; PADDING-TOP: 0px">
<SCRIPT=20
src=3D"http://s7.addthis.com/js/250/addthis_widget.js?pub=3Dxa-4a8952f066=
2ccc6f"=20
type=3Dtext/javascript></SCRIPT>
</P>
<DIV style=3D"MARGIN: 0.3em 0px 1.12em; TEXT-ALIGN: center"><A=20
class=3Daddthis_button=20
href=3D"http://www.addthis.com/bookmark.php?v=3D250&amp;pub=3Dxa-4a8952f0=
662ccc6f"><IMG=20
style=3D"BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; =
BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px"=20
height=3D16 alt=3D"Bookmark and Share"=20
src=3D"http://s7.addthis.com/static/btn/lg-share-en.gif" width=3D125>=20
</A></DIV></SPAN><SPAN class=3DStatHolder=20
id=3Ddnn_ctr1125_pnc.Publisher.Content_StatHolder></SPAN><!-- =
End_Module_1125 --></DIV></SPAN><A=20
name=3D527></A><SPAN class=3DDNNAlignleft =
id=3Ddnn_ctr527_ContentPane><!-- Start_Module_527 -->
<DIV id=3Ddnn_ctr527_ModuleContent>
<DIV id=3Ddnn_ctr527_BX_GoogleAdManagerMPU_GAM_Ad_Script=20
style=3D"CLEAR: both; MARGIN: 0px auto 20px; TEXT-ALIGN: center">
<SCRIPT type=3Dtext/javascript>GA_googleFillSlot("GUR_MPU_124"); =
</SCRIPT>
</DIV><!-- End_Module_527 --></DIV></SPAN></DIV></DIV><!-- End Side =
Containers --></DIV><!-- End Main Containers --><!-- Footer Containers =
-->
<DIV id=3DContainerFooter>
<DIV id=3DFooterContent>
<DIV id=3Ddnn_FooterContentPane><A name=3D420></A><SPAN =
class=3DDNNAlignleft=20
id=3Ddnn_ctr420_ContentPane><!-- Start_Module_420 -->
<DIV id=3Ddnn_ctr420_ModuleContent><SPAN class=3DNormal=20
id=3Ddnn_ctr420_pnc.Publisher.Content_MessageHolder>
<DIV id=3DFooterContainerLinks><A=20
href=3D"http://www.gurtong.net/LinkClick.aspx?link=3D77&amp;tabid=3D250">=
Terms of=20
Use</A> | <A=20
href=3D"http://www.gurtong.net/LinkClick.aspx?link=3D78&amp;tabid=3D250">=
Privacy</A> |=20
<A=20
href=3D"http://www.gurtong.net/LinkClick.aspx?link=3D79&amp;tabid=3D250">=
Sitemap</A> |=20
<A =
href=3D"http://www.gurtong.net/LinkClick.aspx?link=3D250&amp;tabid=3D250"=
>Links</A>=20
| <A =
href=3D"http://www.gurtong.net/LinkClick.aspx?link=3D146&amp;tabid=3D250"=
>About=20
Gurtong</A> | <A=20
href=3D"http://www.gurtong.net/LinkClick.aspx?link=3D80&amp;tabid=3D250">=
Contact</A><BR>=C2=A9=20
Copyright 2010 Gurtong - All rights reserved</DIV>
<DIV id=3DFooterDesignedBy>Designed and built by <A =
href=3D"http://www.brandx.eu/"=20
target=3D_blank>Brand X</A></DIV></SPAN><SPAN class=3DStatHolder=20
id=3Ddnn_ctr420_pnc.Publisher.Content_StatHolder></SPAN><!-- =
End_Module_420 --></DIV><SPAN=20
class=3DNormal>
<SCRIPT type=3Dtext/javascript>
var gaJsHost =3D (("https:" =3D=3D document.location.protocol) ? =
"https://ssl." : "http://www.");
document.write(unescape("%3Cscript src=3D'" + gaJsHost + =
"google-analytics.com/ga.js' =
type=3D'text/javascript'%3E%3C/script%3E"));
</SCRIPT>

<SCRIPT type=3Dtext/javascript>
try {
var pageTracker =3D _gat._getTracker("UA-9402181-1");
pageTracker._trackPageview();
} catch(err) {}</SCRIPT>
</SPAN></SPAN></DIV></DIV>
<DIV id=3DFooterBottom></DIV></DIV><!-- End Footer Containers =
--></DIV><!-- End Global Container --></DIV><INPUT=20
id=3DScrollTop type=3Dhidden name=3DScrollTop> <INPUT id=3D__dnnVariable =
type=3Dhidden=20
name=3D__dnnVariable>
<SCRIPT type=3Dtext/javascript>
//<![CDATA[
Sys.Application.initialize();
//]]>
</SCRIPT>
 </FORM></BODY></HTML>

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.gurtong.net/Portals/0/GlobalResources/EN/images/logo_gurtong.gif

R0lGODlhzgCEAPcBAAAAAP/41//43v/30//2zv/43P/43f/2z//xu//zxf/0xf/1yv/45v/1yf7w
tv/xwP/31P/0xv/30v/42B9wHiiAKvHIdP/435mVGOimIP/zxP/55Z6aHIF7Yv/zw+ilHeekHOag
GiF1IlGUSP/41v/44PrtsEE9Mv/30f/0x//1yKmkNuOaF/7vsv/45//1x6KeIeioI//xvV1ZQcC2
i//55OObF//20PLpwSByICZ/KP/0xJSRF8G5k+3hp//0yeScGP/xuvXqrf/wtaGdIEE8Lv/31fjs
rpyYGv3vtP3vtf/ywL2zhqCcHv/0yJWSF+OZFempI//wuKGaef/46DaFNMK6nZOQFimBK2BcRqvG
h//445CNFOWeGfzvsv/wtCN5JP7vsyV9Jt3QnP/ywsG6meu1TVFMO/vustHGm+Tak5eTGNvTi5K6
ef/zwvzus//wtpaSFyZ+J/3vsiV8JeahG//zxtLJprGphuSdGeWgGjEtI5GOFbKsRPvhrXFsVubo
tPfYlfzvs5KPFeOaFZyXJH53WJCJanaqZSEeF4B5XeinIf/41Yq0coF8aWykWsjCae26Uv7wtR9y
HxAPC4+MFL63WSR7JSeAKczEc/PstOObFuScGZONDcrZpBEQDM7CktLLfPrssOejHPzusuWcGeSd
GPLru8K8Zf/30P3vsz88LPzvtPHlsyJ4I66ke5yTberepP3wtPTwxISzb+HTofvuseLZrumrNv7x
t4+GZf/wukSNPm5oTfDjrPvtsP/wt/3oua6oQbzRmengnC16KsnWmpCLcdbco9fgq/3ussO8XP/w
u/7vtPznufbUiS8sIPHnue7AZvjcoP/y0uLZs7eySvzutKGbf/PNf/zvtemuQaCWccnAjv/0w/3p
tqGdJ//vtvTnp+ffpvvxuqSfL/zywzCDMPrvt+WgJ9nRgHBqUOmsL+WfJ/Pwv63Jj+LXqaDCgvvw
th8dFZ69fy+ALv7uxv/z1eqvOv/z2LawUe+9XM/GboKsaV+cU7nMjiH5BAEAAAEALAAAAADOAIQA
AAj/AAMIHEiwoMGDCBMqXMiwocOHECNKnEixosWLGDNq3Mixo8ePIEOKHEmypMmTKFOqXMmypcER
WGLKnEmzps2bOHEWjMGzp8+fQIMKHUoUaEEYSJMqXcq0qdOnUJlO1AQzp9WrWGvuLMq1q1eiR6OK
HUsWKkWqWdOqtbn1q9u3RcOWnUs3akW0a/OmLRilr9+/gAMLHky4cOCCRBIrXsy4sePHjPtYmwzZ
8cWqejPHjFeFJl/DoAFLsxC6tF/ElVOrJtIHkhofB4n1abxsBYzFFzXxqsC7t+/fwIML/40lAKLf
BRcpX868uXPnGSwIlPa8uvXmqFdrV9xHnUN+5awt/wslTl1jjFqwDF/Pfj2vAG3U905+vT5zdoEE
fgvgJ5L9/8plt51qfRBTET+W5daecFW0sSBxjwTgCXIEAVgfPvsF8Ew2BPlnoXUFNSHiiCSWaOKJ
REBykRqQrFBiRo9gIuOMNNZIIy0BjGDjjjXGI2EFNNL3oXNmEJQNhwQFMuRzIZ7o5JMjsrGRGsuM
mJEWOmSp5ZZcbpkMfF2GqSUmFQAiIZcFZaDmmmy26aaa7BQUyDMGBfLmnXc2CeWeI6bIkThqqCNi
RppgIuah78Fn6KFdjiCQJ4tmmSaelK45jUPPVFqpnnzuWU5BBlpEjDBWwshol5jgCOapW2LiYwDv
oP9JkKaURnJQhgZFQmueBHXKJwfeDdRHExxYYskyFVXZhEZYyuHss9BGK4eZxukg7bXOVjFQI1k+
m+YHGYArbrjkjmuuHwZlsw9CfpTrrrnvZlAQB/TWa++9+NprDUHE0LsMMb5QBIk64qzAgUaaYHut
DogMNILC0jI8kD/RTrormx/Ymq7GB5lxcZvz5ityvk2Ao0lBK6xwkTr2bvQIxNFS6w7M0lIbgLQW
f6wmurcmFAi4OstL0MhE3xtqR2q0rBEgI4jh9NNQP93GQMNEbXXUqgZQddQFfeD112CHHTY+FIlt
ttkhF020lB8lXS9HmjxyNdSODoSIHHNbfQ5BtFj/3fXZgHtN50GBSJdQJIEDnrba+bL9ET9KcxTP
3HKcY3MA5+Rt9TsE8eL3rEF/kFA2ZI8etNADMS5yJiIJEzlHxvByCR20037Ol1TXrvvutftDUDJi
8P534mJvM7roCflBPNpDq36v4x+JgwQSb3+kCS21XzLC5cbx7j0dlvPt/fDLex2dQjwnVH7YizsP
/eP3igQIIv5oYZA733s/TEGZC0/Q+mBL30QQB0Dkpc55HADH0UKyAupVTyVtuIQEJ0hBCr6KahWc
YEFGwcEOevCDHlRIIDiGEAuA8IQfLMj0VsjCFk5vBa0giTpcuBJ3nCODOGxYQR6Bw0sUBARADKIQ
/4cYxNIhJBsgWEggiMjEIarQhVBEwr5K0sAWroQWYMiiFreoRR0SBBBc3OIPm0jGdY0uiQoJBhnJ
+MQoslBFJeEHFFdyjjCG0Yt8u4QdwVCQOvjxj4AM5B+RdMQ6MESQiAxkG90IDjWYRBzgmGNujHGy
hyBij1k8B+cOUsc99jGRoMzP6OoQjIVsA5SJXCQUhRFDkwgjirkZgSvC95B3PMIVXOTF1BDSBkzy
kSCoTKQA01WHYRrEDKMIpiIJgoFmOvOZqECJJZ5JzYsYA5euGEElH+IOT3jTE9wzSCc9CUxlBrKU
ozRmQbJhTkAWhJrPfN9IpglPZ14EEK7IJyLCuf+RXubznwB1xSfb6ceFsFOdRiJoQZkJT3CMQ5r1
fCZGjNEGY4ykHgHN6EAJatBiLsQPCjUkQ59ZiFZChA0Bm4g+IipRlzjkkhkNaEH0QNOa2vSmNMWF
QfWA0IH4AadAtek7qWlSh7ChHH2YiA/KwdKWunQhnoipRgkS1KDWoUgKyQZPP1rVoA61mWuI5kNC
UY41mEwimWhqNZ+6kBGIQKoALUgI5krXutp1rlgdXQh6KhA/3PWvdS3IGgY72IcyRBOQKARhWQcR
H6yAsJCNLGTZqpA2vBWu/5QrYAGbV3btA53J2yxgBQtZwyaEDX2I7KcgkgnJujaylEWIJ0RA29r/
2va2mhWtXTtbkWfo9q4FiYNwhSvPAJyCDfpYg3CVO9ziJgQVw42udKcbh9gepB63za5tC9KF7nr3
u+DtLm8PwtfphPe83w3ucNdQiHFkog/w7UMhqDvc1TrEB/TN73CtWxBeaPe/IuAuetE73nV2obxm
GDB61Utdwuo3Ds5FSCYenF/+DoQWAP6vgBUM3gIb6cAL4fB5C/KEEpv4xChO8RMKEZFMqPjFKLaw
QDKsYYLk4cY4zrGOb+zhgWSDE+XdsZB1TGIYG7nEcHwIG9Zw5BfLeLY0zm5Bhkxl4ynEGWa4VEKc
QWUqF7nJL04pRAoB5hTLOADFiDJuCWKKNrv5/81wdjNG/BDnOsO5IDzIs573zOc+2xciluizoPt8
ZrequbYFAYKiF83oRi+aIYREyDQcTelG43nQmNazWCWSaUyfuQ05CLWoR03qUCe60qjmqx+AnFUb
oLrSl+70oB05kUDLms9n9kSpdz3qU7+60TYQJbtYnRAL/JrSsb41ritSCGXr+cwB4LW0fX3sRRtu
2MLuGAuqzeiCXOHb4A63uMWtsoqEYhDjTje4oc0Lae+6IKWIt7znTe94s0CnFtlGvfdNb2+r+99X
4MGmKaIPgI8b2oigwCQWzvCGO7wgnIi4xCdO8Yk7wyIVz3jF/W3wdIcCIytAd8evAO13OPzkD/8n
yCZWzvKWu7zl0lCIGS7Orpfb/OUF4YPOd87znvOcC6a1yAp8TnQ+IFzhKEd5QWzA9KY7/elP76kN
eioNFkD96k/PedG3rvONrIALXO+6jBHh7ncTBOtob3o6aG6QqSPEGWlPe0EGQfe62/3ud+eIPvCO
94aEmheP0AIySDKCspt9IHFP+9oPIg22F2QbVk881OfO98rXHRwdgYTl6e53UVMgB8UYQSP+sc2N
tNvwpV665LG+eIdsY/VXLwgXZk/72tue9nwQhkfYUIjb077z0q7CI+gx+IdooQq4G4g7To96UheE
BdCPvvSnT33ot0PL6GtH9bdffdn7/vu01/3/R4Tx/YZQ4PzoT7/6KSB60reVAo34XTHWT//6P5/7
+J8+xyzAgs5WPf8A6H3g53u5FxKZ4HvmV38KeH7CR3wGoQXnF38CQQ8LWIHnd38AmIHSMA1VVyQc
CAUZGIAEMYDgpw8iQQwrUAm1l4AWWIEj0A9aYAwUeH6+4wkj0IIViIEhuIM8mIEFUQlAGIRCOIRC
yFgigQpCyII4uIRM2IIFQQhQGIVSOIVUWIVWeIVYSIU/SIRcOIRGKBJqsAZAqIRNWIZmiH4FAQVq
uIZs2IZu+IZwGIdy6IYF0Ql2eId4mId4+IUjIQyVQIZnGIhLmIZzWIiGeIhyWId6uIh5GGEf/8GH
0BaJkjiJlFiJlniJmJiJmriJnNiJnviJoBiKojiKpFiKpniKqJiKqriK0NYKeNABigCLsKgItKgI
h0ADuEgDtRARulAEvviLwBiMwgiMJ1AExXiMJ5CMyriMzNiMzviMz/gHjjCN1FiN1niN2JiN2riN
2dgBjuCN4PiN3wiNy2iMJ3AGHfAHlAAA7NiO7viO77gHRbAK66AIrwAKB5EI8LiP/NiP/viPABmQ
AjmQBFmQBnmQCAkAe5AFCeELTICLD5mLEkkDPTCRPXCRGJmRGtkDZcCRZfCRIBmSIvmRVlAGVnCS
KJmSKrmSLNmSLvmSMAmTJjmSI4kN0PgHHf+QkzrZAa+4jv4oj79Yj4pgCDTwkKx4lA1xkbiIlEzZ
lE75lFAZlVI5lVRZlVaZEnfwCVZwlVw5EFkJAFvZlVf5lWApllZJlmVpllOJlmmplg1RC7pwBsD4
B6/wEK3QA4eQk1PAEGWADTrJEDhQBsfgjdhAEDjgCMl4BoXplZ/wjmEpEdVwDFnAjGfgCHcAEdEg
mDm5mAJxBx1wAo3JjkXQAfAgEa3ADVnwi6twBtwAGxUxBllgkIrQCofwB0Xgk+14AgYRDVPwmfr4
jgcRmX8Amu+om50Zmu2YCFvJluyYCM+oEFZwAv+YCMeQEMJJnO6om9HQAb+5j5+wlw+hCLj/KZCU
wBDcMJ4DSYv9aJwE0QP+eBAdsJ7HuY8nwJz/iBA4cAYDmQiXaRDxyY8ngAfI6Y/guRC1sAcIuRDc
4I6UYAi76Avn+Y6+eAa0mAaHIJ8FcQfvaRDHIJ84MKDuaAUgCpAHgQMImpzHUAYBUA1l8Acg+gmc
ORAdmpDtSAmlqRC1MJ5ngI8B8ApF8I6J4IuGYAi6oBBM8I48OhCgMJ7rcBBpQANT8KO5iRC30ANT
oJ/umBB30Jcnyo4nYKL8+AcBQJJ48I6OMJMlmaYGAabtyJBriqXt+An9maF9KZ3wmAhZ0AFT0AMd
kAUjKqYN2aUA4KYEAacAkAiuyRDdCQCG/3AQuvCOu4gQiuCORbAQ7pmlC/GfXmqo7pgIOFAQ76ii
DWGn7EioB8GpnpoQmsqOf3ALB9EKgqqQCjGpyXkQY/COjWqe7zgGB+EL72iqBUGrommpwJmp3okN
n1oGCDqnAxGqDYEN7vgJn5oQOLCoANABqpqdCtEK6KkQ41mkp8qgDWGoe5AQUsqO5SmplEqsmKoQ
q8qOcmqYogqq7jivCrGojsAQ0Bqt2TqlCvEH75gGCPEKSIoQj+qOTKCo64oQsemOYhasC5sQl9qO
DPGu8doQzroQ+9qO1dAQ1ooHCLGq7IkQE8uONKCu7WoQR+qOuaoQuJoQwmqyKDusClGyAP9Qse8I
sg6RsQphqIngEADrjsA6ECK7EK3wjicbrilbECvbji2bEC+LEIaAtDMLAJVas8Xqrtr6EDybEAN6
Bg5RBvEYslvrsu6YtAZxruyYEE3Ljk+LEBKaEFPrjpFqEDF7tRKbtf3qpRDRtcFppg4RDfBItv5q
tu2ItgXRsBSLEG3LqAwBDe4IDQlhqOl6EHfLrourtYWLsfW6EGLrjtjqECBKuHy7EFRruQV7EASL
sAyhuOxYtwWxqEM7EJeLtUsLn2XLue1orwfxue0YuqP6jtGAu5sLt2eLEDTwjuBqEOvAoInKtlFb
EMnLulWLtySrt6QLACPLEH5rEL7LjsD/yxCkyo49QLyla7gyixCL+rP5KLQOobaUkKQDIahgC7MR
e72365+5y72dqxDfe60PMb43a77ay7+HmxALyrIGcbDo+rwKMQbjSQkJKxA+QK4Pa7f3exA2i7PF
a7r9mxD/W7/Bm78BsKrWa7wHnBCuy6iJysDsOMEOAQrWGqRqq5AXjMHteMIGscHG2sHoCwC8671j
6xDjy776m8MGnL4q/I6U4IuLSgl1GRGNu49vW72Yu7Y9fL66y45BbBCD6xCLKsIFYcJJDACIexA+
EKvwuAq8GhGw0I5nALnuuAfr0MYMEbPlaruZu7cFzLUfnBCxqrNlXJ0ErMNefLwJIcPs/yiPQDoD
MAwRvdCOsDAQtcAEsOsQMTvAeUvCBFG0fry7DBG0bdoQZeqOw1vIZXzGBLGkpUoQTCC/ErG6ADAD
GXGh7ijIGoy9BLy9HtyOuEyl8OiqC+G6sysQZNzLSlwQPhCalODAF9GdVTwR04vE9svJRLu/yAzA
rVucCxENyPkJN4rK2fzIBDG3sroRt9qOq5ARtQCPZ3DJATAF8/DFmqvFZWzEBHELwiwQtwCi4WsQ
hnoI9Wy1ZUzOA6G28FwRjXsGsMAEDv3QDw3L5rqPRVCLNWzNxozNCiHAZ7DPt9ABn7C9pey+B0HM
WUzQ44wQapsIugDRLs0EzpwQsWCQeP9q0K48kCvcxEXwBwIdAGmQjsYIoseIkwKbEDMaj9jJjswa
z3d6DEWdBscgu68K1LcpoUWQBbMpEGmgCHIZqzRsCFEsEJwKkJTA0LHAEKuAkEVgxwaRwP5ICSC7
oe/qj/9cENGgxkBavjtsrf34CT29wwKZtJnMj9br1gUJxQvBygcZvwnxCnyNrlkdAP2Yx7YckH+N
EHfNj4lQ1wSxnSMarVkQzoAdkEVd2f4oxgGQ1gg5yQqhyAeZxwicmkH5y4cwBbko2iBxpcZojB2g
10nZAXJ5jDuNB0XVEj4wAwlp00qq2gAADavw3NC9CnK8j9zglivhA5GMrtEd3eipzgn/8cboqtwC
8QrMDcfWnRKgMN290NrZ/Y5nbRDgzY4S7ahMfN4n4QO4ud4ModjtaNDdoMAOUd6abN8jMd34vBDx
/cIGUd7v3RAJPuAEDhKGzdo7S70Dkc7suM4P0bYHHuEeMd0A0OBbDADknOAa7hCyPMseLhK6nM0G
Yc4AcOIN0d4AENYr7hHvGNMI8d/tSMtM6973hZuSe+Mg8Y4UzhCGytYCMdPuqN8L4QPTzdhE/hE+
q+MFkeDRHAA07rhGGuU2PuUc0bjQoOQFEQs07uMHEQsgDgDz0AtMIOJMoAsgngjzDeYaAePsOAOv
wNbdAAszMJ5ZPhCxgNwF2QtWbucZOwEL3f2Pq9ANDsEEfw6QiWAIZI7oHuEDhvDYTOzIE8EEhjAD
270KhgALlW7pItENumAIod4LhiDeBBEQADs=

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://www.gurtong.net/Portals/0/GlobalResources/EN/images/GUR_feature_elections_register%20copy2.jpg

/9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAAQQAA/+4ADkFkb2JlAGTAAAAAAf/b
AIQABQQEBAQEBQQEBQcFBAUHCQYFBQYJCggICQgICg0KCwsLCwoNDAwMDQwMDA8PEREPDxcWFhYX
GRkZGRkZGRkZGQEGBgYKCQoTDQ0TFhEOERYZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZGRkZ
GRkZGRkZGRkZGRkZGRkZGRkZ/8AAEQgATACvAwERAAIRAQMRAf/EAKIAAAIDAAMBAAAAAAAAAAAA
AAMEBQYHAQIIAAEAAQUBAQAAAAAAAAAAAAAAAgABAwQFBgcQAAICAQMCAwYFAwIEBwAAAAECAwQF
ABESIQYxExRBUWGBIgdxoTJCFZGxI1JiwUMkFvBykrI0lDYRAAEEAQIEBQIEBAcBAAAAAAEAEQID
IRIEMUFRBWFxgRMGIjKRodFSwXIzFLHh8UJiwiND/9oADAMBAAIRAxEAPwDTW1zSykI6SZDbTIUF
9OEku+iTID6dJLtokkBtOkgPogkgNp0kFtOkgtokkJtOkh6SS+A0kkZF0xQlNwp4aElCVnv3WtzV
sBLHGSosSRwSEHY8GO7f1A21Ntw8lc2UQbAsmxaPZKVq6xjc9GkIUE+4HVmYAyV0VbnAVzxMRxV7
0uarwiSaJxRsLIGVXYFVJ29g31VmI8ldqJiWkykM1BWlsQ1Mc8EEaRKLEtgkux8Btt136eGgiR0U
1w4MQq1cFg269U2Ip5VZV89fCMnw3I/aPHU8QGdUpkuA4817GpUJshLJHE0caQxPYsTzMI4ooo/1
O7HwUaoV1GZYLlYwMjhKzxRJKY61uvfjCh/PpP50Wx/3ADw9umsrMS3HyTSixS7Kw23U/V+np4/h
oGQFGt49q2Mx+SaVSuRadI4gCGU13Mbb/PU0qjGAl1RSrIiD1UYyPyKcTyHiux3Hy1GyBktICvVg
RuOQ36bg+3RJKRtYGOpj62Qu5nGVBcrG5Vqzzsk8kYG+yqU2J9nj46sf250u4UvslncJDM4l8VLR
haVZ2v0ochF5YPRLBYKvX2/TprKzBvEIZ1mLKIdW5cOJ578eO3Xfw220AQIoxORkoWsmldjRpsqW
ZTsOLOdgOJPI/IakECQ6IQLOl8hSFOxHWjsw3Hkijm5VWLhTKu/A7gfWvgRp5R0lKUWSDRybsODb
pvzGx+nbx392mQoTo6vwZSH3/SQd+vh006YoRBBII2I6EHx30kl2UaZMmI10xQlPRJsN9RkoSsc+
8WRdoa2Lij5CSQTzSHwVUJCgfFjv/TVzajmtPYVEnV0VJwuCmyLwSQRyTyxsOEKoWUkHfrsVGpLL
tJYLfp25nlTM3b1izn62MBVpywDxQt5gV26lN9z16eGoTcdJ6qeO2eYDqw3uyLeKzC47JqsLWY1m
jSwNhyB+kN7t/joBYY4OCrEtoCcFwhWuzpqlqOc1jEZ3jQMVjEDqzAdGT6COv7hovclzQS2gfC9L
pNkK1wWsZlsfjLCwujpl2C07MbkBoZN+mzePs8PHUO0JEsN6rkKSQU/U7h7Siy2Sx2NuY/GJkMBL
WmtxP5WKXKP+pYpXCjh7jtsfx1daGogc4qdoufEI0HdeEqZHA1zm6EjxYOenFk45Fkq18kG4o0rb
fSvRtiwG/Q+GnGkGOeEUgwI8kGPP4yRezqud7xpzZOlLkVyWUpWI+KyO28QaTjtGrKQvmFdjsdj7
dEWOlynOWcp1O8cFJne37Zy2NZxi70ORnW6lmNZo/piSSaQR8yx34llHL2bjTnTrB8Ei2oHwVTs9
yTZntDt8ZTIw3u4UmuLcHKP1Cxct4+aL9SqRttuNVb5CUAeagtOqI6p3K3auS7aw1Sje7Tlavh2r
XhlZYGycEhB+mDcl42A6gePLVg5gOHBSnMBw4JuHuvtiLOY4SZWrHI3aFSlUyC2Y444LqySc4msc
ZlrS8D+p1+n5jRAx1D+VO4ceS6t3njJM5kK6ZPG4zOS4RKuK7ikuRXarW1dgWlsrFHGsrR8Ry4+z
5aTx1HqyTjV4soZO5MonbPeGBv8AedJ8+Wgs1bjWU8mzB5Y8+OCULxkZ0HDiOu/TTRkdJBOUIkdJ
D5Ure7twz9w9wx4vO4+jmbuGow4HPSzRmpFMi7WIzMOaRuy7AE+G2icaj1ZE41Hqy6/98YmK3ljH
nKE/cFXs6SCzmI3jWC3mY9mQQFuKzyAgbcR18PZsHcOTzZJw5PNkGl3p50vaOTlyeFt5sYW1Bmps
lejourebGqjz0V/IscCxXkvUctMCCQfBMCCQebKqd1Wsbb7kyEuKy8mcqbxgZCVxKWZY1UqJVCiR
U24hgOvx8dVb/uVS/wC5RarqFQpqFNCUBUnBFyG2oZFCVlP3Zw1iKsuRgUsm3p7C7b/Q5+lvkenz
1a2sgSy1e23MTDqqjjM3PRxaVYyY45g3mcBsxVTtx3+Pt0M6zqK6mrcaYAJzt6tZlyEV1L0mPBkD
xzIgYBh0HVl6/I6f6eBCKsydwWVsyxtCd8jayM2SlU7l5ADENgeuyL9I+LMdNMR9VZFkhxOOihlz
7mJ64cvjhtOEJ3jXrswB8ANzvqHQU/8AcDovQt2lVupwtRh1HsOohIhcA7LPu6O8O2MHcg7agojJ
ZWaRIxUVlhijaUgL5szAhN9weinp47a2tj2e6+HuE6YdfLoEYB4quZfvS923EDku0a0uMlfyWmpX
hIFk8eLbw9G4g7BgN/Yeh1PT2qvcP7VjzHIhkWkHmrR2plu0+7aEs+LrmKSIqlynOoWWNmBI32JD
K2x4sD12+Wsrdba3byaYZRziYo2ftdq9qY57+UCw1+XGONFDSyybbhY16cj8wB7SNR1xnM4ShGUi
qjjO+MhmA+QwXa8SVGJjgnyF+Os9hhtuI18sjp4E8iPjqwaIjBKlNQHErrgO8e1s/lnxeQxsuE7g
Mph9JbIdXmDcTGJAqf5OXTiyL7h10p0SiHBcJp1EDBVxsUMTXrSvZENeog5zSzukUajcDdnchV6n
bqdVwZE4UAcnCovc/e/Z2BpmvS8jNXCR5dSpIDEBv1Z51Dp4b7Bdzv7h11ZrpmTnCnhTInOFP4c0
s3h8dkJKS1ntQCf03LzPLDMwADbDfdQD4e3Uc3jJlHYNJYJPuPKds9s0FlywO0pPpqkCh5pSPHiC
VAUe1mO34npoq4SmcJ64SkVC089cv047lDtFGrsDLUqTZFI7s6Lv9UUfkH9W30jrv+3lqU1gHMlL
7UQeKP253D2t3ez1qsL1MpxLtjrXHm6oCzGJ1+mTiASRsrfDbQzrlDyUdlUo5CtlevFAgjhQKg8A
NQEquSnI00JKFPQR7nQEoCpJJIq4DSEADxJ1EcpmdQXd1etn8RcoV3/zyQMFBBU7kfS3UdRy21JC
Mq5AyCuCi3byjKcTEHqsYxE6SV2xNyGKOa0rV+bgBorSHiOW46CTbi3x2OrcosSurqtBiPFaJ2H9
xe6MVHDRtXAmLp7QxxeRAeJjboDvE53BH5agxqyrlUNUchWbu77j5rL4qaljL7pWmQw2EWGJQ8TK
VYFljTxB2/TopMOHFSRpHT81m15lrQVsMsEbOESGaEbcQ0/+NIgNupCOd/i3w0Wk+qhnaAwbC322
WEEhX9Wx21RC4hYZku2sZb7nmytqxZWeWwJnpJAWZpOm4WXlx4k+BPUe4+3uNl8hqp2ogYEzjFh+
3zPP059VKQSr1kPtnke4sDkLk88GLpyslqzbuB+CpGzOxRUDOzddlG3Xw8dYHY+77erfxpOqd08R
hAapEnq5jGIHEmRwM8FIKpmJlwiOZVU7GwLdsSzzyzb2LyrGlbbiwRWD+Yw5EgewdPbrqPmF23EY
01yE5guSOXgqwJkHKms9P2rlcjHj85gquTt1YkMEtqW4n0zxrOQogsRp+7ruu/TxOsKXZ93XsI7y
oRnUQTIcJRaRHqMcs+C6n49s9hu5Cm2c4XE4ZtMvVix8/Rc3MBjpZpI8fUjoY6vXjWpShLtHErgy
sFMjO/V3Y/UxOsUXmYEjzWP3SkbfczrjwjIjPglLGH7SZ4LGR7apXsk8MMk92Wa8kkkgjUciIbEa
A9P2qP69dRW9xnVLSACu17D8Xo32zjdKc4kvwZsFuinsm3q/O8mJFjmRZDXYecgDAHiRLz5Dcfu3
0ddmoCXB1xPdNqNru7KonEZEBVyXEdrzVaM2a7ax9++8UnOw3qKx4rYlVRwqTQR9APErv8fDTXb+
VMtIDrrvjPxynuO2lbOcokTMcN0ieY8VLzeiqSFcfVSjRirRenqRM7JGvH9KmVncj/zMdHGw2ASP
Ncl3jax227nVHIjJspXL0e07uVP8v2zSyVmsy1DYnnvKzJCeO20VlEXfqfpUe/x1XPc5VkxERheh
dt+F7e3a12SnN5wjLDNkP0UTlsRF6y/PVUVlqyCKnEm/GKOuBHEq77nZFUAb6vibsvM7jpsIHVSr
Y7s2hmzdi7ToevhseetoT5BH83ly5bJaVAd/coHw26ao2dznEmLDGF6Z234bt9zta7ZTmDOAJH08
x5KVljRbdmKMbIkrBF9ynqB8gdTu4deW7iv27JR/aSPwR4o99umhJVcqTrQ/DUUigKh+4pWjMMau
U5yovIfA7/8ADSjPSNXRa3Y6Rbu4A8Hf8Ei1fJtdpXC7TSRv5BgQEl1lIQKAPHx31dlcLYsu579t
42bUxAyMjzVH+4uHs4azUyFvHCKjk3ZTKrp5qzR7EEcGPE7eO/jqWqBAYrlNpVZXFpeiSwGTqVrI
upciZkO8kM5MZJ9pI9+ojSRJwtincgBirFle76uQiWIGJplb/GkHKQkn/bsB/U6Mgnij/uABhUaz
ju5MzmK38XXezHQkOTveUygpFXPN5XZyOXD4fIalgzFZ9okZR816ilZVRi36R46xlzSxDu37ipVz
tnHUK7RQUZ3r250YRWJHiYqwSTi3lLyHiv1H3jXofZexVRqFtjSnIAgEPEP4Yc+eEbFfX/vXeuUI
cahyEdRY+EkS3tiTuf8AmNE0rdNurPqCPw7b+/K54RnI8Y1xjybkwHp65UptkzOSE/2RkI8lJO8W
JarCYnme7YstNLIwHTYMgLb+0k6w+7bfabaXtxtNl37QMDzL48uKryuBlp5qfry9tlZpMnjLNnJw
kJPJXtLAWhUbRtwMMrEKo4k77D56x97urTTGEtU6o/7dTAeLMfxW52/5Ff2yB9quBJ4yI+ryfopF
LWPvGafFqYa/lrGYJpVkkjKDj9T8U3Gw35cR+WoKLozgGw3J/wDRZG53x3lsrpACUi5AXNP/ALTu
N52RpW2q041W1kkurDAViXjuqGux+rb/AFapWbiNlumMDOX8zev2lgtnt3zbd7OuO3phCQi/F+Zd
ykadhL8tq3XQxU3PGokh6rAg4pyJ268RufjrWMREADgFk73cz3F0rJ/dIuUKS521BDXr5apPcuRI
4aSpdjiRVaaR1UgQzAts25PL27bdNZ+6vr1/bqxyk38CtPtvy7c9srNVUYyiTqz1IA/guL5p32sW
MQONEwIsULyrLMgRdiH2CsdvfwGre2tjKAbHg7/osvdb+W8tN02E5lyAutbIdr2KyXr+LuWLqtxy
DQ3UiUTLtufLNeQqr+IJbrqvvIxrLmBIPPU3/Uro6fm++2dMK4xhKEQwJdd7EdfIPZtVGEeOsv5h
kkcEwhv1LIdh9Snf2fV7PHVqvcRlAS4LlJXiwmZw+T4KZhk7InjtZvJ429Xpx7yGw15QskjfpSOL
04J5HwUP89Zdd0b7dMaySTk6sDxP0/kun2Xz/fV1xorhDTACL5wBzPiofGyTWxLdnXhJZkaYoPBe
R3Cj4Dw1sTxhcvdIykSeJU1EoQcm8NREqEp2lJPafyqFaSzIP1eWpIHu3bwHzOnjROfAI4bec+AU
N3bgMtDJi575jqizYYQVy3KUiNTyY7AoAvIfu0V1Brh9XErpvj+ylC/UeQUn2PXlm7vxNYz+qaN3
dYwgQfRGx6jc6LZ5kAF0vcy1ZJWE/cClYrfcbPY+zNPKsVuZoop2ZhHHK/mRooY7KAjAav2EgFc/
EBwiwduwPGlpIwVkG0gO3iPx1W1FlcjQDlTmOxdOrDJYIClBtxXb/hpOpo1gFJ1Oze4+4JZc3iaE
z4nEpJcvZA7x10hgUvIPMbZWYqpHFdyfw1JW7HyVW3SJhzzC3y1GZYXjHiw21lArkVmOX7TzNi5L
PXFEea7O7PjqMrszHcszSQMzEnqSTuda9Xdb4RERZMAf8pfqpRKPNR3/AGj3GhBU48MOoIxWO3B/
+voz3e8hjZNv55fqlqj0U9i6HdCuVyV1JIW6MI61eEke7lFGh2+essxpBeMQD5KLTWMxiAU3m+2z
bEVqBpK9qP6oLEZKOCParDY6OFhCKM2UMK2diXy7CVrZH6ZJq8Zb8SVC7n4nQmmmRfSEBrrJdl1X
B5fKzx/ytl5YVYeVTjURxcvZ/jjAUn4kb6khogGgAPJHHTENEMp2zWnpxPWiQJIm8ckUqBgCp6qy
OCOhHgRoSAcFB5qq217uaQ+ltwQx+xRRpn/3QnTimjnCP4JxCr9o/BP42buBFKXZonDqUZkrV4mK
sNiN441PUaXtVAvGIB8kxhAFwAPRKZDCTGcXsdPJVuKNvNiJUkHxU7eKn2g9NSxmGY8EUZtgrqk2
fVVEkNOWZP0zvVi5A+/ZQF/LUJ21BP2hAa6uiJXw+TyVpLWatvaMZ/ww7BIkP+yNAqL8l1IDGAaA
ACLUIhohlca9fyh5fHjw6EHoRtqGRUJX0yy2Z4aFYbzTNx6eweJPyHXRUw1yZHTWZyAXpLtjCU8Z
g8ZXjiUGKupY7bktIObE7/E624xADBbQ+kMFl33tq+dJ2bThIimsWLmzgeAMaM399Z3cvtj5rb7N
L/0kq59lMVLH3tYlkl881qsxL7dOrKg26n/VqPt/3eit95DVZ5lbBn/tb2D3Rlv5zO4OG3lDGsT2
OcsZdU/TzEbqGK+AJ67dNasoA8VzcbZDgUk/2a+3hh8iHEtWj8dobNkf3kI1H7EOimjvbY80bGfa
P7f4viY8Mlllblvdkksgn4pKzRn/ANOnjRAckp722XNXI06gqehFeIUeAh9KEXyvLP0lOG3Hjt02
221IwZViS7rAjrmVkobaSZBc6dMk7LFYnYeIUkaIJBWPKZRZYclTNyw5ixuDkuVrG3pa9aUQiSzC
AWJkQsvLooAY+OtacQYt4BXpBw3kh3KWL/kDXqUGD1hblWOWK00durX4BHgKuGsSnl1ELBSOo22O
ozt4vgf4oDUHQLdTHU8hcXE0f5OetkMaDXeVk9NTuV0smc8GB2Vm4c2JRdvq304ojGWM5CXtAFCy
T4aY905izAPPw+UylO1CZHBnsWLPGi4AYeHKQsF2G0fXx6vOuJeXR/8AJNOES580jjZaF3BYKvdq
V4a0malp5bLL5glgjcRNEZHDcE8zdkXmvHYbjryJGEImA800YAxHmovO+mpUsdamxn8ZlZZLBs4V
pJG/6eFk8qQ8mZ183dhvy2bbddhoLKwGLMgsgAynLVDtivkadOOETPl4rWaxMPnMhkqemD0qm5bo
003NST9X08QdzqU0xdSGqLrh/RVMZmoa+EgbOnCVMhbw0hnkmqSm6EmVQJBMgSELMyseS/uPHpp/
bABxyS9sAHHJMZbH4uhWofwbW4bc01GPHZ2pHY8uc2o/8u0zOIOasfpEfEjbZuvXQTrEQCOKGVYi
zJDP5CzfzeSexG0a05Tj4RK3OZkp/wCEPM/75H47sd9VdxJ5qveXmrH9q8LWtS5LuHIGMV15UYGm
ICrxCPI252H7lG/46u7KH0kq/sYMCeaje9Pvzk8Bkzi+1cZUvY3HkVpr9ppGWd4wA3k+UygID05E
tv7tDbvtEmAW5V2/VHUXyqvkct3r9xZ6HcmUWtSqUo2FGjW5gJz/AFvzYk8n2UE+GwHTUVhleHOA
tDa1x2x8Vffs7XSvlntJI0huVJklD8RwkimTdeg/HT7AaZkJ+8/VUCOq3DWquaX2kkvtJJcN4fMf
30kl55LL79cuspCZh79OhQHYe/ThJLylWUqT0I2OiCShZMJjm8UHiSfnqTWUWopSTAY0oUK/Seui
FhS1FBbA44IEC7Ae7T+4UtRReFkVoMZ5qria0psx10VV5zEcQ8jAcnKqSq8j0Hho/dOlk5mWZLWM
dUnlaVx9TDY6YSKEErpXoVavLyx1boSdIyJTEkoK4iiFdQg/yHc/jp9ZT6iu6YeiAoC9Qd9/bptZ
TGRTlbEUo2ZkXbn46EzKEyKZuXa2OqGPlsFHQeJ1HxynqqlZICIclVnuWzJmsNQUTN/FY0GJapOw
M87NLLK6g7bncIP9qjRWzJiG4Bdtsdl7NYjL7uake3+wbGSxCSteaGHYvBXj+oAsvtB38dFCozi7
q64gWV0+3c1hsbPg7gDWaTPA0g9yn6enxB1NQWDJ7o8Cp7swHC98w1pVcyWLG8R3PDhJE6P9I6b8
uB1JUWtCg3Y1bc+C2Ox3d2vVsGpPmaSWQ3BovOQsrDxDAE8fnq+bYAsSFhw2d0g4iW8lMRSxTxrN
C6yROAySIQysD4EEdDqQF1XlEgseK76SZcN4fMf30kl5cP8AIfD89c3hZmEJv5D4fnp8JsILfyHw
/PT4SwgN/IfD89PhLCC3r/h+eiwmwgt674fnp8J8IDeu+H56fCbCE3rfhp8JYQW9b8Pz0+EsIZ9b
/wCN9PhLC4/634fnp8JsIi+t+GmwmwmU9dt7Pz0JZNhV/J+p9UvrOXk7Hbh48vZqO37Vvdh0+6er
YULd5+nf0nm+Z/zOG3Db2ct+n9dBB+XBdPazeK1n7fep9DB5/P023T38f93HVjbO3gju+0dU/hf/
ANzk/wCN/wDh+VH6j/T53w+W2+iH9Qsl/wDPKS+43quCeg871/mL5fkcufHkN9uH1bfho7HbHFRR
/JN9i/xXmU/P29RxPLfbjvt11Tgy0Z6tJZege09v4x/L29P57+n4/o4bLvx+HLl899bGzfRnquU7
n/VHXTlT+rSzlw3h8x/fSSX/2Q==

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.gurtong.net/DesktopModules/DnnForge%20-%20NewsArticles/Templates/Gurtong/Images/rssbutton.gif

R0lGODlhDAAMAOYAAPSTPf3x5uOAPu6GOu6HOvabROuDOemOQuqPQuBpLOh7N+t+MuuAOfGMPOd2
MPKPPOV2NvCLO+6FM/WWPuNvLvGKNOB7PeNyNfOPNvWVO/GxivzAg/mrXfrl2Peyde2aY/eZP/q4
dvScT/q9g/ujRv7nzuVzLvu/g/uvX/jEmuOAU+yHPvnHmvS8mP3q2fOkZt9qMPmxav7z5u6mffu6
d+FuNPq3dvO2i/SSPfuuXv3v5fCdZfaraOuAMfi5gf748uh5MOl+N/jFmvGVTdteKvGPOeZ6M/CN
QN1jK/3w5veXOO+GNPaUN/7y5viYOPqbOfOONvjk1/udOv/58////wAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5
BAAAAAAALAAAAAAMAAwAAAeNgFECQQYEEQ8AExkIgiYfKxIVGExOT1IHRkBUVEksBZVSSjgGPS9C
LlRNOaFQDQQSKTxMIVNTHFBLAxEVm000KFMBRwsMDxgFJzJUNh5UNw4KAEwxGyRNAUs6HRQQE05T
VCM+VDstVAkXIE8lPyJDVBozVCowCKxLCw4UCUhEFlEHijQYwEABhAs1/gUCADs=

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://s7.addthis.com/static/btn/lg-share-en.gif

R0lGODlhfQAQAMQfAF+25dvZ12SsPeexZ5KSkh0g/7DP4/zIBOaymvrLUviSEba1tairpurq6sPG
yBqS0+BKCqDGX/DHnsbVqPz8/PPz8/9pOvb29vr6+u/v7+zs7Ojo6MDAwAAAAP///////yH5BAEA
AB8ALAAAAAB9ABAAAAX/4PdxZGmeaKqubOu+cMyJY+DdeK7vfO//wKBwOAzMODaicslsOolGDs5C
rVKf2OZluy14vb4FY7zgBRCSCpF0s7ot2fiQ2/0WdIu8p3zj5wIQgQMbQ2weVm1VQB2MOB2Ojo03
jJIelI9MdBd2dzgEOGM3AQR+NwgQCgoIERECAkCGiIeKPpiWk5C3uLq6tlp0nDmfHhsEAQEOycNT
qQoTrK6wUrM7V7U7tpjZu71YmsGeHg0cBBfJDsU5FwsGDhLPrQzSFBTWOVT0+fr0lPmXHfwuBWTk
j+C+gwgp/Duxj4BDEhkqaBijz8ADAAACvHsWIGE+EhgwyLISsqTJkx1C2qZUybJlypUtT8qcqfLS
CZkEQnLIkCEAg5MALmZMQDQBTZMktoysoklTBy5PL0SVumVq1KtQm2rdKtWmCU0cGHC4sHNBgAWa
HqgFIIHogQFcuZCoUOGNFbp489KlhLdD371/K/gFLJiv3sOIF5rQK4VDhbJn9ToIYMBAggMHFKRB
nBciT7sWeIoeTbq06dOoU59WXIK0QwIZXjtEHWCAbdIdMuTOzZNEANUaggsfTry48ePIkytfzrw5
cSM1NkifTr269evYs2vfzr27d+/QRcgYT768+fMsRIQAADs=

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.gurtong.net/Portals/0/GlobalResources/EN/images/but_search.gif

R0lGODlhNAATAOYAAFJgL//QcP/Pa//OZ//ajf/ajP/Paf/Ziv/ZiP/Yhv/VfP/Sdf/Ued26aaOR
Sv/Xg/TQa1NhL//Wgf/Xgv/Ue//RcvfjfvLHbYR8PThGHElTJMmrWzVCGt2zXURNILyiVZuNS8yq
Vq6XTr6sWv/sl7CbTf/VdeK5Y3p2OW5sM+nBbuG7alRbKJ6MRu3EcP/khv3RePXdetu1ZvnOdWFj
Lf/dgpSGQ1BWJlRiL//RczpIHVJYJtWvWlJgLm5tNqKVSWtrMWxrM/XKcdy2aP3PcvHIcsepVv/d
ff/SdP/Rcf/bg//ojvbJbvzQd+jKb//ZfoiAQMuyWf/Ve//XeP/wlKORTbKbUPnLaejSc/nNcv/b
eOW+bP/UeqKQSDhFHP/Xe9m+XqeRSdrBYYiBQsWoWP/ad/fNdPbOeFNgLuC3Y+m/aP/RcP/WfLGh
VWtsMmtsNZ+PS0dQIq2XUPzQdf3Pbf/Td+fFadexW6iUT/vRe+jPcf/fe//VfvLFZ1NhLuS+aSH5
BAAAAAAALAAAAAA0ABMAAAf/gDg4aBGFhhE9PQCLjI2Oj5CRjQSUlZaXmJmam5gABZ+goaKjpKWm
owAHqqusra6vsLGuAAi1tre4ubq7Z28gebu2AAnExcbHyMnKfD5VD8rFABPT1DAuQw0uTU0uDUMq
MzBFKzIrLjBmRVsqLjMzKkPfMz5wW+VF1PkTAA/9/hd4NOioMucCCIEY/szYQEMHCzxChASRQwOO
kBUYNGSAwiWIDR8ON/gb+QCAhJMnJ8jIIIaEngUfaMSwgAJOFidYloyIc4FIkBttnGShMcYCiRhK
fHjAQgIFCpRQJQCgQLWqnQwt1FxgAkTEiTQiWDC5cMJKiwxkfEKpIeXDjic1/9hIWRDEwRMlG7xU
3UsBgIK/f9nUGHGDxYYLGRJ74cBBgRUWUBx42cAlRRcFdbqkCAB4jWUuUjZkAExaAQAGqFObOPLC
AYskN0YsoULlxZcdH/ZMyWAEiWUkU0qw6HMlwBo6vxkYyZC6OQMAC6JLvxOiQ4sdrWmE4NGBR4U4
LU6EyRAih+UcUyB4wFCdx5XzC5ZLn78AQIX7+EPs4HADzJ49P3jgRRwlHFGCBx784EYUWgDxgwkL
aCEGChxkYEMZDppgQhQc4OdhBQAEIOKIJJY44hprmKjiiiwGAIAAMMYo44w01mjjjTQCYMCOPPbo
449ABinkjwAMYOSRSCap5BSSTDapJACC4HCIIX4kIsmVWEoSCAA7

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: application/x-css
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.gurtong.net/DesktopModules/DnnForge - NewsArticles/Templates/Gurtong/Template.css

.EditorialMenu {
	CLEAR: both; MARGIN-TOP: 20px
}
.article {
	CLEAR: both; MARGIN-BOTTOM: 25px; TEXT-ALIGN: left
}
.articleHeadline H1 {
	MARGIN: 10px 0px
}
.articleSummary H4 {
	MARGIN: 0px 0px 10px; LINE-HEIGHT: 1.12em
}
.articleSummary H4 P {
	MARGIN: 0px 0px 10px; LINE-HEIGHT: 1.12em
}
.articleAuthor {
	FLOAT: left; MARGIN-BOTTOM: 10px; WIDTH: 100%
}
.articleauthorPane {
	FLOAT: left; COLOR: #606300
}
.articleratingPane {
	FLOAT: right
}
.articleCalendar {
	FLOAT: left; WIDTH: 42px; MARGIN-RIGHT: 6px; HEIGHT: 42px
}
.articleCalendarIcon-01 {
	BACKGROUND: url(images/01.gif)
}
.articleCalendarIcon-02 {
	BACKGROUND: url(images/02.gif)
}
.articleCalendarIcon-03 {
	BACKGROUND: url(images/03.gif)
}
.articleCalendarIcon-04 {
	BACKGROUND: url(images/04.gif)
}
.articleCalendarIcon-05 {
	BACKGROUND: url(images/05.gif)
}
.articleCalendarIcon-06 {
	BACKGROUND: url(images/06.gif)
}
.articleCalendarIcon-07 {
	BACKGROUND: url(images/07.gif)
}
.articleCalendarIcon-08 {
	BACKGROUND: url(images/08.gif)
}
.articleCalendarIcon-09 {
	BACKGROUND: url(images/09.gif)
}
.articleCalendarIcon-10 {
	BACKGROUND: url(images/10.gif)
}
.articleCalendarIcon-11 {
	BACKGROUND: url(images/11.gif)
}
.articleCalendarIcon-12 {
	BACKGROUND: url(images/12.gif)
}
.articleCalendarDay {
	FONT-WEIGHT: bold; FONT-SIZE: 17px; WIDTH: 42px; COLOR: #000; =
PADDING-TOP: 15px; FONT-FAMILY: Trebuchet =
MS,Verdana,Arial,Helvetica,sans-serif; TEXT-ALIGN: center
}
.articleEntry {
	CLEAR: both; MARGIN-BOTTOM: 20px
}
.articleImage {
	MARGIN: 0px 0px 4px
}
.articlePaging {
	MARGIN-BOTTOM: 20px
}
.articleCategories {
	MARGIN-BOTTOM: 10px; LINE-HEIGHT: 1.2em
}
.postRating {
	MARGIN: 0px 0px 20px
}
.postRatingScale INPUT {
	MARGIN-RIGHT: 4px
}
.postRatingScale LABEL {
	PADDING-RIGHT: 15px
}
.article_AddThisToolBar {
	MARGIN-BOTTOM: 20px
}
.Listing {
	CLEAR: both; MARGIN-BOTTOM: 25px; TEXT-ALIGN: left
}
.ListingHeadline A H4 {
	MARGIN: 10px 0px; CURSOR: pointer
}
.ListingAuthor {
	FLOAT: left; MARGIN-BOTTOM: 10px; WIDTH: 100%
}
.ListingAuthorPane {
	FLOAT: left
}
.ListingRatingPane {
	FLOAT: right
}
.ListingImage {
	FLOAT: left; MARGIN: 0px 10px 4px 0px
}
.ListingImageTitle {
	CLEAR: both; FONT-WEIGHT: normal; FONT-SIZE: 0.8em; MARGIN-BOTTOM: =
10px; WIDTH: 100%; COLOR: #606300; LINE-HEIGHT: normal; FONT-FAMILY: =
Arial, Helvetica, sans-serif
}
.ListingSummuryPane {
	FLOAT: left; MARGIN-BOTTOM: 10px
}
.ListingSummary {
	FLOAT: left; MARGIN-BOTTOM: 10px
}
.ListingCategories {
	MARGIN-TOP: 5px
}
.articleComments {
	MARGIN: 5px 0px 20px; WIDTH: 100%; TEXT-ALIGN: left
}
.articleCommentHeader {
	FLOAT: left; PADDING-BOTTOM: 5px; WIDTH: 100%; BORDER-BOTTOM: #d8d8d8 =
1px solid
}
.articleCommentTitlePane {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FLOAT: left; PADDING-BOTTOM: =
5px; WIDTH: 568px; PADDING-TOP: 5px; HEIGHT: 20px; BACKGROUND-COLOR: =
#bbc684
}
.articleCommentTitle {
	FONT-WEIGHT: normal; FONT-SIZE: 16px; FLOAT: left; COLOR: #606300; =
LINE-HEIGHT: normal; FONT-FAMILY: Georgia, "Times New Roman", Times, =
serif
}
.articleCommentRSS {
	FLOAT: right; PADDING-TOP: 4px
}
.articleAddCommentTitlePane {
	PADDING-RIGHT: 0px; PADDING-LEFT: 10px; FONT-WEIGHT: normal; FONT-SIZE: =
16px; PADDING-BOTTOM: 5px; COLOR: #606300; LINE-HEIGHT: normal; =
PADDING-TOP: 5px; FONT-FAMILY: Georgia, "Times New Roman", Times, serif; =
HEIGHT: 20px; BACKGROUND-COLOR: #bbc684
}
.articleComment {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; MIN-HEIGHT: 75px; =
PADDING-BOTTOM: 10px; MARGIN: 0px 0px 5px; PADDING-TOP: 10px; HEIGHT: =
auto! important; BACKGROUND-COLOR: #fafadd
}
.articleCommentDelete {
	FLOAT: right
}
.articleCommentContent {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: =
10px; MARGIN: 10px 0px 0px; PADDING-TOP: 10px; TEXT-ALIGN: left
}
.articleCommentAuthor {
	FLOAT: left
}
.articleCommentDate {
	FLOAT: left
}
.postComment {
	CLEAR: both; MARGIN-BOTTOM: 20px; WIDTH: 100%; TEXT-ALIGN: left
}
.postComment H2 {
	BORDER-RIGHT: #c8c8c8 1px dashed; BORDER-TOP: #c8c8c8 1px dashed; =
PADDING-LEFT: 5px; MARGIN-BOTTOM: 0px; BORDER-LEFT: #c8c8c8 1px dashed; =
BORDER-BOTTOM: #c8c8c8 1px dashed; BACKGROUND-COLOR: #f0f0f0
}
.postComment INPUT {
	MARGIN: 0px
}
.postComment LABEL {
	MARGIN-LEFT: 5px
}
.postComment #notify INPUT {
	WIDTH: 20px
}
.postComment TEXTAREA {
	WIDTH: 450px; HEIGHT: 150px
}
.PostCommentNotify {
	FLOAT: left
}
.PostCommentButton {
	FLOAT: right
}

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: application/x-css
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.gurtong.net/ECM/Editorial/tabid/124/ID/3250/BX_DropLineMenu.css

.BX_DropLineMenu {
	FONT-WEIGHT: normal; FONT-SIZE: 1em; Z-INDEX: 500; BACKGROUND: =
url(images/bg_topnav.gif) repeat-x; WIDTH: 983px; FONT-FAMILY: Georgia, =
"Times New Roman", Times, serif; POSITION: relative; HEIGHT: 26px
}
.BX_DropLineMenu UL A {
	FONT-WEIGHT: normal; FONT-SIZE: 1em; FONT-FAMILY: Georgia, "Times New =
Roman", Times, serif; outline: none
}
.BX_DropLineMenu UL A B {
	FONT-WEIGHT: normal; FONT-SIZE: 1em; FONT-FAMILY: Georgia, "Times New =
Roman", Times, serif; outline: none
}
.BX_DropLineMenu UL LI A {
	FONT-WEIGHT: normal; FONT-SIZE: 1em; FONT-FAMILY: Georgia, "Times New =
Roman", Times, serif; outline: none
}
.BX_DropLineMenu UL LI A B {
	FONT-WEIGHT: normal; FONT-SIZE: 1em; FONT-FAMILY: Georgia, "Times New =
Roman", Times, serif; outline: none
}
BX_DropLineMenu UL LI UL A {
	FONT-WEIGHT: normal; FONT-SIZE: 1em; FONT-FAMILY: Georgia, "Times New =
Roman", Times, serif; HEIGHT: 26px; TEXT-DECORATION: none; outline: none
}
BX_DropLineMenu UL LI UL A B {
	FONT-WEIGHT: normal; FONT-SIZE: 1em; FONT-FAMILY: Georgia, "Times New =
Roman", Times, serif; HEIGHT: 26px; TEXT-DECORATION: none; outline: none
}
.BX_DropLineMenu UL LI UL LI A {
	FONT-WEIGHT: normal; FONT-SIZE: 1em; FONT-FAMILY: Georgia, "Times New =
Roman", Times, serif; HEIGHT: 26px; TEXT-DECORATION: none; outline: none
}
.BX_DropLineMenu UL LI UL LI A B {
	FONT-WEIGHT: normal; FONT-SIZE: 1em; FONT-FAMILY: Georgia, "Times New =
Roman", Times, serif; HEIGHT: 26px; TEXT-DECORATION: none; outline: none
}
.BX_DropLineMenu .Content {
	MARGIN: 0px auto
}
.BX_DropLineMenu .select {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px; WHITE-SPACE: nowrap; LIST-STYLE-TYPE: none
}
.BX_DropLineMenu .current {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px; WHITE-SPACE: nowrap; LIST-STYLE-TYPE: none
}
.BX_DropLineMenu LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px; HEIGHT: auto
}
.BX_DropLineMenu .select A {
	PADDING-RIGHT: 8px; DISPLAY: block; PADDING-LEFT: 8px; FLOAT: left; =
PADDING-BOTTOM: 0px; COLOR: #c9cc86; LINE-HEIGHT: 26px; PADDING-TOP: =
0px; WHITE-SPACE: nowrap; HEIGHT: 26px; TEXT-DECORATION: none
}
.BX_DropLineMenu .current A B {
	PADDING-RIGHT: 8px; DISPLAY: block; PADDING-LEFT: 8px; BACKGROUND: none =
transparent scroll repeat 0% 0%; FLOAT: left; PADDING-BOTTOM: 0px; =
CURSOR: pointer; COLOR: #fff; LINE-HEIGHT: 26px; PADDING-TOP: 0px; =
WHITE-SPACE: nowrap; HEIGHT: 26px; TEXT-DECORATION: none
}
.BX_DropLineMenu .current B {
	PADDING-RIGHT: 8px; DISPLAY: block; PADDING-LEFT: 8px; BACKGROUND: none =
transparent scroll repeat 0% 0%; FLOAT: left; PADDING-BOTTOM: 0px; =
COLOR: #fff; LINE-HEIGHT: 26px; PADDING-TOP: 0px; WHITE-SPACE: nowrap; =
HEIGHT: 26px; TEXT-DECORATION: none
}
.BX_DropLineMenu .select A:hover {
	PADDING-RIGHT: 0px; PADDING-LEFT: 8px; BACKGROUND: none transparent =
scroll repeat 0% 0%; PADDING-BOTTOM: 0px; CURSOR: pointer; COLOR: #fff; =
PADDING-TOP: 0px; TEXT-DECORATION: none
}
.BX_DropLineMenu .select LI:hover A {
	PADDING-RIGHT: 0px; PADDING-LEFT: 8px; BACKGROUND: none transparent =
scroll repeat 0% 0%; PADDING-BOTTOM: 0px; CURSOR: pointer; COLOR: #fff; =
PADDING-TOP: 0px; TEXT-DECORATION: none
}
.BX_DropLineMenu .select A:hover B {
	PADDING-RIGHT: 8px; DISPLAY: block; PADDING-LEFT: 0px; BACKGROUND: none =
transparent scroll repeat 0% 0%; FLOAT: left; PADDING-BOTTOM: 0px; =
CURSOR: pointer; PADDING-TOP: 0px
}
.BX_DropLineMenu .select LI:hover A B {
	PADDING-RIGHT: 8px; DISPLAY: block; PADDING-LEFT: 0px; BACKGROUND: none =
transparent scroll repeat 0% 0%; FLOAT: left; PADDING-BOTTOM: 0px; =
CURSOR: pointer; PADDING-TOP: 0px
}
.BX_DropLineMenu .select_sub {
	DISPLAY: none
}
.BX_DropLineMenu .sub {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 0.9em; =
PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: =
none
}
.BX_DropLineMenu Content {
	FONT-SIZE: 1em; MARGIN: -1px; WIDTH: 0px; BORDER-COLLAPSE: collapse; =
HEIGHT: 0px
}
.BX_DropLineMenu .sub {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px =
auto; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
.BX_DropLineMenu .sub_active .current_sub A {
	BACKGROUND: none transparent scroll repeat 0% 0%
}
.BX_DropLineMenu .sub_active A:hover {
	BACKGROUND: none transparent scroll repeat 0% 0%
}
.BX_DropLineMenu .select :hover .select_sub {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; Z-INDEX: 100; =
BACKGROUND: url(images/bg_topnav2.gif) repeat-x 0px 0px; LEFT: 0px; =
PADDING-BOTTOM: 0px; WIDTH: 983px; PADDING-TOP: 0px; POSITION: absolute; =
TOP: 26px; TEXT-ALIGN: left
}
.BX_DropLineMenu .current .show {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; Z-INDEX: 100; =
BACKGROUND: url(images/bg_topnav2.gif) repeat-x 0px 0px; LEFT: 0px; =
PADDING-BOTTOM: 0px; WIDTH: 983px; PADDING-TOP: 0px; POSITION: absolute; =
TOP: 26px; TEXT-ALIGN: left
}
.BX_DropLineMenu .current .show {
	Z-INDEX: 10
}
.BX_DropLineMenu .select :hover .sub LI A {
	BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 10px; DISPLAY: block; =
PADDING-LEFT: 10px; BORDER-LEFT-WIDTH: 0px; BACKGROUND: none transparent =
scroll repeat 0% 0%; FLOAT: left; BORDER-BOTTOM-WIDTH: 0px; =
PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: #2b1000; LINE-HEIGHT: 2em; =
PADDING-TOP: 0px; WHITE-SPACE: nowrap; BORDER-RIGHT-WIDTH: 0px
}
.BX_DropLineMenu .current .show .sub LI A {
	BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 10px; DISPLAY: block; =
PADDING-LEFT: 10px; BORDER-LEFT-WIDTH: 0px; BACKGROUND: none transparent =
scroll repeat 0% 0%; FLOAT: left; BORDER-BOTTOM-WIDTH: 0px; =
PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: #2b1000; LINE-HEIGHT: 2em; =
PADDING-TOP: 0px; WHITE-SPACE: nowrap; BORDER-RIGHT-WIDTH: 0px
}
.BX_DropLineMenu .current .sub LI.sub_show {
	BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 10px; DISPLAY: block; =
PADDING-LEFT: 10px; BORDER-LEFT-WIDTH: 0px; BACKGROUND: =
url(images/bg_topnav3.gif) repeat-x; FLOAT: left; BORDER-BOTTOM-WIDTH: =
0px; PADDING-BOTTOM: 0px; MARGIN: 0px; CURSOR: default; COLOR: #2b1000; =
LINE-HEIGHT: 2em; PADDING-TOP: 0px; WHITE-SPACE: nowrap; =
BORDER-RIGHT-WIDTH: 0px
}
.BX_DropLineMenu .current .sub LI.sub_show:hover {
	COLOR: #2b1000
}
.BX_DropLineMenu .select :hover .sub LI A:hover {
	VISIBILITY: visible; COLOR: #624028; TEXT-DECORATION: none
}
.BX_DropLineMenu .current .sub LI A:hover {
	VISIBILITY: visible; COLOR: #624028; TEXT-DECORATION: none
}

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: application/x-css
Content-Transfer-Encoding: 7bit
Content-Location: http://www.gurtong.net/ECM/Editorial/tabid/124/ID/3250/BX_DropLineMenuIE.css

.BX_DropLineMenu UL {
	DISPLAY: inline-block
}
.BX_DropLineMenu UL {
	DISPLAY: inline
}
.BX_DropLineMenu UL LI {
	FLOAT: left
}
.BX_DropLineMenu {
	TEXT-ALIGN: center
}
.BX_DropLineMenu .select A:hover B {
	FLOAT: none
}
.BX_DropLineMenu .select LI:hover A B {
	FLOAT: none
}

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: application/x-css
Content-Transfer-Encoding: 7bit
Content-Location: http://www.gurtong.net/DesktopModules/BX_DropLineMenu/module.css

@import url( BX_DropLineMenu.css );
@import url( BX_DropLineMenuIE.css );

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: application/x-css
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.gurtong.net/DesktopModules/pnc.Publisher.Content/module.css

.pncContentTabstrip {
	PADDING-RIGHT: 0px; PADDING-LEFT: 7px; BACKGROUND: =
url(images/tab_background.gif) repeat-x 50% bottom; PADDING-BOTTOM: 0px; =
WIDTH: 95%; LINE-HEIGHT: normal; PADDING-TOP: 0px; HEIGHT: 21px
}
.pncContentTabstrip UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
.pncContentTabstrip LI {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; FLOAT: left; =
PADDING-BOTTOM: 0px; MARGIN: 0px; WIDTH: auto; PADDING-TOP: 0px
}
.pncContentTabstrip A {
	PADDING-RIGHT: 0px; PADDING-LEFT: 4px; BACKGROUND: =
url(images/left_both.gif) no-repeat left top; FLOAT: left; =
PADDING-BOTTOM: 0px; MARGIN: 0px; FONT: 11px Tahoma, Arial, Verdana, =
sans-serif; WIDTH: auto; CURSOR: default; PADDING-TOP: 0px; =
BORDER-BOTTOM: #919b9c 1px solid; TEXT-DECORATION: none
}
.pncContentTabstrip A SPAN {
	PADDING-RIGHT: 6px; DISPLAY: block; PADDING-LEFT: 2px; BACKGROUND: =
url(images/right_both.gif) right top; FLOAT: left; PADDING-BOTTOM: 2px; =
FONT: 11px Tahoma, Arial, Verdana, sans-serif; WIDTH: auto; COLOR: =
black; PADDING-TOP: 5px; TEXT-ALIGN: center; TEXT-DECORATION: none
}
.pncContentTabstrip UL LI A:visited {
	FONT: 11px Tahoma, Arial, Verdana, sans-serif; COLOR: black; =
TEXT-DECORATION: none
}
.pncContentTabstrip A SPAN {
	FLOAT: none
}
.pncContentTabstrip A:hover SPAN {
	CURSOR: default; COLOR: black; TEXT-DECORATION: none
}
.pncContentTabstrip .selected A {
	BORDER-TOP-WIDTH: 0px; BACKGROUND-POSITION: 0px -34px; =
BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; FONT: 11px Tahoma, =
Arial, Verdana, sans-serif; BORDER-RIGHT-WIDTH: 0px
}
.pncContentTabstrip .selected A:hover {
	BACKGROUND-POSITION: 0px -34px; CURSOR: default
}
.pncContentTabstrip .selected A:hover SPAN {
	BACKGROUND-POSITION: 100% -34px; CURSOR: default
}
.pncContentTabstrip .selected A SPAN {
	BACKGROUND-POSITION: 100% -34px; MARGIN-TOP: 0px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 3px
}
LI.pncOptionTab .selected {
	MARGIN-TOP: 5px
}
.pncContentTabstrip A:hover {
	BACKGROUND-POSITION: 0% -32px; CURSOR: default
}
.pncContentTabstrip A:hover SPAN {
	BACKGROUND-POSITION: 100% -32px; CURSOR: default
}
.pncTabpanel {
	BORDER-RIGHT: #919b9c 1px solid; PADDING-RIGHT: 5px; PADDING-LEFT: =
15px; FLOAT: none; PADDING-BOTTOM: 20px; MARGIN: 0px; BORDER-LEFT: =
#919b9c 1px solid; WIDTH: 95%; PADDING-TOP: 20px; BORDER-BOTTOM: #919b9c =
1px solid; BACKGROUND-COLOR: #fcfcfe
}
.pncContent_CommandButton {
	BORDER-RIGHT: #cdcdcd 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: =
#cdcdcd 1px solid; PADDING-LEFT: 4px; FONT-WEIGHT: normal; FONT-SIZE: =
11px; BACKGROUND: url(Images/linkbutton_bg.gif) repeat-x center bottom; =
FILTER: progid:DXImageTransform.Microsoft.Shadow(color=3D'#CDCDCD', =
Direction=3D135, Strength=3D2); PADDING-BOTTOM: 2px; BORDER-LEFT: =
#cdcdcd 1px solid; WIDTH: auto; COLOR: #403f3f; PADDING-TOP: 2px; =
BORDER-BOTTOM: #cdcdcd 1px solid; FONT-FAMILY: Tahoma; HEIGHT: 20px; =
TEXT-ALIGN: center
}
A.pncContent_CommandButton {
	BORDER-RIGHT: #cdcdcd 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: =
#cdcdcd 1px solid; PADDING-LEFT: 4px; FONT-WEIGHT: normal; FONT-SIZE: =
11px; BACKGROUND: url(Images/linkbutton_bg.gif) repeat-x center bottom; =
FILTER: progid:DXImageTransform.Microsoft.Shadow(color=3D'#CDCDCD', =
Direction=3D135, Strength=3D2); PADDING-BOTTOM: 2px; BORDER-LEFT: =
#cdcdcd 1px solid; WIDTH: auto; COLOR: #403f3f; PADDING-TOP: 2px; =
BORDER-BOTTOM: #cdcdcd 1px solid; FONT-FAMILY: Tahoma; HEIGHT: 20px; =
TEXT-ALIGN: center
}
A.pncContent_CommandButton:link {
	BORDER-RIGHT: #cdcdcd 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: =
#cdcdcd 1px solid; PADDING-LEFT: 4px; FONT-WEIGHT: normal; FONT-SIZE: =
11px; BACKGROUND: url(Images/linkbutton_bg.gif) repeat-x center bottom; =
FILTER: progid:DXImageTransform.Microsoft.Shadow(color=3D'#CDCDCD', =
Direction=3D135, Strength=3D2); PADDING-BOTTOM: 2px; BORDER-LEFT: =
#cdcdcd 1px solid; WIDTH: auto; COLOR: #403f3f; PADDING-TOP: 2px; =
BORDER-BOTTOM: #cdcdcd 1px solid; FONT-FAMILY: Tahoma; HEIGHT: 20px; =
TEXT-ALIGN: center
}
A.pncContent_CommandButton:visited {
	BORDER-RIGHT: #cdcdcd 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: =
#cdcdcd 1px solid; PADDING-LEFT: 4px; FONT-WEIGHT: normal; FONT-SIZE: =
11px; BACKGROUND: url(Images/linkbutton_bg.gif) repeat-x center bottom; =
FILTER: progid:DXImageTransform.Microsoft.Shadow(color=3D'#CDCDCD', =
Direction=3D135, Strength=3D2); PADDING-BOTTOM: 2px; BORDER-LEFT: =
#cdcdcd 1px solid; WIDTH: auto; COLOR: #403f3f; PADDING-TOP: 2px; =
BORDER-BOTTOM: #cdcdcd 1px solid; FONT-FAMILY: Tahoma; HEIGHT: 20px; =
TEXT-ALIGN: center
}
A.pncContent_CommandButton:active {
	BORDER-RIGHT: #cdcdcd 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: =
#cdcdcd 1px solid; PADDING-LEFT: 4px; FONT-WEIGHT: normal; FONT-SIZE: =
11px; BACKGROUND: url(Images/linkbutton_bg.gif) repeat-x center bottom; =
FILTER: progid:DXImageTransform.Microsoft.Shadow(color=3D'#CDCDCD', =
Direction=3D135, Strength=3D2); PADDING-BOTTOM: 2px; BORDER-LEFT: =
#cdcdcd 1px solid; WIDTH: auto; COLOR: #403f3f; PADDING-TOP: 2px; =
BORDER-BOTTOM: #cdcdcd 1px solid; FONT-FAMILY: Tahoma; HEIGHT: 20px; =
TEXT-ALIGN: center
}
A.pncContent_CommandButton:hover {
	BORDER-RIGHT: #232323 1px solid; BORDER-TOP: #232323 1px solid; FILTER: =
progid:DXImageTransform.Microsoft.Shadow(color=3D'#CDCDCD', =
Direction=3D135, Strength=3D2); BORDER-LEFT: #232323 1px solid; CURSOR: =
default; COLOR: #232323; BORDER-BOTTOM: #232323 1px solid; =
TEXT-DECORATION: none
}
.pncContent_Success {
	FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: green
}
.pncContent_Error {
	FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: red
}
.pncContent_IconCell {
=09
}
.pncContent_HeaderCell {
	PADDING-LEFT: 10px; PADDING-TOP: 10px
}
.pncContent_MessageCell {
	PADDING-LEFT: 10px; PADDING-BOTTOM: 5px; PADDING-TOP: 5px
}
.pncContent_StatusCell {
	PADDING-BOTTOM: 15px; PADDING-TOP: 15px
}
.pncContent_DescriptionCell {
	PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; PADDING-TOP: 10px
}
.pncContent_HeaderRow {
=09
}
.pncContent_ItemRow {
=09
}
.pncContent_ButtonPadding {
	PADDING-TOP: 2px
}

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: application/x-css
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.gurtong.net/Portals/_default/default.css

=EF=BB=BF BODY {
	MARGIN: 0px; BACKGROUND-COLOR: #fff
}
.ControlPanel {
	BORDER-RIGHT: #036 1px solid; BORDER-TOP: #036 1px solid; BORDER-LEFT: =
#036 1px solid; WIDTH: 100%; BORDER-BOTTOM: #036 1px solid; =
BACKGROUND-COLOR: #fff
}
.PagingTable {
	BORDER-RIGHT: #036 1px solid; BORDER-TOP: #036 1px solid; BORDER-LEFT: =
#036 1px solid; WIDTH: 100%; BORDER-BOTTOM: #036 1px solid; =
BACKGROUND-COLOR: #fff
}
.SkinObject {
	FONT-WEIGHT: 700; COLOR: #036; FONT-FAMILY: Tahoma,Arial,Helvetica; =
TEXT-DECORATION: none
}
.Language {
	MARGIN: 0px; VERTICAL-ALIGN: middle
}
.Language IMG {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
.SubHead {
	FONT-WEIGHT: 700; FONT-SIZE: 11px; COLOR: #036; FONT-FAMILY: =
Tahoma,Arial,Helvetica
}
.SubSubHead {
	FONT-WEIGHT: 700; FONT-SIZE: 11px; COLOR: #000; FONT-FAMILY: =
Tahoma,Arial,Helvetica
}
.Normal {
	FONT-WEIGHT: 400; FONT-FAMILY: Tahoma,Arial,Helvetica
}
.NormalDisabled {
	FONT-WEIGHT: 400; FONT-FAMILY: Tahoma,Arial,Helvetica
}
.NormalDisabled {
	COLOR: silver
}
.NormalBold {
	FONT-WEIGHT: 700; FONT-SIZE: 11px; FONT-FAMILY: Tahoma,Arial,Helvetica
}
.NormalRed {
	FONT-WEIGHT: 700; FONT-SIZE: 12px; COLOR: red; FONT-FAMILY: =
Tahoma,Arial,Helvetica
}
.DataGrid_AlternatingItem {
	FONT-WEIGHT: 400; FONT-SIZE: 10px; COLOR: red; FONT-FAMILY: =
Tahoma,Arial,Helvetica; BACKGROUND-COLOR: #fff
}
.DataGrid_Container {
	BACKGROUND-COLOR: transparent
}
.DataGrid_Footer {
	BACKGROUND-COLOR: #fff
}
.DataGrid_Header {
	FONT-WEIGHT: 700; FONT-SIZE: 10px; COLOR: #000; FONT-FAMILY: =
Tahoma,Arial,Helvetica; BACKGROUND-COLOR: transparent; TEXT-ALIGN: =
center
}
.DataGrid_Item {
	FONT-WEIGHT: 400; FONT-SIZE: 10px; COLOR: #000; FONT-FAMILY: =
Tahoma,Arial,Helvetica; BACKGROUND-COLOR: transparent
}
.DataGrid_SelectedItem {
	FONT-WEIGHT: 400; FONT-SIZE: 10px; COLOR: blue; FONT-FAMILY: =
Tahoma,Arial,Helvetica; BACKGROUND-COLOR: silver
}
.TreeMenu_NodeSelected {
	FONT-WEIGHT: 400; FONT-SIZE: 12px; FONT-FAMILY: Tahoma,Arial,Helvetica; =
BACKGROUND-COLOR: #dcdcdc
}
.FileManager {
	BORDER-RIGHT: #000 1px solid; BORDER-TOP: #000 1px solid; BORDER-LEFT: =
#000 1px solid; BORDER-BOTTOM: #000 1px solid; HEIGHT: 400px
}
.FileManager_ToolBar {
	BORDER-BOTTOM: #000 1px solid; HEIGHT: 25px
}
.FileManager_Explorer {
	BORDER-RIGHT: #696969 1px solid; BORDER-TOP: #696969 1px solid; MARGIN: =
2px; BORDER-LEFT: #696969 1px solid; BORDER-BOTTOM: #696969 1px solid; =
HEIGHT: 100%; BACKGROUND-COLOR: #fff
}
.FileManager_FileList {
	BORDER-RIGHT: #696969 1px solid; BORDER-TOP: #696969 1px solid; MARGIN: =
2px; OVERFLOW: auto; BORDER-LEFT: #696969 1px solid; BORDER-BOTTOM: =
#696969 1px solid; HEIGHT: 100%; BACKGROUND-COLOR: #fff
}
.FileManager_MessageBox {
	PADDING-RIGHT: 25px; PADDING-LEFT: 25px; PADDING-BOTTOM: 25px; =
VERTICAL-ALIGN: middle; PADDING-TOP: 25px; BACKGROUND-COLOR: #fff; =
TEXT-ALIGN: center
}
.FileManager_Header {
	FONT-WEIGHT: 700; FONT-SIZE: 11px; COLOR: #e7e7ff; BORDER-BOTTOM: =
#696969 1px solid; FONT-FAMILY: Tahoma,Arial,Helvetica; HEIGHT: 25px; =
BACKGROUND-COLOR: #9ebff6
}
.FileManager_Pager {
	BORDER-TOP: #696969 1px solid; FONT-WEIGHT: 700; FONT-SIZE: 11px; =
FONT-FAMILY: Tahoma,Arial,Helvetica; HEIGHT: 25px; BACKGROUND-COLOR: =
#eee
}
.FileManager_StatusBar {
	FONT-WEIGHT: 400; FONT-SIZE: 11px; MARGIN: 2px; FONT-FAMILY: =
Tahoma,Arial,Helvetica; HEIGHT: 25px; BACKGROUND-COLOR: #dedfde
}
.FileManager_Item {
	BORDER-TOP: #000 1px dashed; FONT-WEIGHT: 400; FONT-SIZE: 11px; COLOR: =
#000; BORDER-BOTTOM: #000 1px dashed; FONT-FAMILY: =
Tahoma,Arial,Helvetica; BACKGROUND-COLOR: #f8f8f8
}
.FileManager_AltItem {
	FONT-WEIGHT: 400; FONT-SIZE: 11px; COLOR: #000; BORDER-TOP-STYLE: none; =
FONT-FAMILY: Tahoma,Arial,Helvetica; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #eee; BORDER-BOTTOM-STYLE: =
none
}
.FileManager_SelItem {
	FONT-WEIGHT: 700; FONT-SIZE: 11px; COLOR: #fff; BORDER-TOP-STYLE: none; =
FONT-FAMILY: Tahoma,Arial,Helvetica; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BACKGROUND-COLOR: #9ff; BORDER-BOTTOM-STYLE: =
none
}
.FileManagerTreeNodeSelected {
	FONT-WEIGHT: 400; FONT-SIZE: 11px; FONT-FAMILY: Tahoma,Arial,Helvetica; =
BACKGROUND-COLOR: #dcdcdc
}
.Wizard {
	BORDER-RIGHT: #000 1px solid; BORDER-TOP: #000 1px solid; BORDER-LEFT: =
#000 1px solid; WIDTH: 650px; BORDER-BOTTOM: #000 1px solid; HEIGHT: =
400px
}
.WizardButton {
	BORDER-RIGHT: #696969 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: =
#696969 1px solid; PADDING-LEFT: 2px; PADDING-BOTTOM: 2px; BORDER-LEFT: =
#696969 1px solid; PADDING-TOP: 2px; BORDER-BOTTOM: #696969 1px solid; =
BACKGROUND-COLOR: #dcdcdc
}
.WizardHeader {
	BACKGROUND: #ffc; BORDER-BOTTOM: #000 1px solid; HEIGHT: 40px
}
.WizardFooter {
	BORDER-TOP: #000 1px solid; BACKGROUND: #cfc; HEIGHT: 25px; TEXT-ALIGN: =
right
}
.WizardBody {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; =
PADDING-TOP: 10px; HEIGHT: 325px
}
.WizardHelp {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-SIZE: 9pt; PADDING-BOTTOM: =
5px; BORDER-LEFT: #000 1px solid; WIDTH: 180px; PADDING-TOP: 5px; =
BACKGROUND-COLOR: #cff
}
.WizardHelpText {
	FONT-SIZE: 8pt; OVERFLOW: auto; WIDTH: 180px; COLOR: #000; FONT-FAMILY: =
Tahoma,Verdana,Arial,Sans-Serif; HEIGHT: 300px
}
.WizardText {
	FONT-SIZE: 9pt; COLOR: #000; FONT-FAMILY: =
Tahoma,Verdana,Arial,Sans-Serif
}
.Help {
	BORDER-RIGHT: #000 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: #000 1px =
solid; PADDING-LEFT: 2px; FONT-WEIGHT: 400; FONT-SIZE: 11px; =
PADDING-BOTTOM: 2px; BORDER-LEFT: #000 1px solid; COLOR: #000; =
PADDING-TOP: 2px; BORDER-BOTTOM: #000 1px solid; FONT-FAMILY: =
Tahoma,Arial,Helvetica; BACKGROUND-COLOR: #ff9
}
.StandardButton {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-WEIGHT: 400; FONT-SIZE: =
11px; BACKGROUND: #ddd; COLOR: #000; FONT-FAMILY: Verdana,sans-serif
}
.ModuleTitle_MenuContainer {
	BORDER-RIGHT: blue 0px solid; BORDER-TOP: blue 0px solid; BORDER-LEFT: =
blue 0px solid; BORDER-BOTTOM: blue 0px solid
}
.MainMenu_MenuContainer {
	BACKGROUND-COLOR: transparent
}
.HeadBg {
	BACKGROUND-COLOR: #ccc
}
.TabBg {
	BACKGROUND-COLOR: #000
}
.PagingTable {
	HEIGHT: 33px
}
.LabelEditTextClass {
	BORDER-RIGHT: red 1px solid; BORDER-TOP: red 1px solid; BORDER-LEFT: =
red 1px solid; BORDER-BOTTOM: red 1px solid; BACKGROUND-COLOR: =
transparent
}
.LabelEditWorkClass {
	BORDER-RIGHT: red 0px solid; BORDER-TOP: red 0px solid; BORDER-LEFT: =
red 0px solid; BORDER-BOTTOM: red 0px solid; BACKGROUND-COLOR: =
transparent
}
.SuggestTextMenu {
	BORDER-RIGHT: #000 1px solid; BORDER-TOP: #000 1px solid; BACKGROUND: =
#fff; BORDER-LEFT: #000 1px solid; BORDER-BOTTOM: #000 1px solid; =
WHITE-SPACE: nowrap
}
.SuggestNodeOver {
	COLOR: #fff; BACKGROUND-COLOR: navy
}
.eipbackimg {
	BORDER-RIGHT: 1px outset; BORDER-TOP: 1px outset; MARGIN-TOP: -22px; =
BACKGROUND: url(../../images/eip_toolbar.gif) #9cc; BORDER-LEFT: 1px =
outset; BORDER-BOTTOM: 1px outset; WHITE-SPACE: nowrap; POSITION: =
absolute; HEIGHT: 22px
}
.eipbuttonbackimg {
	DISPLAY: inline-block; WIDTH: 21px; CURSOR: pointer; HEIGHT: 21px
}
.eipbutton_edit {
	BACKGROUND: url(../../images/eip_edit.gif) no-repeat 100% center
}
.eipbutton_save {
	BACKGROUND: url(../../images/eip_save.gif) no-repeat 100% center
}
.eipborderhover {
	BORDER-RIGHT: 1px outset; BORDER-TOP: 1px outset; BORDER-LEFT: 1px =
outset; BORDER-BOTTOM: 1px outset
}
.DNNEmptyPane {
	WIDTH: 0px
}
.DNNAlignleft {
	TEXT-ALIGN: left
}
.DNNAlignright {
	TEXT-ALIGN: right
}
.DNNAligncenter {
	TEXT-ALIGN: center
}
.LoginTab {
	BORDER-RIGHT: #25569a 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: =
#25569a 1px solid; PADDING-LEFT: 5px; FLOAT: left; PADDING-BOTTOM: 4px; =
MARGIN: 0px 3px 3px 0px; BORDER-LEFT: #25569a 1px solid; COLOR: #fff; =
PADDING-TOP: 5px; BORDER-BOTTOM: #25569a 1px solid; TEXT-DECORATION: =
none
}
.LoginTabSelected {
	BORDER-RIGHT: #25569a 1px solid; PADDING-RIGHT: 5px; =
BACKGROUND-POSITION: 0px -41px; BORDER-TOP: #25569a 1px solid; =
PADDING-LEFT: 5px; FLOAT: left; PADDING-BOTTOM: 4px; MARGIN: 0px 3px 3px =
0px; BORDER-LEFT: #25569a 1px solid; COLOR: #fff; PADDING-TOP: 5px; =
BORDER-BOTTOM: #25569a 1px solid; TEXT-DECORATION: none
}
.LoginTabHover {
	BORDER-RIGHT: #c00 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #c00 1px =
solid; PADDING-LEFT: 5px; FLOAT: left; PADDING-BOTTOM: 4px; MARGIN: 0px =
3px 3px 0px; BORDER-LEFT: #c00 1px solid; CURSOR: pointer; COLOR: #555; =
PADDING-TOP: 5px; BORDER-BOTTOM: #c00 1px solid; TEXT-DECORATION: none
}
.LoginContainerGroup {
	CLEAR: both; PADDING-TOP: 5px
}
#tablist {
	BORDER-RIGHT: #000 1px solid; FLOAT: left; PADDING-BOTTOM: 10px; =
MARGIN: 0px; WIDTH: 120px
}
.dashboardPanel {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; =
MARGIN-LEFT: 120px; PADDING-TOP: 0px
}
.dashboardPanel TABLE TD {
	PADDING-RIGHT: 4px; PADDING-LEFT: 4px; PADDING-BOTTOM: 2px; =
PADDING-TOP: 2px
}
.dashboardPanel TABLE TH {
	PADDING-RIGHT: 4px; PADDING-LEFT: 4px; FONT-WEIGHT: 700; FONT-SIZE: =
1em; PADDING-BOTTOM: 2px; COLOR: #036; PADDING-TOP: 2px; BORDER-BOTTOM: =
#9fb1bc 1px solid
}
.dashboardTableAlt {
	BACKGROUND-COLOR: #eee
}
.dashboardGrid {
	MARGIN: 10px
}
A.SkinObject:link {
	COLOR: #036; TEXT-DECORATION: none
}
A.SkinObject:visited {
	COLOR: #036; TEXT-DECORATION: none
}
A.SkinObject:hover {
	COLOR: #036; TEXT-DECORATION: none
}
A.SkinObject:active {
	COLOR: #036; TEXT-DECORATION: none
}
A.TreeMenu_Node:link {
	COLOR: #036; TEXT-DECORATION: none
}
A.TreeMenu_NodeSelected:link {
	COLOR: #036; TEXT-DECORATION: none
}
A.TreeMenu_Node:visited {
	COLOR: #036; TEXT-DECORATION: none
}
A.TreeMenu_NodeSelected:visited {
	COLOR: #036; TEXT-DECORATION: none
}
A.TreeMenu_Node:active {
	COLOR: #036; TEXT-DECORATION: none
}
A.TreeMenu_NodeSelected:active {
	COLOR: #036; TEXT-DECORATION: none
}
A.FileManagerTreeNode:link {
	COLOR: #036; TEXT-DECORATION: none
}
A.FileManagerTreeNodeSelected:link {
	COLOR: #036; TEXT-DECORATION: none
}
A.FileManagerTreeNode:visited {
	COLOR: #036; TEXT-DECORATION: none
}
A.FileManagerTreeNodeSelected:visited {
	COLOR: #036; TEXT-DECORATION: none
}
A.FileManagerTreeNode:active {
	COLOR: #036; TEXT-DECORATION: none
}
A.FileManagerTreeNodeSelected:active {
	COLOR: #036; TEXT-DECORATION: none
}
.NormalTextBox {
	FONT-WEIGHT: 400; FONT-SIZE: 12px; FONT-FAMILY: Tahoma,Arial,Helvetica
}
.TreeMenu_Node {
	FONT-WEIGHT: 400; FONT-SIZE: 12px; FONT-FAMILY: Tahoma,Arial,Helvetica
}
A.TreeMenu_Node:hover {
	COLOR: red; TEXT-DECORATION: none
}
A.TreeMenu_NodeSelected:hover {
	COLOR: red; TEXT-DECORATION: none
}
A.FileManagerTreeNode:hover {
	COLOR: red; TEXT-DECORATION: none
}
A.FileManagerTreeNodeSelected:hover {
	COLOR: red; TEXT-DECORATION: none
}
.FileManagerTreeNode {
	FONT-WEIGHT: 400; FONT-SIZE: 11px; FONT-FAMILY: Tahoma,Arial,Helvetica
}
.CommandButton {
	FONT-WEIGHT: 400; FONT-SIZE: 11px; FONT-FAMILY: Tahoma,Arial,Helvetica
}
.ModuleTitle_MenuBar {
	CURSOR: pointer; HEIGHT: 16px; BACKGROUND-COLOR: transparent
}
.MainMenu_MenuBar {
	CURSOR: pointer; HEIGHT: 16px; BACKGROUND-COLOR: transparent
}
.ModuleTitle_MenuItem {
	BORDER-RIGHT: #fff 0px solid; BORDER-TOP: #fff 1px solid; FONT-WEIGHT: =
700; FONT-SIZE: 9pt; BORDER-LEFT: #fff 0px solid; CURSOR: pointer; =
COLOR: #000; BORDER-BOTTOM: #fff 1px solid; FONT-STYLE: normal; =
FONT-FAMILY: Tahoma,Arial,Helvetica; BACKGROUND-COLOR: transparent
}
.MainMenu_MenuItem {
	BORDER-RIGHT: #fff 0px solid; BORDER-TOP: #fff 1px solid; FONT-WEIGHT: =
700; FONT-SIZE: 9pt; BORDER-LEFT: #fff 0px solid; CURSOR: pointer; =
COLOR: #000; BORDER-BOTTOM: #fff 1px solid; FONT-STYLE: normal; =
FONT-FAMILY: Tahoma,Arial,Helvetica; BACKGROUND-COLOR: transparent
}
.ModuleTitle_MenuIcon {
	BORDER-TOP: #eee 1px solid; BORDER-LEFT: #eee 1px solid; WIDTH: 15px; =
CURSOR: pointer; BORDER-BOTTOM: #eee 1px solid; HEIGHT: 21px; =
BACKGROUND-COLOR: #eee; TEXT-ALIGN: center
}
.MainMenu_MenuIcon {
	BORDER-TOP: #eee 1px solid; BORDER-LEFT: #eee 1px solid; WIDTH: 15px; =
CURSOR: pointer; BORDER-BOTTOM: #eee 1px solid; HEIGHT: 21px; =
BACKGROUND-COLOR: #eee; TEXT-ALIGN: center
}
.ModuleTitle_SubMenu {
	BORDER-RIGHT: #fff 0px solid; BORDER-TOP: #fff 0px solid; Z-INDEX: =
1000; BORDER-LEFT: #fff 0px solid; CURSOR: pointer; BORDER-BOTTOM: #fff =
0px solid; BACKGROUND-COLOR: #fff
}
.MainMenu_SubMenu {
	BORDER-RIGHT: #fff 0px solid; BORDER-TOP: #fff 0px solid; Z-INDEX: =
1000; BORDER-LEFT: #fff 0px solid; CURSOR: pointer; BORDER-BOTTOM: #fff =
0px solid; BACKGROUND-COLOR: #fff
}
.ModuleTitle_MenuBreak {
	BORDER-RIGHT: #eee 0px solid; BORDER-TOP: #eee 1px solid; BORDER-LEFT: =
#eee 0px solid; BORDER-BOTTOM: #eee 1px solid; HEIGHT: 1px; =
BACKGROUND-COLOR: #eee
}
.MainMenu_MenuBreak {
	BORDER-RIGHT: #eee 0px solid; BORDER-TOP: #eee 1px solid; BORDER-LEFT: =
#eee 0px solid; BORDER-BOTTOM: #eee 1px solid; HEIGHT: 1px; =
BACKGROUND-COLOR: #eee
}
.ModuleTitle_MenuItemSel {
	FONT-WEIGHT: 700; FONT-SIZE: 9pt; CURSOR: pointer; COLOR: #000; =
FONT-STYLE: normal; FONT-FAMILY: Tahoma,Arial,Helvetica; =
BACKGROUND-COLOR: #c1d2ee
}
.MainMenu_MenuItemSel {
	FONT-WEIGHT: 700; FONT-SIZE: 9pt; CURSOR: pointer; COLOR: #000; =
FONT-STYLE: normal; FONT-FAMILY: Tahoma,Arial,Helvetica; =
BACKGROUND-COLOR: #c1d2ee
}
.ModuleTitle_MenuArrow {
	BORDER-RIGHT: #fff 1px solid; BORDER-TOP: #fff 0px solid; FONT-SIZE: =
10pt; CURSOR: pointer; BORDER-BOTTOM: #fff 1px solid; FONT-FAMILY: =
webdings
}
.MainMenu_MenuArrow {
	BORDER-RIGHT: #fff 1px solid; BORDER-TOP: #fff 0px solid; FONT-SIZE: =
10pt; CURSOR: pointer; BORDER-BOTTOM: #fff 1px solid; FONT-FAMILY: =
webdings
}
.ModuleTitle_RootMenuArrow {
	FONT-SIZE: 10pt; CURSOR: pointer; FONT-FAMILY: webdings
}
.MainMenu_RootMenuArrow {
	FONT-SIZE: 10pt; CURSOR: pointer; FONT-FAMILY: webdings
}
.SelectedTab {
	FONT-WEIGHT: 700; FONT-SIZE: 8.5pt; COLOR: #fff; FONT-FAMILY: =
Tahoma,Arial,Helvetica; TEXT-DECORATION: none
}
.OtherTabs {
	FONT-WEIGHT: 700; FONT-SIZE: 8.5pt; COLOR: #fff; FONT-FAMILY: =
Tahoma,Arial,Helvetica; TEXT-DECORATION: none
}
A.SelectedTab:link {
	COLOR: #fff; TEXT-DECORATION: none
}
A.OtherTabs:link {
	COLOR: #fff; TEXT-DECORATION: none
}
A.SelectedTab:visited {
	COLOR: #eee; TEXT-DECORATION: none
}
A.SelectedTab:active {
	COLOR: #eee; TEXT-DECORATION: none
}
A.OtherTabs:visited {
	COLOR: #eee; TEXT-DECORATION: none
}
A.OtherTabs:active {
	COLOR: #eee; TEXT-DECORATION: none
}
A.SelectedTab:hover {
	COLOR: #ccc; TEXT-DECORATION: none
}
A.OtherTabs:hover {
	COLOR: #ccc; TEXT-DECORATION: none
}

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: application/x-css
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.gurtong.net/ECM/Editorial/tabid/124/layout.css

* {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px; outline: none; resize: none
}
BODY {
	BACKGROUND: =
url(http://www.gurtong.net/Portals/0/GlobalResources/EN/images/bg_body.gi=
f) #ffecc9 fixed repeat-x; TEXT-ALIGN: center
}
#Wrap {
	BACKGROUND: #fff; MARGIN: 0px auto; WIDTH: 983px; TEXT-ALIGN: left
}
#topBanner {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
5px; WIDTH: 100%; PADDING-TOP: 5px; TEXT-ALIGN: center
}
.ContainerBanner {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
10px; WIDTH: 100%; PADDING-TOP: 10px; TEXT-ALIGN: center
}
.GAM_LB_style {
	TEXT-ALIGN: center
}
.GAM_468_style {
	MARGIN: 20px 0px; TEXT-ALIGN: center
}
.GAM_468_Article_Style {
	PADDING-BOTTOM: 20px; TEXT-ALIGN: center
}
#topArea {
	BACKGROUND: =
url(http://www.gurtong.net/Portals/0/GlobalResources/EN/images/bg_header.=
jpg) no-repeat; FLOAT: left; WIDTH: 100%; HEIGHT: 137px
}
.Search {
	FLOAT: right; WIDTH: 250px; MARGIN-RIGHT: 15px; HEIGHT: 25px
}
.SearchTextBox {
	BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 5px; =
BORDER-LEFT-WIDTH: 0px; BACKGROUND: =
url(http://www.gurtong.net/Portals/0/GlobalResources/EN/images/bg_search.=
gif) no-repeat; FLOAT: right; BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: =
0px; WIDTH: 135px; PADDING-TOP: 0px; HEIGHT: 19px; BORDER-RIGHT-WIDTH: =
0px
}
.SearchTextBox2 {
	BORDER-RIGHT: #637038 1px solid; PADDING-RIGHT: 3px; BORDER-TOP: =
#637038 1px solid; PADDING-LEFT: 3px; PADDING-BOTTOM: 0px; MARGIN-LEFT: =
20px; BORDER-LEFT: #637038 1px solid; WIDTH: 250px; PADDING-TOP: 0px; =
BORDER-BOTTOM: #637038 1px solid; HEIGHT: 18px
}
.SearchContainer {
	MARGIN-BOTTOM: 20px
}
.SearchButton {
	FLOAT: right
}
.TopLinks {
	FLOAT: right; MARGIN: 0px 15px 0px 0px; WIDTH: 320px; LINE-HEIGHT: =
normal
}
.LoginLink {
	PADDING-LEFT: 20px; FLOAT: right; MARGIN: 0px
}
.TopLink {
	PADDING-LEFT: 20px; FLOAT: right; MARGIN: 0px; TEXT-ALIGN: right
}
#TopNav {
	FLOAT: left; WIDTH: 100%; HEIGHT: 51px
}
#TopNavPane {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#Logo {
	CLEAR: right; FLOAT: left; MARGIN: 0px 0px 0px 173px
}
#HeaderContainer {
	FLOAT: right; MARGIN: 17px 0px 0px; WIDTH: 350px; HEIGHT: 120px
}
.HeaderContentPaneStyle {
	FLOAT: right; HEIGHT: 25px
}
.FeatureNewsPaneStyle {
	CLEAR: both; FLOAT: right; MARGIN: 19px 0px 0px; WIDTH: 179px; HEIGHT: =
76px
}
#DateTimeContainer {
	FLOAT: left; MARGIN: 115px 0px 0px 15px; WIDTH: 200px; HEIGHT: 20px
}
#ContentHolder {
	MIN-HEIGHT: 400px; BACKGROUND: =
url(http://www.gurtong.net/Portals/0/GlobalResources/EN/images/bg_content=
.gif) repeat-y; FLOAT: left; WIDTH: 983px
}
#TickerPaneContainer {
	HEIGHT: 25px
}
#containerContent_3-2-3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
25px; MARGIN: 0px 0px 0px 15px; WIDTH: 590px; PADDING-TOP: 0px
}
#ContainerhomeTop_3-2-3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 1em; MARGIN: 0px =
0px 1em; PADDING-TOP: 0px
}
#ContainerHomeLeft_3-2-3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 1em; MARGIN: 0px =
0px 1em; PADDING-TOP: 0px
}
#ContainerHomeCenter_3-2-3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 1em; MARGIN: 0px =
0px 1em; PADDING-TOP: 0px
}
#ContainerHomeTop_3-2-3 {
	FLOAT: left; WIDTH: 590px
}
#ContainerHomeCenter_3-2-3 {
	FLOAT: right; MARGIN: 0px 0px 0px 15px; WIDTH: 226px
}
#ContainerHomeLeft_3-2-3 {
	FLOAT: left; WIDTH: 348px
}
#ContainerHomeMiddle {
	CLEAR: both
}
#ContainerHomeCenter2_3-2-3 {
	FLOAT: right; MARGIN: 0px 0px 0px 15px; WIDTH: 226px
}
#ContainerHomeLeft2_3-2-3 {
	FLOAT: left; WIDTH: 348px
}
#containerContent_2-3-3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
25px; MARGIN: 0px 0px 0px 15px; WIDTH: 590px; PADDING-TOP: 0px
}
#ContainerHomeLeft_2-3-3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 1em; MARGIN: 0px =
0px 1em; PADDING-TOP: 0px
}
#ContainerHomeCenter_2-3-3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 1em; MARGIN: 0px =
0px 1em; PADDING-TOP: 0px
}
#ContainerHomeCenter_2-3-3 {
	FLOAT: right; MARGIN: 0px 0px 0px 15px; WIDTH: 348px
}
#ContainerHomeLeft_2-3-3 {
	FLOAT: left; WIDTH: 226px
}
#containerContent_2-4-2 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
25px; MARGIN: 0px 0px 0px 15px; WIDTH: 711px; PADDING-TOP: 0px
}
#ContainerHomeLeft_2-4-2 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 1em; MARGIN: 0px =
0px 1em; PADDING-TOP: 0px
}
#ContainerHomeCenter_2-4-2 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 1em; MARGIN: 0px =
0px 1em; PADDING-TOP: 0px
}
#ContainerHomeCenter_2-4-2 {
	FLOAT: right; MARGIN: 0px 0px 0px 15px; WIDTH: 469px
}
#ContainerHomeLeft_2-4-2 {
	FLOAT: left; WIDTH: 226px
}
#containerContent_5-3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
25px; MARGIN: 0px 15px; WIDTH: 590px; PADDING-TOP: 0px
}
#containerContent_6-2 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
25px; MARGIN: 0px 15px; WIDTH: 710px; PADDING-TOP: 0px
}
#containerContent_8 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
25px; MARGIN: 0px 15px; WIDTH: 953px; PADDING-TOP: 0px
}
#ContainerSidebar_3-2-3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
25px; MARGIN: 0px 15px 0px 0px; WIDTH: 348px; PADDING-TOP: 0px
}
#ContainerSidebar_2-3-3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
25px; MARGIN: 0px 15px 0px 0px; WIDTH: 348px; PADDING-TOP: 0px
}
#ContainerSidebar_2-4-2 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
25px; MARGIN: 0px 15px 0px 0px; WIDTH: 227px; PADDING-TOP: 0px
}
#ContainerSidebar_5-3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
25px; MARGIN: 0px 15px 0px 0px; WIDTH: 348px; PADDING-TOP: 0px
}
#ContainerSidebar_6-2 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
25px; MARGIN: 0px 15px 0px 0px; WIDTH: 227px; PADDING-TOP: 0px
}
.BarBox {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: =
url(http://www.gurtong.net/Portals/0/GlobalResources/EN/images/bg_sidebar=
Box.gif) repeat-x left bottom; FLOAT: left; MARGIN-BOTTOM: 20px; =
PADDING-BOTTOM: 4px; WIDTH: 100%; PADDING-TOP: 0px
}
.BarBoxTitleContainer {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: =
url(http://www.gurtong.net/Portals/0/GlobalResources/EN/images/bg_sidebar=
H2.gif) #966e29 repeat-x; FLOAT: left; PADDING-BOTTOM: 4px; WIDTH: 100%; =
PADDING-TOP: 4px; BORDER-BOTTOM: #866324 1px solid
}
.BarBoxTitle {
	PADDING-RIGHT: 0.15em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0.15em; =
PADDING-TOP: 0.15em
}
.BarBox2 {
	CLEAR: both; FLOAT: left; MARGIN-BOTTOM: 20px; WIDTH: 709px
}
.BarBox2TitleContainer {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: =
url(http://www.gurtong.net/Portals/0/GlobalResources/EN/images/bg_sidebar=
H2.gif) #966e29 repeat-x; FLOAT: left; PADDING-BOTTOM: 4px; WIDTH: 100%; =
PADDING-TOP: 4px; BORDER-BOTTOM: #866324 1px solid
}
.BarBox2Title {
	PADDING-RIGHT: 0.15em; PADDING-LEFT: 0.5em; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
.BarBoxBreadCrumbs {
	PADDING-LEFT: 15px; FLOAT: right
}
.BarBoxLinks {
	PADDING-RIGHT: 15px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
VERTICAL-ALIGN: middle; PADDING-TOP: 5px
}
.BarBox2Links {
	MARGIN-TOP: 5px; VERTICAL-ALIGN: middle
}
.containerParticipate {
	WIDTH: 100%
}
UL.participate {
	FLOAT: left; MARGIN: 0px
}
UL.participate LI {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; BACKGROUND: =
url(http://www.gurtong.net/Portals/0/GlobalResources/EN/images/GenericSid=
eBarBK_L.gif) repeat-x; FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: auto; =
VERTICAL-ALIGN: middle; WIDTH: 68px; PADDING-TOP: 0px; HEIGHT: 68px; =
TEXT-ALIGN: center
}
UL.participate LI A {
	DISPLAY: block; FONT-WEIGHT: normal; FONT-SIZE: 1em; BACKGROUND: none =
transparent scroll repeat 0% 0%; WIDTH: 68px; CURSOR: pointer; =
LINE-HEIGHT: normal; PADDING-TOP: 25px; FONT-FAMILY: Georgia,"Times New =
Roman",Times,serif; HEIGHT: 68px; TEXT-DECORATION: none; outline: none
}
UL.participatemedia LI {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; BACKGROUND: =
url(http://www.gurtong.net/Portals/0/GlobalResources/EN/images/bg_partici=
pateMedia.gif) repeat-x; FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: auto; =
VERTICAL-ALIGN: middle; WIDTH: 76px; PADDING-TOP: 0px; HEIGHT: 68px; =
TEXT-ALIGN: center
}
UL.participatemedia LI A {
	DISPLAY: block; FONT-WEIGHT: normal; FONT-SIZE: 1em; BACKGROUND: none =
transparent scroll repeat 0% 0%; WIDTH: 76px; CURSOR: pointer; =
LINE-HEIGHT: normal; PADDING-TOP: 3px; FONT-FAMILY: Georgia,"Times New =
Roman",Times,serif; HEIGHT: 68px; TEXT-DECORATION: none; outline: none
}
UL.participate LI.forum {
	BACKGROUND-POSITION: 0px 0px
}
UL.participate LI.blog {
	BACKGROUND-POSITION: 0px 0px
}
UL.participate LI.analysis {
	BACKGROUND-POSITION: 0px 0px
}
UL.participate LI.events {
	BACKGROUND-POSITION: 0px 0px
}
UL.participate LI.media {
	BACKGROUND-POSITION: 0px 0px
}
UL.participate LI.forum:hover {
	BACKGROUND-POSITION: 0px -68px
}
UL.participate LI.blog:hover {
	BACKGROUND-POSITION: 0px -68px
}
UL.participate LI.analysis:hover {
	BACKGROUND-POSITION: 0px -68px
}
UL.participate LI.events:hover {
	BACKGROUND-POSITION: 0px -68px
}
UL.participatemedia LI.media {
	BACKGROUND-POSITION: 0px 0px
}
UL.participatemedia LI.media:hover {
	BACKGROUND-POSITION: 0px -68px
}
.SideBar_ItemContainer {
	WIDTH: 100%
}
.SideBar_ItemContainer UL {
	MARGIN: 0px; VERTICAL-ALIGN: middle
}
UL.SideBar_Item {
	FLOAT: left
}
UL.SideBar_Item LI {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; BACKGROUND: =
url(http://www.gurtong.net/Portals/0/GlobalResources/EN/images/GenericSid=
eBarBK.gif) no-repeat; PADDING-BOTTOM: 0px; MARGIN: auto; WIDTH: 227px; =
PADDING-TOP: 0px; HEIGHT: 68px; TEXT-ALIGN: center
}
UL.SideBar_Item LI A {
	DISPLAY: block; FONT-WEIGHT: normal; FONT-SIZE: 1em; BACKGROUND: none =
transparent scroll repeat 0% 0%; WIDTH: 227px; LINE-HEIGHT: 1.3em; =
PADDING-TOP: 18px; FONT-FAMILY: Georgia,"Times New Roman",Times,serif; =
HEIGHT: 68px; TEXT-DECORATION: none; outline: none
}
UL.SideBar_Item LI.Submit {
	BACKGROUND-POSITION: 0px 0px; WIDTH: 100%
}
UL.SideBar_Item LI.Submit:hover {
	BACKGROUND-POSITION: 0px -68px
}
.BtnLink_Container_1 {
	MARGIN: 10px 0px; WIDTH: 100%
}
UL.BtnLink_1 {
	MARGIN: 0px 20px 0px 0px
}
UL.BtnLink_1 LI {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; BACKGROUND: =
url(http://www.gurtong.net/Portals/0/GlobalResources/EN/images/GenericSid=
eBarBK_L.gif) repeat-x; PADDING-BOTTOM: 0px; MARGIN: auto; =
VERTICAL-ALIGN: middle; LINE-HEIGHT: 3em; PADDING-TOP: 0px; HEIGHT: =
40px; TEXT-ALIGN: center
}
UL.BtnLink_1 LI A {
	DISPLAY: block; BACKGROUND: none transparent scroll repeat 0% 0%; =
WIDTH: 175px; COLOR: #773900; FONT-FAMILY: Georgia,"Times New =
Roman",Times,serif; HEIGHT: 40px; outline: none
}
UL.BtnLink_1 LI.Submit {
	BACKGROUND-POSITION: 0px 0px; WIDTH: 100%; CURSOR: pointer
}
UL.BtnLink_1 LI.Submit:hover {
	BACKGROUND-POSITION: 0px -68px
}
UL.BtnLink_1 LI.Submit A:hover {
	COLOR: #9e3219; TEXT-DECORATION: none
}
#ContainerFooter {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: =
url(http://www.gurtong.net/Portals/0/GlobalResources/EN/images/bg_footer.=
gif) #395531 repeat-x; FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 0px 0px =
30px; WIDTH: 100%; PADDING-TOP: 7px; TEXT-ALIGN: center
}
#FooterLinks {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px =
auto; PADDING-TOP: 0px
}
#FooterCopyrights {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px =
auto; PADDING-TOP: 0px
}
#FooterDesignedBy {
	FLOAT: right; WIDTH: 100%; TEXT-ALIGN: right
}
#dnn_FooterContentPane {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px; HEIGHT: 30px
}
#FooterContainerLinks {
	MARGIN: 0px auto; TEXT-ALIGN: center
}
#FooterDesignedBy {
	PADDING-RIGHT: 5px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
0px; MARGIN: -1.5em 0px 5px; WIDTH: 200px; PADDING-TOP: 0px; TEXT-ALIGN: =
right
}
#FooterBottom {
	CLEAR: left; BACKGROUND: =
url(http://www.gurtong.net/Portals/0/GlobalResources/EN/images/bg_footerB=
ottom.gif) no-repeat; WIDTH: 100%; HEIGHT: 4px; TEXT-ALIGN: center
}
.Form_MainContainer {
	WIDTH: 100%; LINE-HEIGHT: normal; BACKGROUND-COLOR: #eaebb6
}
.Form_TopTableCell {
	PADDING-RIGHT: 20px; PADDING-LEFT: 20px; PADDING-BOTTOM: 10px; WIDTH: =
100%; PADDING-TOP: 10px
}
.Form_TableOneCell {
	PADDING-RIGHT: 20px; PADDING-LEFT: 20px; PADDING-BOTTOM: 20px; WIDTH: =
100%; PADDING-TOP: 0px
}
.Form_TableLeftCell {
	PADDING-RIGHT: 0px; PADDING-LEFT: 20px; PADDING-BOTTOM: 10px; =
VERTICAL-ALIGN: top; WIDTH: 40%; PADDING-TOP: 0px
}
.Form_TableCenterCell {
	PADDING-RIGHT: 4px; PADDING-LEFT: 0px; PADDING-BOTTOM: 3px; WIDTH: 6%; =
PADDING-TOP: 0px
}
.Form_TableRightCell {
	PADDING-RIGHT: 20px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; WIDTH: =
64%; PADDING-TOP: 0px
}
.Form_TableBottomRightCell {
	PADDING-RIGHT: 20px; PADDING-LEFT: 0px; PADDING-BOTTOM: 20px; =
PADDING-TOP: 20px
}
.Form_TableBottomLeftCell {
	PADDING-RIGHT: 0px; PADDING-LEFT: 20px; PADDING-BOTTOM: 20px; =
PADDING-TOP: 20px
}
.Form_PhoneTableCell {
	PADDING-LEFT: 5px
}
.Form_ReadOnlyField {
	PADDING-RIGHT: 20px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; WIDTH: =
64%; PADDING-TOP: 0px
}
.Form_TextBoxStandard {
	PADDING-LEFT: 3px; WIDTH: 281px
}
.Form_CountryDropDownListStandard {
	WIDTH: 288px
}
.Form_PhoneCodeDropDownListStandard {
	WIDTH: 181px
}
.Form_PhoneTextBoxStandard {
	PADDING-LEFT: 3px; WIDTH: 95px
}
.Form_TextBoxMultiLine {
	PADDING-LEFT: 3px; WIDTH: 282px; BACKGROUND-COLOR: #fff; resize: none
}
.Form_CheckBox {
	TEXT-ALIGN: right
}
.Form_Tooltip {
	CURSOR: pointer
}
.Form_watermarkextender_standard {
	PADDING-LEFT: 3px; WIDTH: 281px
}
.Form_watermarkextender_error {
	PADDING-LEFT: 3px; WIDTH: 281px; HEIGHT: 15px
}
.PagingTable {
	BORDER-RIGHT: #b6be8d 1px solid; BORDER-TOP: #b6be8d 1px solid; =
BACKGROUND: #d9e2a8 0px 0px; BORDER-LEFT: #b6be8d 1px solid; WIDTH: =
100%; COLOR: #53593b; BORDER-BOTTOM: #b6be8d 1px solid; HEIGHT: 20px
}
.PagingTable TD {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; MARGIN: =
3px 0px; PADDING-TOP: 0px
}
.MessageTable {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
.Editorial_TextBoxStandard {
	BORDER-RIGHT: #647039 1px solid; BORDER-TOP: #647039 1px solid; =
PADDING-LEFT: 3px; BORDER-LEFT: #647039 1px solid; WIDTH: 250px; =
BORDER-BOTTOM: #647039 1px solid
}
.archives .DNN_SectionHead_Standard {
	BACKGROUND-COLOR: #fff
}
.Organize_Categories {
	PADDING-LEFT: 5px
}
.SiteMap_Sections1 {
	FLOAT: left; MARGIN-LEFT: 50px
}
.SiteMap_Sections2 {
	FLOAT: left; MARGIN-LEFT: 50px
}
.SiteMap_Level1 {
	CLEAR: left; MARGIN-TOP: 15px
}
.SiteMap_Level1 H3 {
	CLEAR: left; MARGIN-TOP: 3px; CURSOR: pointer
}
.SiteMap_Level2 {
	CLEAR: left; PADDING-LEFT: 25px; LINE-HEIGHT: 1.2em
}
.Ticker_Container {
	MARGIN: 3px 0px 0px; VERTICAL-ALIGN: top
}
.Ticker_LatestNews {
	PADDING-RIGHT: 15px; PADDING-LEFT: 15px; BACKGROUND: #d22228; =
PADDING-BOTTOM: 2px; FONT: bold 11px Arial; COLOR: #fff; PADDING-TOP: =
2px
}
.Ticker_NewsFlash {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: #fbfade; =
PADDING-BOTTOM: 2px; WIDTH: 859px; LINE-HEIGHT: normal; PADDING-TOP: 1px
}
.Ticker_NewsFlash A {
	FONT: bold 11px Arial; COLOR: #000
}
DIV.MainContainerTopStory {
	FLOAT: left; WIDTH: 100%; BORDER-BOTTOM: #bab981 1px solid
}
#TopNews_ArticleTitlePane H1 {
	MARGIN: 0px 0px 10px
}
.articleSummary H4 {
	MARGIN: 0px 0px 5px; LINE-HEIGHT: 1.12em
}
.articleSummary H4 P {
	MARGIN: 0px 0px 5px; LINE-HEIGHT: 1.12em
}
#TopNews_ArticleSummary H4 {
	MARGIN: 0px 0px 5px; LINE-HEIGHT: 1.12em
}
.TN_ArticleSummary {
	FLOAT: left; WIDTH: 100%
}
.TopNews_ArticleInfoContainer {
	FLOAT: left; PADDING-BOTTOM: 10px; WIDTH: 100%
}
.TopNews_ArticleauthorPane {
	FLOAT: left
}
.TopNews_ArticleImage {
	MARGIN-BOTTOM: 4px
}
.ArticleRating {
	FLOAT: right
}
.TopNews_ArticleImagePane {
	CLEAR: both; WIDTH: 100%
}
#TopNews_RelatedItems LI {
	MARGIN: 0.5em 0px 0.5em 1.2em; COLOR: #606300; LIST-STYLE-TYPE: square
}
#TopNews_RelatedItems LI SPAN {
	COLOR: #000
}
DIV.MainContainerNonTopStory {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; MARGIN-BOTTOM: =
20px; PADDING-BOTTOM: 10px; WIDTH: 100%; PADDING-TOP: 0px; =
BORDER-BOTTOM: #bab981 1px solid
}
.NoneTopNews_ArticleTitlePane {
	FLOAT: left; MARGIN-BOTTOM: 5px; WIDTH: 100%
}
.NoneTopNews_ArticleImage {
	MARGIN-BOTTOM: 4px
}
.NTN_ArticleSummary {
	FLOAT: left; MARGIN-BOTTOM: 10px; WIDTH: 100%; LINE-HEIGHT: 1.4em
}
.NTN_ArticleSummary P {
	FLOAT: left; MARGIN: 0px
}
.NoneTopNews_ArticleInfoContainer {
	FLOAT: left; WIDTH: 100%; LINE-HEIGHT: normal
}
.NoneTopNews_ArticlePublishedDate {
	FLOAT: left
}
.NoneTopNews_ArticleCommentsCount {
	FLOAT: left
}
.NoneTopNews_ArticleLink {
	FLOAT: left
}
.NoneTopNews_ArticleRating {
	FLOAT: right
}
.NTN_ArticleRating {
	FLOAT: right
}
#NoneTopNews_RelatedItems {
	CLEAR: both
}
#NoneTopNews_RelatedItems LI {
	MARGIN: 0.5em 0px 0.5em 1.2em; COLOR: #606300; LIST-STYLE-TYPE: square
}
#NoneTopNews_RelatedItems LI SPAN {
	COLOR: #000
}
.News_OtherInCat_ArticleInfoContainer {
	CLEAR: both; FLOAT: left; WIDTH: 100%; BORDER-BOTTOM: #bab981 1px solid
}
.News_OtherInCat_ArticleauthorPane {
	DISPLAY: block
}
.News_OtherInCat_ArticleImagePane {
	MARGIN-BOTTOM: 10px
}
DIV.MainContainerOtherStory {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; MARGIN-BOTTOM: =
20px; PADDING-BOTTOM: 10px; WIDTH: 100%; PADDING-TOP: 0px; =
BORDER-BOTTOM: #bab981 1px solid
}
.OtherNews_ArticleTitlePane {
	FLOAT: left; MARGIN-BOTTOM: 5px; WIDTH: 100%
}
.OtherNews_ArticleImage {
	MARGIN-BOTTOM: 4px
}
.OtherNews_ArticleInfoContainer {
	FLOAT: left; WIDTH: 100%; LINE-HEIGHT: normal
}
.OtherNews_ArticlePublishedDate {
	FLOAT: left
}
.OtherNews_ArticleCommentsCount {
	FLOAT: left
}
.OtherNews_ArticleLink {
	FLOAT: left
}
.OTN_ArticleSummary {
	FLOAT: left; MARGIN-BOTTOM: 10px; WIDTH: 100%; LINE-HEIGHT: 1.4em
}
.OTN_ArticleSummary P {
	FLOAT: left; MARGIN: 0px
}
.BX_ArticleListing_Container {
	MARGIN-BOTTOM: 20px
}
.BX_ArticleListing_ArticleContainer {
	CLEAR: both; MARGIN: 0px 0px 5px; WIDTH: 100%
}
.BX_ArticleListing_ArticleContainer H4 {
	MARGIN: 0px 0px 5px
}
.BX_ArticleListing_Articles {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: =
5px; WIDTH: 100%; PADDING-TOP: 5px; BORDER-BOTTOM: #bab981 1px solid
}
.BX_ArticleListing_ArticleCategory {
	FLOAT: left
}
.BX_ArticleListing_ArticleLink {
	FLOAT: left
}
.RadioPane {
	BACKGROUND: #fafadd
}
.RadioContainer {
	BACKGROUND: #fafadd; WIDTH: 338px
}
.RadioTitle {
	PADDING-RIGHT: 0px; PADDING-LEFT: 10px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 20px
}
.RadioPlayer {
	PADDING-RIGHT: 0px; PADDING-LEFT: 10px; PADDING-BOTTOM: 20px; =
PADDING-TOP: 0px
}
.DNNLabel {
	LINE-HEIGHT: normal
}
.DNN_SectionHead_Standard {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 5px; BACKGROUND-COLOR: #bbc684
}
.UpcomingEventTitle H4 {
	MARGIN-TOP: 0px
}
.upcomingEventPane {
	PADDING-TOP: 15px
}
.upcomingEventPane DL {
	MARGIN: 0px 0px 1em; BORDER-BOTTOM: #bab981 1px solid
}
.upcomingEventPane DL P {
	MARGIN: 0px
}
.UpcomingEvents_UpcomingEventTitle H4 {
	MARGIN-TOP: 0px
}
.upcomingEventPane DT {
	MARGIN: 0px 0px 0.25em
}
.upcomingEventPane DD {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 1em; MARGIN: =
0px; PADDING-TOP: 0px; FONT-FAMILY: arial,sans-serif
}
.upcomingEventPane P.eventDate {
	MARGIN: 0px 0px 1em; TEXT-ALIGN: left
}

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: application/x-css
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.gurtong.net/ECM/Editorial/tabid/124/typography.css

* {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
BODY {
	FONT-SIZE: 100%; COLOR: #000
}
BODY {
	LINE-HEIGHT: 1.4em; FONT-FAMILY: Arial,Helvetica,sans-serif
}
.Normal {
	LINE-HEIGHT: 1.4em; FONT-FAMILY: Arial,Helvetica,sans-serif
}
#Wrap {
	FONT-SIZE: 0.75em
}
.Normal {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; LINE-HEIGHT: 1.2em; PADDING-TOP: 0px
}
H1 {
	FONT-WEIGHT: normal; FONT-FAMILY: Georgia,"Times New Roman",Times,serif
}
H2 {
	FONT-WEIGHT: normal; FONT-FAMILY: Georgia,"Times New Roman",Times,serif
}
H3 {
	FONT-WEIGHT: normal; FONT-FAMILY: Georgia,"Times New Roman",Times,serif
}
H1 {
	FONT-SIZE: 2em; MARGIN-BOTTOM: 20px; TEXT-TRANSFORM: capitalize; COLOR: =
#523b00; LINE-HEIGHT: 1em
}
H2 {
	FONT-SIZE: 1.5em; COLOR: #523b00; LINE-HEIGHT: 1.2em
}
H3 {
	FONT-SIZE: 1.17em; COLOR: #523b00; LINE-HEIGHT: 1em
}
H4 {
	FONT-WEIGHT: normal; FONT-SIZE: 1.4em; FLOAT: left; MARGIN: 6px 0px =
12px; WIDTH: 100%; COLOR: #606300; LINE-HEIGHT: 1.12em; FONT-FAMILY: =
Georgia,"Times New Roman",Times,serif
}
H5 {
	FONT-SIZE: 1em; COLOR: #523b00; LINE-HEIGHT: 1em
}
H6 {
	FONT-WEIGHT: normal; FONT-SIZE: 1em; MARGIN: 6px 0px 12px; COLOR: =
#606300; LINE-HEIGHT: 1.4em; FONT-FAMILY: Arial,Helvetica,sans-serif
}
TR {
	LINE-HEIGHT: 1.4em
}
TD {
	LINE-HEIGHT: 1.4em
}
TABLE {
	LINE-HEIGHT: 1.4em
}
P {
	MARGIN: 0.3em 0px 1.12em; LINE-HEIGHT: 1.4em; TEXT-ALIGN: left
}
A {
	COLOR: #442108; TEXT-DECORATION: none
}
A:link {
	COLOR: #442108; TEXT-DECORATION: none
}
A:visited {
	COLOR: #442108; TEXT-DECORATION: none
}
A:active {
	COLOR: #442108; TEXT-DECORATION: none
}
CommandButton {
	COLOR: #442108; TEXT-DECORATION: none
}
CommandButton:link {
	COLOR: #442108; TEXT-DECORATION: none
}
CommandButton:visited {
	COLOR: #442108; TEXT-DECORATION: none
}
CommandButton:active {
	COLOR: #442108; TEXT-DECORATION: none
}
A:hover {
	COLOR: #6c5231; TEXT-DECORATION: underline
}
CommandButton:hover {
	COLOR: #6c5231; TEXT-DECORATION: underline
}
UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px =
0px 0px 15px; PADDING-TOP: 0px
}
UL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 0px
}
OL {
	PADDING-LEFT: 15px; MARGIN: 0px 0px 0px 15px
}
OL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 0px
}
.GUR_BodyTextLink {
	FONT-SIZE: 12px; COLOR: #442108; FONT-FAMILY: Arial; TEXT-ALIGN: =
justify
}
.GUR_BodyTextLink:link {
	FONT-SIZE: 12px; COLOR: #442108; FONT-FAMILY: Arial; TEXT-ALIGN: =
justify
}
.GUR_BodyTextLink:active {
	FONT-SIZE: 12px; COLOR: #442108; FONT-FAMILY: Arial; TEXT-ALIGN: =
justify
}
.GUR_BodyTextLink:visited {
	FONT-SIZE: 12px; COLOR: #442108; FONT-FAMILY: Arial; TEXT-ALIGN: =
justify
}
.GUR_BodyTextLink:hover {
	COLOR: #6c5231; TEXT-DECORATION: underline
}
.Link_White {
	COLOR: #fafadd
}
.Link_White:link {
	COLOR: #fafadd
}
.Link_White:visited {
	COLOR: #fafadd
}
.Link_White:active {
	COLOR: #fafadd
}
.Link_White:hover {
	COLOR: #fff
}
.Link_White A {
	COLOR: #fafadd
}
.Link_White A:link {
	COLOR: #fafadd
}
.Link_White A:visited {
	COLOR: #fafadd
}
.Link_White A:active {
	COLOR: #fafadd
}
.Link_White A:hover {
	COLOR: #fff
}
.TopLinks {
	FONT-SIZE: 0.91em; COLOR: #2d341d; FONT-FAMILY: =
Arial,Helvetica,sans-serif; TEXT-DECORATION: none
}
.LoginLink {
	FONT-SIZE: 0.91em; COLOR: #2d341d; FONT-FAMILY: =
Arial,Helvetica,sans-serif; TEXT-DECORATION: none
}
.LoginLink:link {
	FONT-SIZE: 0.91em; COLOR: #2d341d; FONT-FAMILY: =
Arial,Helvetica,sans-serif; TEXT-DECORATION: none
}
.LoginLink:visited {
	FONT-SIZE: 0.91em; COLOR: #2d341d; FONT-FAMILY: =
Arial,Helvetica,sans-serif; TEXT-DECORATION: none
}
.LoginLink:active {
	FONT-SIZE: 0.91em; COLOR: #2d341d; FONT-FAMILY: =
Arial,Helvetica,sans-serif; TEXT-DECORATION: none
}
.TopLinks A {
	FONT-SIZE: 0.91em; COLOR: #2d341d; FONT-FAMILY: =
Arial,Helvetica,sans-serif; TEXT-DECORATION: none
}
.LoginLink A {
	FONT-SIZE: 0.91em; COLOR: #2d341d; FONT-FAMILY: =
Arial,Helvetica,sans-serif; TEXT-DECORATION: none
}
.LoginLink A:link {
	FONT-SIZE: 0.91em; COLOR: #2d341d; FONT-FAMILY: =
Arial,Helvetica,sans-serif; TEXT-DECORATION: none
}
.LoginLink A:visited {
	FONT-SIZE: 0.91em; COLOR: #2d341d; FONT-FAMILY: =
Arial,Helvetica,sans-serif; TEXT-DECORATION: none
}
.LoginLink A:active {
	FONT-SIZE: 0.91em; COLOR: #2d341d; FONT-FAMILY: =
Arial,Helvetica,sans-serif; TEXT-DECORATION: none
}
.LoginLink:hover {
	COLOR: #000
}
.TopLinks A:hover {
	COLOR: #000
}
.DateTime {
	FONT-SIZE: 0.91em; COLOR: #fffde0; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
.SearchTextBox {
	FONT-SIZE: 1em; COLOR: #2d341d; LINE-HEIGHT: 1.4em
}
.Ven_Section_SubTitle {
	FONT-WEIGHT: normal; FONT-SIZE: 1em; COLOR: #000; LINE-HEIGHT: 1.12em; =
FONT-FAMILY: Arial,Helvetica,sans-serif
}
.Ven_Search_Container {
	WIDTH: 227px; BACKGROUND-COLOR: #fafadd
}
.Editorial_TextBoxStandard {
	FONT-SIZE: 12px; LINE-HEIGHT: 1.2em; FONT-FAMILY: arial
}
.EditorialArchivesTitle {
	FONT-SIZE: 1.75em; COLOR: #606300; LINE-HEIGHT: 1.12em
}
UL.related {
	LIST-STYLE-POSITION: inside; FONT-SIZE: 0.91em
}
.homeTop H1 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 2.5em; =
PADDING-BOTTOM: 6px; PADDING-TOP: 0px
}
.homeTop .intro {
	COLOR: #fff
}
.homeTop P {
	MARGIN-BOTTOM: 0px
}
.homeLeft H2 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 2em; PADDING-BOTTOM: =
6px; PADDING-TOP: 0px
}
.homeLeft P {
	MARGIN-BOTTOM: 0px
}
.homeCenter H3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 1.67em; =
PADDING-BOTTOM: 6px; PADDING-TOP: 0px
}
.homeCenter P {
	MARGIN-BOTTOM: 0px
}
#author {
	FONT-SIZE: 0.83em; WIDTH: 100%
}
.inset {
	LINE-HEIGHT: 1.5em
}
.inset {
	FONT-SIZE: 0.91em; LINE-HEIGHT: 1.5em
}
.relatedQuote {
	FONT-SIZE: 1.16em; FONT-STYLE: italic; FONT-FAMILY: Georgia,"Times New =
Roman",Times,serif; TEXT-ALIGN: center; quotes: none
}
.BarBoxTitle {
	FONT-SIZE: 1.67em; COLOR: #fff; BORDER-BOTTOM: #866324 1px solid; =
FONT-FAMILY: Georgia,"Times New Roman",Times,serif
}
.BarBox2Title {
	FONT-SIZE: 1.67em; COLOR: #fff; BORDER-BOTTOM: #866324 1px solid; =
FONT-FAMILY: Georgia,"Times New Roman",Times,serif
}
#LeftSideBar H3 {
	FONT-WEIGHT: normal; FONT-SIZE: 1.67em; MARGIN: 9px 0px; COLOR: =
#523b00; FONT-FAMILY: Georgia,"Times New Roman",Times,serif
}
#LeftSideBar H4 {
	FONT-WEIGHT: bold; FONT-SIZE: 1em; MARGIN: 9px 0px 0px; COLOR: #8c8c00; =
FONT-FAMILY: Arial,Helvetica,sans-serif
}
#LeftSideBar HR {
	BACKGROUND: =
url(http://www.gurtong.net/Portals/0/GlobalResources/EN/images/bg_hr.gif)=
 repeat-x; MARGIN: 9px 0px; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: =
none; BORDER-LEFT-STYLE: none; HEIGHT: 3px; BORDER-BOTTOM-STYLE: none
}
#LeftSideBar UL {
	MARGIN: 0px 0px 10px 20px
}
#LeftSideBar UL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 0px
}
#containerFooter {
	FONT-SIZE: 0.9em
}
#FooterContainerLinks {
	FONT-SIZE: 0.91em; COLOR: #939651; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
#FooterDesignedBy {
	FONT-SIZE: 0.91em; COLOR: #939651; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
#FooterContainerLinks A {
	COLOR: #d2d58c; TEXT-DECORATION: none
}
#FooterContainerLinks A:link {
	COLOR: #d2d58c; TEXT-DECORATION: none
}
#FooterContainerLinks A:visited {
	COLOR: #d2d58c; TEXT-DECORATION: none
}
#FooterContainerLinks A:active {
	COLOR: #d2d58c; TEXT-DECORATION: none
}
#FooterDesignedBy A {
	COLOR: #d2d58c; TEXT-DECORATION: none
}
#FooterDesignedBy A:link {
	COLOR: #d2d58c; TEXT-DECORATION: none
}
#FooterDesignedBy A:visited {
	COLOR: #d2d58c; TEXT-DECORATION: none
}
#FooterDesignedBy A:active {
	COLOR: #d2d58c; TEXT-DECORATION: none
}
#FooterContainerLinks A:hover {
	COLOR: #fffde0
}
#FooterDesignedBy A:hover {
	COLOR: #fffde0
}
.Form_Title {
	FONT-WEIGHT: normal; FONT-SIZE: 2.5em; TEXT-TRANSFORM: capitalize; =
LINE-HEIGHT: 1em; FONT-FAMILY: Georgia,"Times New Roman",Times,serif
}
.Form_SectionHeader {
	FONT-SIZE: 12px; COLOR: #666; FONT-FAMILY: Arial; TEXT-ALIGN: justify
}
.Form_SubHeader {
	FONT-WEIGHT: normal; FONT-SIZE: 16px; COLOR: #606300; LINE-HEIGHT: =
normal; FONT-FAMILY: Georgia,"Times New Roman",Times,serif; =
BACKGROUND-COLOR: #bbc684; TEXT-ALIGN: left
}
.Form_BodyText {
	FONT-SIZE: 12px; COLOR: #666; FONT-FAMILY: Arial
}
.Form_TableCenterCell {
	TEXT-ALIGN: right
}
.Form_TableRightCell {
	TEXT-ALIGN: right
}
.Form_ReadOnlyField {
	TEXT-ALIGN: left
}
.Form_TextBoxStandard {
	FONT-SIZE: 12px; COLOR: #666; FONT-FAMILY: arial
}
.Form_DropDownListStandard {
	FONT-SIZE: 12px; COLOR: #666; FONT-FAMILY: Arial
}
.Form_CountryDropDownListStandard {
	FONT-SIZE: 12px; COLOR: #666; FONT-FAMILY: Arial
}
.Form_PhoneCodeDropDownListStandard {
	FONT-SIZE: 12px; COLOR: #666; FONT-FAMILY: Arial
}
.Form_PhoneTextBoxStandard {
	FONT-SIZE: 12px; COLOR: #666; FONT-FAMILY: Arial
}
.Form_TextBoxMultiLine {
	FONT-SIZE: 12px; COLOR: #666; FONT-FAMILY: arial
}
.Form_CheckBox {
	FONT-SIZE: 12px; COLOR: #666; FONT-FAMILY: Arial
}
.Form_RadioButton {
	FONT-SIZE: 12px; COLOR: #666; FONT-FAMILY: Arial
}
.Form_linkbutton {
	FONT-SIZE: 12px; COLOR: #fff; FONT-FAMILY: Arial; TEXT-DECORATION: none
}
.Form_linkbutton:link {
	FONT-SIZE: 12px; COLOR: #fff; FONT-FAMILY: Arial; TEXT-DECORATION: none
}
.Form_linkbutton:visited {
	FONT-SIZE: 12px; COLOR: #fff; FONT-FAMILY: Arial; TEXT-DECORATION: none
}
.Form_linkbutton:unknown {
	FONT-SIZE: 12px; COLOR: #fff; FONT-FAMILY: Arial; TEXT-DECORATION: none
}
.Form_linkbutton:hover {
	FONT-SIZE: 12px; COLOR: #fff; FONT-FAMILY: Arial; TEXT-DECORATION: none
}
.Form_watermarkextender_standard {
	FONT-SIZE: 12px; COLOR: #fff; FONT-FAMILY: arial; TEXT-DECORATION: none
}
.Form_Error_TextBox {
	FONT-SIZE: 12px; COLOR: #666; FONT-FAMILY: arial
}
.Form_watermarkextender_error {
	FONT-SIZE: 12px; COLOR: #666; FONT-FAMILY: arial; TEXT-DECORATION: none
}
.Form_Error_Asterix {
	FONT-SIZE: 12px; COLOR: #a90213; FONT-FAMILY: arial
}
.PagingTable TD {
	FONT-WEIGHT: bold; FONT-SIZE: 10px; COLOR: #53593b; FONT-FAMILY: Arial
}
.MessageText {
	FONT-SIZE: 1em; COLOR: #000; LINE-HEIGHT: 1.12em; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
.upcomingEventPane DT {
	FONT-SIZE: 1.35em; LINE-HEIGHT: 1.2em; FONT-FAMILY: georgia,Serif
}
.OtherNews_ArticleTitlePane H2 {
	FONT-SIZE: 1.35em; LINE-HEIGHT: 1.2em; FONT-FAMILY: georgia,Serif
}
.upcomingEventPane P.eventCats {
	FONT-SIZE: 75%; COLOR: #a5a274
}
.upcomingEventPane P.eventDate {
	FONT-SIZE: 75%; COLOR: #a5a274
}
.ItemDescription {
	LINE-HEIGHT: normal
}
.StatHolder {
	COLOR: #606300
}
.gs-result .gs-title {
	COLOR: #523b00! important
}
.gs-result .gs-title * {
	COLOR: #523b00! important
}
.gs-result .gs-title {
	BORDER-TOP-WIDTH: 0px; MARGIN-TOP: 20px; BORDER-LEFT-WIDTH: 0px; =
FONT-SIZE: 1em; BORDER-BOTTOM-WIDTH: 0px; COLOR: #523b00; LINE-HEIGHT: =
normal; FONT-FAMILY: Arial,Helvetica,sans-serif; BORDER-RIGHT-WIDTH: 0px
}
.gs-result .gs-title:link {
	BORDER-TOP-WIDTH: 0px; MARGIN-TOP: 20px; BORDER-LEFT-WIDTH: 0px; =
FONT-SIZE: 1em; BORDER-BOTTOM-WIDTH: 0px; COLOR: #523b00; LINE-HEIGHT: =
normal; FONT-FAMILY: Arial,Helvetica,sans-serif; BORDER-RIGHT-WIDTH: 0px
}
.gs-result .gs-title:visited {
	BORDER-TOP-WIDTH: 0px; MARGIN-TOP: 20px; BORDER-LEFT-WIDTH: 0px; =
FONT-SIZE: 1em; BORDER-BOTTOM-WIDTH: 0px; COLOR: #523b00; LINE-HEIGHT: =
normal; FONT-FAMILY: Arial,Helvetica,sans-serif; BORDER-RIGHT-WIDTH: 0px
}
.gs-result .gs-title:active {
	BORDER-TOP-WIDTH: 0px; MARGIN-TOP: 20px; BORDER-LEFT-WIDTH: 0px; =
FONT-SIZE: 1em; BORDER-BOTTOM-WIDTH: 0px; COLOR: #523b00; LINE-HEIGHT: =
normal; FONT-FAMILY: Arial,Helvetica,sans-serif; BORDER-RIGHT-WIDTH: 0px
}
.gs-result .gs-title:hover {
	COLOR: #6c5231; TEXT-DECORATION: underline
}
.gs-snippet {
	FONT-SIZE: 1em; COLOR: #000; LINE-HEIGHT: normal; FONT-FAMILY: =
Arial,Helvetica,sans-serif; TEXT-DECORATION: none
}
.gs-result A.gs-visibleUrl {
	FONT-SIZE: 1em; COLOR: #606300! important; LINE-HEIGHT: normal; =
FONT-FAMILY: Arial,Helvetica,sans-serif; TEXT-DECORATION: none
}
.gs-result .gs-visibleUrl {
	FONT-SIZE: 1em; COLOR: #606300! important; LINE-HEIGHT: normal; =
FONT-FAMILY: Arial,Helvetica,sans-serif; TEXT-DECORATION: none
}
.gsc-cursor-page {
	COLOR: #442108! important; TEXT-DECORATION: none! important
}
.gsc-cursor-page:link {
	COLOR: #442108! important; TEXT-DECORATION: none! important
}
.gsc-cursor-page:visited {
	COLOR: #442108! important; TEXT-DECORATION: none! important
}
.gsc-cursor-page:active {
	COLOR: #442108! important; TEXT-DECORATION: none! important
}
.gsc-cursor-page:hover {
	COLOR: #6c5231! important; TEXT-DECORATION: underline! important
}
.gsc-cursor-current-page {
	COLOR: #344d2c! important
}
.gsc-cursor-current-page:hover {
	COLOR: #344d2c! important; TEXT-DECORATION: none! important
}
.gsc-trailing-more-results {
	DISPLAY: none! important
}
.TopNews_ArticleSummary {
	LINE-HEIGHT: normal
}
.TopNews_ArticleImageTitle {
	FONT-WEIGHT: normal; FONT-SIZE: 0.8em; WIDTH: 100%; COLOR: #606300; =
LINE-HEIGHT: normal; FONT-FAMILY: Arial,Helvetica,sans-serif
}
.NoneTopNews_ArticleImageTitle {
	FONT-WEIGHT: normal; FONT-SIZE: 0.8em; MARGIN-BOTTOM: 5px; WIDTH: 100%; =
COLOR: #606300; LINE-HEIGHT: normal; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
.OtherNews_ArticleImageTitle {
	FONT-WEIGHT: normal; FONT-SIZE: 0.8em; MARGIN-BOTTOM: 5px; WIDTH: 100%; =
COLOR: #606300; LINE-HEIGHT: normal; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
.InnerArticle_ImageTitle {
	FONT-WEIGHT: normal; FONT-SIZE: 0.8em; MARGIN: 4px 0px 0px; WIDTH: =
100%; COLOR: #606300; LINE-HEIGHT: normal; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
.BX_ArticleListing_ArticleTitle H2 {
	FONT-SIZE: 1.35em; LINE-HEIGHT: 1.2em; FONT-FAMILY: georgia,Serif
}
.BX_ArticleListing_EmptyContent {
	FONT-WEIGHT: bold; FONT-SIZE: 0.9em; MARGIN: 4px 0px 0px; WIDTH: 100%; =
LINE-HEIGHT: normal; FONT-FAMILY: Arial,Helvetica,sans-serif
}
.PostCommentLogin {
	FLOAT: left; CURSOR: pointer; COLOR: #442108; TEXT-DECORATION: none
}
.PostCommentLogin:hover {
	COLOR: #6c5231; TEXT-DECORATION: underline
}
.Head {
	FONT-WEIGHT: normal; FONT-SIZE: 16px; COLOR: #606300; LINE-HEIGHT: =
normal; FONT-FAMILY: Georgia,"Times New Roman",Times,serif; =
BACKGROUND-COLOR: #bbc684; TEXT-ALIGN: left
}
.SubHead {
	FONT-SIZE: 12px; COLOR: #666; FONT-FAMILY: Arial
}
.Normal {
	FONT-SIZE: 1em; COLOR: #000; LINE-HEIGHT: 1.12em; FONT-FAMILY: =
Arial,Helvetica,sans-serif
}
.NormalTextBox {
	FONT-SIZE: 12px; COLOR: #666; FONT-FAMILY: Arial
}
A.CommandButton {
	COLOR: #442108; TEXT-DECORATION: none
}
A.CommandButton:link {
	COLOR: #442108; TEXT-DECORATION: none
}
A.CommandButton:visited {
	COLOR: #442108; TEXT-DECORATION: none
}
A.CommandButton:active {
	COLOR: #442108; TEXT-DECORATION: none
}
A.CommandButton:hover {
	COLOR: #6c5231; TEXT-DECORATION: underline
}

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: application/x-css
Content-Transfer-Encoding: 7bit
Content-Location: http://www.gurtong.net/Portals/_default/Skins/GTN_Skin_5-3/skin.css

@import url( ../../layout.css );
@import url( ../../typography.css );

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: application/x-css
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.gurtong.net/Portals/_default/Containers/Gurtong_Containers/container.css

.Gurtong_Container_Transparent {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.ContainerSelection {
	MARGIN: 0px; TEXT-ALIGN: left
}
.GUR_C_icon {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
.GUR_C_actions {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
.GUR_C_content {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; PADDING-TOP: 0px
}
.GUR_C_contentpane {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px; TEXT-ALIGN: left
}

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: application/x-css
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.gurtong.net/Portals/0/portal.css

A.rounded {
	DISPLAY: inline-block; FONT-WEIGHT: bold; FONT-SIZE: 11px; =
VERTICAL-ALIGN: middle; OVERFLOW: visible; TEXT-TRANSFORM: uppercase; =
CURSOR: pointer; COLOR: #53593b; BORDER-TOP-STYLE: none; =
BORDER-RIGHT-STYLE: none; WHITE-SPACE: nowrap; BORDER-LEFT-STYLE: none; =
TEXT-DECORATION: none; BORDER-BOTTOM-STYLE: none; outline: none
}
.IsSelected {
	DISPLAY: inline-block; FONT-WEIGHT: bold; FONT-SIZE: 11px; =
VERTICAL-ALIGN: middle; OVERFLOW: visible; TEXT-TRANSFORM: uppercase; =
CURSOR: pointer; COLOR: #53593b; BORDER-TOP-STYLE: none; =
BORDER-RIGHT-STYLE: none; WHITE-SPACE: nowrap; BORDER-LEFT-STYLE: none; =
TEXT-DECORATION: none; BORDER-BOTTOM-STYLE: none; outline: none
}
.HistoryContent {
	FONT-SIZE: 11px; COLOR: #666; FONT-FAMILY: Arial
}
.UnSelected {
	PADDING-RIGHT: 7px; PADDING-LEFT: 7px; FONT-WEIGHT: bold; FONT-SIZE: =
11px! important; PADDING-BOTTOM: 5px; TEXT-TRANSFORM: uppercase; COLOR: =
#53593b; PADDING-TOP: 5px; FONT-FAMILY: Arial; BACKGROUND-COLOR: =
#d9e2a8; TEXT-ALIGN: center
}
.IsSelected {
	PADDING-RIGHT: 7px; PADDING-LEFT: 7px; FONT-WEIGHT: bold; FONT-SIZE: =
11px! important; PADDING-BOTTOM: 5px; TEXT-TRANSFORM: uppercase; COLOR: =
#53593b; PADDING-TOP: 5px; FONT-FAMILY: Arial; BACKGROUND-COLOR: =
#bac683; TEXT-ALIGN: center
}
.UnSelected:hover {
	BACKGROUND-COLOR: #bac683
}
.EventNextPrev IMG {
	PADDING-RIGHT: 5px
}
.EventNextPrev IMG {
	PADDING-LEFT: 5px
}

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: application/x-js
Content-Transfer-Encoding: quoted-printable
Content-Location: http://partner.googleadservices.com/gampad/google_service.js

(function(){var =
d=3Dnull,f=3Dfalse,g=3Dwindow,h=3D"GA_jstiming",j=3D"indexOf",l=3D"length=
",m=3D"prototype",n=3D"join",o=3Dthis,p=3Dfunction(a,b,c){a=3Da.split("."=
);c=3Dc||o;!(a[0]in c)&&c.execScript&&c.execScript("var "+a[0]);for(var =
e;a[l]&&(e=3Da.shift());)if(!a[l]&&b!=3D=3Dundefined)c[e]=3Db;else =
c=3Dc[e]?c[e]:(c[e]=3D{})},q=3DDate.now||function(){return+new =
Date},r=3Dfunction(a,b,c){p(a,b,c)},s=3Dfunction(a,b){function =
c(){}c.prototype=3Db[m];a.h=3Db[m];a.prototype=3Dnew c};var =
t=3Dfunction(a,b){a=3DparseFloat(a);return =
isNaN(a)||a>1||a<0?b:a},u=3Dfunction(a,b){if(a=3D=3D"true")return =
true;if(a=3D=3D"false")return f;return =
b},v=3D/^([\w-]+\.)*([\w-]{2,})(\:[0-9]+)?$/,w=3Dfunction(a,b){if(!a)retu=
rn b;return(a=3Da.match(v))?a[0]:b};var x=3Dfunction(){return =
w("","pubads.g.doubleclick.net")},A=3Dfunction(a){return =
a=3D=3D"pubads.g.doubleclick.net"};q();var =
B,C,D,E,F,G,H,I,M,N=3Dfunction(){return =
o.navigator?o.navigator.userAgent:d},O=3Dfunction(){return =
o.navigator},P=3Dfunction(){F=3DE=3DD=3DC=3DB=3Df;var a;if(a=3DN()){var =
b=3DO();B=3Da[j]("Opera")=3D=3D0;C=3D!B&&a[j]("MSIE")!=3D-1;E=3D(D=3D!B&&=
a[j]("WebKit")!=3D-1)&&a[j]("Mobile")!=3D-1;F=3D!B&&!D&&b.product=3D=3D"G=
ecko"}};P();var Q=3DB,R=3DC,S=3DF,T=3DD,aa=3Dfunction(){var =
a=3DO();return =
a&&a.platform||""},U=3Daa(),ba=3Dfunction(){G=3DU[j]("Mac")!=3D-1;H=3DU[j=
]("Win")!=3D-1;I=3DU[j]("Linux")!=3D-1;M=3D!!O()&&(O().appVersion||"")[j]=
("X11")!=3D-1};ba();=0A=
var ca=3Dfunction(){var =
a=3D"",b;if(Q&&o.opera){a=3Do.opera.version;a=3Dtypeof =
a=3D=3D"function"?a():a}else{if(S)b=3D/rv\:([^\);]+)(\)|;)/;else =
if(R)b=3D/MSIE\s+([^\);]+)(\)|;)/;else =
if(T)b=3D/WebKit\/(\S+)/;if(b)a=3D(a=3Db.exec(N()))?a[1]:""}return =
a};ca();w("","pagead2.googlesyndication.com");var =
V=3Dfunction(a){return!!a&&(a[j]("?google_debug")>0||a[j]("&google_debug"=
)>0)};function W(a){this.t=3D{};this.tick=3Dfunction(b,c,e){e=3De?e:(new =
Date).getTime();this.t[b]=3D[e,c]};this.tick("start",d,a)}var da=3Dnew =
W;g.GA_jstiming=3D{Timer:W,load:da};if(g[h]){g[h].c=3D{};g[h].f=3D1;var =
X=3Dfunction(a,b,c){var =
e=3Da.t[b],i=3Da.t.start;if(e&&(i||c)){e=3Da.t[b][0];i=3Dc!=3Dundefined?c=
:i[0];return e-i}};g[h].report=3Dfunction(a,b,c){var =
e=3D"";if(a.e)e+=3D"&"+a.e;var =
i=3Da.t,ea=3Di.start,J=3D[],y=3D[];for(var k in =
i)if(k!=3D"start")if(k[j]("_")!=3D0){var =
z=3Di[k][1];if(z)i[z]&&y.push(k+"."+X(a,k,i[z][0]));else =
ea&&J.push(k+"."+X(a,k))}delete i.start;if(b)for(var K in =
b)e+=3D"&"+K+"=3D"+b[K];a=3D[c?c:"http://csi.gstatic.com/csi","?v=3D3","&=
s=3D"+(g[h].sn||"gam")+"&action=3D",a.name,y[l]?"&it=3D"+=0A=
y[n](","):"",e,"&rt=3D",J[n](",")][n]("");b=3Dnew Image;var =
L=3Dg[h].f++;g[h].c[L]=3Db;b.onload=3Db.onerror=3Dfunction(){delete =
g[h].c[L]};b.src=3Da;b=3Dd;return a}};var fa=3Dt("0",0);var =
ga=3Du("false",f);function ha(a){return =
ia("adsense",a)}r("GS_googleAddAdSenseService",ha);function =
ja(){ka()}r("GS_googleEnableAllServices",ja);function =
la(){g.a=3D{}}r("GS_googleResetAllServices",la);function ma(){var =
a=3D"adsense";return =
na(a)}r("GS_googleGetIdsForAdSenseService",ma);function oa(a){return =
pa(a)}r("GS_googleFindService",oa);function =
Y(a){this.g=3Da;this.b=3D[]}Y[m].toString=3Dfunction(){for(var =
a=3D"["+this.g+" ids: =
",b=3D0;b<this.b[l];b++){if(b>0)a+=3D",";a+=3Dthis.b[b]}a+=3D"]";return =
a};=0A=
var qa=3Dfunction(a){if(a=3D=3D"adsense")return new Z;return new =
$},ia=3Dfunction(a,b){if(!(b&&typeof b=3D=3D"string"&&b[l]>0))return =
d;if(a=3D=3Dd)return d;var =
c=3Dg.a[a];if(c=3D=3Dd){c=3Dqa(a);g.a[a]=3Dc}ra(c,b);return =
c},ra=3Dfunction(a,b){for(var =
c=3D0;c<a.b[l];c++)if(b=3D=3Da.b[c])return;a.b[a.b[l]]=3Db},ka=3Dfunction=
(){for(var a in g.a){var b=3Dg.a[a];typeof =
b!=3D"function"&&b.enable()}},pa=3Dfunction(a){return =
a=3Da=3D=3Dd?d:g.a[a]},na=3Dfunction(a){a=3Da=3D=3Dd?d:g.a[a];return =
a=3D=3Dd?"":a.b[n]()};function $(){Y.call(this,"unknown")}s($,Y);=0A=
$[m].enable=3Dfunction(){};function =
Z(){Y.call(this,"adsense");this.d=3Df}s(Z,Y);var sa=3Dfunction(a,b){var =
c=3DMath.random();if(c<=3Db){if(V(a))return"google_ads_dbg2.js";return"go=
ogle_ads2.js"}else{if(V(a))return"google_ads_dbg.js";return"google_ads.js=
"}},ta=3Dfunction(a){var =
b=3D"http://"+w("","partner.googleadservices.com");if(ga)b=3D"https://"+w=
("","securepubads.g.doubleclick.net");var =
c=3D"";A(x())||(c=3D"?prodhost=3D"+x());return b+"/gampad/"+a+c};=0A=
Z[m].enable=3Dfunction(){if(!this.d){var =
a=3Dta(sa(document.URL,fa)),b=3D"script";document.write("<"+b+' =
src=3D"'+a+'"><\/script>');this.d=3Dtrue;if(g[h]&&g[h].Timer){g[h].load.n=
ame=3D"load";g[h].load.tick("start")}}};g.a||(g.a=3D{});})()=0A=

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.gurtong.net/WebResource.axd?d=5iEyd-aZkqTkoZiI0sElJw2&t=633884055906216209

function WebForm_PostBackOptions(eventTarget, eventArgument, validation, =
validationGroup, actionUrl, trackFocus, clientSubmit) {
    this.eventTarget =3D eventTarget;
    this.eventArgument =3D eventArgument;
    this.validation =3D validation;
    this.validationGroup =3D validationGroup;
    this.actionUrl =3D actionUrl;
    this.trackFocus =3D trackFocus;
    this.clientSubmit =3D clientSubmit;
}
function WebForm_DoPostBackWithOptions(options) {
    var validationResult =3D true;
    if (options.validation) {
        if (typeof(Page_ClientValidate) =3D=3D 'function') {
            validationResult =3D =
Page_ClientValidate(options.validationGroup);
        }
    }
    if (validationResult) {
        if ((typeof(options.actionUrl) !=3D "undefined") && =
(options.actionUrl !=3D null) && (options.actionUrl.length > 0)) {
            theForm.action =3D options.actionUrl;
        }
        if (options.trackFocus) {
            var lastFocus =3D theForm.elements["__LASTFOCUS"];
            if ((typeof(lastFocus) !=3D "undefined") && (lastFocus !=3D =
null)) {
                if (typeof(document.activeElement) =3D=3D "undefined") {
                    lastFocus.value =3D options.eventTarget;
                }
                else {
                    var active =3D document.activeElement;
                    if ((typeof(active) !=3D "undefined") && (active =
!=3D null)) {
                        if ((typeof(active.id) !=3D "undefined") && =
(active.id !=3D null) && (active.id.length > 0)) {
                            lastFocus.value =3D active.id;
                        }
                        else if (typeof(active.name) !=3D "undefined") {
                            lastFocus.value =3D active.name;
                        }
                    }
                }
            }
        }
    }
    if (options.clientSubmit) {
        __doPostBack(options.eventTarget, options.eventArgument);
    }
}
var __pendingCallbacks =3D new Array();
var __synchronousCallBackIndex =3D -1;
function WebForm_DoCallback(eventTarget, eventArgument, eventCallback, =
context, errorCallback, useAsync) {
    var postData =3D __theFormPostData +
                "__CALLBACKID=3D" + WebForm_EncodeCallback(eventTarget) =
+
                "&__CALLBACKPARAM=3D" + =
WebForm_EncodeCallback(eventArgument);
    if (theForm["__EVENTVALIDATION"]) {
        postData +=3D "&__EVENTVALIDATION=3D" + =
WebForm_EncodeCallback(theForm["__EVENTVALIDATION"].value);
    }
    var xmlRequest,e;
    try {
        xmlRequest =3D new XMLHttpRequest();
    }
    catch(e) {
        try {
            xmlRequest =3D new ActiveXObject("Microsoft.XMLHTTP");
        }
        catch(e) {
        }
    }
    var setRequestHeaderMethodExists =3D true;
    try {
        setRequestHeaderMethodExists =3D (xmlRequest && =
xmlRequest.setRequestHeader);
    }
    catch(e) {}
    var callback =3D new Object();
    callback.eventCallback =3D eventCallback;
    callback.context =3D context;
    callback.errorCallback =3D errorCallback;
    callback.async =3D useAsync;
    var callbackIndex =3D =
WebForm_FillFirstAvailableSlot(__pendingCallbacks, callback);
    if (!useAsync) {
        if (__synchronousCallBackIndex !=3D -1) {
            __pendingCallbacks[__synchronousCallBackIndex] =3D null;
        }
        __synchronousCallBackIndex =3D callbackIndex;
    }
    if (setRequestHeaderMethodExists) {
        xmlRequest.onreadystatechange =3D WebForm_CallbackComplete;
        callback.xmlRequest =3D xmlRequest;
        xmlRequest.open("POST", theForm.action, true);
        xmlRequest.setRequestHeader("Content-Type", =
"application/x-www-form-urlencoded; charset=3Dutf-8");
        xmlRequest.send(postData);
        return;
    }
    callback.xmlRequest =3D new Object();
    var callbackFrameID =3D "__CALLBACKFRAME" + callbackIndex;
    var xmlRequestFrame =3D document.frames[callbackFrameID];
    if (!xmlRequestFrame) {
        xmlRequestFrame =3D document.createElement("IFRAME");
        xmlRequestFrame.width =3D "1";
        xmlRequestFrame.height =3D "1";
        xmlRequestFrame.frameBorder =3D "0";
        xmlRequestFrame.id =3D callbackFrameID;
        xmlRequestFrame.name =3D callbackFrameID;
        xmlRequestFrame.style.position =3D "absolute";
        xmlRequestFrame.style.top =3D "-100px"
        xmlRequestFrame.style.left =3D "-100px";
        try {
            if (callBackFrameUrl) {
                xmlRequestFrame.src =3D callBackFrameUrl;
            }
        }
        catch(e) {}
        document.body.appendChild(xmlRequestFrame);
    }
    var interval =3D window.setInterval(function() {
        xmlRequestFrame =3D document.frames[callbackFrameID];
        if (xmlRequestFrame && xmlRequestFrame.document) {
            window.clearInterval(interval);
            xmlRequestFrame.document.write("");
            xmlRequestFrame.document.close();
            xmlRequestFrame.document.write('<html><body><form =
method=3D"post"><input type=3D"hidden" name=3D"__CALLBACKLOADSCRIPT" =
value=3D"t"></form></body></html>');
            xmlRequestFrame.document.close();
            xmlRequestFrame.document.forms[0].action =3D theForm.action;
            var count =3D __theFormPostCollection.length;
            var element;
            for (var i =3D 0; i < count; i++) {
                element =3D __theFormPostCollection[i];
                if (element) {
                    var fieldElement =3D =
xmlRequestFrame.document.createElement("INPUT");
                    fieldElement.type =3D "hidden";
                    fieldElement.name =3D element.name;
                    fieldElement.value =3D element.value;
                    =
xmlRequestFrame.document.forms[0].appendChild(fieldElement);
                }
            }
            var callbackIdFieldElement =3D =
xmlRequestFrame.document.createElement("INPUT");
            callbackIdFieldElement.type =3D "hidden";
            callbackIdFieldElement.name =3D "__CALLBACKID";
            callbackIdFieldElement.value =3D eventTarget;
            =
xmlRequestFrame.document.forms[0].appendChild(callbackIdFieldElement);
            var callbackParamFieldElement =3D =
xmlRequestFrame.document.createElement("INPUT");
            callbackParamFieldElement.type =3D "hidden";
            callbackParamFieldElement.name =3D "__CALLBACKPARAM";
            callbackParamFieldElement.value =3D eventArgument;
            =
xmlRequestFrame.document.forms[0].appendChild(callbackParamFieldElement);=

            if (theForm["__EVENTVALIDATION"]) {
                var callbackValidationFieldElement =3D =
xmlRequestFrame.document.createElement("INPUT");
                callbackValidationFieldElement.type =3D "hidden";
                callbackValidationFieldElement.name =3D =
"__EVENTVALIDATION";
                callbackValidationFieldElement.value =3D =
theForm["__EVENTVALIDATION"].value;
                =
xmlRequestFrame.document.forms[0].appendChild(callbackValidationFieldElem=
ent);
            }
            var callbackIndexFieldElement =3D =
xmlRequestFrame.document.createElement("INPUT");
            callbackIndexFieldElement.type =3D "hidden";
            callbackIndexFieldElement.name =3D "__CALLBACKINDEX";
            callbackIndexFieldElement.value =3D callbackIndex;
            =
xmlRequestFrame.document.forms[0].appendChild(callbackIndexFieldElement);=

            xmlRequestFrame.document.forms[0].submit();
        }
    }, 10);
}
function WebForm_CallbackComplete() {
    for (var i =3D 0; i < __pendingCallbacks.length; i++) {
        callbackObject =3D __pendingCallbacks[i];
        if (callbackObject && callbackObject.xmlRequest && =
(callbackObject.xmlRequest.readyState =3D=3D 4)) {
            WebForm_ExecuteCallback(callbackObject);
            if (!__pendingCallbacks[i].async) {
                __synchronousCallBackIndex =3D -1;
            }
            __pendingCallbacks[i] =3D null;
            var callbackFrameID =3D "__CALLBACKFRAME" + i;
            var xmlRequestFrame =3D =
document.getElementById(callbackFrameID);
            if (xmlRequestFrame) {
                xmlRequestFrame.parentNode.removeChild(xmlRequestFrame);
            }
        }
    }
}
function WebForm_ExecuteCallback(callbackObject) {
    var response =3D callbackObject.xmlRequest.responseText;
    if (response.charAt(0) =3D=3D "s") {
        if ((typeof(callbackObject.eventCallback) !=3D "undefined") && =
(callbackObject.eventCallback !=3D null)) {
            callbackObject.eventCallback(response.substring(1), =
callbackObject.context);
        }
    }
    else if (response.charAt(0) =3D=3D "e") {
        if ((typeof(callbackObject.errorCallback) !=3D "undefined") && =
(callbackObject.errorCallback !=3D null)) {
            callbackObject.errorCallback(response.substring(1), =
callbackObject.context);
        }
    }
    else {
        var separatorIndex =3D response.indexOf("|");
        if (separatorIndex !=3D -1) {
            var validationFieldLength =3D parseInt(response.substring(0, =
separatorIndex));
            if (!isNaN(validationFieldLength)) {
                var validationField =3D =
response.substring(separatorIndex + 1, separatorIndex + =
validationFieldLength + 1);
                if (validationField !=3D "") {
                    var validationFieldElement =3D =
theForm["__EVENTVALIDATION"];
                    if (!validationFieldElement) {
                        validationFieldElement =3D =
document.createElement("INPUT");
                        validationFieldElement.type =3D "hidden";
                        validationFieldElement.name =3D =
"__EVENTVALIDATION";
                        theForm.appendChild(validationFieldElement);
                    }
                    validationFieldElement.value =3D validationField;
                }
                if ((typeof(callbackObject.eventCallback) !=3D =
"undefined") && (callbackObject.eventCallback !=3D null)) {
                    =
callbackObject.eventCallback(response.substring(separatorIndex + =
validationFieldLength + 1), callbackObject.context);
                }
            }
        }
    }
}
function WebForm_FillFirstAvailableSlot(array, element) {
    var i;
    for (i =3D 0; i < array.length; i++) {
        if (!array[i]) break;
    }
    array[i] =3D element;
    return i;
}
var __nonMSDOMBrowser =3D =
(window.navigator.appName.toLowerCase().indexOf('explorer') =3D=3D -1);
var __theFormPostData =3D "";
var __theFormPostCollection =3D new Array();
function WebForm_InitCallback() {
    var count =3D theForm.elements.length;
    var element;
    for (var i =3D 0; i < count; i++) {
        element =3D theForm.elements[i];
        var tagName =3D element.tagName.toLowerCase();
        if (tagName =3D=3D "input") {
            var type =3D element.type;
            if ((type =3D=3D "text" || type =3D=3D "hidden" || type =
=3D=3D "password" ||
                ((type =3D=3D "checkbox" || type =3D=3D "radio") && =
element.checked)) &&
                (element.id !=3D "__EVENTVALIDATION")) {
                WebForm_InitCallbackAddField(element.name, =
element.value);
            }
        }
        else if (tagName =3D=3D "select") {
            var selectCount =3D element.options.length;
            for (var j =3D 0; j < selectCount; j++) {
                var selectChild =3D element.options[j];
                if (selectChild.selected =3D=3D true) {
                    WebForm_InitCallbackAddField(element.name, =
element.value);
                }
            }
        }
        else if (tagName =3D=3D "textarea") {
            WebForm_InitCallbackAddField(element.name, element.value);
        }
    }
}
function WebForm_InitCallbackAddField(name, value) {
    var nameValue =3D new Object();
    nameValue.name =3D name;
    nameValue.value =3D value;
    __theFormPostCollection[__theFormPostCollection.length] =3D =
nameValue;
    __theFormPostData +=3D WebForm_EncodeCallback(name) + "=3D" + =
WebForm_EncodeCallback(value) + "&";
}
function WebForm_EncodeCallback(parameter) {
    if (encodeURIComponent) {
        return encodeURIComponent(parameter);
    }
    else {
        return escape(parameter);
    }
}
var __disabledControlArray =3D new Array();
function WebForm_ReEnableControls() {
    if (typeof(__enabledControlArray) =3D=3D 'undefined') {
        return false;
    }
    var disabledIndex =3D 0;
    for (var i =3D 0; i < __enabledControlArray.length; i++) {
        var c;
        if (__nonMSDOMBrowser) {
            c =3D document.getElementById(__enabledControlArray[i]);
        }
        else {
            c =3D document.all[__enabledControlArray[i]];
        }
        if ((typeof(c) !=3D "undefined") && (c !=3D null) && (c.disabled =
=3D=3D true)) {
            c.disabled =3D false;
            __disabledControlArray[disabledIndex++] =3D c;
        }
    }
    setTimeout("WebForm_ReDisableControls()", 0);
    return true;
}
function WebForm_ReDisableControls() {
    for (var i =3D 0; i < __disabledControlArray.length; i++) {
        __disabledControlArray[i].disabled =3D true;
    }
}
function WebForm_FireDefaultButton(event, target) {
    if (event.keyCode =3D=3D 13) {
        var src =3D event.srcElement || event.target;
        if (!src || (src.tagName.toLowerCase() !=3D "textarea")) {
            var defaultButton;
            if (__nonMSDOMBrowser) {
               defaultButton =3D document.getElementById(target);
            }
            else {
                defaultButton =3D document.all[target];
            }
            if (defaultButton && typeof(defaultButton.click) !=3D =
"undefined") {
                defaultButton.click();
                event.cancelBubble =3D true;
                if (event.stopPropagation) event.stopPropagation();
                return false;
            }
        }
    }
    return true;
}
function WebForm_GetScrollX() {
    if (__nonMSDOMBrowser) {
        return window.pageXOffset;
    }
    else {
        if (document.documentElement && =
document.documentElement.scrollLeft) {
            return document.documentElement.scrollLeft;
        }
        else if (document.body) {
            return document.body.scrollLeft;
        }
    }
    return 0;
}
function WebForm_GetScrollY() {
    if (__nonMSDOMBrowser) {
        return window.pageYOffset;
    }
    else {
        if (document.documentElement && =
document.documentElement.scrollTop) {
            return document.documentElement.scrollTop;
        }
        else if (document.body) {
            return document.body.scrollTop;
        }
    }
    return 0;
}
function WebForm_SaveScrollPositionSubmit() {
    if (__nonMSDOMBrowser) {
        theForm.elements['__SCROLLPOSITIONY'].value =3D =
window.pageYOffset;
        theForm.elements['__SCROLLPOSITIONX'].value =3D =
window.pageXOffset;
    }
    else {
        theForm.__SCROLLPOSITIONX.value =3D WebForm_GetScrollX();
        theForm.__SCROLLPOSITIONY.value =3D WebForm_GetScrollY();
    }
    if ((typeof(this.oldSubmit) !=3D "undefined") && (this.oldSubmit =
!=3D null)) {
        return this.oldSubmit();
    }
    return true;
}
function WebForm_SaveScrollPositionOnSubmit() {
    theForm.__SCROLLPOSITIONX.value =3D WebForm_GetScrollX();
    theForm.__SCROLLPOSITIONY.value =3D WebForm_GetScrollY();
    if ((typeof(this.oldOnSubmit) !=3D "undefined") && (this.oldOnSubmit =
!=3D null)) {
        return this.oldOnSubmit();
    }
    return true;
}
function WebForm_RestoreScrollPosition() {
    if (__nonMSDOMBrowser) {
        window.scrollTo(theForm.elements['__SCROLLPOSITIONX'].value, =
theForm.elements['__SCROLLPOSITIONY'].value);
    }
    else {
        window.scrollTo(theForm.__SCROLLPOSITIONX.value, =
theForm.__SCROLLPOSITIONY.value);
    }
    if ((typeof(theForm.oldOnLoad) !=3D "undefined") && =
(theForm.oldOnLoad !=3D null)) {
        return theForm.oldOnLoad();
    }
    return true;
}
function WebForm_TextBoxKeyHandler(event) {
    if (event.keyCode =3D=3D 13) {
        var target;
        if (__nonMSDOMBrowser) {
            target =3D event.target;
        }
        else {
            target =3D event.srcElement;
        }
        if ((typeof(target) !=3D "undefined") && (target !=3D null)) {
            if (typeof(target.onchange) !=3D "undefined") {
                target.onchange();
                event.cancelBubble =3D true;
                if (event.stopPropagation) event.stopPropagation();
                return false;
            }
        }
    }
    return true;
}
function WebForm_TrimString(value) {
    return value.replace(/^\s+|\s+$/g, '')
}
function WebForm_AppendToClassName(element, className) {
    var currentClassName =3D ' ' + WebForm_TrimString(element.className) =
+ ' ';
    className =3D WebForm_TrimString(className);
    var index =3D currentClassName.indexOf(' ' + className + ' ');
    if (index =3D=3D=3D -1) {
        element.className =3D (element.className =3D=3D=3D '') ? =
className : element.className + ' ' + className;
    }
}
function WebForm_RemoveClassName(element, className) {
    var currentClassName =3D ' ' + WebForm_TrimString(element.className) =
+ ' ';
    className =3D WebForm_TrimString(className);
    var index =3D currentClassName.indexOf(' ' + className + ' ');
    if (index >=3D 0) {
        element.className =3D =
WebForm_TrimString(currentClassName.substring(0, index) + ' ' +
            currentClassName.substring(index + className.length + 1, =
currentClassName.length));
    }
}
function WebForm_GetElementById(elementId) {
    if (document.getElementById) {
        return document.getElementById(elementId);
    }
    else if (document.all) {
        return document.all[elementId];
    }
    else return null;
}
function WebForm_GetElementByTagName(element, tagName) {
    var elements =3D WebForm_GetElementsByTagName(element, tagName);
    if (elements && elements.length > 0) {
        return elements[0];
    }
    else return null;
}
function WebForm_GetElementsByTagName(element, tagName) {
    if (element && tagName) {
        if (element.getElementsByTagName) {
            return element.getElementsByTagName(tagName);
        }
        if (element.all && element.all.tags) {
            return element.all.tags(tagName);
        }
    }
    return null;
}
function WebForm_GetElementDir(element) {
    if (element) {
        if (element.dir) {
            return element.dir;
        }
        return WebForm_GetElementDir(element.parentNode);
    }
    return "ltr";
}
function WebForm_GetElementPosition(element) {
    var result =3D new Object();
    result.x =3D 0;
    result.y =3D 0;
    result.width =3D 0;
    result.height =3D 0;
    if (element.offsetParent) {
        result.x =3D element.offsetLeft;
        result.y =3D element.offsetTop;
        var parent =3D element.offsetParent;
        while (parent) {
            result.x +=3D parent.offsetLeft;
            result.y +=3D parent.offsetTop;
            var parentTagName =3D parent.tagName.toLowerCase();
            if (parentTagName !=3D "table" &&
                parentTagName !=3D "body" &&=20
                parentTagName !=3D "html" &&=20
                parentTagName !=3D "div" &&=20
                parent.clientTop &&=20
                parent.clientLeft) {
                result.x +=3D parent.clientLeft;
                result.y +=3D parent.clientTop;
            }
            parent =3D parent.offsetParent;
        }
    }
    else if (element.left && element.top) {
        result.x =3D element.left;
        result.y =3D element.top;
    }
    else {
        if (element.x) {
            result.x =3D element.x;
        }
        if (element.y) {
            result.y =3D element.y;
        }
    }
    if (element.offsetWidth && element.offsetHeight) {
        result.width =3D element.offsetWidth;
        result.height =3D element.offsetHeight;
    }
    else if (element.style && element.style.pixelWidth && =
element.style.pixelHeight) {
        result.width =3D element.style.pixelWidth;
        result.height =3D element.style.pixelHeight;
    }
    return result;
}
function WebForm_GetParentByTagName(element, tagName) {
    var parent =3D element.parentNode;
    var upperTagName =3D tagName.toUpperCase();
    while (parent && (parent.tagName.toUpperCase() !=3D upperTagName)) {
        parent =3D parent.parentNode ? parent.parentNode : =
parent.parentElement;
    }
    return parent;
}
function WebForm_SetElementHeight(element, height) {
    if (element && element.style) {
        element.style.height =3D height + "px";
    }
}
function WebForm_SetElementWidth(element, width) {
    if (element && element.style) {
        element.style.width =3D width + "px";
    }
}
function WebForm_SetElementX(element, x) {
    if (element && element.style) {
        element.style.left =3D x + "px";
    }
}
function WebForm_SetElementY(element, y) {
    if (element && element.style) {
        element.style.top =3D y + "px";
    }
}

------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: application/x-js
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.gurtong.net/js/dnncore.js

var DNN_COL_DELIMITER=3DString.fromCharCode(16);var =
DNN_ROW_DELIMITER=3DString.fromCharCode(15);var =
__dnn_m_bPageLoaded=3Dfalse;window.onload=3D__dnn_Page_OnLoad;function =
__dnn_ClientAPIEnabled(){return typeof(dnn)!=3D"undefined"}function =
__dnn_Page_OnLoad(){if(__dnn_ClientAPIEnabled()){var =
sLoadHandlers=3Ddnn.getVar("__dnn_pageload");if(sLoadHandlers!=3Dnull){ev=
al(sLoadHandlers)}dnn.dom.attachEvent(window,"onscroll",__dnn_bodyscroll)=
}__dnn_m_bPageLoaded=3Dtrue}function =
__dnn_KeyDown(iKeyCode,sFunc,e){if(e=3D=3Dnull){e=3Dwindow.event}if(e.key=
Code=3D=3DiKeyCode){eval(unescape(sFunc));return false}}function =
__dnn_bodyscroll(){var =
a=3Ddocument.forms[0];if(__dnn_ClientAPIEnabled()&&__dnn_m_bPageLoaded){a=
.ScrollTop.value=3Ddocument.documentElement.scrollTop?document.documentEl=
ement.scrollTop:dnn.dom.getByTagName("body")[0].scrollTop}}function =
__dnn_setScrollTop(c){if(__dnn_ClientAPIEnabled()){if(c=3D=3Dnull){c=3Ddo=
cument.forms[0].ScrollTop.value}var =
a=3Ddnn.getVar("ScrollToControl");if(a!=3Dnull&&a.length>0){var =
b=3Ddnn.dom.getById(a);if(b!=3Dnull){c=3Ddnn.dom.positioning.elementTop(b=
);dnn.setVar("ScrollToControl","")}}window.scrollTo(0,c)}}function =
__dnn_SetInitialFocus(a){var =
b=3Ddnn.dom.getById(a);if(b!=3Dnull&&__dnn_CanReceiveFocus(b)){b.focus()}=
}function =
__dnn_CanReceiveFocus(b){if(b.style.display!=3D"none"&&b.tabIndex>-1&&b.d=
isabled=3D=3Dfalse&&b.style.visible!=3D"hidden"){var =
a=3Db.parentElement;while(a!=3Dnull&&a.tagName!=3D"BODY"){if(a.style.disp=
lay=3D=3D"none"||a.disabled||a.style.visible=3D=3D"hidden"){return =
false}a=3Da.parentElement}return true}else{return false}}function =
__dnn_ContainerMaxMin_OnClick(h,b){var =
f=3Ddnn.dom.getById(b);if(f!=3Dnull){var e=3Dh.childNodes[0];var =
k=3Dh.getAttribute("containerid");var i=3Dh.getAttribute("cookieid");var =
d=3De.src.toLowerCase().substr(e.src.lastIndexOf("/"));var a;var g;var =
j;if(dnn.getVar("min_icon_"+k)){j=3Ddnn.getVar("min_icon_"+k)}else{j=3Ddn=
n.getVar("min_icon")}if(dnn.getVar("max_icon_"+k)){g=3Ddnn.getVar("max_ic=
on_"+k)}else{g=3Ddnn.getVar("max_icon")}a=3Dg.toLowerCase().substr(g.last=
IndexOf("/"));var c=3D5;if(h.getAttribute("animf")!=3Dnull){c=3Dnew =
Number(h.getAttribute("animf"))}if(d=3D=3Da){e.src=3Dj;dnn.dom.expandElem=
ent(f,c);e.title=3Ddnn.getVar("min_text");if(i!=3Dnull){if(dnn.getVar("__=
dnn_"+k+":defminimized")=3D=3D"true"){dnn.dom.setCookie(i,"true",365)}els=
e{dnn.dom.deleteCookie(i)}}else{dnn.setVar("__dnn_"+k+"_Visible","true")}=
}else{e.src=3Dg;dnn.dom.collapseElement(f,c);e.title=3Ddnn.getVar("max_te=
xt");if(i!=3Dnull){if(dnn.getVar("__dnn_"+k+":defminimized")=3D=3D"true")=
{dnn.dom.deleteCookie(i)}else{dnn.dom.setCookie(i,"false",365)}}else{dnn.=
setVar("__dnn_"+k+"_Visible","false")}}return true}return false}function =
__dnn_Help_OnClick(a){var =
b=3Ddnn.dom.getById(a);if(b!=3Dnull){if(b.style.display=3D=3D"none"){b.st=
yle.display=3D""}else{b.style.display=3D"none"}return true}return =
false}function __dnn_SectionMaxMin(f,c){var =
d=3Ddnn.dom.getById(c);if(d!=3Dnull){var =
g=3Df.getAttribute("max_icon");var e=3Df.getAttribute("min_icon");var =
a=3Df.getAttribute("userctr")!=3Dnull;var =
b;if(d.style.display=3D=3D"none"){f.src=3De;d.style.display=3D"";if(a){b=3D=
"True"}else{dnn.setVar(f.id+":exp",1)}}else{f.src=3Dg;d.style.display=3D"=
none";if(a){b=3D"False"}else{dnn.setVar(f.id+":exp",0)}}if(a){dnncore.set=
UserProp(f.getAttribute("userctr"),f.getAttribute("userkey"),b,null)}retu=
rn true}return false}function __dnn_enableDragDrop(){var =
b=3Ddnn.getVar("__dnn_dragDrop").split(";");var e;for(var =
c=3D0;c<b.length;c++){e=3Db[c].split(" ");if(e[0].length>0){var =
a=3Ddnn.dom.getById(e[0]);var =
d=3Ddnn.dom.getById(e[1]);if(a!=3Dnull&&d!=3Dnull){a.setAttribute("module=
id",e[2]);dnn.dom.positioning.enableDragAndDrop(a,d,"__dnn_dragComplete()=
","__dnn_dragOver()")}}}}var __dnn_oPrevSelPane;var =
__dnn_oPrevSelModule;var __dnn_dragEventCount=3D0;function =
__dnn_dragOver(){__dnn_dragEventCount++;if(__dnn_dragEventCount%75!=3D0){=
return}var c=3Ddnn.dom.getById(dnn.dom.positioning.dragCtr.contID);var =
a=3D__dnn_getMostSelectedPane(dnn.dom.positioning.dragCtr);if(__dnn_oPrev=
SelPane!=3Dnull){__dnn_oPrevSelPane.pane.style.border=3D__dnn_oPrevSelPan=
e.origBorder}if(a!=3Dnull){__dnn_oPrevSelPane=3Da;a.pane.style.border=3D"=
4px double "+DNN_HIGHLIGHT_COLOR;var =
e=3D__dnn_getPaneControlIndex(c,a);var b;var f;for(var =
d=3D0;d<a.controls.length;d++){if(e>d&&a.controls[d].id!=3Dc.id){b=3Da.co=
ntrols[d]}if(e<=3Dd&&a.controls[d].id!=3Dc.id){f=3Da.controls[d];break}}i=
f(__dnn_oPrevSelModule!=3Dnull){dnn.dom.getNonTextNode(__dnn_oPrevSelModu=
le.control).style.border=3D__dnn_oPrevSelModule.origBorder}if(f!=3Dnull){=
__dnn_oPrevSelModule=3Df;dnn.dom.getNonTextNode(f.control).style.borderTo=
p=3D"5px groove =
"+DNN_HIGHLIGHT_COLOR}else{if(b!=3Dnull){__dnn_oPrevSelModule=3Db;dnn.dom=
.getNonTextNode(b.control).style.borderBottom=3D"5px groove =
"+DNN_HIGHLIGHT_COLOR}}}}function __dnn_dragComplete(){var =
f=3Ddnn.dom.getById(dnn.dom.positioning.dragCtr.contID);var =
d=3Df.getAttribute("moduleid");if(__dnn_oPrevSelPane!=3Dnull){__dnn_oPrev=
SelPane.pane.style.border=3D__dnn_oPrevSelPane.origBorder}if(__dnn_oPrevS=
elModule!=3Dnull){dnn.dom.getNonTextNode(__dnn_oPrevSelModule.control).st=
yle.border=3D__dnn_oPrevSelModule.origBorder}var =
b=3D__dnn_getMostSelectedPane(dnn.dom.positioning.dragCtr);var =
e;if(b=3D=3Dnull){var a=3D__dnn_Panes();for(var =
c=3D0;c<a.length;c++){if(a[c].id=3D=3Df.parentNode.id){b=3Da[c]}}}if(b!=3D=
null){e=3D__dnn_getPaneControlIndex(f,b);__dnn_MoveToPane(b,f,e);dnn.call=
PostBack("MoveToPane","moduleid=3D"+d,"pane=3D"+b.paneName,"order=3D"+e*2=
)}}function __dnn_MoveToPane(a,e,d){if(a!=3Dnull){var c=3Dnew =
Array();for(var =
b=3Dd;b<a.controls.length;b++){if(a.controls[b].control.id!=3De.id){c[c.l=
ength]=3Da.controls[b].control}dnn.dom.removeChild(a.controls[b].control)=
}dnn.dom.appendChild(a.pane,e);e.style.top=3D0;e.style.left=3D0;e.style.p=
osition=3D"relative";for(var =
b=3D0;b<c.length;b++){dnn.dom.appendChild(a.pane,c[b])}__dnn_RefreshPanes=
()}else{e.style.top=3D0;e.style.left=3D0;e.style.position=3D"relative"}}f=
unction __dnn_RefreshPanes(){var =
b=3Ddnn.getVar("__dnn_Panes").split(";");var =
a=3Ddnn.getVar("__dnn_PaneNames").split(";");__dnn_m_aryPanes=3Dnew =
Array();for(var =
c=3D0;c<b.length;c++){if(b[c].length>0){__dnn_m_aryPanes[__dnn_m_aryPanes=
.length]=3Dnew __dnn_Pane(dnn.dom.getById(b[c]),a[c])}}}var =
__dnn_m_aryPanes;var __dnn_m_aryModules;function =
__dnn_Panes(){if(__dnn_m_aryPanes=3D=3Dnull){__dnn_m_aryPanes=3Dnew =
Array();__dnn_RefreshPanes()}return __dnn_m_aryPanes}function =
__dnn_Modules(a){if(__dnn_m_aryModules=3D=3Dnull){__dnn_RefreshPanes()}re=
turn __dnn_m_aryModules[a]}function __dnn_getMostSelectedPane(g){var =
c=3Dnew dnn.dom.positioning.dims(g);var f=3D0;var a;var h;for(var =
e=3D0;e<__dnn_Panes().length;e++){var b=3D__dnn_Panes()[e];var d=3Dnew =
dnn.dom.positioning.dims(b.pane);a=3Ddnn.dom.positioning.elementOverlapSc=
ore(d,c);if(a>f){f=3Da;h=3Db}}return h}function =
__dnn_getPaneControlIndex(f,b){if(b=3D=3Dnull){return}var a=3Dnew =
dnn.dom.positioning.dims(f);var e;if(b.controls.length=3D=3D0){return =
0}for(var c=3D0;c<b.controls.length;c++){e=3Db.controls[c];var d=3Dnew =
dnn.dom.positioning.dims(e.control);if(a.t<d.t){return =
e.index}}if(e!=3Dnull){return e.index+1}else{return 0}}function =
__dnn_Pane(a,b){this.pane=3Da;this.id=3Da.id;this.controls=3Dnew =
Array();this.origBorder=3Da.style.border;this.paneName=3Db;var f=3D0;var =
e=3D"";for(var d=3D0;d<a.childNodes.length;d++){var =
g=3Da.childNodes[d];if(dnn.dom.isNonTextNode(g)){if(__dnn_m_aryModules=3D=
=3Dnull){__dnn_m_aryModules=3Dnew Array()}var =
c=3Dg.getAttribute("moduleid");if(c!=3Dnull&&c.length>0){e+=3Dc+"~";this.=
controls[this.controls.length]=3Dnew =
__dnn_PaneControl(g,f);__dnn_m_aryModules[c]=3Dg.id;f+=3D1}}}this.moduleO=
rder=3De}function =
__dnn_PaneControl(a,b){this.control=3Da;this.id=3Da.id;this.index=3Db;thi=
s.origBorder=3Da.style.border}function =
__dnncore(){this.GetUserVal=3D0;this.SetUserVal=3D1}__dnncore.prototype=3D=
{getUserProp:function(b,c,a){this._doUserCallBack(dnncore.GetUserVal,b,c,=
null,new =
dnncore.UserPropArgs(b,c,a))},setUserProp:function(c,d,a,b){this._doUserC=
allBack(dnncore.SetUserVal,c,d,a,new =
dnncore.UserPropArgs(c,d,b))},_doUserCallBack:function(c,d,e,a,b){if(dnn&=
&dnn.xmlhttp){var =
f=3Dc+COL_DELIMITER+d+COL_DELIMITER+e+COL_DELIMITER+a;dnn.xmlhttp.doCallB=
ack("__Page",f,dnncore._callBackSuccess,b,dnncore._callBackFail,null,true=
,null,0)}else{alert("Client Personalization not =
enabled")}},_callBackSuccess:function(a,b,c){if(b.pFunc){b.pFunc(b.naming=
Ctr,b.key,a)}},_callBackFail:function(a,b){window.status=3Da}};__dnncore.=
prototype.UserPropArgs=3Dfunction(b,c,a){this.namingCtr=3Db;this.key=3Dc;=
this.pFunc=3Da};var dnncore=3Dnew __dnncore();
------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.gurtong.net/ScriptResource.axd?d=SfjSoLGRsOpAW_hyk0nI9Ptp7jGvs8reMwZIcJNWsRSK3zkRE6JIsWbaR88mRobW9_9JalsqmnVRUuCRPkpeHDebDBFIlXnzWATk22CDfyk1&t=fec45

=EF=BB=BF// Name:        MicrosoftAjax.debug.js
// Assembly:    System.Web.Extensions
// Version:     3.5.0.0
// FileVersion: 3.5.30729.196
//-----------------------------------------------------------------------=

// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------=

// MicrosoftAjax.js
// Microsoft AJAX Framework.
=20
Function.__typeName =3D 'Function';
Function.__class =3D true;
Function.createCallback =3D function Function$createCallback(method, =
context) {
    /// <summary locid=3D"M:J#Function.createCallback" />
    /// <param name=3D"method" type=3D"Function"></param>
    /// <param name=3D"context" mayBeNull=3D"true"></param>
    /// <returns type=3D"Function"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "method", type: Function},
        {name: "context", mayBeNull: true}
    ]);
    if (e) throw e;
    return function() {
        var l =3D arguments.length;
        if (l > 0) {
            var args =3D [];
            for (var i =3D 0; i < l; i++) {
                args[i] =3D arguments[i];
            }
            args[l] =3D context;
            return method.apply(this, args);
        }
        return method.call(this, context);
    }
}
Function.createDelegate =3D function Function$createDelegate(instance, =
method) {
    /// <summary locid=3D"M:J#Function.createDelegate" />
    /// <param name=3D"instance" mayBeNull=3D"true"></param>
    /// <param name=3D"method" type=3D"Function"></param>
    /// <returns type=3D"Function"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "instance", mayBeNull: true},
        {name: "method", type: Function}
    ]);
    if (e) throw e;
    return function() {
        return method.apply(instance, arguments);
    }
}
Function.emptyFunction =3D Function.emptyMethod =3D function =
Function$emptyMethod() {
    /// <summary locid=3D"M:J#Function.emptyMethod" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
}
Function._validateParams =3D function Function$_validateParams(params, =
expectedParams) {
    var e;
    e =3D Function._validateParameterCount(params, expectedParams);
    if (e) {
        e.popStackFrame();
        return e;
    }
    for (var i=3D0; i < params.length; i++) {
        var expectedParam =3D expectedParams[Math.min(i, =
expectedParams.length - 1)];
        var paramName =3D expectedParam.name;
        if (expectedParam.parameterArray) {
            paramName +=3D "[" + (i - expectedParams.length + 1) + "]";
        }
        e =3D Function._validateParameter(params[i], expectedParam, =
paramName);
        if (e) {
            e.popStackFrame();
            return e;
        }
    }
    return null;
}
Function._validateParameterCount =3D function =
Function$_validateParameterCount(params, expectedParams) {
    var maxParams =3D expectedParams.length;
    var minParams =3D 0;
    for (var i=3D0; i < expectedParams.length; i++) {
        if (expectedParams[i].parameterArray) {
            maxParams =3D Number.MAX_VALUE;
        }
        else if (!expectedParams[i].optional) {
            minParams++;
        }
    }
    if (params.length < minParams || params.length > maxParams) {
        var e =3D Error.parameterCount();
        e.popStackFrame();
        return e;
    }
    return null;
}
Function._validateParameter =3D function =
Function$_validateParameter(param, expectedParam, paramName) {
    var e;
    var expectedType =3D expectedParam.type;
    var expectedInteger =3D !!expectedParam.integer;
    var expectedDomElement =3D !!expectedParam.domElement;
    var mayBeNull =3D !!expectedParam.mayBeNull;
    e =3D Function._validateParameterType(param, expectedType, =
expectedInteger, expectedDomElement, mayBeNull, paramName);
    if (e) {
        e.popStackFrame();
        return e;
    }
    var expectedElementType =3D expectedParam.elementType;
    var elementMayBeNull =3D !!expectedParam.elementMayBeNull;
    if (expectedType =3D=3D=3D Array && typeof(param) !=3D=3D =
"undefined" && param !=3D=3D null &&
        (expectedElementType || !elementMayBeNull)) {
        var expectedElementInteger =3D !!expectedParam.elementInteger;
        var expectedElementDomElement =3D =
!!expectedParam.elementDomElement;
        for (var i=3D0; i < param.length; i++) {
            var elem =3D param[i];
            e =3D Function._validateParameterType(elem, =
expectedElementType,
                expectedElementInteger, expectedElementDomElement, =
elementMayBeNull,
                paramName + "[" + i + "]");
            if (e) {
                e.popStackFrame();
                return e;
            }
        }
    }
    return null;
}
Function._validateParameterType =3D function =
Function$_validateParameterType(param, expectedType, expectedInteger, =
expectedDomElement, mayBeNull, paramName) {
    var e;
    if (typeof(param) =3D=3D=3D "undefined") {
        if (mayBeNull) {
            return null;
        }
        else {
            e =3D Error.argumentUndefined(paramName);
            e.popStackFrame();
            return e;
        }
    }
    if (param =3D=3D=3D null) {
        if (mayBeNull) {
            return null;
        }
        else {
            e =3D Error.argumentNull(paramName);
            e.popStackFrame();
            return e;
        }
    }
    if (expectedType && expectedType.__enum) {
        if (typeof(param) !=3D=3D 'number') {
            e =3D Error.argumentType(paramName, Object.getType(param), =
expectedType);
            e.popStackFrame();
            return e;
        }
        if ((param % 1) =3D=3D=3D 0) {
            var values =3D expectedType.prototype;
            if (!expectedType.__flags || (param =3D=3D=3D 0)) {
                for (var i in values) {
                    if (values[i] =3D=3D=3D param) return null;
                }
            }
            else {
                var v =3D param;
                for (var i in values) {
                    var vali =3D values[i];
                    if (vali =3D=3D=3D 0) continue;
                    if ((vali & param) =3D=3D=3D vali) {
                        v -=3D vali;
                    }
                    if (v =3D=3D=3D 0) return null;
                }
            }
        }
        e =3D Error.argumentOutOfRange(paramName, param, =
String.format(Sys.Res.enumInvalidValue, param, expectedType.getName()));
        e.popStackFrame();
        return e;
    }
    if (expectedDomElement) {
        var val;
        if (typeof(param.nodeType) !=3D=3D 'number') {
            var doc =3D param.ownerDocument || param.document || param;
            if (doc !=3D param) {
                var w =3D doc.defaultView || doc.parentWindow;
                val =3D (w !=3D param) && !(w.document && param.document =
&& (w.document =3D=3D=3D param.document));
            }
            else {
                val =3D (typeof(doc.body) =3D=3D=3D 'undefined');
            }
        }
        else {
            val =3D (param.nodeType =3D=3D=3D 3);
        }
        if (val) {
            e =3D Error.argument(paramName, Sys.Res.argumentDomElement);
            e.popStackFrame();
            return e;
        }
    }
    if (expectedType && !expectedType.isInstanceOfType(param)) {
        e =3D Error.argumentType(paramName, Object.getType(param), =
expectedType);
        e.popStackFrame();
        return e;
    }
    if (expectedType =3D=3D=3D Number && expectedInteger) {
        if ((param % 1) !=3D=3D 0) {
            e =3D Error.argumentOutOfRange(paramName, param, =
Sys.Res.argumentInteger);
            e.popStackFrame();
            return e;
        }
    }
    return null;
}
=20
Error.__typeName =3D 'Error';
Error.__class =3D true;
Error.create =3D function Error$create(message, errorInfo) {
    /// <summary locid=3D"M:J#Error.create" />
    /// <param name=3D"message" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <param name=3D"errorInfo" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <returns type=3D"Error"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "message", type: String, mayBeNull: true, optional: =
true},
        {name: "errorInfo", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var e =3D new Error(message);
    e.message =3D message;
    if (errorInfo) {
        for (var v in errorInfo) {
            e[v] =3D errorInfo[v];
        }
    }
    e.popStackFrame();
    return e;
}
Error.argument =3D function Error$argument(paramName, message) {
    /// <summary locid=3D"M:J#Error.argument" />
    /// <param name=3D"paramName" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <param name=3D"message" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <returns></returns>
    var e =3D 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 =3D "Sys.ArgumentException: " + (message ? =
message : Sys.Res.argument);
    if (paramName) {
        displayMessage +=3D "\n" + String.format(Sys.Res.paramName, =
paramName);
    }
    var e =3D Error.create(displayMessage, { name: =
"Sys.ArgumentException", paramName: paramName });
    e.popStackFrame();
    return e;
}
Error.argumentNull =3D function Error$argumentNull(paramName, message) {
    /// <summary locid=3D"M:J#Error.argumentNull" />
    /// <param name=3D"paramName" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <param name=3D"message" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <returns></returns>
    var e =3D 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 =3D "Sys.ArgumentNullException: " + (message ? =
message : Sys.Res.argumentNull);
    if (paramName) {
        displayMessage +=3D "\n" + String.format(Sys.Res.paramName, =
paramName);
    }
    var e =3D Error.create(displayMessage, { name: =
"Sys.ArgumentNullException", paramName: paramName });
    e.popStackFrame();
    return e;
}
Error.argumentOutOfRange =3D function =
Error$argumentOutOfRange(paramName, actualValue, message) {
    /// <summary locid=3D"M:J#Error.argumentOutOfRange" />
    /// <param name=3D"paramName" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <param name=3D"actualValue" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <param name=3D"message" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <returns></returns>
    var e =3D 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 =3D "Sys.ArgumentOutOfRangeException: " + =
(message ? message : Sys.Res.argumentOutOfRange);
    if (paramName) {
        displayMessage +=3D "\n" + String.format(Sys.Res.paramName, =
paramName);
    }
    if (typeof(actualValue) !=3D=3D "undefined" && actualValue !=3D=3D =
null) {
        displayMessage +=3D "\n" + String.format(Sys.Res.actualValue, =
actualValue);
    }
    var e =3D Error.create(displayMessage, {
        name: "Sys.ArgumentOutOfRangeException",
        paramName: paramName,
        actualValue: actualValue
    });
    e.popStackFrame();
    return e;
}
Error.argumentType =3D function Error$argumentType(paramName, =
actualType, expectedType, message) {
    /// <summary locid=3D"M:J#Error.argumentType" />
    /// <param name=3D"paramName" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <param name=3D"actualType" type=3D"Type" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <param name=3D"expectedType" type=3D"Type" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <param name=3D"message" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <returns></returns>
    var e =3D 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 =3D "Sys.ArgumentTypeException: ";
    if (message) {
        displayMessage +=3D message;
    }
    else if (actualType && expectedType) {
        displayMessage +=3D
            String.format(Sys.Res.argumentTypeWithTypes, =
actualType.getName(), expectedType.getName());
    }
    else {
        displayMessage +=3D Sys.Res.argumentType;
    }
    if (paramName) {
        displayMessage +=3D "\n" + String.format(Sys.Res.paramName, =
paramName);
    }
    var e =3D Error.create(displayMessage, {
        name: "Sys.ArgumentTypeException",
        paramName: paramName,
        actualType: actualType,
        expectedType: expectedType
    });
    e.popStackFrame();
    return e;
}
Error.argumentUndefined =3D function Error$argumentUndefined(paramName, =
message) {
    /// <summary locid=3D"M:J#Error.argumentUndefined" />
    /// <param name=3D"paramName" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <param name=3D"message" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <returns></returns>
    var e =3D 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 =3D "Sys.ArgumentUndefinedException: " + (message =
? message : Sys.Res.argumentUndefined);
    if (paramName) {
        displayMessage +=3D "\n" + String.format(Sys.Res.paramName, =
paramName);
    }
    var e =3D Error.create(displayMessage, { name: =
"Sys.ArgumentUndefinedException", paramName: paramName });
    e.popStackFrame();
    return e;
}
Error.format =3D function Error$format(message) {
    /// <summary locid=3D"M:J#Error.format" />
    /// <param name=3D"message" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <returns></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage =3D "Sys.FormatException: " + (message ? message =
: Sys.Res.format);
    var e =3D Error.create(displayMessage, {name: =
'Sys.FormatException'});
    e.popStackFrame();
    return e;
}
Error.invalidOperation =3D function Error$invalidOperation(message) {
    /// <summary locid=3D"M:J#Error.invalidOperation" />
    /// <param name=3D"message" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <returns></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage =3D "Sys.InvalidOperationException: " + (message =
? message : Sys.Res.invalidOperation);
    var e =3D Error.create(displayMessage, {name: =
'Sys.InvalidOperationException'});
    e.popStackFrame();
    return e;
}
Error.notImplemented =3D function Error$notImplemented(message) {
    /// <summary locid=3D"M:J#Error.notImplemented" />
    /// <param name=3D"message" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <returns></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage =3D "Sys.NotImplementedException: " + (message ? =
message : Sys.Res.notImplemented);
    var e =3D Error.create(displayMessage, {name: =
'Sys.NotImplementedException'});
    e.popStackFrame();
    return e;
}
Error.parameterCount =3D function Error$parameterCount(message) {
    /// <summary locid=3D"M:J#Error.parameterCount" />
    /// <param name=3D"message" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <returns></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage =3D "Sys.ParameterCountException: " + (message ? =
message : Sys.Res.parameterCount);
    var e =3D Error.create(displayMessage, {name: =
'Sys.ParameterCountException'});
    e.popStackFrame();
    return e;
}
Error.prototype.popStackFrame =3D function Error$popStackFrame() {
    /// <summary locid=3D"M:J#checkParam" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    if (typeof(this.stack) =3D=3D=3D "undefined" || this.stack =3D=3D=3D =
null ||
        typeof(this.fileName) =3D=3D=3D "undefined" || this.fileName =
=3D=3D=3D null ||
        typeof(this.lineNumber) =3D=3D=3D "undefined" || this.lineNumber =
=3D=3D=3D null) {
        return;
    }
    var stackFrames =3D this.stack.split("\n");
    var currentFrame =3D stackFrames[0];
    var pattern =3D this.fileName + ":" + this.lineNumber;
    while(typeof(currentFrame) !=3D=3D "undefined" &&
          currentFrame !=3D=3D null &&
          currentFrame.indexOf(pattern) =3D=3D=3D -1) {
        stackFrames.shift();
        currentFrame =3D stackFrames[0];
    }
    var nextFrame =3D stackFrames[1];
    if (typeof(nextFrame) =3D=3D=3D "undefined" || nextFrame =3D=3D=3D =
null) {
        return;
    }
    var nextFrameParts =3D nextFrame.match(/@(.*):(\d+)$/);
    if (typeof(nextFrameParts) =3D=3D=3D "undefined" || nextFrameParts =
=3D=3D=3D null) {
        return;
    }
    this.fileName =3D nextFrameParts[1];
    this.lineNumber =3D parseInt(nextFrameParts[2]);
    stackFrames.shift();
    this.stack =3D stackFrames.join("\n");
}
=20
Object.__typeName =3D 'Object';
Object.__class =3D true;
Object.getType =3D function Object$getType(instance) {
    /// <summary locid=3D"M:J#Object.getType" />
    /// <param name=3D"instance"></param>
    /// <returns type=3D"Type"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "instance"}
    ]);
    if (e) throw e;
    var ctor =3D instance.constructor;
    if (!ctor || (typeof(ctor) !=3D=3D "function") || !ctor.__typeName =
|| (ctor.__typeName =3D=3D=3D 'Object')) {
        return Object;
    }
    return ctor;
}
Object.getTypeName =3D function Object$getTypeName(instance) {
    /// <summary locid=3D"M:J#Object.getTypeName" />
    /// <param name=3D"instance"></param>
    /// <returns type=3D"String"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "instance"}
    ]);
    if (e) throw e;
    return Object.getType(instance).getName();
}
=20
String.__typeName =3D 'String';
String.__class =3D true;
String.prototype.endsWith =3D function String$endsWith(suffix) {
    /// <summary locid=3D"M:J#String.endsWith" />
    /// <param name=3D"suffix" type=3D"String"></param>
    /// <returns type=3D"Boolean"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "suffix", type: String}
    ]);
    if (e) throw e;
    return (this.substr(this.length - suffix.length) =3D=3D=3D suffix);
}
String.prototype.startsWith =3D function String$startsWith(prefix) {
    /// <summary locid=3D"M:J#String.startsWith" />
    /// <param name=3D"prefix" type=3D"String"></param>
    /// <returns type=3D"Boolean"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "prefix", type: String}
    ]);
    if (e) throw e;
    return (this.substr(0, prefix.length) =3D=3D=3D prefix);
}
String.prototype.trim =3D function String$trim() {
    /// <summary locid=3D"M:J#String.trim" />
    /// <returns type=3D"String"></returns>
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    return this.replace(/^\s+|\s+$/g, '');
}
String.prototype.trimEnd =3D function String$trimEnd() {
    /// <summary locid=3D"M:J#String.trimEnd" />
    /// <returns type=3D"String"></returns>
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    return this.replace(/\s+$/, '');
}
String.prototype.trimStart =3D function String$trimStart() {
    /// <summary locid=3D"M:J#String.trimStart" />
    /// <returns type=3D"String"></returns>
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    return this.replace(/^\s+/, '');
}
String.format =3D function String$format(format, args) {
    /// <summary locid=3D"M:J#String.format" />
    /// <param name=3D"format" type=3D"String"></param>
    /// <param name=3D"args" parameterArray=3D"true" =
mayBeNull=3D"true"></param>
    /// <returns type=3D"String"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "format", type: String},
        {name: "args", mayBeNull: true, parameterArray: true}
    ]);
    if (e) throw e;
    return String._toFormattedString(false, arguments);
}
String.localeFormat =3D function String$localeFormat(format, args) {
    /// <summary locid=3D"M:J#String.localeFormat" />
    /// <param name=3D"format" type=3D"String"></param>
    /// <param name=3D"args" parameterArray=3D"true" =
mayBeNull=3D"true"></param>
    /// <returns type=3D"String"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "format", type: String},
        {name: "args", mayBeNull: true, parameterArray: true}
    ]);
    if (e) throw e;
    return String._toFormattedString(true, arguments);
}
String._toFormattedString =3D function =
String$_toFormattedString(useLocale, args) {
    var result =3D '';
    var format =3D args[0];
    for (var i=3D0;;) {
        var open =3D format.indexOf('{', i);
        var close =3D format.indexOf('}', i);
        if ((open < 0) && (close < 0)) {
            result +=3D format.slice(i);
            break;
        }
        if ((close > 0) && ((close < open) || (open < 0))) {
            if (format.charAt(close + 1) !=3D=3D '}') {
                throw Error.argument('format', =
Sys.Res.stringFormatBraceMismatch);
            }
            result +=3D format.slice(i, close + 1);
            i =3D close + 2;
            continue;
        }
        result +=3D format.slice(i, open);
        i =3D open + 1;
        if (format.charAt(i) =3D=3D=3D '{') {
            result +=3D '{';
            i++;
            continue;
        }
        if (close < 0) throw Error.argument('format', =
Sys.Res.stringFormatBraceMismatch);
        var brace =3D format.substring(i, close);
        var colonIndex =3D brace.indexOf(':');
        var argNumber =3D parseInt((colonIndex < 0)? brace : =
brace.substring(0, colonIndex), 10) + 1;
        if (isNaN(argNumber)) throw Error.argument('format', =
Sys.Res.stringFormatInvalid);
        var argFormat =3D (colonIndex < 0)? '' : =
brace.substring(colonIndex + 1);
        var arg =3D args[argNumber];
        if (typeof(arg) =3D=3D=3D "undefined" || arg =3D=3D=3D null) {
            arg =3D '';
        }
        if (arg.toFormattedString) {
            result +=3D arg.toFormattedString(argFormat);
        }
        else if (useLocale && arg.localeFormat) {
            result +=3D arg.localeFormat(argFormat);
        }
        else if (arg.format) {
            result +=3D arg.format(argFormat);
        }
        else
            result +=3D arg.toString();
        i =3D close + 1;
    }
    return result;
}
=20
Boolean.__typeName =3D 'Boolean';
Boolean.__class =3D true;
Boolean.parse =3D function Boolean$parse(value) {
    /// <summary locid=3D"M:J#Boolean.parse" />
    /// <param name=3D"value" type=3D"String"></param>
    /// <returns type=3D"Boolean"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "value", type: String}
    ]);
    if (e) throw e;
    var v =3D value.trim().toLowerCase();
    if (v =3D=3D=3D 'false') return false;
    if (v =3D=3D=3D 'true') return true;
    throw Error.argumentOutOfRange('value', value, =
Sys.Res.boolTrueOrFalse);
}
=20
Date.__typeName =3D 'Date';
Date.__class =3D true;
Date._appendPreOrPostMatch =3D function =
Date$_appendPreOrPostMatch(preMatch, strBuilder) {
    var quoteCount =3D 0;
    var escaped =3D false;
    for (var i =3D 0, il =3D preMatch.length; i < il; i++) {
        var c =3D preMatch.charAt(i);
        switch (c) {
        case '\'':
            if (escaped) strBuilder.append("'");
            else quoteCount++;
            escaped =3D false;
            break;
        case '\\':
            if (escaped) strBuilder.append("\\");
            escaped =3D !escaped;
            break;
        default:
            strBuilder.append(c);
            escaped =3D false;
            break;
        }
    }
    return quoteCount;
}
Date._expandFormat =3D function Date$_expandFormat(dtf, format) {
    if (!format) {
        format =3D "F";
    }
    if (format.length =3D=3D=3D 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 =3D function Date$_expandYear(dtf, year) {
    if (year < 100) {
        var curr =3D new Date().getFullYear();
        year +=3D curr - (curr % 100);
        if (year > dtf.Calendar.TwoDigitYearMax) {
            return year - 100;
        }
    }
    return year;
}
Date._getParseRegExp =3D function Date$_getParseRegExp(dtf, format) {
    if (!dtf._parseRegExp) {
        dtf._parseRegExp =3D {};
    }
    else if (dtf._parseRegExp[format]) {
        return dtf._parseRegExp[format];
    }
    var expFormat =3D Date._expandFormat(dtf, format);
    expFormat =3D expFormat.replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g, =
"\\\\$1");
    var regexp =3D new Sys.StringBuilder("^");
    var groups =3D [];
    var index =3D 0;
    var quoteCount =3D 0;
    var tokenRegExp =3D Date._getTokenRegExp();
    var match;
    while ((match =3D tokenRegExp.exec(expFormat)) !=3D=3D null) {
        var preMatch =3D expFormat.slice(index, match.index);
        index =3D tokenRegExp.lastIndex;
        quoteCount +=3D Date._appendPreOrPostMatch(preMatch, regexp);
        if ((quoteCount%2) =3D=3D=3D 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 =3D regexp.toString().replace(/\s+/g, "\\s+");
    var parseRegExp =3D {'regExp': regexpStr, 'groups': groups};
    dtf._parseRegExp[format] =3D parseRegExp;
    return parseRegExp;
}
Date._getTokenRegExp =3D 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 =3D function Date$parseLocale(value, formats) {
    /// <summary locid=3D"M:J#Date.parseLocale" />
    /// <param name=3D"value" type=3D"String"></param>
    /// <param name=3D"formats" parameterArray=3D"true" =
optional=3D"true" mayBeNull=3D"true"></param>
    /// <returns type=3D"Date"></returns>
    var e =3D 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 =3D function Date$parseInvariant(value, formats) {
    /// <summary locid=3D"M:J#Date.parseInvariant" />
    /// <param name=3D"value" type=3D"String"></param>
    /// <param name=3D"formats" parameterArray=3D"true" =
optional=3D"true" mayBeNull=3D"true"></param>
    /// <returns type=3D"Date"></returns>
    var e =3D 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 =3D function Date$_parse(value, cultureInfo, args) {
    var custom =3D false;
    for (var i =3D 1, il =3D args.length; i < il; i++) {
        var format =3D args[i];
        if (format) {
            custom =3D true;
            var date =3D Date._parseExact(value, format, cultureInfo);
            if (date) return date;
        }
    }
    if (! custom) {
        var formats =3D cultureInfo._getDateTimeFormats();
        for (var i =3D 0, il =3D formats.length; i < il; i++) {
            var date =3D Date._parseExact(value, formats[i], =
cultureInfo);
            if (date) return date;
        }
    }
    return null;
}
Date._parseExact =3D function Date$_parseExact(value, format, =
cultureInfo) {
    value =3D value.trim();
    var dtf =3D cultureInfo.dateTimeFormat;
    var parseInfo =3D Date._getParseRegExp(dtf, format);
    var match =3D new RegExp(parseInfo.regExp).exec(value);
    if (match =3D=3D=3D null) return null;
   =20
    var groups =3D parseInfo.groups;
    var year =3D null, month =3D null, date =3D null, weekDay =3D null;
    var hour =3D 0, min =3D 0, sec =3D 0, msec =3D 0, tzMinOffset =3D =
null;
    var pmHour =3D false;
    for (var j =3D 0, jl =3D groups.length; j < jl; j++) {
        var matchGroup =3D match[j+1];
        if (matchGroup) {
            switch (groups[j]) {
                case 'dd': case 'd':
                    date =3D parseInt(matchGroup, 10);
                    if ((date < 1) || (date > 31)) return null;
                    break;
                case 'MMMM':
                    month =3D cultureInfo._getMonthIndex(matchGroup);
                    if ((month < 0) || (month > 11)) return null;
                    break;
                case 'MMM':
                    month =3D =
cultureInfo._getAbbrMonthIndex(matchGroup);
                    if ((month < 0) || (month > 11)) return null;
                    break;
                case 'M': case 'MM':
                    var month =3D parseInt(matchGroup, 10) - 1;
                    if ((month < 0) || (month > 11)) return null;
                    break;
                case 'y': case 'yy':
                    year =3D Date._expandYear(dtf,parseInt(matchGroup, =
10));
                    if ((year < 0) || (year > 9999)) return null;
                    break;
                case 'yyyy':
                    year =3D parseInt(matchGroup, 10);
                    if ((year < 0) || (year > 9999)) return null;
                    break;
                case 'h': case 'hh':
                    hour =3D parseInt(matchGroup, 10);
                    if (hour =3D=3D=3D 12) hour =3D 0;
                    if ((hour < 0) || (hour > 11)) return null;
                    break;
                case 'H': case 'HH':
                    hour =3D parseInt(matchGroup, 10);
                    if ((hour < 0) || (hour > 23)) return null;
                    break;
                case 'm': case 'mm':
                    min =3D parseInt(matchGroup, 10);
                    if ((min < 0) || (min > 59)) return null;
                    break;
                case 's': case 'ss':
                    sec =3D parseInt(matchGroup, 10);
                    if ((sec < 0) || (sec > 59)) return null;
                    break;
                case 'tt': case 't':
                    var upperToken =3D matchGroup.toUpperCase();
                    pmHour =3D (upperToken =3D=3D=3D =
dtf.PMDesignator.toUpperCase());
                    if (!pmHour && (upperToken !=3D=3D =
dtf.AMDesignator.toUpperCase())) return null;
                    break;
                case 'f':
                    msec =3D parseInt(matchGroup, 10) * 100;
                    if ((msec < 0) || (msec > 999)) return null;
                    break;
                case 'ff':
                    msec =3D parseInt(matchGroup, 10) * 10;
                    if ((msec < 0) || (msec > 999)) return null;
                    break;
                case 'fff':
                    msec =3D parseInt(matchGroup, 10);
                    if ((msec < 0) || (msec > 999)) return null;
                    break;
                case 'dddd':
                    weekDay =3D cultureInfo._getDayIndex(matchGroup);
                    if ((weekDay < 0) || (weekDay > 6)) return null;
                    break;
                case 'ddd':
                    weekDay =3D =
cultureInfo._getAbbrDayIndex(matchGroup);
                    if ((weekDay < 0) || (weekDay > 6)) return null;
                    break;
                case 'zzz':
                    var offsets =3D matchGroup.split(/:/);
                    if (offsets.length !=3D=3D 2) return null;
                    var hourOffset =3D parseInt(offsets[0], 10);
                    if ((hourOffset < -12) || (hourOffset > 13)) return =
null;
                    var minOffset =3D parseInt(offsets[1], 10);
                    if ((minOffset < 0) || (minOffset > 59)) return =
null;
                    tzMinOffset =3D (hourOffset * 60) + =
(matchGroup.startsWith('-')? -minOffset : minOffset);
                    break;
                case 'z': case 'zz':
                    var hourOffset =3D parseInt(matchGroup, 10);
                    if ((hourOffset < -12) || (hourOffset > 13)) return =
null;
                    tzMinOffset =3D hourOffset * 60;
                    break;
            }
        }
    }
    var result =3D new Date();
    if (year =3D=3D=3D null) {
        year =3D result.getFullYear();
    }
    if (month =3D=3D=3D null) {
        month =3D result.getMonth();
    }
    if (date =3D=3D=3D null) {
        date =3D result.getDate();
    }
    result.setFullYear(year, month, date);
    if (result.getDate() !=3D=3D date) return null;
    if ((weekDay !=3D=3D null) && (result.getDay() !=3D=3D weekDay)) {
        return null;
    }
    if (pmHour && (hour < 12)) {
        hour +=3D 12;
    }
    result.setHours(hour, min, sec, msec);
    if (tzMinOffset !=3D=3D null) {
        var adjustedMin =3D result.getMinutes() - (tzMinOffset + =
result.getTimezoneOffset());
        result.setHours(result.getHours() + parseInt(adjustedMin/60, =
10), adjustedMin%60);
    }
    return result;
}
Date.prototype.format =3D function Date$format(format) {
    /// <summary locid=3D"M:J#Date.format" />
    /// <param name=3D"format" type=3D"String"></param>
    /// <returns type=3D"String"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "format", type: String}
    ]);
    if (e) throw e;
    return this._toFormattedString(format, =
Sys.CultureInfo.InvariantCulture);
}
Date.prototype.localeFormat =3D function Date$localeFormat(format) {
    /// <summary locid=3D"M:J#Date.localeFormat" />
    /// <param name=3D"format" type=3D"String"></param>
    /// <returns type=3D"String"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "format", type: String}
    ]);
    if (e) throw e;
    return this._toFormattedString(format, =
Sys.CultureInfo.CurrentCulture);
}
Date.prototype._toFormattedString =3D function =
Date$_toFormattedString(format, cultureInfo) {
    if (!format || (format.length =3D=3D=3D 0) || (format =3D=3D=3D =
'i')) {
        if (cultureInfo && (cultureInfo.name.length > 0)) {
            return this.toLocaleString();
        }
        else {
            return this.toString();
        }
    }
    var dtf =3D cultureInfo.dateTimeFormat;
    format =3D Date._expandFormat(dtf, format);
    var ret =3D 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 =3D 0;
    var tokenRegExp =3D Date._getTokenRegExp();
    for (;;) {
        var index =3D tokenRegExp.lastIndex;
        var ar =3D tokenRegExp.exec(format);
        var preMatch =3D format.slice(index, ar ? ar.index : =
format.length);
        quoteCount +=3D Date._appendPreOrPostMatch(preMatch, ret);
        if (!ar) break;
        if ((quoteCount%2) =3D=3D=3D 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 =3D this.getHours() % 12;
            if (hour =3D=3D=3D 0) hour =3D 12;
            ret.append(addLeadingZero(hour));
            break;
        case "h":
            hour =3D this.getHours() % 12;
            if (hour =3D=3D=3D 0) hour =3D 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 =3D this.getTimezoneOffset() / 60;
            ret.append(((hour <=3D 0) ? '+' : '-') + =
Math.floor(Math.abs(hour)));
            break;
        case "zz":
            hour =3D this.getTimezoneOffset() / 60;
            ret.append(((hour <=3D 0) ? '+' : '-') + =
addLeadingZero(Math.floor(Math.abs(hour))));
            break;
        case "zzz":
            hour =3D this.getTimezoneOffset() / 60;
            ret.append(((hour <=3D 0) ? '+' : '-') + =
addLeadingZero(Math.floor(Math.abs(hour))) +
                dtf.TimeSeparator + =
addLeadingZero(Math.abs(this.getTimezoneOffset() % 60)));
            break;
        }
    }
    return ret.toString();
}
=20
Number.__typeName =3D 'Number';
Number.__class =3D true;
Number.parseLocale =3D function Number$parseLocale(value) {
    /// <summary locid=3D"M:J#Number.parseLocale" />
    /// <param name=3D"value" type=3D"String"></param>
    /// <returns type=3D"Number"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "value", type: String}
    ]);
    if (e) throw e;
    return Number._parse(value, Sys.CultureInfo.CurrentCulture);
}
Number.parseInvariant =3D function Number$parseInvariant(value) {
    /// <summary locid=3D"M:J#Number.parseInvariant" />
    /// <param name=3D"value" type=3D"String"></param>
    /// <returns type=3D"Number"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "value", type: String}
    ]);
    if (e) throw e;
    return Number._parse(value, Sys.CultureInfo.InvariantCulture);
}
Number._parse =3D function Number$_parse(value, cultureInfo) {
    value =3D value.trim();
   =20
    if (value.match(/^[+-]?infinity$/i)) {
        return parseFloat(value);
    }
    if (value.match(/^0x[a-f0-9]+$/i)) {
        return parseInt(value);
    }
    var numFormat =3D cultureInfo.numberFormat;
    var signInfo =3D Number._parseNumberNegativePattern(value, =
numFormat, numFormat.NumberNegativePattern);
    var sign =3D signInfo[0];
    var num =3D signInfo[1];
   =20
    if ((sign =3D=3D=3D '') && (numFormat.NumberNegativePattern !=3D=3D =
1)) {
        signInfo =3D Number._parseNumberNegativePattern(value, =
numFormat, 1);
        sign =3D signInfo[0];
        num =3D signInfo[1];
    }
    if (sign =3D=3D=3D '') sign =3D '+';
   =20
    var exponent;
    var intAndFraction;
    var exponentPos =3D num.indexOf('e');
    if (exponentPos < 0) exponentPos =3D num.indexOf('E');
    if (exponentPos < 0) {
        intAndFraction =3D num;
        exponent =3D null;
    }
    else {
        intAndFraction =3D num.substr(0, exponentPos);
        exponent =3D num.substr(exponentPos + 1);
    }
   =20
    var integer;
    var fraction;
    var decimalPos =3D =
intAndFraction.indexOf(numFormat.NumberDecimalSeparator);
    if (decimalPos < 0) {
        integer =3D intAndFraction;
        fraction =3D null;
    }
    else {
        integer =3D intAndFraction.substr(0, decimalPos);
        fraction =3D intAndFraction.substr(decimalPos + =
numFormat.NumberDecimalSeparator.length);
    }
   =20
    integer =3D integer.split(numFormat.NumberGroupSeparator).join('');
    var altNumGroupSeparator =3D =
numFormat.NumberGroupSeparator.replace(/\u00A0/g, " ");
    if (numFormat.NumberGroupSeparator !=3D=3D altNumGroupSeparator) {
        integer =3D integer.split(altNumGroupSeparator).join('');
    }
   =20
    var p =3D sign + integer;
    if (fraction !=3D=3D null) {
        p +=3D '.' + fraction;
    }
    if (exponent !=3D=3D null) {
        var expSignInfo =3D Number._parseNumberNegativePattern(exponent, =
numFormat, 1);
        if (expSignInfo[0] =3D=3D=3D '') {
            expSignInfo[0] =3D '+';
        }
        p +=3D 'e' + expSignInfo[0] + expSignInfo[1];
    }
    if (p.match(/^[+-]?\d*\.?\d*(e[+-]?\d+)?$/)) {
        return parseFloat(p);
    }
    return Number.NaN;
}
Number._parseNumberNegativePattern =3D function =
Number$_parseNumberNegativePattern(value, numFormat, =
numberNegativePattern) {
    var neg =3D numFormat.NegativeSign;
    var pos =3D numFormat.PositiveSign;   =20
    switch (numberNegativePattern) {
        case 4:=20
            neg =3D ' ' + neg;
            pos =3D ' ' + pos;
        case 3:=20
            if (value.endsWith(neg)) {
                return ['-', value.substr(0, value.length - =
neg.length)];
            }
            else if (value.endsWith(pos)) {
                return ['+', value.substr(0, value.length - =
pos.length)];
            }
            break;
        case 2:=20
            neg +=3D ' ';
            pos +=3D ' ';
        case 1:=20
            if (value.startsWith(neg)) {
                return ['-', value.substr(neg.length)];
            }
            else if (value.startsWith(pos)) {
                return ['+', value.substr(pos.length)];
            }
            break;
        case 0:=20
            if (value.startsWith('(') && value.endsWith(')')) {
                return ['-', value.substr(1, value.length - 2)];
            }
            break;
    }
    return ['', value];
}
Number.prototype.format =3D function Number$format(format) {
    /// <summary locid=3D"M:J#Number.format" />
    /// <param name=3D"format" type=3D"String"></param>
    /// <returns type=3D"String"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "format", type: String}
    ]);
    if (e) throw e;
    return this._toFormattedString(format, =
Sys.CultureInfo.InvariantCulture);
}
Number.prototype.localeFormat =3D function Number$localeFormat(format) {
    /// <summary locid=3D"M:J#Number.localeFormat" />
    /// <param name=3D"format" type=3D"String"></param>
    /// <returns type=3D"String"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "format", type: String}
    ]);
    if (e) throw e;
    return this._toFormattedString(format, =
Sys.CultureInfo.CurrentCulture);
}
Number.prototype._toFormattedString =3D function =
Number$_toFormattedString(format, cultureInfo) {
    if (!format || (format.length =3D=3D=3D 0) || (format =3D=3D=3D =
'i')) {
        if (cultureInfo && (cultureInfo.name.length > 0)) {
            return this.toLocaleString();
        }
        else {
            return this.toString();
        }
    }
   =20
    var _percentPositivePattern =3D ["n %", "n%", "%n" ];
    var _percentNegativePattern =3D ["-n %", "-n%", "-%n"];
    var _numberNegativePattern =3D ["(n)","-n","- n","n-","n -"];
    var _currencyPositivePattern =3D ["$n","n$","$ n","n $"];
    var _currencyNegativePattern =3D =
["($n)","-$n","$-n","$n-","(n$)","-n$","n-$","n$-","-n $","-$ n","n =
$-","$ n-","$ -n","n- $","($ n)","(n $)"];
    function zeroPad(str, count, left) {
        for (var l=3Dstr.length; l < count; l++) {
            str =3D (left ? ('0' + str) : (str + '0'));
        }
        return str;
    }
   =20
    function expandNumber(number, precision, groupSizes, sep, =
decimalChar) {
       =20
        var curSize =3D groupSizes[0];
        var curGroupIndex =3D 1;
        var factor =3D Math.pow(10, precision);
        var rounded =3D (Math.round(number * factor) / factor);
        if (!isFinite(rounded)) {
            rounded =3D number;
        }
        number =3D rounded;
       =20
        var numberString =3D number.toString();
        var right =3D "";
        var exponent;
       =20
       =20
        var split =3D numberString.split(/e/i);
        numberString =3D split[0];
        exponent =3D (split.length > 1 ? parseInt(split[1]) : 0);
        split =3D numberString.split('.');
        numberString =3D split[0];
        right =3D split.length > 1 ? split[1] : "";
       =20
        var l;
        if (exponent > 0) {
            right =3D zeroPad(right, exponent, false);
            numberString +=3D right.slice(0, exponent);
            right =3D right.substr(exponent);
        }
        else if (exponent < 0) {
            exponent =3D -exponent;
            numberString =3D zeroPad(numberString, exponent+1, true);
            right =3D numberString.slice(-exponent, numberString.length) =
+ right;
            numberString =3D numberString.slice(0, -exponent);
        }
        if (precision > 0) {
            if (right.length > precision) {
                right =3D right.slice(0, precision);
            }
            else {
                right =3D zeroPad(right, precision, false);
            }
            right =3D decimalChar + right;
        }
        else {=20
            right =3D "";
        }
        var stringIndex =3D numberString.length-1;
        var ret =3D "";
        while (stringIndex >=3D 0) {
            if (curSize =3D=3D=3D 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 =3D numberString.slice(stringIndex - curSize + 1, =
stringIndex+1) + sep + ret;
            else
                ret =3D numberString.slice(stringIndex - curSize + 1, =
stringIndex+1);
            stringIndex -=3D curSize;
            if (curGroupIndex < groupSizes.length) {
                curSize =3D groupSizes[curGroupIndex];
                curGroupIndex++;
            }
        }
        return numberString.slice(0, stringIndex + 1) + sep + ret + =
right;
    }
    var nf =3D cultureInfo.numberFormat;
    var number =3D Math.abs(this);
    if (!format)
        format =3D "D";
    var precision =3D -1;
    if (format.length > 1) precision =3D parseInt(format.slice(1), 10);
    var pattern;
    switch (format.charAt(0)) {
    case "d":
    case "D":
        pattern =3D 'n';
        if (precision !=3D=3D -1) {
            number =3D zeroPad(""+number, precision, true);
        }
        if (this < 0) number =3D -number;
        break;
    case "c":
    case "C":
        if (this < 0) pattern =3D =
_currencyNegativePattern[nf.CurrencyNegativePattern];
        else pattern =3D =
_currencyPositivePattern[nf.CurrencyPositivePattern];
        if (precision =3D=3D=3D -1) precision =3D =
nf.CurrencyDecimalDigits;
        number =3D expandNumber(Math.abs(this), precision, =
nf.CurrencyGroupSizes, nf.CurrencyGroupSeparator, =
nf.CurrencyDecimalSeparator);
        break;
    case "n":
    case "N":
        if (this < 0) pattern =3D =
_numberNegativePattern[nf.NumberNegativePattern];
        else pattern =3D 'n';
        if (precision =3D=3D=3D -1) precision =3D =
nf.NumberDecimalDigits;
        number =3D expandNumber(Math.abs(this), precision, =
nf.NumberGroupSizes, nf.NumberGroupSeparator, =
nf.NumberDecimalSeparator);
        break;
    case "p":
    case "P":
        if (this < 0) pattern =3D =
_percentNegativePattern[nf.PercentNegativePattern];
        else pattern =3D =
_percentPositivePattern[nf.PercentPositivePattern];
        if (precision =3D=3D=3D -1) precision =3D =
nf.PercentDecimalDigits;
        number =3D expandNumber(Math.abs(this) * 100, precision, =
nf.PercentGroupSizes, nf.PercentGroupSeparator, =
nf.PercentDecimalSeparator);
        break;
    default:
        throw Error.format(Sys.Res.formatBadFormatSpecifier);
    }
    var regex =3D /n|\$|-|%/g;
    var ret =3D "";
    for (;;) {
        var index =3D regex.lastIndex;
        var ar =3D regex.exec(pattern);
        ret +=3D pattern.slice(index, ar ? ar.index : pattern.length);
        if (!ar)
            break;
        switch (ar[0]) {
        case "n":
            ret +=3D number;
            break;
        case "$":
            ret +=3D nf.CurrencySymbol;
            break;
        case "-":
            ret +=3D nf.NegativeSign;
            break;
        case "%":
            ret +=3D nf.PercentSymbol;
            break;
        }
    }
    return ret;
}
=20
RegExp.__typeName =3D 'RegExp';
RegExp.__class =3D true;
=20
Array.__typeName =3D 'Array';
Array.__class =3D true;
Array.add =3D Array.enqueue =3D function Array$enqueue(array, item) {
    /// <summary locid=3D"M:J#Array.enqueue" />
    /// <param name=3D"array" type=3D"Array" =
elementMayBeNull=3D"true"></param>
    /// <param name=3D"item" mayBeNull=3D"true"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    array[array.length] =3D item;
}
Array.addRange =3D function Array$addRange(array, items) {
    /// <summary locid=3D"M:J#Array.addRange" />
    /// <param name=3D"array" type=3D"Array" =
elementMayBeNull=3D"true"></param>
    /// <param name=3D"items" type=3D"Array" =
elementMayBeNull=3D"true"></param>
    var e =3D 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 =3D function Array$clear(array) {
    /// <summary locid=3D"M:J#Array.clear" />
    /// <param name=3D"array" type=3D"Array" =
elementMayBeNull=3D"true"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true}
    ]);
    if (e) throw e;
    array.length =3D 0;
}
Array.clone =3D function Array$clone(array) {
    /// <summary locid=3D"M:J#Array.clone" />
    /// <param name=3D"array" type=3D"Array" =
elementMayBeNull=3D"true"></param>
    /// <returns type=3D"Array" elementMayBeNull=3D"true"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true}
    ]);
    if (e) throw e;
    if (array.length =3D=3D=3D 1) {
        return [array[0]];
    }
    else {
        return Array.apply(null, array);
    }
}
Array.contains =3D function Array$contains(array, item) {
    /// <summary locid=3D"M:J#Array.contains" />
    /// <param name=3D"array" type=3D"Array" =
elementMayBeNull=3D"true"></param>
    /// <param name=3D"item" mayBeNull=3D"true"></param>
    /// <returns type=3D"Boolean"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    return (Array.indexOf(array, item) >=3D 0);
}
Array.dequeue =3D function Array$dequeue(array) {
    /// <summary locid=3D"M:J#Array.dequeue" />
    /// <param name=3D"array" type=3D"Array" =
elementMayBeNull=3D"true"></param>
    /// <returns mayBeNull=3D"true"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true}
    ]);
    if (e) throw e;
    return array.shift();
}
Array.forEach =3D function Array$forEach(array, method, instance) {
    /// <summary locid=3D"M:J#Array.forEach" />
    /// <param name=3D"array" type=3D"Array" =
elementMayBeNull=3D"true"></param>
    /// <param name=3D"method" type=3D"Function"></param>
    /// <param name=3D"instance" optional=3D"true" =
mayBeNull=3D"true"></param>
    var e =3D 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 =3D 0, l =3D array.length; i < l; i++) {
        var elt =3D array[i];
        if (typeof(elt) !=3D=3D 'undefined') method.call(instance, elt, =
i, array);
    }
}
Array.indexOf =3D function Array$indexOf(array, item, start) {
    /// <summary locid=3D"M:J#Array.indexOf" />
    /// <param name=3D"array" type=3D"Array" =
elementMayBeNull=3D"true"></param>
    /// <param name=3D"item" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <param name=3D"start" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <returns type=3D"Number"></returns>
    var e =3D 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) =3D=3D=3D "undefined") return -1;
    var length =3D array.length;
    if (length !=3D=3D 0) {
        start =3D start - 0;
        if (isNaN(start)) {
            start =3D 0;
        }
        else {
            if (isFinite(start)) {
                start =3D start - (start % 1);
            }
            if (start < 0) {
                start =3D Math.max(0, length + start);
            }
        }
        for (var i =3D start; i < length; i++) {
            if ((typeof(array[i]) !=3D=3D "undefined") && (array[i] =
=3D=3D=3D item)) {
                return i;
            }
        }
    }
    return -1;
}
Array.insert =3D function Array$insert(array, index, item) {
    /// <summary locid=3D"M:J#Array.insert" />
    /// <param name=3D"array" type=3D"Array" =
elementMayBeNull=3D"true"></param>
    /// <param name=3D"index" mayBeNull=3D"true"></param>
    /// <param name=3D"item" mayBeNull=3D"true"></param>
    var e =3D 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 =3D function Array$parse(value) {
    /// <summary locid=3D"M:J#Array.parse" />
    /// <param name=3D"value" type=3D"String" =
mayBeNull=3D"true"></param>
    /// <returns type=3D"Array" elementMayBeNull=3D"true"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "value", type: String, mayBeNull: true}
    ]);
    if (e) throw e;
    if (!value) return [];
    var v =3D eval(value);
    if (!Array.isInstanceOfType(v)) throw Error.argument('value', =
Sys.Res.arrayParseBadFormat);
    return v;
}
Array.remove =3D function Array$remove(array, item) {
    /// <summary locid=3D"M:J#Array.remove" />
    /// <param name=3D"array" type=3D"Array" =
elementMayBeNull=3D"true"></param>
    /// <param name=3D"item" mayBeNull=3D"true"></param>
    /// <returns type=3D"Boolean"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    var index =3D Array.indexOf(array, item);
    if (index >=3D 0) {
        array.splice(index, 1);
    }
    return (index >=3D 0);
}
Array.removeAt =3D function Array$removeAt(array, index) {
    /// <summary locid=3D"M:J#Array.removeAt" />
    /// <param name=3D"array" type=3D"Array" =
elementMayBeNull=3D"true"></param>
    /// <param name=3D"index" mayBeNull=3D"true"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "index", mayBeNull: true}
    ]);
    if (e) throw e;
    array.splice(index, 1);
}
=20
if (!window) this.window =3D this;
window.Type =3D Function;
Type.__fullyQualifiedIdentifierRegExp =3D new RegExp("^[^.0-9 =
\\s|,;:&*=3D+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]([^ =
\\s|,;:&*=3D+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]*[^. =
\\s|,;:&*=3D+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\])?$", "i");
Type.__identifierRegExp =3D new RegExp("^[^.0-9 =
\\s|,;:&*=3D+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\][^. =
\\s|,;:&*=3D+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]*$", "i");
Type.prototype.callBaseMethod =3D function Type$callBaseMethod(instance, =
name, baseArguments) {
    /// <summary locid=3D"M:J#Type.callBaseMethod" />
    /// <param name=3D"instance"></param>
    /// <param name=3D"name" type=3D"String"></param>
    /// <param name=3D"baseArguments" type=3D"Array" optional=3D"true" =
mayBeNull=3D"true" elementMayBeNull=3D"true"></param>
    /// <returns></returns>
    var e =3D 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 =3D 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 =3D function Type$getBaseMethod(instance, =
name) {
    /// <summary locid=3D"M:J#Type.getBaseMethod" />
    /// <param name=3D"instance"></param>
    /// <param name=3D"name" type=3D"String"></param>
    /// <returns type=3D"Function" mayBeNull=3D"true"></returns>
    var e =3D 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 =3D this.getBaseType();
    if (baseType) {
        var baseMethod =3D baseType.prototype[name];
        return (baseMethod instanceof Function) ? baseMethod : null;
    }
    return null;
}
Type.prototype.getBaseType =3D function Type$getBaseType() {
    /// <summary locid=3D"M:J#Type.getBaseType" />
    /// <returns type=3D"Type" mayBeNull=3D"true"></returns>
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    return (typeof(this.__baseType) =3D=3D=3D "undefined") ? null : =
this.__baseType;
}
Type.prototype.getInterfaces =3D function Type$getInterfaces() {
    /// <summary locid=3D"M:J#Type.getInterfaces" />
    /// <returns type=3D"Array" elementType=3D"Type" mayBeNull=3D"false" =
elementMayBeNull=3D"false"></returns>
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    var result =3D [];
    var type =3D this;
    while(type) {
        var interfaces =3D type.__interfaces;
        if (interfaces) {
            for (var i =3D 0, l =3D interfaces.length; i < l; i++) {
                var interfaceType =3D interfaces[i];
                if (!Array.contains(result, interfaceType)) {
                    result[result.length] =3D interfaceType;
                }
            }
        }
        type =3D type.__baseType;
    }
    return result;
}
Type.prototype.getName =3D function Type$getName() {
    /// <summary locid=3D"M:J#Type.getName" />
    /// <returns type=3D"String"></returns>
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    return (typeof(this.__typeName) =3D=3D=3D "undefined") ? "" : =
this.__typeName;
}
Type.prototype.implementsInterface =3D function =
Type$implementsInterface(interfaceType) {
    /// <summary locid=3D"M:J#Type.implementsInterface" />
    /// <param name=3D"interfaceType" type=3D"Type"></param>
    /// <returns type=3D"Boolean"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "interfaceType", type: Type}
    ]);
    if (e) throw e;
    this.resolveInheritance();
    var interfaceName =3D interfaceType.getName();
    var cache =3D this.__interfaceCache;
    if (cache) {
        var cacheEntry =3D cache[interfaceName];
        if (typeof(cacheEntry) !=3D=3D 'undefined') return cacheEntry;
    }
    else {
        cache =3D this.__interfaceCache =3D {};
    }
    var baseType =3D this;
    while (baseType) {
        var interfaces =3D baseType.__interfaces;
        if (interfaces) {
            if (Array.indexOf(interfaces, interfaceType) !=3D=3D -1) {
                return cache[interfaceName] =3D true;
            }
        }
        baseType =3D baseType.__baseType;
    }
    return cache[interfaceName] =3D false;
}
Type.prototype.inheritsFrom =3D function Type$inheritsFrom(parentType) {
    /// <summary locid=3D"M:J#Type.inheritsFrom" />
    /// <param name=3D"parentType" type=3D"Type"></param>
    /// <returns type=3D"Boolean"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "parentType", type: Type}
    ]);
    if (e) throw e;
    this.resolveInheritance();
    var baseType =3D this.__baseType;
    while (baseType) {
        if (baseType =3D=3D=3D parentType) {
            return true;
        }
        baseType =3D baseType.__baseType;
    }
    return false;
}
Type.prototype.initializeBase =3D function Type$initializeBase(instance, =
baseArguments) {
    /// <summary locid=3D"M:J#Type.initializeBase" />
    /// <param name=3D"instance"></param>
    /// <param name=3D"baseArguments" type=3D"Array" optional=3D"true" =
mayBeNull=3D"true" elementMayBeNull=3D"true"></param>
    /// <returns></returns>
    var e =3D 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 =3D function =
Type$isImplementedBy(instance) {
    /// <summary locid=3D"M:J#Type.isImplementedBy" />
    /// <param name=3D"instance" mayBeNull=3D"true"></param>
    /// <returns type=3D"Boolean"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "instance", mayBeNull: true}
    ]);
    if (e) throw e;
    if (typeof(instance) =3D=3D=3D "undefined" || instance =3D=3D=3D =
null) return false;
    var instanceType =3D Object.getType(instance);
    return !!(instanceType.implementsInterface && =
instanceType.implementsInterface(this));
}
Type.prototype.isInstanceOfType =3D function =
Type$isInstanceOfType(instance) {
    /// <summary locid=3D"M:J#Type.isInstanceOfType" />
    /// <param name=3D"instance" mayBeNull=3D"true"></param>
    /// <returns type=3D"Boolean"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "instance", mayBeNull: true}
    ]);
    if (e) throw e;
    if (typeof(instance) =3D=3D=3D "undefined" || instance =3D=3D=3D =
null) return false;
    if (instance instanceof this) return true;
    var instanceType =3D Object.getType(instance);
    return !!(instanceType =3D=3D=3D this) ||
           (instanceType.inheritsFrom && =
instanceType.inheritsFrom(this)) ||
           (instanceType.implementsInterface && =
instanceType.implementsInterface(this));
}
Type.prototype.registerClass =3D function Type$registerClass(typeName, =
baseType, interfaceTypes) {
    /// <summary locid=3D"M:J#Type.registerClass" />
    /// <param name=3D"typeName" type=3D"String"></param>
    /// <param name=3D"baseType" type=3D"Type" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <param name=3D"interfaceTypes" parameterArray=3D"true" =
type=3D"Type"></param>
    /// <returns type=3D"Type"></returns>
    var e =3D 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 =3D eval(typeName);
    }
    catch(e) {
        throw Error.argument('typeName', Sys.Res.argumentTypeName);
    }
    if (parsedName !=3D=3D this) throw Error.argument('typeName', =
Sys.Res.badTypeName);
    if (Sys.__registeredTypes[typeName]) throw =
Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice, =
typeName));
    if ((arguments.length > 1) && (typeof(baseType) =3D=3D=3D =
'undefined')) throw Error.argumentUndefined('baseType');
    if (baseType && !baseType.__class) throw Error.argument('baseType', =
Sys.Res.baseNotAClass);
    this.prototype.constructor =3D this;
    this.__typeName =3D typeName;
    this.__class =3D true;
    if (baseType) {
        this.__baseType =3D baseType;
        this.__basePrototypePending =3D true;
    }
    Sys.__upperCaseTypes[typeName.toUpperCase()] =3D this;
    if (interfaceTypes) {
        this.__interfaces =3D [];
        this.resolveInheritance();
        for (var i =3D 2, l =3D arguments.length; i < l; i++) {
            var interfaceType =3D arguments[i];
            if (!interfaceType.__interface) throw =
Error.argument('interfaceTypes[' + (i - 2) + ']', =
Sys.Res.notAnInterface);
            for (var methodName in interfaceType.prototype) {
                var method =3D interfaceType.prototype[methodName];
                if (!this.prototype[methodName]) {
                    this.prototype[methodName] =3D method;
                }
            }
            this.__interfaces.push(interfaceType);
        }
    }
    Sys.__registeredTypes[typeName] =3D true;
    return this;
}
Type.prototype.registerInterface =3D function =
Type$registerInterface(typeName) {
    /// <summary locid=3D"M:J#Type.registerInterface" />
    /// <param name=3D"typeName" type=3D"String"></param>
    /// <returns type=3D"Type"></returns>
    var e =3D 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 =3D eval(typeName);
    }
    catch(e) {
        throw Error.argument('typeName', Sys.Res.argumentTypeName);
    }
    if (parsedName !=3D=3D this) throw Error.argument('typeName', =
Sys.Res.badTypeName);
    if (Sys.__registeredTypes[typeName]) throw =
Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice, =
typeName));
    Sys.__upperCaseTypes[typeName.toUpperCase()] =3D this;
    this.prototype.constructor =3D this;
    this.__typeName =3D typeName;
    this.__interface =3D true;
    Sys.__registeredTypes[typeName] =3D true;
    return this;
}
Type.prototype.resolveInheritance =3D function Type$resolveInheritance() =
{
    /// <summary locid=3D"M:J#Type.resolveInheritance" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    if (this.__basePrototypePending) {
        var baseType =3D this.__baseType;
        baseType.resolveInheritance();
        for (var memberName in baseType.prototype) {
            var memberValue =3D baseType.prototype[memberName];
            if (!this.prototype[memberName]) {
                this.prototype[memberName] =3D memberValue;
            }
        }
        delete this.__basePrototypePending;
    }
}
Type.getRootNamespaces =3D function Type$getRootNamespaces() {
    /// <summary locid=3D"M:J#Type.getRootNamespaces" />
    /// <returns type=3D"Array"></returns>
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    return Array.clone(Sys.__rootNamespaces);
}
Type.isClass =3D function Type$isClass(type) {
    /// <summary locid=3D"M:J#Type.isClass" />
    /// <param name=3D"type" mayBeNull=3D"true"></param>
    /// <returns type=3D"Boolean"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "type", mayBeNull: true}
    ]);
    if (e) throw e;
    if ((typeof(type) =3D=3D=3D 'undefined') || (type =3D=3D=3D null)) =
return false;
    return !!type.__class;
}
Type.isInterface =3D function Type$isInterface(type) {
    /// <summary locid=3D"M:J#Type.isInterface" />
    /// <param name=3D"type" mayBeNull=3D"true"></param>
    /// <returns type=3D"Boolean"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "type", mayBeNull: true}
    ]);
    if (e) throw e;
    if ((typeof(type) =3D=3D=3D 'undefined') || (type =3D=3D=3D null)) =
return false;
    return !!type.__interface;
}
Type.isNamespace =3D function Type$isNamespace(object) {
    /// <summary locid=3D"M:J#Type.isNamespace" />
    /// <param name=3D"object" mayBeNull=3D"true"></param>
    /// <returns type=3D"Boolean"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "object", mayBeNull: true}
    ]);
    if (e) throw e;
    if ((typeof(object) =3D=3D=3D 'undefined') || (object =3D=3D=3D =
null)) return false;
    return !!object.__namespace;
}
Type.parse =3D function Type$parse(typeName, ns) {
    /// <summary locid=3D"M:J#Type.parse" />
    /// <param name=3D"typeName" type=3D"String" =
mayBeNull=3D"true"></param>
    /// <param name=3D"ns" optional=3D"true" mayBeNull=3D"true"></param>
    /// <returns type=3D"Type" mayBeNull=3D"true"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "typeName", type: String, mayBeNull: true},
        {name: "ns", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var fn;
    if (ns) {
        fn =3D Sys.__upperCaseTypes[ns.getName().toUpperCase() + '.' + =
typeName.toUpperCase()];
        return fn || null;
    }
    if (!typeName) return null;
    if (!Type.__htClasses) {
        Type.__htClasses =3D {};
    }
    fn =3D Type.__htClasses[typeName];
    if (!fn) {
        fn =3D eval(typeName);
        if (typeof(fn) !=3D=3D 'function') throw =
Error.argument('typeName', Sys.Res.notATypeName);
        Type.__htClasses[typeName] =3D fn;
    }
    return fn;
}
Type.registerNamespace =3D function =
Type$registerNamespace(namespacePath) {
    /// <summary locid=3D"M:J#Type.registerNamespace" />
    /// <param name=3D"namespacePath" type=3D"String"></param>
    var e =3D 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 =3D window;
    var namespaceParts =3D namespacePath.split('.');
    for (var i =3D 0; i < namespaceParts.length; i++) {
        var currentPart =3D namespaceParts[i];
        var ns =3D rootObject[currentPart];
        if (ns && !ns.__namespace) {
            throw =
Error.invalidOperation(String.format(Sys.Res.namespaceContainsObject, =
namespaceParts.splice(0, i + 1).join('.')));
        }
        if (!ns) {
            ns =3D rootObject[currentPart] =3D {
                __namespace: true,
                __typeName: namespaceParts.slice(0, i + 1).join('.')
            };
            if (i =3D=3D=3D 0) {
                Sys.__rootNamespaces[Sys.__rootNamespaces.length] =3D =
ns;
            }
            var parsedName;
            try {
                parsedName =3D eval(ns.__typeName);
            }
            catch(e) {
                parsedName =3D null;
            }
            if (parsedName !=3D=3D ns) {
                delete rootObject[currentPart];
                throw Error.argument('namespacePath', =
Sys.Res.invalidNameSpace);
            }
            ns.getName =3D function ns$getName() {return =
this.__typeName;}
        }
        rootObject =3D ns;
    }
}
window.Sys =3D {
    __namespace: true,
    __typeName: "Sys",
    getName: function() {return "Sys";},
    __upperCaseTypes: {}
};
Sys.__rootNamespaces =3D [Sys];
Sys.__registeredTypes =3D {};
=20
Sys.IDisposable =3D function Sys$IDisposable() {
    throw Error.notImplemented();
}
    function Sys$IDisposable$dispose() {
        throw Error.notImplemented();
    }
Sys.IDisposable.prototype =3D {
    dispose: Sys$IDisposable$dispose
}
Sys.IDisposable.registerInterface('Sys.IDisposable');
=20
Sys.StringBuilder =3D function Sys$StringBuilder(initialText) {
    /// <summary locid=3D"M:J#Sys.StringBuilder.#ctor" />
    /// <param name=3D"initialText" optional=3D"true" =
mayBeNull=3D"true"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "initialText", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    this._parts =3D (typeof(initialText) !=3D=3D 'undefined' && =
initialText !=3D=3D null && initialText !=3D=3D '') ?
        [initialText.toString()] : [];
    this._value =3D {};
    this._len =3D 0;
}
    function Sys$StringBuilder$append(text) {
        /// <summary locid=3D"M:J#Sys.StringBuilder.append" />
        /// <param name=3D"text" mayBeNull=3D"true"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "text", mayBeNull: true}
        ]);
        if (e) throw e;
        this._parts[this._parts.length] =3D text;
    }
    function Sys$StringBuilder$appendLine(text) {
        /// <summary locid=3D"M:J#Sys.StringBuilder.appendLine" />
        /// <param name=3D"text" optional=3D"true" =
mayBeNull=3D"true"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "text", mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        this._parts[this._parts.length] =3D
            ((typeof(text) =3D=3D=3D 'undefined') || (text =3D=3D=3D =
null) || (text =3D=3D=3D '')) ?
            '\r\n' : text + '\r\n';
    }
    function Sys$StringBuilder$clear() {
        /// <summary locid=3D"M:J#Sys.StringBuilder.clear" />
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        this._parts =3D [];
        this._value =3D {};
        this._len =3D 0;
    }
    function Sys$StringBuilder$isEmpty() {
        /// <summary locid=3D"M:J#Sys.StringBuilder.isEmpty" />
        /// <returns type=3D"Boolean"></returns>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        if (this._parts.length =3D=3D=3D 0) return true;
        return this.toString() =3D=3D=3D '';
    }
    function Sys$StringBuilder$toString(separator) {
        /// <summary locid=3D"M:J#Sys.StringBuilder.toString" />
        /// <param name=3D"separator" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
        /// <returns type=3D"String"></returns>
        var e =3D Function._validateParams(arguments, [
            {name: "separator", type: String, mayBeNull: true, optional: =
true}
        ]);
        if (e) throw e;
        separator =3D separator || '';
        var parts =3D this._parts;
        if (this._len !=3D=3D parts.length) {
            this._value =3D {};
            this._len =3D parts.length;
        }
        var val =3D this._value;
        if (typeof(val[separator]) =3D=3D=3D 'undefined') {
            if (separator !=3D=3D '') {
                for (var i =3D 0; i < parts.length;) {
                    if ((typeof(parts[i]) =3D=3D=3D 'undefined') || =
(parts[i] =3D=3D=3D '') || (parts[i] =3D=3D=3D null)) {
                        parts.splice(i, 1);
                    }
                    else {
                        i++;
                    }
                }
            }
            val[separator] =3D this._parts.join(separator);
        }
        return val[separator];
    }
Sys.StringBuilder.prototype =3D {
    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');
=20
if (!window.XMLHttpRequest) {
    window.XMLHttpRequest =3D function window$XMLHttpRequest() {
        var progIDs =3D [ 'Msxml2.XMLHTTP.3.0', 'Msxml2.XMLHTTP' ];
        for (var i =3D 0, l =3D progIDs.length; i < l; i++) {
            try {
                return new ActiveXObject(progIDs[i]);
            }
            catch (ex) {
            }
        }
        return null;
    }
}
=20
Sys.Browser =3D {};
Sys.Browser.InternetExplorer =3D {};
Sys.Browser.Firefox =3D {};
Sys.Browser.Safari =3D {};
Sys.Browser.Opera =3D {};
Sys.Browser.agent =3D null;
Sys.Browser.hasDebuggerStatement =3D false;
Sys.Browser.name =3D navigator.appName;
Sys.Browser.version =3D parseFloat(navigator.appVersion);
Sys.Browser.documentMode =3D 0;
if (navigator.userAgent.indexOf(' MSIE ') > -1) {
    Sys.Browser.agent =3D Sys.Browser.InternetExplorer;
    Sys.Browser.version =3D parseFloat(navigator.userAgent.match(/MSIE =
(\d+\.\d+)/)[1]);
    if (Sys.Browser.version >=3D 8) {
        if (document.documentMode >=3D 7) {
            Sys.Browser.documentMode =3D document.documentMode;   =20
        }
    }
    Sys.Browser.hasDebuggerStatement =3D true;
}
else if (navigator.userAgent.indexOf(' Firefox/') > -1) {
    Sys.Browser.agent =3D Sys.Browser.Firefox;
    Sys.Browser.version =3D parseFloat(navigator.userAgent.match(/ =
Firefox\/(\d+\.\d+)/)[1]);
    Sys.Browser.name =3D 'Firefox';
    Sys.Browser.hasDebuggerStatement =3D true;
}
else if (navigator.userAgent.indexOf(' AppleWebKit/') > -1) {
    Sys.Browser.agent =3D Sys.Browser.Safari;
    Sys.Browser.version =3D parseFloat(navigator.userAgent.match(/ =
AppleWebKit\/(\d+(\.\d+)?)/)[1]);
    Sys.Browser.name =3D 'Safari';
}
else if (navigator.userAgent.indexOf('Opera/') > -1) {
    Sys.Browser.agent =3D Sys.Browser.Opera;
}
Type.registerNamespace('Sys.UI');
=20
Sys._Debug =3D function Sys$_Debug() {
    /// <summary locid=3D"M:J#Sys.Debug.#ctor" />
    /// <field name=3D"isDebug" type=3D"Boolean" =
locid=3D"F:J#Sys.Debug.isDebug"></field>
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
}
    function Sys$_Debug$_appendConsole(text) {
        if ((typeof(Debug) !=3D=3D '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 =3D document.getElementById('TraceConsole');
        if (traceElement && (traceElement.tagName.toUpperCase() =
=3D=3D=3D 'TEXTAREA')) {
            traceElement.value +=3D text + '\n';
        }
    }
    function Sys$_Debug$assert(condition, message, displayCaller) {
        /// <summary locid=3D"M:J#Sys.Debug.assert" />
        /// <param name=3D"condition" type=3D"Boolean"></param>
        /// <param name=3D"message" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
        /// <param name=3D"displayCaller" type=3D"Boolean" =
optional=3D"true"></param>
        var e =3D 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 =3D (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() {
        /// <summary locid=3D"M:J#Sys.Debug.clearTrace" />
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        var traceElement =3D document.getElementById('TraceConsole');
        if (traceElement && (traceElement.tagName.toUpperCase() =
=3D=3D=3D 'TEXTAREA')) {
            traceElement.value =3D '';
        }
    }
    function Sys$_Debug$fail(message) {
        /// <summary locid=3D"M:J#Sys.Debug.fail" />
        /// <param name=3D"message" type=3D"String" =
mayBeNull=3D"true"></param>
        var e =3D 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) {
        /// <summary locid=3D"M:J#Sys.Debug.trace" />
        /// <param name=3D"text"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "text"}
        ]);
        if (e) throw e;
        this._appendConsole(text);
        this._appendTrace(text);
    }
    function Sys$_Debug$traceDump(object, name) {
        /// <summary locid=3D"M:J#Sys.Debug.traceDump" />
        /// <param name=3D"object" mayBeNull=3D"true"></param>
        /// <param name=3D"name" type=3D"String" mayBeNull=3D"true" =
optional=3D"true"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "object", mayBeNull: true},
            {name: "name", type: String, mayBeNull: true, optional: =
true}
        ]);
        if (e) throw e;
        var text =3D this._traceDump(object, name, true);
    }
    function Sys$_Debug$_traceDump(object, name, recursive, =
indentationPadding, loopArray) {
        name =3D name? name : 'traceDump';
        indentationPadding =3D indentationPadding? indentationPadding : =
'';
        if (object =3D=3D=3D 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 =3D [];
                }
                else if (Array.contains(loopArray, object)) {
                    this.trace(indentationPadding + name + ': ...');
                    return;
                }
                Array.add(loopArray, object);
                if ((object =3D=3D window) || (object =3D=3D=3D =
document) ||
                    (window.HTMLElement && (object instanceof =
HTMLElement)) ||
                    (typeof(object.nodeName) =3D=3D=3D 'string')) {
                    var tag =3D object.tagName? object.tagName : =
'DomElement';
                    if (object.id) {
                        tag +=3D ' - ' + object.id;
                    }
                    this.trace(indentationPadding + name + ' {' +  tag + =
'}');
                }
                else {
                    var typeName =3D Object.getTypeName(object);
                    this.trace(indentationPadding + name + =
(typeof(typeName) =3D=3D=3D 'string' ? ' {' + typeName + '}' : ''));
                    if ((indentationPadding =3D=3D=3D '') || recursive) =
{
                        indentationPadding +=3D "    ";
                        var i, length, properties, p, v;
                        if (Array.isInstanceOfType(object)) {
                            length =3D object.length;
                            for (i =3D 0; i < length; i++) {
                                this._traceDump(object[i], '[' + i + =
']', recursive, indentationPadding, loopArray);
                            }
                        }
                        else {
                            for (p in object) {
                                v =3D object[p];
                                if (!Function.isInstanceOfType(v)) {
                                    this._traceDump(v, p, recursive, =
indentationPadding, loopArray);
                                }
                            }
                        }
                    }
                }
                Array.remove(loopArray, object);
        }
    }
Sys._Debug.prototype =3D {
    _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 =3D new Sys._Debug();
    Sys.Debug.isDebug =3D true;
=20
function Sys$Enum$parse(value, ignoreCase) {
    /// <summary locid=3D"M:J#Sys.Enum.parse" />
    /// <param name=3D"value" type=3D"String"></param>
    /// <param name=3D"ignoreCase" type=3D"Boolean" =
optional=3D"true"></param>
    /// <returns></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "value", type: String},
        {name: "ignoreCase", type: Boolean, optional: true}
    ]);
    if (e) throw e;
    var values, parsed, val;
    if (ignoreCase) {
        values =3D this.__lowerCaseValues;
        if (!values) {
            this.__lowerCaseValues =3D values =3D {};
            var prototype =3D this.prototype;
            for (var name in prototype) {
                values[name.toLowerCase()] =3D prototype[name];
            }
        }
    }
    else {
        values =3D this.prototype;
    }
    if (!this.__flags) {
        val =3D (ignoreCase ? value.toLowerCase() : value);
        parsed =3D values[val.trim()];
        if (typeof(parsed) !=3D=3D 'number') throw =
Error.argument('value', String.format(Sys.Res.enumInvalidValue, value, =
this.__typeName));
        return parsed;
    }
    else {
        var parts =3D (ignoreCase ? value.toLowerCase() : =
value).split(',');
        var v =3D 0;
        for (var i =3D parts.length - 1; i >=3D 0; i--) {
            var part =3D parts[i].trim();
            parsed =3D values[part];
            if (typeof(parsed) !=3D=3D 'number') throw =
Error.argument('value', String.format(Sys.Res.enumInvalidValue, =
value.split(',')[i].trim(), this.__typeName));
            v |=3D parsed;
        }
        return v;
    }
}
function Sys$Enum$toString(value) {
    /// <summary locid=3D"M:J#Sys.Enum.toString" />
    /// <param name=3D"value" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <returns type=3D"String"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "value", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    if ((typeof(value) =3D=3D=3D 'undefined') || (value =3D=3D=3D null)) =
return this.__string;
    if ((typeof(value) !=3D 'number') || ((value % 1) !=3D=3D 0)) throw =
Error.argumentType('value', Object.getType(value), this);
    var values =3D this.prototype;
    var i;
    if (!this.__flags || (value =3D=3D=3D 0)) {
        for (i in values) {
            if (values[i] =3D=3D=3D value) {
                return i;
            }
        }
    }
    else {
        var sorted =3D this.__sortedValues;
        if (!sorted) {
            sorted =3D [];
            for (i in values) {
                sorted[sorted.length] =3D {key: i, value: values[i]};
            }
            sorted.sort(function(a, b) {
                return a.value - b.value;
            });
            this.__sortedValues =3D sorted;
        }
        var parts =3D [];
        var v =3D value;
        for (i =3D sorted.length - 1; i >=3D 0; i--) {
            var kvp =3D sorted[i];
            var vali =3D kvp.value;
            if (vali =3D=3D=3D 0) continue;
            if ((vali & value) =3D=3D=3D vali) {
                parts[parts.length] =3D kvp.key;
                v -=3D vali;
                if (v =3D=3D=3D 0) break;
            }
        }
        if (parts.length && v =3D=3D=3D 0) return =
parts.reverse().join(', ');
    }
    throw Error.argumentOutOfRange('value', value, =
String.format(Sys.Res.enumInvalidValue, value, this.__typeName));
}
Type.prototype.registerEnum =3D function Type$registerEnum(name, flags) =
{
    /// <summary locid=3D"M:J#Sys.UI.LineType.#ctor" />
    /// <param name=3D"name" type=3D"String"></param>
    /// <param name=3D"flags" type=3D"Boolean" =
optional=3D"true"></param>
    var e =3D 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 =3D eval(name);
    }
    catch(e) {
        throw Error.argument('name', Sys.Res.argumentTypeName);
    }
    if (parsedName !=3D=3D this) throw Error.argument('name', =
Sys.Res.badTypeName);
    if (Sys.__registeredTypes[name]) throw =
Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice, =
name));
    for (var i in this.prototype) {
        var val =3D this.prototype[i];
        if (!Type.__identifierRegExp.test(i)) throw =
Error.invalidOperation(String.format(Sys.Res.enumInvalidValueName, i));
        if (typeof(val) !=3D=3D 'number' || (val % 1) !=3D=3D 0) throw =
Error.invalidOperation(Sys.Res.enumValueNotInteger);
        if (typeof(this[i]) !=3D=3D 'undefined') throw =
Error.invalidOperation(String.format(Sys.Res.enumReservedName, i));
    }
    Sys.__upperCaseTypes[name.toUpperCase()] =3D this;
    for (var i in this.prototype) {
        this[i] =3D this.prototype[i];
    }
    this.__typeName =3D name;
    this.parse =3D Sys$Enum$parse;
    this.__string =3D this.toString();
    this.toString =3D Sys$Enum$toString;
    this.__flags =3D flags;
    this.__enum =3D true;
    Sys.__registeredTypes[name] =3D true;
}
Type.isEnum =3D function Type$isEnum(type) {
    /// <summary locid=3D"M:J#Type.isEnum" />
    /// <param name=3D"type" mayBeNull=3D"true"></param>
    /// <returns type=3D"Boolean"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "type", mayBeNull: true}
    ]);
    if (e) throw e;
    if ((typeof(type) =3D=3D=3D 'undefined') || (type =3D=3D=3D null)) =
return false;
    return !!type.__enum;
}
Type.isFlags =3D function Type$isFlags(type) {
    /// <summary locid=3D"M:J#Type.isFlags" />
    /// <param name=3D"type" mayBeNull=3D"true"></param>
    /// <returns type=3D"Boolean"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "type", mayBeNull: true}
    ]);
    if (e) throw e;
    if ((typeof(type) =3D=3D=3D 'undefined') || (type =3D=3D=3D null)) =
return false;
    return !!type.__flags;
}
=20
Sys.EventHandlerList =3D function Sys$EventHandlerList() {
    /// <summary locid=3D"M:J#Sys.EventHandlerList.#ctor" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    this._list =3D {};
}
    function Sys$EventHandlerList$addHandler(id, handler) {
        /// <summary locid=3D"M:J#Sys.EventHandlerList.addHandler" />
        /// <param name=3D"id" type=3D"String"></param>
        /// <param name=3D"handler" type=3D"Function"></param>
        var e =3D 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) {
        /// <summary locid=3D"M:J#Sys.EventHandlerList.removeHandler" />
        /// <param name=3D"id" type=3D"String"></param>
        /// <param name=3D"handler" type=3D"Function"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "id", type: String},
            {name: "handler", type: Function}
        ]);
        if (e) throw e;
        var evt =3D this._getEvent(id);
        if (!evt) return;
        Array.remove(evt, handler);
    }
    function Sys$EventHandlerList$getHandler(id) {
        /// <summary locid=3D"M:J#Sys.EventHandlerList.getHandler" />
        /// <param name=3D"id" type=3D"String"></param>
        /// <returns type=3D"Function"></returns>
        var e =3D Function._validateParams(arguments, [
            {name: "id", type: String}
        ]);
        if (e) throw e;
        var evt =3D this._getEvent(id);
        if (!evt || (evt.length =3D=3D=3D 0)) return null;
        evt =3D Array.clone(evt);
        return function(source, args) {
            for (var i =3D 0, l =3D evt.length; i < l; i++) {
                evt[i](source, args);
            }
        };
    }
    function Sys$EventHandlerList$_getEvent(id, create) {
        if (!this._list[id]) {
            if (!create) return null;
            this._list[id] =3D [];
        }
        return this._list[id];
    }
Sys.EventHandlerList.prototype =3D {
    addHandler: Sys$EventHandlerList$addHandler,
    removeHandler: Sys$EventHandlerList$removeHandler,
    getHandler: Sys$EventHandlerList$getHandler,
    _getEvent: Sys$EventHandlerList$_getEvent
}
Sys.EventHandlerList.registerClass('Sys.EventHandlerList');
=20
Sys.EventArgs =3D function Sys$EventArgs() {
    /// <summary locid=3D"M:J#Sys.EventArgs.#ctor" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
}
Sys.EventArgs.registerClass('Sys.EventArgs');
Sys.EventArgs.Empty =3D new Sys.EventArgs();
=20
Sys.CancelEventArgs =3D function Sys$CancelEventArgs() {
    /// <summary locid=3D"M:J#Sys.CancelEventArgs.#ctor" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    Sys.CancelEventArgs.initializeBase(this);
    this._cancel =3D false;
}
    function Sys$CancelEventArgs$get_cancel() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.CancelEventArgs.cancel"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._cancel;
    }
    function Sys$CancelEventArgs$set_cancel(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Boolean}]);
        if (e) throw e;
        this._cancel =3D value;
    }
Sys.CancelEventArgs.prototype =3D {
    get_cancel: Sys$CancelEventArgs$get_cancel,
    set_cancel: Sys$CancelEventArgs$set_cancel
}
Sys.CancelEventArgs.registerClass('Sys.CancelEventArgs', Sys.EventArgs);
=20
Sys.INotifyPropertyChange =3D function Sys$INotifyPropertyChange() {
    /// <summary locid=3D"M:J#Sys.INotifyPropertyChange.#ctor" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
    function Sys$INotifyPropertyChange$add_propertyChanged(handler) {
    /// <summary locid=3D"E:J#Sys.INotifyPropertyChange.propertyChanged" =
/>
    var e =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
    if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$INotifyPropertyChange$remove_propertyChanged(handler) {
    var e =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
    if (e) throw e;
        throw Error.notImplemented();
    }
Sys.INotifyPropertyChange.prototype =3D {
    add_propertyChanged: Sys$INotifyPropertyChange$add_propertyChanged,
    remove_propertyChanged: =
Sys$INotifyPropertyChange$remove_propertyChanged
}
Sys.INotifyPropertyChange.registerInterface('Sys.INotifyPropertyChange');=

=20
Sys.PropertyChangedEventArgs =3D function =
Sys$PropertyChangedEventArgs(propertyName) {
    /// <summary locid=3D"M:J#Sys.PropertyChangedEventArgs.#ctor" />
    /// <param name=3D"propertyName" type=3D"String"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "propertyName", type: String}
    ]);
    if (e) throw e;
    Sys.PropertyChangedEventArgs.initializeBase(this);
    this._propertyName =3D propertyName;
}
=20
    function Sys$PropertyChangedEventArgs$get_propertyName() {
        /// <value type=3D"String" =
locid=3D"P:J#Sys.PropertyChangedEventArgs.propertyName"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._propertyName;
    }
Sys.PropertyChangedEventArgs.prototype =3D {
    get_propertyName: Sys$PropertyChangedEventArgs$get_propertyName
}
Sys.PropertyChangedEventArgs.registerClass('Sys.PropertyChangedEventArgs'=
, Sys.EventArgs);
=20
Sys.INotifyDisposing =3D function Sys$INotifyDisposing() {
    /// <summary locid=3D"M:J#Sys.INotifyDisposing.#ctor" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
    function Sys$INotifyDisposing$add_disposing(handler) {
    /// <summary locid=3D"E:J#Sys.INotifyDisposing.disposing" />
    var e =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
    if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$INotifyDisposing$remove_disposing(handler) {
    var e =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
    if (e) throw e;
        throw Error.notImplemented();
    }
Sys.INotifyDisposing.prototype =3D {
    add_disposing: Sys$INotifyDisposing$add_disposing,
    remove_disposing: Sys$INotifyDisposing$remove_disposing
}
Sys.INotifyDisposing.registerInterface("Sys.INotifyDisposing");
=20
Sys.Component =3D function Sys$Component() {
    /// <summary locid=3D"M:J#Sys.Component.#ctor" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    if (Sys.Application) Sys.Application.registerDisposableObject(this);
}
    function Sys$Component$get_events() {
        /// <value type=3D"Sys.EventHandlerList" =
locid=3D"P:J#Sys.Component.events"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        if (!this._events) {
            this._events =3D new Sys.EventHandlerList();
        }
        return this._events;
    }
    function Sys$Component$get_id() {
        /// <value type=3D"String" =
locid=3D"P:J#Sys.Component.id"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._id;
    }
    function Sys$Component$set_id(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: String}]);
        if (e) throw e;
        if (this._idSet) throw =
Error.invalidOperation(Sys.Res.componentCantSetIdTwice);
        this._idSet =3D true;
        var oldId =3D this.get_id();
        if (oldId && Sys.Application.findComponent(oldId)) throw =
Error.invalidOperation(Sys.Res.componentCantSetIdAfterAddedToApp);
        this._id =3D value;
    }
    function Sys$Component$get_isInitialized() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.Component.isInitialized"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._initialized;
    }
    function Sys$Component$get_isUpdating() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.Component.isUpdating"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._updating;
    }
    function Sys$Component$add_disposing(handler) {
        /// <summary locid=3D"E:J#Sys.Component.disposing" />
        var e =3D 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 =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
        if (e) throw e;
        this.get_events().removeHandler("disposing", handler);
    }
    function Sys$Component$add_propertyChanged(handler) {
        /// <summary locid=3D"E:J#Sys.Component.propertyChanged" />
        var e =3D 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 =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
        if (e) throw e;
        this.get_events().removeHandler("propertyChanged", handler);
    }
    function Sys$Component$beginUpdate() {
        this._updating =3D true;
    }
    function Sys$Component$dispose() {
        if (this._events) {
            var handler =3D 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 =3D false;
        if (!this._initialized) this.initialize();
        this.updated();
    }
    function Sys$Component$initialize() {
        this._initialized =3D true;
    }
    function Sys$Component$raisePropertyChanged(propertyName) {
        /// <summary locid=3D"M:J#Sys.Component.raisePropertyChanged" />
        /// <param name=3D"propertyName" type=3D"String"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "propertyName", type: String}
        ]);
        if (e) throw e;
        if (!this._events) return;
        var handler =3D this._events.getHandler("propertyChanged");
        if (handler) {
            handler(this, new =
Sys.PropertyChangedEventArgs(propertyName));
        }
    }
    function Sys$Component$updated() {
    }
Sys.Component.prototype =3D {
    _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) {
    /// <summary locid=3D"M:J#Sys.Component._setProperties" />
    /// <param name=3D"target"></param>
    /// <param name=3D"properties"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "target"},
        {name: "properties"}
    ]);
    if (e) throw e;
    var current;
    var targetType =3D Object.getType(target);
    var isObject =3D (targetType =3D=3D=3D Object) || (targetType =
=3D=3D=3D Sys.UI.DomElement);
    var isComponent =3D Sys.Component.isInstanceOfType(target) && =
!target.get_isUpdating();
    if (isComponent) target.beginUpdate();
    for (var name in properties) {
        var val =3D properties[name];
        var getter =3D isObject ? null : target["get_" + name];
        if (isObject || typeof(getter) !=3D=3D 'function') {
            var targetVal =3D target[name];
            if (!isObject && typeof(targetVal) =3D=3D=3D 'undefined') =
throw Error.invalidOperation(String.format(Sys.Res.propertyUndefined, =
name));
            if (!val || (typeof(val) !=3D=3D 'object') || (isObject && =
!targetVal)) {
                target[name] =3D val;
            }
            else {
                Sys$Component$_setProperties(targetVal, val);
            }
        }
        else {
            var setter =3D target["set_" + name];
            if (typeof(setter) =3D=3D=3D 'function') {
                setter.apply(target, [val]);
            }
            else if (val instanceof Array) {
                current =3D getter.apply(target);
                if (!(current instanceof Array)) throw new =
Error.invalidOperation(String.format(Sys.Res.propertyNotAnArray, name));
                for (var i =3D 0, j =3D current.length, l=3D val.length; =
i < l; i++, j++) {
                    current[j] =3D val[i];
                }
            }
            else if ((typeof(val) =3D=3D=3D 'object') && =
(Object.getType(val) =3D=3D=3D Object)) {
                current =3D getter.apply(target);
                if ((typeof(current) =3D=3D=3D 'undefined') || (current =
=3D=3D=3D 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 =3D component["set_" + name];
        var reference =3D $find(references[name]);
        if (typeof(setter) !=3D=3D '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 =3D Sys.Component.create =3D function =
Sys$Component$create(type, properties, events, references, element) {
    /// <summary locid=3D"M:J#Sys.Component.create" />
    /// <param name=3D"type" type=3D"Type"></param>
    /// <param name=3D"properties" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <param name=3D"events" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <param name=3D"references" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <param name=3D"element" domElement=3D"true" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <returns type=3D"Sys.UI.Component"></returns>
    var e =3D 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 =3D (element ? new type(element): new type());
    var app =3D Sys.Application;
    var creatingComponents =3D 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]);
        }
    }
    if (component.get_id()) {
        app.addComponent(component);
    }
    if (creatingComponents) {
        app._createdComponents[app._createdComponents.length] =3D =
component;
        if (references) {
            app._addComponentToSecondPass(component, references);
        }
        else {
            component.endUpdate();
        }
    }
    else {
        if (references) {
            Sys$Component$_setReferences(component, references);
        }
        component.endUpdate();
    }
    return component;
}
=20
Sys.UI.MouseButton =3D function Sys$UI$MouseButton() {
    /// <summary locid=3D"M:J#Sys.UI.MouseButton.#ctor" />
    /// <field name=3D"leftButton" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.MouseButton.leftButton"></field>
    /// <field name=3D"middleButton" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.MouseButton.middleButton"></field>
    /// <field name=3D"rightButton" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.MouseButton.rightButton"></field>
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
Sys.UI.MouseButton.prototype =3D {
    leftButton: 0,
    middleButton: 1,
    rightButton: 2
}
Sys.UI.MouseButton.registerEnum("Sys.UI.MouseButton");
=20
Sys.UI.Key =3D function Sys$UI$Key() {
    /// <summary locid=3D"M:J#Sys.UI.Key.#ctor" />
    /// <field name=3D"backspace" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.Key.backspace"></field>
    /// <field name=3D"tab" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.Key.tab"></field>
    /// <field name=3D"enter" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.Key.enter"></field>
    /// <field name=3D"esc" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.Key.esc"></field>
    /// <field name=3D"space" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.Key.space"></field>
    /// <field name=3D"pageUp" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.Key.pageUp"></field>
    /// <field name=3D"pageDown" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.Key.pageDown"></field>
    /// <field name=3D"end" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.Key.end"></field>
    /// <field name=3D"home" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.Key.home"></field>
    /// <field name=3D"left" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.Key.left"></field>
    /// <field name=3D"up" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.Key.up"></field>
    /// <field name=3D"right" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.Key.right"></field>
    /// <field name=3D"down" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.Key.down"></field>
    /// <field name=3D"del" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.Key.del"></field>
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
Sys.UI.Key.prototype =3D {
    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");
=20
Sys.UI.Point =3D function Sys$UI$Point(x, y) {
    /// <summary locid=3D"M:J#Sys.UI.Point.#ctor" />
    /// <param name=3D"x" type=3D"Number" integer=3D"true"></param>
    /// <param name=3D"y" type=3D"Number" integer=3D"true"></param>
    /// <field name=3D"x" type=3D"Number" integer=3D"true" =
locid=3D"F:J#Sys.UI.Point.x"></field>
    /// <field name=3D"y" type=3D"Number" integer=3D"true" =
locid=3D"F:J#Sys.UI.Point.y"></field>
    var e =3D Function._validateParams(arguments, [
        {name: "x", type: Number, integer: true},
        {name: "y", type: Number, integer: true}
    ]);
    if (e) throw e;
    this.x =3D x;
    this.y =3D y;
}
Sys.UI.Point.registerClass('Sys.UI.Point');
=20
Sys.UI.Bounds =3D function Sys$UI$Bounds(x, y, width, height) {
    /// <summary locid=3D"M:J#Sys.UI.Bounds.#ctor" />
    /// <param name=3D"x" type=3D"Number" integer=3D"true"></param>
    /// <param name=3D"y" type=3D"Number" integer=3D"true"></param>
    /// <param name=3D"height" type=3D"Number" integer=3D"true"></param>
    /// <param name=3D"width" type=3D"Number" integer=3D"true"></param>
    /// <field name=3D"x" type=3D"Number" integer=3D"true" =
locid=3D"F:J#Sys.UI.Bounds.x"></field>
    /// <field name=3D"y" type=3D"Number" integer=3D"true" =
locid=3D"F:J#Sys.UI.Bounds.y"></field>
    /// <field name=3D"height" type=3D"Number" integer=3D"true" =
locid=3D"F:J#Sys.UI.Bounds.height"></field>
    /// <field name=3D"width" type=3D"Number" integer=3D"true" =
locid=3D"F:J#Sys.UI.Bounds.width"></field>
    var e =3D 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 =3D x;
    this.y =3D y;
    this.height =3D height;
    this.width =3D width;
}
Sys.UI.Bounds.registerClass('Sys.UI.Bounds');
=20
Sys.UI.DomEvent =3D function Sys$UI$DomEvent(eventObject) {
    /// <summary locid=3D"M:J#Sys.UI.DomEvent.#ctor" />
    /// <param name=3D"eventObject"></param>
    /// <field name=3D"altKey" type=3D"Boolean" =
locid=3D"F:J#Sys.UI.DomEvent.altKey"></field>
    /// <field name=3D"button" type=3D"Sys.UI.MouseButton" =
locid=3D"F:J#Sys.UI.DomEvent.button"></field>
    /// <field name=3D"charCode" type=3D"Number" integer=3D"true" =
locid=3D"F:J#Sys.UI.DomEvent.charCode"></field>
    /// <field name=3D"clientX" type=3D"Number" integer=3D"true" =
locid=3D"F:J#Sys.UI.DomEvent.clientX"></field>
    /// <field name=3D"clientY" type=3D"Number" integer=3D"true" =
locid=3D"F:J#Sys.UI.DomEvent.clientY"></field>
    /// <field name=3D"ctrlKey" type=3D"Boolean" =
locid=3D"F:J#Sys.UI.DomEvent.ctrlKey"></field>
    /// <field name=3D"keyCode" type=3D"Number" integer=3D"true" =
locid=3D"F:J#Sys.UI.DomEvent.keyCode"></field>
    /// <field name=3D"offsetX" type=3D"Number" integer=3D"true" =
locid=3D"F:J#Sys.UI.DomEvent.offsetX"></field>
    /// <field name=3D"offsetY" type=3D"Number" integer=3D"true" =
locid=3D"F:J#Sys.UI.DomEvent.offsetY"></field>
    /// <field name=3D"screenX" type=3D"Number" integer=3D"true" =
locid=3D"F:J#Sys.UI.DomEvent.screenX"></field>
    /// <field name=3D"screenY" type=3D"Number" integer=3D"true" =
locid=3D"F:J#Sys.UI.DomEvent.screenY"></field>
    /// <field name=3D"shiftKey" type=3D"Boolean" =
locid=3D"F:J#Sys.UI.DomEvent.shiftKey"></field>
    /// <field name=3D"target" =
locid=3D"F:J#Sys.UI.DomEvent.target"></field>
    /// <field name=3D"type" type=3D"String" =
locid=3D"F:J#Sys.UI.DomEvent.type"></field>
    var e =3D Function._validateParams(arguments, [
        {name: "eventObject"}
    ]);
    if (e) throw e;
    var e =3D eventObject;
    var etype =3D this.type =3D e.type.toLowerCase();
    this.rawEvent =3D e;
    this.altKey =3D e.altKey;
    if (typeof(e.button) !=3D=3D 'undefined') {
        this.button =3D (typeof(e.which) !=3D=3D 'undefined') ? e.button =
:
            (e.button =3D=3D=3D 4) ? Sys.UI.MouseButton.middleButton :
            (e.button =3D=3D=3D 2) ? Sys.UI.MouseButton.rightButton :
            Sys.UI.MouseButton.leftButton;
    }
    if (etype =3D=3D=3D 'keypress') {
        this.charCode =3D e.charCode || e.keyCode;
    }
    else if (e.keyCode && (e.keyCode =3D=3D=3D 46)) {
        this.keyCode =3D 127;
    }
    else {
        this.keyCode =3D e.keyCode;
    }
    this.clientX =3D e.clientX;
    this.clientY =3D e.clientY;
    this.ctrlKey =3D e.ctrlKey;
    this.target =3D e.target ? e.target : e.srcElement;
    if (!etype.startsWith('key')) {
        if ((typeof(e.offsetX) !=3D=3D 'undefined') && =
(typeof(e.offsetY) !=3D=3D 'undefined')) {
            this.offsetX =3D e.offsetX;
            this.offsetY =3D e.offsetY;
        }
        else if (this.target && (this.target.nodeType !=3D=3D 3) && =
(typeof(e.clientX) =3D=3D=3D 'number')) {
            var loc =3D Sys.UI.DomElement.getLocation(this.target);
            var w =3D Sys.UI.DomElement._getWindow(this.target);
            this.offsetX =3D (w.pageXOffset || 0) + e.clientX - loc.x;
            this.offsetY =3D (w.pageYOffset || 0) + e.clientY - loc.y;
        }
    }
    this.screenX =3D e.screenX;
    this.screenY =3D e.screenY;
    this.shiftKey =3D e.shiftKey;
}
    function Sys$UI$DomEvent$preventDefault() {
        /// <summary locid=3D"M:J#Sys.UI.DomEvent.preventDefault" />
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        if (this.rawEvent.preventDefault) {
            this.rawEvent.preventDefault();
        }
        else if (window.event) {
            this.rawEvent.returnValue =3D false;
        }
    }
    function Sys$UI$DomEvent$stopPropagation() {
        /// <summary locid=3D"M:J#Sys.UI.DomEvent.stopPropagation" />
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        if (this.rawEvent.stopPropagation) {
            this.rawEvent.stopPropagation();
        }
        else if (window.event) {
            this.rawEvent.cancelBubble =3D true;
        }
    }
Sys.UI.DomEvent.prototype =3D {
    preventDefault: Sys$UI$DomEvent$preventDefault,
    stopPropagation: Sys$UI$DomEvent$stopPropagation
}
Sys.UI.DomEvent.registerClass('Sys.UI.DomEvent');
var $addHandler =3D Sys.UI.DomEvent.addHandler =3D function =
Sys$UI$DomEvent$addHandler(element, eventName, handler) {
    /// <summary locid=3D"M:J#Sys.UI.DomEvent.addHandler" />
    /// <param name=3D"element"></param>
    /// <param name=3D"eventName" type=3D"String"></param>
    /// <param name=3D"handler" type=3D"Function"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "element"},
        {name: "eventName", type: String},
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    Sys.UI.DomEvent._ensureDomNode(element);
    if (eventName =3D=3D=3D "error") throw =
Error.invalidOperation(Sys.Res.addHandlerCantBeUsedForError);
    if (!element._events) {
        element._events =3D {};
    }
    var eventCache =3D element._events[eventName];
    if (!eventCache) {
        element._events[eventName] =3D eventCache =3D [];
    }
    var browserHandler;
    if (element.addEventListener) {
        browserHandler =3D function(e) {
            return handler.call(element, new Sys.UI.DomEvent(e));
        }
        element.addEventListener(eventName, browserHandler, false);
    }
    else if (element.attachEvent) {
        browserHandler =3D function() {
            var e =3D {};
            try {e =3D Sys.UI.DomElement._getWindow(element).event} =
catch(ex) {}
            return handler.call(element, new Sys.UI.DomEvent(e));
        }
        element.attachEvent('on' + eventName, browserHandler);
    }
    eventCache[eventCache.length] =3D {handler: handler, browserHandler: =
browserHandler};
}
var $addHandlers =3D Sys.UI.DomEvent.addHandlers =3D function =
Sys$UI$DomEvent$addHandlers(element, events, handlerOwner) {
    /// <summary locid=3D"M:J#Sys.UI.DomEvent.addHandlers" />
    /// <param name=3D"element"></param>
    /// <param name=3D"events" type=3D"Object"></param>
    /// <param name=3D"handlerOwner" optional=3D"true"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "element"},
        {name: "events", type: Object},
        {name: "handlerOwner", optional: true}
    ]);
    if (e) throw e;
    Sys.UI.DomEvent._ensureDomNode(element);
    for (var name in events) {
        var handler =3D events[name];
        if (typeof(handler) !=3D=3D 'function') throw =
Error.invalidOperation(Sys.Res.cantAddNonFunctionhandler);
        if (handlerOwner) {
            handler =3D Function.createDelegate(handlerOwner, handler);
        }
        $addHandler(element, name, handler);
    }
}
var $clearHandlers =3D Sys.UI.DomEvent.clearHandlers =3D function =
Sys$UI$DomEvent$clearHandlers(element) {
    /// <summary locid=3D"M:J#Sys.UI.DomEvent.clearHandlers" />
    /// <param name=3D"element"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "element"}
    ]);
    if (e) throw e;
    Sys.UI.DomEvent._ensureDomNode(element);
    if (element._events) {
        var cache =3D element._events;
        for (var name in cache) {
            var handlers =3D cache[name];
            for (var i =3D handlers.length - 1; i >=3D 0; i--) {
                $removeHandler(element, name, handlers[i].handler);
            }
        }
        element._events =3D null;
    }
}
var $removeHandler =3D Sys.UI.DomEvent.removeHandler =3D function =
Sys$UI$DomEvent$removeHandler(element, eventName, handler) {
    /// <summary locid=3D"M:J#Sys.UI.DomEvent.removeHandler" />
    /// <param name=3D"element"></param>
    /// <param name=3D"eventName" type=3D"String"></param>
    /// <param name=3D"handler" type=3D"Function"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "element"},
        {name: "eventName", type: String},
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    Sys.UI.DomEvent._ensureDomNode(element);
    var browserHandler =3D null;
    if ((typeof(element._events) !=3D=3D 'object') || (element._events =
=3D=3D null)) throw Error.invalidOperation(Sys.Res.eventHandlerInvalid);
    var cache =3D element._events[eventName];
    if (!(cache instanceof Array)) throw =
Error.invalidOperation(Sys.Res.eventHandlerInvalid);
    for (var i =3D 0, l =3D cache.length; i < l; i++) {
        if (cache[i].handler =3D=3D=3D handler) {
            browserHandler =3D cache[i].browserHandler;
            break;
        }
    }
    if (typeof(browserHandler) !=3D=3D '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.UI.DomEvent._ensureDomNode =3D function =
Sys$UI$DomEvent$_ensureDomNode(element) {
    if (element.tagName && (element.tagName.toUpperCase() =3D=3D=3D =
"SCRIPT")) return;
   =20
    var doc =3D element.ownerDocument || element.document || element;
    if ((typeof(element.document) !=3D=3D 'object') && (element !=3D =
doc) && (typeof(element.nodeType) !=3D=3D 'number')) {
        throw Error.argument("element", Sys.Res.argumentDomNode);
    }
}
=20
Sys.UI.DomElement =3D function Sys$UI$DomElement() {
    /// <summary locid=3D"M:J#Sys.UI.DomElement.#ctor" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
Sys.UI.DomElement.registerClass('Sys.UI.DomElement');
Sys.UI.DomElement.addCssClass =3D function =
Sys$UI$DomElement$addCssClass(element, className) {
    /// <summary locid=3D"M:J#Sys.UI.DomElement.addCssClass" />
    /// <param name=3D"element" domElement=3D"true"></param>
    /// <param name=3D"className" type=3D"String"></param>
    var e =3D 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 =3D=3D=3D '') {
            element.className =3D className;
        }
        else {
            element.className +=3D ' ' + className;
        }
    }
}
Sys.UI.DomElement.containsCssClass =3D function =
Sys$UI$DomElement$containsCssClass(element, className) {
    /// <summary locid=3D"M:J#Sys.UI.DomElement.containsCssClass" />
    /// <param name=3D"element" domElement=3D"true"></param>
    /// <param name=3D"className" type=3D"String"></param>
    /// <returns type=3D"Boolean"></returns>
    var e =3D 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 =3D function =
Sys$UI$DomElement$getBounds(element) {
    /// <summary locid=3D"M:J#Sys.UI.DomElement.getBounds" />
    /// <param name=3D"element" domElement=3D"true"></param>
    /// <returns type=3D"Sys.UI.Bounds"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    var offset =3D Sys.UI.DomElement.getLocation(element);
    return new Sys.UI.Bounds(offset.x, offset.y, element.offsetWidth || =
0, element.offsetHeight || 0);
}
var $get =3D Sys.UI.DomElement.getElementById =3D function =
Sys$UI$DomElement$getElementById(id, element) {
    /// <summary locid=3D"M:J#Sys.UI.DomElement.getElementById" />
    /// <param name=3D"id" type=3D"String"></param>
    /// <param name=3D"element" domElement=3D"true" optional=3D"true" =
mayBeNull=3D"true"></param>
    /// <returns domElement=3D"true" mayBeNull=3D"true"></returns>
    var e =3D 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 =3D [];
    var childNodes =3D element.childNodes;
    for (var i =3D 0; i < childNodes.length; i++) {
        var node =3D childNodes[i];
        if (node.nodeType =3D=3D 1) {
            nodeQueue[nodeQueue.length] =3D node;
        }
    }
    while (nodeQueue.length) {
        node =3D nodeQueue.shift();
        if (node.id =3D=3D id) {
            return node;
        }
        childNodes =3D node.childNodes;
        for (i =3D 0; i < childNodes.length; i++) {
            node =3D childNodes[i];
            if (node.nodeType =3D=3D 1) {
                nodeQueue[nodeQueue.length] =3D node;
            }
        }
    }
    return null;
}
switch(Sys.Browser.agent) {
    case Sys.Browser.InternetExplorer:
        Sys.UI.DomElement.getLocation =3D function =
Sys$UI$DomElement$getLocation(element) {
            /// <summary locid=3D"M:J#Sys.UI.DomElement.getLocation" />
            /// <param name=3D"element" domElement=3D"true"></param>
            /// <returns type=3D"Sys.UI.Point"></returns>
            var e =3D Function._validateParams(arguments, [
                {name: "element", domElement: true}
            ]);
            if (e) throw e;
            if (element.self || element.nodeType =3D=3D=3D 9) return new =
Sys.UI.Point(0,0);
            var clientRect =3D element.getBoundingClientRect();
            if (!clientRect) {
                return new Sys.UI.Point(0,0);
            }
            var documentElement =3D =
element.ownerDocument.documentElement;
            var offsetX =3D clientRect.left - 2 + =
documentElement.scrollLeft,
                offsetY =3D clientRect.top - 2 + =
documentElement.scrollTop;
           =20
            try {
                var f =3D =
element.ownerDocument.parentWindow.frameElement || null;
                if (f) {
                    var offset =3D (f.frameBorder =3D=3D=3D "0" || =
f.frameBorder =3D=3D=3D "no") ? 2 : 0;
                    offsetX +=3D offset;
                    offsetY +=3D offset;
                }
            }
            catch(ex) {
            }   =20
           =20
            return new Sys.UI.Point(offsetX, offsetY);
        }
        break;
    case Sys.Browser.Safari:
        Sys.UI.DomElement.getLocation =3D function =
Sys$UI$DomElement$getLocation(element) {
            /// <summary locid=3D"M:J#Sys.UI.DomElement.getLocation" />
            /// <param name=3D"element" domElement=3D"true"></param>
            /// <returns type=3D"Sys.UI.Point"></returns>
            var e =3D Function._validateParams(arguments, [
                {name: "element", domElement: true}
            ]);
            if (e) throw e;
            if ((element.window && (element.window =3D=3D=3D element)) =
|| element.nodeType =3D=3D=3D 9) return new Sys.UI.Point(0,0);
            var offsetX =3D 0;
            var offsetY =3D 0;
            var previous =3D null;
            var previousStyle =3D null;
            var currentStyle;
            for (var parent =3D element; parent; previous =3D parent, =
previousStyle =3D currentStyle, parent =3D parent.offsetParent) {
                currentStyle =3D =
Sys.UI.DomElement._getCurrentStyle(parent);
                var tagName =3D parent.tagName ? =
parent.tagName.toUpperCase() : null;
                if ((parent.offsetLeft || parent.offsetTop) &&
                    ((tagName !=3D=3D "BODY") || (!previousStyle || =
previousStyle.position !=3D=3D "absolute"))) {
                    offsetX +=3D parent.offsetLeft;
                    offsetY +=3D parent.offsetTop;
                }
            }
            currentStyle =3D =
Sys.UI.DomElement._getCurrentStyle(element);
            var elementPosition =3D currentStyle ? currentStyle.position =
: null;
            if (!elementPosition || (elementPosition !=3D=3D =
"absolute")) {
                for (var parent =3D element.parentNode; parent; parent =
=3D parent.parentNode) {
                    tagName =3D parent.tagName ? =
parent.tagName.toUpperCase() : null;
                    if ((tagName !=3D=3D "BODY") && (tagName !=3D=3D =
"HTML") && (parent.scrollLeft || parent.scrollTop)) {
                        offsetX -=3D (parent.scrollLeft || 0);
                        offsetY -=3D (parent.scrollTop || 0);
                    }
                    currentStyle =3D =
Sys.UI.DomElement._getCurrentStyle(parent);
                    var parentPosition =3D currentStyle ? =
currentStyle.position : null;
                    if (parentPosition && (parentPosition =3D=3D=3D =
"absolute")) break;
                }
            }
            return new Sys.UI.Point(offsetX, offsetY);
        }
        break;
    case Sys.Browser.Opera:
        Sys.UI.DomElement.getLocation =3D function =
Sys$UI$DomElement$getLocation(element) {
            /// <summary locid=3D"M:J#Sys.UI.DomElement.getLocation" />
            /// <param name=3D"element" domElement=3D"true"></param>
            /// <returns type=3D"Sys.UI.Point"></returns>
            var e =3D Function._validateParams(arguments, [
                {name: "element", domElement: true}
            ]);
            if (e) throw e;
            if ((element.window && (element.window =3D=3D=3D element)) =
|| element.nodeType =3D=3D=3D 9) return new Sys.UI.Point(0,0);
            var offsetX =3D 0;
            var offsetY =3D 0;
            var previous =3D null;
            for (var parent =3D element; parent; previous =3D parent, =
parent =3D parent.offsetParent) {
                var tagName =3D parent.tagName;
                offsetX +=3D parent.offsetLeft || 0;
                offsetY +=3D parent.offsetTop || 0;
            }
            var elementPosition =3D element.style.position;
            var elementPositioned =3D elementPosition && =
(elementPosition !=3D=3D "static");
            for (var parent =3D element.parentNode; parent; parent =3D =
parent.parentNode) {
                tagName =3D parent.tagName ? =
parent.tagName.toUpperCase() : null;
                if ((tagName !=3D=3D "BODY") && (tagName !=3D=3D "HTML") =
&& (parent.scrollLeft || parent.scrollTop) &&
                    ((elementPositioned &&
                    ((parent.style.overflow =3D=3D=3D "scroll") || =
(parent.style.overflow =3D=3D=3D "auto"))))) {
                    offsetX -=3D (parent.scrollLeft || 0);
                    offsetY -=3D (parent.scrollTop || 0);
                }
                var parentPosition =3D (parent && parent.style) ? =
parent.style.position : null;
                elementPositioned =3D elementPositioned || =
(parentPosition && (parentPosition !=3D=3D "static"));
            }
            return new Sys.UI.Point(offsetX, offsetY);
        }
        break;
    default:
        Sys.UI.DomElement.getLocation =3D function =
Sys$UI$DomElement$getLocation(element) {
            /// <summary locid=3D"M:J#Sys.UI.DomElement.getLocation" />
            /// <param name=3D"element" domElement=3D"true"></param>
            /// <returns type=3D"Sys.UI.Point"></returns>
            var e =3D Function._validateParams(arguments, [
                {name: "element", domElement: true}
            ]);
            if (e) throw e;
            if ((element.window && (element.window =3D=3D=3D element)) =
|| element.nodeType =3D=3D=3D 9) return new Sys.UI.Point(0,0);
            var offsetX =3D 0;
            var offsetY =3D 0;
            var previous =3D null;
            var previousStyle =3D null;
            var currentStyle =3D null;
            for (var parent =3D element; parent; previous =3D parent, =
previousStyle =3D currentStyle, parent =3D parent.offsetParent) {
                var tagName =3D parent.tagName ? =
parent.tagName.toUpperCase() : null;
                currentStyle =3D =
Sys.UI.DomElement._getCurrentStyle(parent);
                if ((parent.offsetLeft || parent.offsetTop) &&
                    !((tagName =3D=3D=3D "BODY") &&
                    (!previousStyle || previousStyle.position !=3D=3D =
"absolute"))) {
                    offsetX +=3D parent.offsetLeft;
                    offsetY +=3D parent.offsetTop;
                }
                if (previous !=3D=3D null && currentStyle) {
                    if ((tagName !=3D=3D "TABLE") && (tagName !=3D=3D =
"TD") && (tagName !=3D=3D "HTML")) {
                        offsetX +=3D =
parseInt(currentStyle.borderLeftWidth) || 0;
                        offsetY +=3D =
parseInt(currentStyle.borderTopWidth) || 0;
                    }
                    if (tagName =3D=3D=3D "TABLE" &&
                        (currentStyle.position =3D=3D=3D "relative" || =
currentStyle.position =3D=3D=3D "absolute")) {
                        offsetX +=3D parseInt(currentStyle.marginLeft) =
|| 0;
                        offsetY +=3D parseInt(currentStyle.marginTop) || =
0;
                    }
                }
            }
            currentStyle =3D =
Sys.UI.DomElement._getCurrentStyle(element);
            var elementPosition =3D currentStyle ? currentStyle.position =
: null;
            if (!elementPosition || (elementPosition !=3D=3D =
"absolute")) {
                for (var parent =3D element.parentNode; parent; parent =
=3D parent.parentNode) {
                    tagName =3D parent.tagName ? =
parent.tagName.toUpperCase() : null;
                    if ((tagName !=3D=3D "BODY") && (tagName !=3D=3D =
"HTML") && (parent.scrollLeft || parent.scrollTop)) {
                        offsetX -=3D (parent.scrollLeft || 0);
                        offsetY -=3D (parent.scrollTop || 0);
                        currentStyle =3D =
Sys.UI.DomElement._getCurrentStyle(parent);
                        if (currentStyle) {
                            offsetX +=3D =
parseInt(currentStyle.borderLeftWidth) || 0;
                            offsetY +=3D =
parseInt(currentStyle.borderTopWidth) || 0;
                        }
                    }
                }
            }
            return new Sys.UI.Point(offsetX, offsetY);
        }
        break;
}
Sys.UI.DomElement.removeCssClass =3D function =
Sys$UI$DomElement$removeCssClass(element, className) {
    /// <summary locid=3D"M:J#Sys.UI.DomElement.removeCssClass" />
    /// <param name=3D"element" domElement=3D"true"></param>
    /// <param name=3D"className" type=3D"String"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "className", type: String}
    ]);
    if (e) throw e;
    var currentClassName =3D ' ' + element.className + ' ';
    var index =3D currentClassName.indexOf(' ' + className + ' ');
    if (index >=3D 0) {
        element.className =3D (currentClassName.substr(0, index) + ' ' +
            currentClassName.substring(index + className.length + 1, =
currentClassName.length)).trim();
    }
}
Sys.UI.DomElement.setLocation =3D function =
Sys$UI$DomElement$setLocation(element, x, y) {
    /// <summary locid=3D"M:J#Sys.UI.DomElement.setLocation" />
    /// <param name=3D"element" domElement=3D"true"></param>
    /// <param name=3D"x" type=3D"Number" integer=3D"true"></param>
    /// <param name=3D"y" type=3D"Number" integer=3D"true"></param>
    var e =3D 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 =3D element.style;
    style.position =3D 'absolute';
    style.left =3D x + "px";
    style.top =3D y + "px";
}
Sys.UI.DomElement.toggleCssClass =3D function =
Sys$UI$DomElement$toggleCssClass(element, className) {
    /// <summary locid=3D"M:J#Sys.UI.DomElement.toggleCssClass" />
    /// <param name=3D"element" domElement=3D"true"></param>
    /// <param name=3D"className" type=3D"String"></param>
    var e =3D 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.getVisibilityMode =3D function =
Sys$UI$DomElement$getVisibilityMode(element) {
    /// <summary locid=3D"M:J#Sys.UI.DomElement.getVisibilityMode" />
    /// <param name=3D"element" domElement=3D"true"></param>
    /// <returns type=3D"Sys.UI.VisibilityMode"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    return (element._visibilityMode =3D=3D=3D =
Sys.UI.VisibilityMode.hide) ?
        Sys.UI.VisibilityMode.hide :
        Sys.UI.VisibilityMode.collapse;
}
Sys.UI.DomElement.setVisibilityMode =3D function =
Sys$UI$DomElement$setVisibilityMode(element, value) {
    /// <summary locid=3D"M:J#Sys.UI.DomElement.setVisibilityMode" />
    /// <param name=3D"element" domElement=3D"true"></param>
    /// <param name=3D"value" type=3D"Sys.UI.VisibilityMode"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "value", type: Sys.UI.VisibilityMode}
    ]);
    if (e) throw e;
    Sys.UI.DomElement._ensureOldDisplayMode(element);
    if (element._visibilityMode !=3D=3D value) {
        element._visibilityMode =3D value;
        if (Sys.UI.DomElement.getVisible(element) =3D=3D=3D false) {
            if (element._visibilityMode =3D=3D=3D =
Sys.UI.VisibilityMode.hide) {
                element.style.display =3D element._oldDisplayMode;
            }
            else {
                element.style.display =3D 'none';
            }
        }
        element._visibilityMode =3D value;
    }
}
Sys.UI.DomElement.getVisible =3D function =
Sys$UI$DomElement$getVisible(element) {
    /// <summary locid=3D"M:J#Sys.UI.DomElement.getVisible" />
    /// <param name=3D"element" domElement=3D"true"></param>
    /// <returns type=3D"Boolean"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    var style =3D element.currentStyle || =
Sys.UI.DomElement._getCurrentStyle(element);
    if (!style) return true;
    return (style.visibility !=3D=3D 'hidden') && (style.display !=3D=3D =
'none');
}
Sys.UI.DomElement.setVisible =3D function =
Sys$UI$DomElement$setVisible(element, value) {
    /// <summary locid=3D"M:J#Sys.UI.DomElement.setVisible" />
    /// <param name=3D"element" domElement=3D"true"></param>
    /// <param name=3D"value" type=3D"Boolean"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "value", type: Boolean}
    ]);
    if (e) throw e;
    if (value !=3D=3D Sys.UI.DomElement.getVisible(element)) {
        Sys.UI.DomElement._ensureOldDisplayMode(element);
        element.style.visibility =3D value ? 'visible' : 'hidden';
        if (value || (element._visibilityMode =3D=3D=3D =
Sys.UI.VisibilityMode.hide)) {
            element.style.display =3D element._oldDisplayMode;
        }
        else {
            element.style.display =3D 'none';
        }
    }
}
Sys.UI.DomElement._ensureOldDisplayMode =3D function =
Sys$UI$DomElement$_ensureOldDisplayMode(element) {
    if (!element._oldDisplayMode) {
        var style =3D element.currentStyle || =
Sys.UI.DomElement._getCurrentStyle(element);
        element._oldDisplayMode =3D style ? style.display : null;
        if (!element._oldDisplayMode || element._oldDisplayMode =
=3D=3D=3D 'none') {
            switch(element.tagName.toUpperCase()) {
                case 'DIV': case 'P': case 'ADDRESS': case 'BLOCKQUOTE': =
case 'BODY': case 'COL':
                case 'COLGROUP': case 'DD': case 'DL': case 'DT': case =
'FIELDSET': case 'FORM':
                case 'H1': case 'H2': case 'H3': case 'H4': case 'H5': =
case 'H6': case 'HR':
                case 'IFRAME': case 'LEGEND': case 'OL': case 'PRE': =
case 'TABLE': case 'TD':
                case 'TH': case 'TR': case 'UL':
                    element._oldDisplayMode =3D 'block';
                    break;
                case 'LI':
                    element._oldDisplayMode =3D 'list-item';
                    break;
                default:
                    element._oldDisplayMode =3D 'inline';
            }
        }
    }
}
Sys.UI.DomElement._getWindow =3D function =
Sys$UI$DomElement$_getWindow(element) {
    var doc =3D element.ownerDocument || element.document || element;
    return doc.defaultView || doc.parentWindow;
}
Sys.UI.DomElement._getCurrentStyle =3D function =
Sys$UI$DomElement$_getCurrentStyle(element) {
    if (element.nodeType =3D=3D=3D 3) return null;
    var w =3D Sys.UI.DomElement._getWindow(element);
    if (element.documentElement) element =3D element.documentElement;
    var computedStyle =3D (w && (element !=3D=3D w) && =
w.getComputedStyle) ?
        w.getComputedStyle(element, null) :
        element.currentStyle || element.style;
    if (!computedStyle && (Sys.Browser.agent =3D=3D=3D =
Sys.Browser.Safari) && element.style) {
        var oldDisplay =3D element.style.display;
        var oldPosition =3D element.style.position;
        element.style.position =3D 'absolute';
        element.style.display =3D 'block';
        var style =3D w.getComputedStyle(element, null);
        element.style.display =3D oldDisplay;
        element.style.position =3D oldPosition;
        computedStyle =3D {};
        for (var n in style) {
            computedStyle[n] =3D style[n];
        }
        computedStyle.display =3D 'none';
    }
    return computedStyle;
}
=20
Sys.IContainer =3D function Sys$IContainer() {
    throw Error.notImplemented();
}
    function Sys$IContainer$addComponent(component) {
        /// <summary locid=3D"M:J#Sys.IContainer.addComponent" />
        /// <param name=3D"component" type=3D"Sys.Component"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "component", type: Sys.Component}
        ]);
        if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$IContainer$removeComponent(component) {
        /// <summary locid=3D"M:J#Sys.IContainer.removeComponent" />
        /// <param name=3D"component" type=3D"Sys.Component"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "component", type: Sys.Component}
        ]);
        if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$IContainer$findComponent(id) {
        /// <summary locid=3D"M:J#Sys.IContainer.findComponent" />
        /// <param name=3D"id" type=3D"String"></param>
        /// <returns type=3D"Sys.Component"></returns>
        var e =3D Function._validateParams(arguments, [
            {name: "id", type: String}
        ]);
        if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$IContainer$getComponents() {
        /// <summary locid=3D"M:J#Sys.IContainer.getComponents" />
        /// <returns type=3D"Array" =
elementType=3D"Sys.Component"></returns>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
Sys.IContainer.prototype =3D {
    addComponent: Sys$IContainer$addComponent,
    removeComponent: Sys$IContainer$removeComponent,
    findComponent: Sys$IContainer$findComponent,
    getComponents: Sys$IContainer$getComponents
}
Sys.IContainer.registerInterface("Sys.IContainer");
=20
Sys._ScriptLoader =3D function Sys$_ScriptLoader() {
    this._scriptsToLoad =3D null;
    this._sessions =3D [];
    this._scriptLoadedDelegate =3D Function.createDelegate(this, =
this._scriptLoadedHandler);
}
    function Sys$_ScriptLoader$dispose() {
        this._stopSession();
        this._loading =3D false;
        if(this._events) {
            delete this._events;
        }
        this._sessions =3D null;
        this._currentSession =3D null;
        this._scriptLoadedDelegate =3D null;       =20
    }
    function Sys$_ScriptLoader$loadScripts(scriptTimeout, =
allScriptsLoadedCallback, scriptLoadFailedCallback, =
scriptLoadTimeoutCallback) {
        /// <summary locid=3D"M:J#Sys._ScriptLoader.loadScripts" />
        /// <param name=3D"scriptTimeout" type=3D"Number" =
integer=3D"true"></param>
        /// <param name=3D"allScriptsLoadedCallback" type=3D"Function" =
mayBeNull=3D"true"></param>
        /// <param name=3D"scriptLoadFailedCallback" type=3D"Function" =
mayBeNull=3D"true"></param>
        /// <param name=3D"scriptLoadTimeoutCallback" type=3D"Function" =
mayBeNull=3D"true"></param>
        var e =3D 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;
        var session =3D {
            allScriptsLoadedCallback: allScriptsLoadedCallback,
            scriptLoadFailedCallback: scriptLoadFailedCallback,
            scriptLoadTimeoutCallback: scriptLoadTimeoutCallback,
            scriptsToLoad: this._scriptsToLoad,
            scriptTimeout: scriptTimeout };
        this._scriptsToLoad =3D null;
        this._sessions[this._sessions.length] =3D session;
       =20
        if (!this._loading) {
            this._nextSession();
        }
    }
    function Sys$_ScriptLoader$notifyScriptLoaded() {
        /// <summary locid=3D"M:J#Sys._ScriptLoader.notifyScriptLoaded" =
/>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
       =20
        if(!this._loading) {
            return;
        }
        this._currentTask._notified++;
       =20
        if(Sys.Browser.agent =3D=3D=3D Sys.Browser.Safari) {          =20
            if(this._currentTask._notified =3D=3D=3D 1) {
                window.setTimeout(Function.createDelegate(this, =
function() {
                    =
this._scriptLoadedHandler(this._currentTask.get_scriptElement(), true);
                }), 0);
            }
        }
    }
    function Sys$_ScriptLoader$queueCustomScriptTag(scriptAttributes) {
        /// <summary =
locid=3D"M:J#Sys._ScriptLoader.queueCustomScriptTag" />
        /// <param name=3D"scriptAttributes" =
mayBeNull=3D"false"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "scriptAttributes"}
        ]);
        if (e) throw e;
        if(!this._scriptsToLoad) {
            this._scriptsToLoad =3D [];
        }
        Array.add(this._scriptsToLoad, scriptAttributes);
    }
    function Sys$_ScriptLoader$queueScriptBlock(scriptContent) {
        /// <summary locid=3D"M:J#Sys._ScriptLoader.queueScriptBlock" />
        /// <param name=3D"scriptContent" type=3D"String" =
mayBeNull=3D"false"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "scriptContent", type: String}
        ]);
        if (e) throw e;
        if(!this._scriptsToLoad) {
            this._scriptsToLoad =3D [];
        }
        Array.add(this._scriptsToLoad, {text: scriptContent});
    }
    function Sys$_ScriptLoader$queueScriptReference(scriptUrl) {
        /// <summary =
locid=3D"M:J#Sys._ScriptLoader.queueScriptReference" />
        /// <param name=3D"scriptUrl" type=3D"String" =
mayBeNull=3D"false"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "scriptUrl", type: String}
        ]);
        if (e) throw e;
        if(!this._scriptsToLoad) {
            this._scriptsToLoad =3D [];
        }
        Array.add(this._scriptsToLoad, {src: scriptUrl});
    }
    function Sys$_ScriptLoader$_createScriptElement(queuedScript) {
        var scriptElement =3D document.createElement('script');
        scriptElement.type =3D 'text/javascript';
        for (var attr in queuedScript) {
            scriptElement[attr] =3D queuedScript[attr];
        }
       =20
        return scriptElement;
    }
    function Sys$_ScriptLoader$_loadScriptsInternal() {
        var session =3D this._currentSession;
        if (session.scriptsToLoad && session.scriptsToLoad.length > 0) {
            var nextScript =3D Array.dequeue(session.scriptsToLoad);
            var scriptElement =3D this._createScriptElement(nextScript);
           =20
            if (scriptElement.text && Sys.Browser.agent =3D=3D=3D =
Sys.Browser.Safari) {
                scriptElement.innerHTML =3D scriptElement.text;
                delete scriptElement.text;
            }           =20
            if (typeof(nextScript.src) =3D=3D=3D "string") {
                this._currentTask =3D new =
Sys._ScriptLoaderTask(scriptElement, this._scriptLoadedDelegate);
                this._currentTask.execute();
            }
            else {
                var headElements =3D =
document.getElementsByTagName('head');
                if (headElements.length =3D=3D=3D 0) {
                     throw new =
Error.invalidOperation(Sys.Res.scriptLoadFailedNoHead);
                }
                else {
                     headElements[0].appendChild(scriptElement);
                }
               =20
               =20
                Sys._ScriptLoader._clearScript(scriptElement);
                this._loadScriptsInternal();
            }
        }
        else {
            this._stopSession();
            var callback =3D session.allScriptsLoadedCallback;
            if(callback) {
                callback(this);
            }
            this._nextSession();
        }
    }
    function Sys$_ScriptLoader$_nextSession() {
        if (this._sessions.length =3D=3D=3D 0) {
            this._loading =3D false;
            this._currentSession =3D null;
            return;
        }
        this._loading =3D true;
       =20
        var session =3D Array.dequeue(this._sessions);
        this._currentSession =3D session;
        this._loadScriptsInternal();
    }
    function Sys$_ScriptLoader$_raiseError(multipleCallbacks) {
        var callback =3D this._currentSession.scriptLoadFailedCallback;
        var scriptElement =3D this._currentTask.get_scriptElement();
        this._stopSession();
       =20
        if(callback) {
            callback(this, scriptElement, multipleCallbacks);
            this._nextSession();
        }
        else {
            this._loading =3D false;
            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 =3D null;
                this._loadScriptsInternal();
            }
        }
        else {
            this._raiseError(false);
        }
    }
    function Sys$_ScriptLoader$_scriptLoadTimeoutHandler() {
        var callback =3D this._currentSession.scriptLoadTimeoutCallback;
        this._stopSession();
        if(callback) {
            callback(this);
        }
        this._nextSession();
    }
    function Sys$_ScriptLoader$_stopSession() {
        if(this._currentTask) {
            this._currentTask.dispose();
            this._currentTask =3D null;
        }
    }
Sys._ScriptLoader.prototype =3D {
    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,
    _nextSession: Sys$_ScriptLoader$_nextSession,
    _raiseError: Sys$_ScriptLoader$_raiseError,
    _scriptLoadedHandler: Sys$_ScriptLoader$_scriptLoadedHandler,
    _scriptLoadTimeoutHandler: =
Sys$_ScriptLoader$_scriptLoadTimeoutHandler,
    _stopSession: Sys$_ScriptLoader$_stopSession   =20
}
Sys._ScriptLoader.registerClass('Sys._ScriptLoader', null, =
Sys.IDisposable);
Sys._ScriptLoader.getInstance =3D function =
Sys$_ScriptLoader$getInstance() {
    var sl =3D Sys._ScriptLoader._activeInstance;
    if(!sl) {
        sl =3D Sys._ScriptLoader._activeInstance =3D new =
Sys._ScriptLoader();
    }
    return sl;
}
Sys._ScriptLoader.isScriptLoaded =3D function =
Sys$_ScriptLoader$isScriptLoaded(scriptSrc) {
    var dummyScript =3D document.createElement('script');
    dummyScript.src =3D scriptSrc;
    return Array.contains(Sys._ScriptLoader._getLoadedScripts(), =
dummyScript.src);
}
Sys._ScriptLoader.readLoadedScripts =3D function =
Sys$_ScriptLoader$readLoadedScripts() {
    if(!Sys._ScriptLoader._referencedScripts) {
        var referencedScripts =3D Sys._ScriptLoader._referencedScripts =
=3D [];
        var existingScripts =3D document.getElementsByTagName('script');
        for (i =3D existingScripts.length - 1; i >=3D 0; i--) {
            var scriptNode =3D existingScripts[i];
            var scriptSrc =3D scriptNode.src;
            if (scriptSrc.length) {
                if (!Array.contains(referencedScripts, scriptSrc)) {
                    Array.add(referencedScripts, scriptSrc);
                }
            }
        }
    }
}
Sys._ScriptLoader._clearScript =3D function =
Sys$_ScriptLoader$_clearScript(scriptElement) {
    if (!Sys.Debug.isDebug) {
        scriptElement.parentNode.removeChild(scriptElement);
    }
}
Sys._ScriptLoader._errorScriptLoadFailed =3D function =
Sys$_ScriptLoader$_errorScriptLoadFailed(scriptUrl, multipleCallbacks) {
    var errorMessage;
    if(multipleCallbacks) {
        errorMessage =3D Sys.Res.scriptLoadMultipleCallbacks;
    }
    else {
        errorMessage =3D Sys.Res.scriptLoadFailedDebug;
    }
    var displayMessage =3D "Sys.ScriptLoadFailedException: " + =
String.format(errorMessage, scriptUrl);
    var e =3D Error.create(displayMessage, {name: =
'Sys.ScriptLoadFailedException', 'scriptUrl': scriptUrl });
    e.popStackFrame();
    return e;
}
Sys._ScriptLoader._getLoadedScripts =3D function =
Sys$_ScriptLoader$_getLoadedScripts() {
    if(!Sys._ScriptLoader._referencedScripts) {
        Sys._ScriptLoader._referencedScripts =3D [];
        Sys._ScriptLoader.readLoadedScripts();
    }
    return Sys._ScriptLoader._referencedScripts;
}
=20
Sys._ScriptLoaderTask =3D function Sys$_ScriptLoaderTask(scriptElement, =
completedCallback) {
    /// <summary locid=3D"M:J#Sys._ScriptLoaderTask.#ctor" />
    /// <param name=3D"scriptElement" domElement=3D"true"></param>
    /// <param name=3D"completedCallback" type=3D"Function"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "scriptElement", domElement: true},
        {name: "completedCallback", type: Function}
    ]);
    if (e) throw e;
    this._scriptElement =3D scriptElement;
    this._completedCallback =3D completedCallback;
    this._notified =3D 0;
}
    function Sys$_ScriptLoaderTask$get_scriptElement() {
        /// <value domElement=3D"true" =
locid=3D"P:J#Sys._ScriptLoaderTask.scriptElement"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._scriptElement;
    }
    function Sys$_ScriptLoaderTask$dispose() {
        if(this._disposed) {
            return;
        }
        this._disposed =3D true;
        this._removeScriptElementHandlers();
        Sys._ScriptLoader._clearScript(this._scriptElement);
        this._scriptElement =3D null;
    }
    function Sys$_ScriptLoaderTask$execute() {
        /// <summary locid=3D"M:J#Sys._ScriptLoaderTask.execute" />
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        this._addScriptElementHandlers();
        var headElements =3D document.getElementsByTagName('head');
        if (headElements.length =3D=3D=3D 0) {
             throw new =
Error.invalidOperation(Sys.Res.scriptLoadFailedNoHead);
        }
        else {
             headElements[0].appendChild(this._scriptElement);
        }
    }
    function Sys$_ScriptLoaderTask$_addScriptElementHandlers() {
        this._scriptLoadDelegate =3D Function.createDelegate(this, =
this._scriptLoadHandler);
       =20
        if (Sys.Browser.agent !=3D=3D Sys.Browser.InternetExplorer) {
            this._scriptElement.readyState =3D 'loaded';
            $addHandler(this._scriptElement, 'load', =
this._scriptLoadDelegate);
        }
        else {
            $addHandler(this._scriptElement, 'readystatechange', =
this._scriptLoadDelegate);
        }   =20
        if (this._scriptElement.addEventListener) {
            this._scriptErrorDelegate =3D Function.createDelegate(this, =
this._scriptErrorHandler);
            this._scriptElement.addEventListener('error', =
this._scriptErrorDelegate, false);
        }
    }
    function Sys$_ScriptLoaderTask$_removeScriptElementHandlers() {
        if(this._scriptLoadDelegate) {
            var scriptElement =3D this.get_scriptElement();
            if (Sys.Browser.agent !=3D=3D Sys.Browser.InternetExplorer) =
{
                $removeHandler(scriptElement, 'load', =
this._scriptLoadDelegate);
            }
            else {
                $removeHandler(scriptElement, 'readystatechange', =
this._scriptLoadDelegate);
            }
            if (this._scriptErrorDelegate) {
                this._scriptElement.removeEventListener('error', =
this._scriptErrorDelegate, false);
                this._scriptErrorDelegate =3D null;
            }
            this._scriptLoadDelegate =3D null;
        }
    }
    function Sys$_ScriptLoaderTask$_scriptErrorHandler() {
        if(this._disposed) {
            return;
        }
       =20
        this._completedCallback(this.get_scriptElement(), false);
    }
    function Sys$_ScriptLoaderTask$_scriptLoadHandler() {
        if(this._disposed) {
            return;
        }
        var scriptElement =3D this.get_scriptElement();
        if ((scriptElement.readyState !=3D=3D 'loaded') &&
            (scriptElement.readyState !=3D=3D 'complete')) {
            return;
        }
       =20
        var _this =3D this;
        window.setTimeout(function() {
            _this._completedCallback(scriptElement, true);
        }, 0);
    }
Sys._ScriptLoaderTask.prototype =3D {
    get_scriptElement: Sys$_ScriptLoaderTask$get_scriptElement,
    dispose: Sys$_ScriptLoaderTask$dispose,
    execute: Sys$_ScriptLoaderTask$execute,
    _addScriptElementHandlers: =
Sys$_ScriptLoaderTask$_addScriptElementHandlers,   =20
    _removeScriptElementHandlers: =
Sys$_ScriptLoaderTask$_removeScriptElementHandlers,   =20
    _scriptErrorHandler: Sys$_ScriptLoaderTask$_scriptErrorHandler,
    _scriptLoadHandler: Sys$_ScriptLoaderTask$_scriptLoadHandler =20
}
Sys._ScriptLoaderTask.registerClass("Sys._ScriptLoaderTask", null, =
Sys.IDisposable);
=20
Sys.ApplicationLoadEventArgs =3D function =
Sys$ApplicationLoadEventArgs(components, isPartialLoad) {
    /// <summary locid=3D"M:J#Sys.ApplicationLoadEventArgs.#ctor" />
    /// <param name=3D"components" type=3D"Array" =
elementType=3D"Sys.Component"></param>
    /// <param name=3D"isPartialLoad" type=3D"Boolean"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "components", type: Array, elementType: Sys.Component},
        {name: "isPartialLoad", type: Boolean}
    ]);
    if (e) throw e;
    Sys.ApplicationLoadEventArgs.initializeBase(this);
    this._components =3D components;
    this._isPartialLoad =3D isPartialLoad;
}
=20
    function Sys$ApplicationLoadEventArgs$get_components() {
        /// <value type=3D"Array" elementType=3D"Sys.Component" =
locid=3D"P:J#Sys.ApplicationLoadEventArgs.components"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._components;
    }
    function Sys$ApplicationLoadEventArgs$get_isPartialLoad() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.ApplicationLoadEventArgs.isPartialLoad"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._isPartialLoad;
    }
Sys.ApplicationLoadEventArgs.prototype =3D {
    get_components: Sys$ApplicationLoadEventArgs$get_components,
    get_isPartialLoad: Sys$ApplicationLoadEventArgs$get_isPartialLoad
}
Sys.ApplicationLoadEventArgs.registerClass('Sys.ApplicationLoadEventArgs'=
, Sys.EventArgs);
Sys.HistoryEventArgs =3D function Sys$HistoryEventArgs(state) {
    /// <summary locid=3D"M:J#Sys.HistoryEventArgs.#ctor" />
    /// <param name=3D"state" type=3D"Object"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "state", type: Object}
    ]);
    if (e) throw e;
    Sys.HistoryEventArgs.initializeBase(this);
    this._state =3D state;
}
    function Sys$HistoryEventArgs$get_state() {
        /// <value type=3D"Object" =
locid=3D"P:J#Sys.HistoryEventArgs.state"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._state;
    }
Sys.HistoryEventArgs.prototype =3D {
    get_state: Sys$HistoryEventArgs$get_state
}
Sys.HistoryEventArgs.registerClass('Sys.HistoryEventArgs', =
Sys.EventArgs);
=20
Sys._Application =3D function Sys$_Application() {
    /// <summary locid=3D"M:J#Sys.Application.#ctor" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    Sys._Application.initializeBase(this);
    this._disposableObjects =3D [];
    this._components =3D {};
    this._createdComponents =3D [];
    this._secondPassComponents =3D [];
    this._appLoadHandler =3D null;
    this._beginRequestHandler =3D null;
    this._clientId =3D null;
    this._currentEntry =3D '';
    this._endRequestHandler =3D null;
    this._history =3D null;
    this._enableHistory =3D false;
    this._historyEnabledInScriptManager =3D false;
    this._historyFrame =3D null;
    this._historyInitialized =3D false;
    this._historyInitialLength =3D 0;
    this._historyLength =3D 0;
    this._historyPointIsNew =3D false;
    this._ignoreTimer =3D false;
    this._initialState =3D null;
    this._state =3D {};
    this._timerCookie =3D 0;
    this._timerHandler =3D null;
    this._uniqueId =3D null;
    this._unloadHandlerDelegate =3D Function.createDelegate(this, =
this._unloadHandler);
    this._loadHandlerDelegate =3D 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=3D"Boolean" =
locid=3D"P:J#Sys.Application.isCreatingComponents"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._creatingComponents;
    }
    function Sys$_Application$get_stateString() {
        /// <value type=3D"String" =
locid=3D"P:J#Sys.Application.stateString"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        var hash =3D window.location.hash;
        if (this._isSafari2()) {
            var history =3D this._getHistory();
            if (history) {
                hash =3D history[window.history.length - =
this._historyInitialLength];
            }
        }
        if ((hash.length > 0) && (hash.charAt(0) =3D=3D=3D '#')) {
            hash =3D hash.substring(1);
        }
        if (Sys.Browser.agent =3D=3D=3D Sys.Browser.Firefox) {
            hash =3D this._serializeState(this._deserializeState(hash, =
true));
        }
        return hash;
    }
    function Sys$_Application$get_enableHistory() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.Application.enableHistory"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._enableHistory;
    }
    function Sys$_Application$set_enableHistory(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Boolean}]);
        if (e) throw e;
        if (this._initialized && !this._initializing) {
            throw =
Error.invalidOperation(Sys.Res.historyCannotEnableHistory);
        }
        else if (this._historyEnabledInScriptManager && !value) {
            throw =
Error.invalidOperation(Sys.Res.invalidHistorySettingCombination);
        }
        this._enableHistory =3D value;
    }
    function Sys$_Application$add_init(handler) {
        /// <summary locid=3D"E:J#Sys.Application.init" />
        var e =3D 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 =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
        if (e) throw e;
        this.get_events().removeHandler("init", handler);
    }
    function Sys$_Application$add_load(handler) {
        /// <summary locid=3D"E:J#Sys.Application.load" />
        var e =3D 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 =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
        if (e) throw e;
        this.get_events().removeHandler("load", handler);
    }
    function Sys$_Application$add_navigate(handler) {
        /// <summary locid=3D"E:J#Sys.Application.navigate" />
        var e =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
        if (e) throw e;
        this.get_events().addHandler("navigate", handler);
    }
    function Sys$_Application$remove_navigate(handler) {
        var e =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
        if (e) throw e;
        this.get_events().removeHandler("navigate", handler);
    }
    function Sys$_Application$add_unload(handler) {
        /// <summary locid=3D"E:J#Sys.Application.unload" />
        var e =3D 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 =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
        if (e) throw e;
        this.get_events().removeHandler("unload", handler);
    }
    function Sys$_Application$addComponent(component) {
        /// <summary locid=3D"M:J#Sys.Application.addComponent" />
        /// <param name=3D"component" type=3D"Sys.Component"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "component", type: Sys.Component}
        ]);
        if (e) throw e;
        var id =3D component.get_id();
        if (!id) throw Error.invalidOperation(Sys.Res.cantAddWithoutId);
        if (typeof(this._components[id]) !=3D=3D 'undefined') throw =
Error.invalidOperation(String.format(Sys.Res.appDuplicateComponent, =
id));
        this._components[id] =3D component;
    }
    function Sys$_Application$addHistoryPoint(state, title) {
        /// <summary locid=3D"M:J#Sys.Application.addHistoryPoint" />
        /// <param name=3D"state" type=3D"Object"></param>
        /// <param name=3D"title" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "state", type: Object},
            {name: "title", type: String, mayBeNull: true, optional: =
true}
        ]);
        if (e) throw e;
        if (!this._enableHistory) throw =
Error.invalidOperation(Sys.Res.historyCannotAddHistoryPointWithHistoryDis=
abled);
        for (var n in state) {
            var v =3D state[n];
            var t =3D typeof(v);
            if ((v !=3D=3D null) && ((t =3D=3D=3D 'object') || (t =
=3D=3D=3D 'function') || (t =3D=3D=3D 'undefined'))) {
                throw Error.argument('state', =
Sys.Res.stateMustBeStringDictionary);
            }
        }
        this._ensureHistory();
        var initialState =3D this._state;
        for (var key in state) {
            var value =3D state[key];
            if (value =3D=3D=3D null) {
                if (typeof(initialState[key]) !=3D=3D 'undefined') {
                    delete initialState[key];
                }
            }
            else {
                initialState[key] =3D value;
            }
        }
        var entry =3D this._serializeState(initialState);
        this._historyPointIsNew =3D true;
        this._setState(entry, title);
        this._raiseNavigate();
    }
    function Sys$_Application$beginCreateComponents() {
        /// <summary locid=3D"M:J#Sys.Application.beginCreateComponents" =
/>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        this._creatingComponents =3D true;
    }
    function Sys$_Application$dispose() {
        /// <summary locid=3D"M:J#Sys.Application.dispose" />
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        if (!this._disposing) {
            this._disposing =3D true;
            if (this._timerCookie) {
                window.clearTimeout(this._timerCookie);
                delete this._timerCookie;
            }
            if (this._endRequestHandler) {
                =
Sys.WebForms.PageRequestManager.getInstance().remove_endRequest(this._end=
RequestHandler);
                delete this._endRequestHandler;
            }
            if (this._beginRequestHandler) {
                =
Sys.WebForms.PageRequestManager.getInstance().remove_beginRequest(this._b=
eginRequestHandler);
                delete this._beginRequestHandler;
            }
            if (window.pageUnload) {
                window.pageUnload(this, Sys.EventArgs.Empty);
            }
            var unloadHandler =3D =
this.get_events().getHandler("unload");
            if (unloadHandler) {
                unloadHandler(this, Sys.EventArgs.Empty);
            }
            var disposableObjects =3D =
Array.clone(this._disposableObjects);
            for (var i =3D 0, l =3D 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 =3D null;
            }
            var sl =3D Sys._ScriptLoader.getInstance();
            if(sl) {
                sl.dispose();
            }
            Sys._Application.callBaseMethod(this, 'dispose');
        }
    }
    function Sys$_Application$endCreateComponents() {
        /// <summary locid=3D"M:J#Sys.Application.endCreateComponents" =
/>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        var components =3D this._secondPassComponents;
        for (var i =3D 0, l =3D components.length; i < l; i++) {
            var component =3D components[i].component;
            Sys$Component$_setReferences(component, =
components[i].references);
            component.endUpdate();
        }
        this._secondPassComponents =3D [];
        this._creatingComponents =3D false;
    }
    function Sys$_Application$findComponent(id, parent) {
        /// <summary locid=3D"M:J#Sys.Application.findComponent" />
        /// <param name=3D"id" type=3D"String"></param>
        /// <param name=3D"parent" optional=3D"true" =
mayBeNull=3D"true"></param>
        /// <returns type=3D"Sys.Component" =
mayBeNull=3D"true"></returns>
        var e =3D 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() {
        /// <summary locid=3D"M:J#Sys.Application.getComponents" />
        /// <returns type=3D"Array" =
elementType=3D"Sys.Component"></returns>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        var res =3D [];
        var components =3D this._components;
        for (var name in components) {
            res[res.length] =3D components[name];
        }
        return res;
    }
    function Sys$_Application$initialize() {
        /// <summary locid=3D"M:J#Sys.Application.initialize" />
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        if(!this._initialized && !this._initializing) {
            this._initializing =3D true;
            window.setTimeout(Function.createDelegate(this, =
this._doInitialize), 0);
        }
    }
    function Sys$_Application$notifyScriptLoaded() {
        /// <summary locid=3D"M:J#Sys.Application.notifyScriptLoaded" />
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        var sl =3D Sys._ScriptLoader.getInstance();
        if(sl) {
            sl.notifyScriptLoaded();
        }
    }
    function Sys$_Application$registerDisposableObject(object) {
        /// <summary =
locid=3D"M:J#Sys.Application.registerDisposableObject" />
        /// <param name=3D"object" type=3D"Sys.IDisposable"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "object", type: Sys.IDisposable}
        ]);
        if (e) throw e;
        if (!this._disposing) {
            this._disposableObjects[this._disposableObjects.length] =3D =
object;
        }
    }
    function Sys$_Application$raiseLoad() {
        /// <summary locid=3D"M:J#Sys.Application.raiseLoad" />
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        var h =3D this.get_events().getHandler("load");
        var args =3D new =
Sys.ApplicationLoadEventArgs(Array.clone(this._createdComponents), =
!this._initializing);
        if (h) {
            h(this, args);
        }
        if (window.pageLoad) {
            window.pageLoad(this, args);
        }
        this._createdComponents =3D [];
    }
    function Sys$_Application$removeComponent(component) {
        /// <summary locid=3D"M:J#Sys.Application.removeComponent" />
        /// <param name=3D"component" type=3D"Sys.Component"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "component", type: Sys.Component}
        ]);
        if (e) throw e;
        var id =3D component.get_id();
        if (id) delete this._components[id];
    }
    function Sys$_Application$setServerId(clientId, uniqueId) {
        /// <summary locid=3D"M:J#Sys.Application.setServerId" />
        /// <param name=3D"clientId" type=3D"String"></param>
        /// <param name=3D"uniqueId" type=3D"String"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "clientId", type: String},
            {name: "uniqueId", type: String}
        ]);
        if (e) throw e;
        this._clientId =3D clientId;
        this._uniqueId =3D uniqueId;
    }
    function Sys$_Application$setServerState(value) {
        /// <summary locid=3D"M:J#Sys.Application.setServerState" />
        /// <param name=3D"value" type=3D"String"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "value", type: String}
        ]);
        if (e) throw e;
        this._ensureHistory();
        this._state.__s =3D value;
        this._updateHiddenField(value);
    }
    function Sys$_Application$unregisterDisposableObject(object) {
        /// <summary =
locid=3D"M:J#Sys.Application.unregisterDisposableObject" />
        /// <param name=3D"object" type=3D"Sys.IDisposable"></param>
        var e =3D 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] =
=3D {component: component, references: references};
    }
    function Sys$_Application$_deserializeState(entry, skipDecodeUri) {
        var result =3D {};
        entry =3D entry || '';
        var serverSeparator =3D entry.indexOf('&&');
        if ((serverSeparator !=3D=3D -1) && (serverSeparator + 2 < =
entry.length)) {
            result.__s =3D entry.substr(serverSeparator + 2);
            entry =3D entry.substr(0, serverSeparator);
        }
        var tokens =3D entry.split('&');
        for (var i =3D 0, l =3D tokens.length; i < l; i++) {
            var token =3D tokens[i];
            var equal =3D token.indexOf('=3D');
            if ((equal !=3D=3D -1) && (equal + 1 < token.length)) {
                var name =3D token.substr(0, equal);
                var value =3D token.substr(equal + 1);
                result[name] =3D skipDecodeUri ? value : =
decodeURIComponent(value);
            }
        }
        return result;
    }
    function Sys$_Application$_doInitialize() {
        Sys._Application.callBaseMethod(this, 'initialize');
       =20
        var handler =3D this.get_events().getHandler("init");
        if (handler) {
            this.beginCreateComponents();
            handler(this, Sys.EventArgs.Empty);
            this.endCreateComponents();
        }
        if (Sys.WebForms) {
            this._beginRequestHandler =3D Function.createDelegate(this, =
this._onPageRequestManagerBeginRequest);
            =
Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(this._begi=
nRequestHandler);
            this._endRequestHandler =3D Function.createDelegate(this, =
this._onPageRequestManagerEndRequest);
            =
Sys.WebForms.PageRequestManager.getInstance().add_endRequest(this._endReq=
uestHandler);
        }
       =20
        var loadedEntry =3D this.get_stateString();
        if (loadedEntry !=3D=3D this._currentEntry) {
            this._navigate(loadedEntry);
        }
=20
        this.raiseLoad();
        this._initializing =3D false;
    }
    function Sys$_Application$_enableHistoryInScriptManager() {
        this._enableHistory =3D true;
        this._historyEnabledInScriptManager =3D true;
    }
    function Sys$_Application$_ensureHistory() {
        if (!this._historyInitialized && this._enableHistory) {
            if ((Sys.Browser.agent =3D=3D=3D =
Sys.Browser.InternetExplorer) && (Sys.Browser.documentMode < 8)) {
                this._historyFrame =3D =
document.getElementById('__historyFrame');
                if (!this._historyFrame) throw =
Error.invalidOperation(Sys.Res.historyMissingFrame);
                this._ignoreIFrame =3D true;
            }
            if (this._isSafari2()) {
                var historyElement =3D =
document.getElementById('__history');
                if (!historyElement) throw =
Error.invalidOperation(Sys.Res.historyMissingHiddenInput);
                this._setHistory([window.location.hash]);
                this._historyInitialLength =3D window.history.length;
            }
           =20
            this._timerHandler =3D Function.createDelegate(this, =
this._onIdle);
            this._timerCookie =3D window.setTimeout(this._timerHandler, =
100);
           =20
            try {
                this._initialState =3D =
this._deserializeState(this.get_stateString());
            } catch(e) {}
           =20
            this._historyInitialized =3D true;
        }
    }
    function Sys$_Application$_getHistory() {
        var historyElement =3D document.getElementById('__history');
        if (!historyElement) return '';
        var v =3D historyElement.value;
        return v ? Sys.Serialization.JavaScriptSerializer.deserialize(v, =
true) : '';
    }
    function Sys$_Application$_isSafari2() {
        return (Sys.Browser.agent =3D=3D=3D Sys.Browser.Safari) &&
            (Sys.Browser.version <=3D 419.3);
    }
    function Sys$_Application$_loadHandler() {
        if(this._loadHandlerDelegate) {
            Sys.UI.DomEvent.removeHandler(window, "load", =
this._loadHandlerDelegate);
            this._loadHandlerDelegate =3D null;
        }
        this.initialize();
    }
    function Sys$_Application$_navigate(entry) {
        this._ensureHistory();
        var state =3D this._deserializeState(entry);
       =20
        if (this._uniqueId) {
            var oldServerEntry =3D this._state.__s || '';
            var newServerEntry =3D state.__s || '';
            if (newServerEntry !=3D=3D oldServerEntry) {
                this._updateHiddenField(newServerEntry);
                __doPostBack(this._uniqueId, newServerEntry);
                this._state =3D state;
                return;
            }
        }
        this._setState(entry);
        this._state =3D state;
        this._raiseNavigate();
    }
    function Sys$_Application$_onIdle() {
        delete this._timerCookie;
       =20
        var entry =3D this.get_stateString();
        if (entry !=3D=3D this._currentEntry) {
            if (!this._ignoreTimer) {
                this._historyPointIsNew =3D false;
                this._navigate(entry);
                this._historyLength =3D window.history.length;
            }
        }
        else {
            this._ignoreTimer =3D false;
        }
        this._timerCookie =3D window.setTimeout(this._timerHandler, =
100);
    }
    function Sys$_Application$_onIFrameLoad(entry) {
        this._ensureHistory();
        if (!this._ignoreIFrame) {
            this._historyPointIsNew =3D false;
            this._navigate(entry);
        }
        this._ignoreIFrame =3D false;
    }
    function Sys$_Application$_onPageRequestManagerBeginRequest(sender, =
args) {
        this._ignoreTimer =3D true;
    }
    function Sys$_Application$_onPageRequestManagerEndRequest(sender, =
args) {
        var dataItem =3D args.get_dataItems()[this._clientId];
        var eventTarget =3D document.getElementById("__EVENTTARGET");
        if (eventTarget && eventTarget.value =3D=3D=3D this._uniqueId) {
            eventTarget.value =3D '';
        }
        if (typeof(dataItem) !=3D=3D 'undefined') {
            this.setServerState(dataItem);
            this._historyPointIsNew =3D true;
        }
        else {
            this._ignoreTimer =3D false;
        }
        var entry =3D this._serializeState(this._state);
        if (entry !=3D=3D this._currentEntry) {
            this._ignoreTimer =3D true;
            this._setState(entry);
            this._raiseNavigate();
        }
    }
    function Sys$_Application$_raiseNavigate() {
        var h =3D this.get_events().getHandler("navigate");
        var stateClone =3D {};
        for (var key in this._state) {
            if (key !=3D=3D '__s') {
                stateClone[key] =3D this._state[key];
            }
        }
        var args =3D new Sys.HistoryEventArgs(stateClone);
        if (h) {
            h(this, args);
        }
    }
    function Sys$_Application$_serializeState(state) {
        var serialized =3D [];
        for (var key in state) {
            var value =3D state[key];
            if (key =3D=3D=3D '__s') {
                var serverState =3D value;
            }
            else {
                if (key.indexOf('=3D') !=3D=3D -1) throw =
Error.argument('state', Sys.Res.stateFieldNameInvalid);
                serialized[serialized.length] =3D key + '=3D' + =
encodeURIComponent(value);
            }
        }
        return serialized.join('&') + (serverState ? '&&' + serverState =
: '');
    }
    function Sys$_Application$_setHistory(historyArray) {
        var historyElement =3D document.getElementById('__history');
        if (historyElement) {
            historyElement.value =3D =
Sys.Serialization.JavaScriptSerializer.serialize(historyArray);
        }
    }
    function Sys$_Application$_setState(entry, title) {
        entry =3D entry || '';
        if (entry !=3D=3D this._currentEntry) {
            if (window.theForm) {
                var action =3D window.theForm.action;
                var hashIndex =3D action.indexOf('#');
                window.theForm.action =3D ((hashIndex !=3D=3D -1) ? =
action.substring(0, hashIndex) : action) + '#' + entry;
            }
           =20
            if (this._historyFrame && this._historyPointIsNew) {
                this._ignoreIFrame =3D true;
                this._historyPointIsNew =3D false;
                var frameDoc =3D =
this._historyFrame.contentWindow.document;
                frameDoc.open("javascript:'<html></html>'");
                frameDoc.write("<html><head><title>" + (title || =
document.title) +
                    "</title><scri" + "pt =
type=3D\"text/javascript\">parent.Sys.Application._onIFrameLoad('" +=20
                    entry + "');</scri" + =
"pt></head><body></body></html>");
                frameDoc.close();
            }
            this._ignoreTimer =3D false;
            var currentHash =3D this.get_stateString();
            this._currentEntry =3D entry;
            if (entry !=3D=3D currentHash) {
                var loc =3D document.location;
                if (loc.href.length - loc.hash.length + entry.length > =
1024) {
                    throw =
Error.invalidOperation(Sys.Res.urlMustBeLessThan1024chars);
                }
                if (this._isSafari2()) {
                    var history =3D this._getHistory();
                    history[window.history.length - =
this._historyInitialLength + 1] =3D entry;
                    this._setHistory(history);
                    this._historyLength =3D window.history.length + 1;
                    var form =3D document.createElement('form');
                    form.method =3D 'get';
                    form.action =3D '#' + entry;
                    document.appendChild(form);
                    form.submit();
                    document.removeChild(form);
                }
                else {
                    window.location.hash =3D entry;
                }
                if ((typeof(title) !=3D=3D 'undefined') && (title =
!=3D=3D null)) {
                    document.title =3D title;
                }
            }
        }
    }
    function Sys$_Application$_unloadHandler(event) {
        this.dispose();
    }
    function Sys$_Application$_updateHiddenField(value) {
        if (this._clientId) {
            var serverStateField =3D =
document.getElementById(this._clientId);
            if (serverStateField) {
                serverStateField.value =3D value;
            }
        }
    }
Sys._Application.prototype =3D {
    _creatingComponents: false,
    _disposing: false,
    get_isCreatingComponents: Sys$_Application$get_isCreatingComponents,
    get_stateString: Sys$_Application$get_stateString,
    get_enableHistory: Sys$_Application$get_enableHistory,
    set_enableHistory: Sys$_Application$set_enableHistory,
    add_init: Sys$_Application$add_init,
    remove_init: Sys$_Application$remove_init,
    add_load: Sys$_Application$add_load,
    remove_load: Sys$_Application$remove_load,
    add_navigate: Sys$_Application$add_navigate,
    remove_navigate: Sys$_Application$remove_navigate,
    add_unload: Sys$_Application$add_unload,
    remove_unload: Sys$_Application$remove_unload,
    addComponent: Sys$_Application$addComponent,
    addHistoryPoint: Sys$_Application$addHistoryPoint,
    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,
    setServerId: Sys$_Application$setServerId,
    setServerState: Sys$_Application$setServerState,
    unregisterDisposableObject: =
Sys$_Application$unregisterDisposableObject,
    _addComponentToSecondPass: =
Sys$_Application$_addComponentToSecondPass,
    _deserializeState: Sys$_Application$_deserializeState,
    _doInitialize: Sys$_Application$_doInitialize,
    _enableHistoryInScriptManager: =
Sys$_Application$_enableHistoryInScriptManager,   =20
    _ensureHistory: Sys$_Application$_ensureHistory,
    _getHistory: Sys$_Application$_getHistory,
    _isSafari2: Sys$_Application$_isSafari2,
    _loadHandler: Sys$_Application$_loadHandler,
    _navigate: Sys$_Application$_navigate,
    _onIdle: Sys$_Application$_onIdle,
    _onIFrameLoad: Sys$_Application$_onIFrameLoad,
    _onPageRequestManagerBeginRequest: =
Sys$_Application$_onPageRequestManagerBeginRequest,
    _onPageRequestManagerEndRequest: =
Sys$_Application$_onPageRequestManagerEndRequest,
    _raiseNavigate: Sys$_Application$_raiseNavigate,
    _serializeState: Sys$_Application$_serializeState,
    _setHistory: Sys$_Application$_setHistory,
    _setState: Sys$_Application$_setState,
    _unloadHandler: Sys$_Application$_unloadHandler,
    _updateHiddenField: Sys$_Application$_updateHiddenField
}
Sys._Application.registerClass('Sys._Application', Sys.Component, =
Sys.IContainer);
Sys.Application =3D new Sys._Application();
var $find =3D Sys.Application.findComponent;
Type.registerNamespace('Sys.Net');
=20
Sys.Net.WebRequestExecutor =3D function Sys$Net$WebRequestExecutor() {
    /// <summary locid=3D"M:J#Sys.Net.WebRequestExecutor.#ctor" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    this._webRequest =3D null;
    this._resultObject =3D null;
}
    function Sys$Net$WebRequestExecutor$get_webRequest() {
        /// <value type=3D"Sys.Net.WebRequest" =
locid=3D"P:J#Sys.Net.WebRequestExecutor.webRequest"></value>
        if (arguments.length !=3D=3D 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 =3D value;
    }
    function Sys$Net$WebRequestExecutor$get_started() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.Net.WebRequestExecutor.started"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_responseAvailable() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.Net.WebRequestExecutor.responseAvailable"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_timedOut() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.Net.WebRequestExecutor.timedOut"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_aborted() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.Net.WebRequestExecutor.aborted"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_responseData() {
        /// <value type=3D"String" =
locid=3D"P:J#Sys.Net.WebRequestExecutor.responseData"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_statusCode() {
        /// <value type=3D"Number" =
locid=3D"P:J#Sys.Net.WebRequestExecutor.statusCode"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_statusText() {
        /// <value type=3D"String" =
locid=3D"P:J#Sys.Net.WebRequestExecutor.statusText"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_xml() {
        /// <value locid=3D"P:J#Sys.Net.WebRequestExecutor.xml"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_object() {
        /// <value =
locid=3D"P:J#Sys.Net.WebRequestExecutor.object"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        if (!this._resultObject) {
            this._resultObject =3D =
Sys.Serialization.JavaScriptSerializer.deserialize(this.get_responseData(=
));
        }
        return this._resultObject;
    }
    function Sys$Net$WebRequestExecutor$executeRequest() {
        /// <summary =
locid=3D"M:J#Sys.Net.WebRequestExecutor.executeRequest" />
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$abort() {
        /// <summary locid=3D"M:J#Sys.Net.WebRequestExecutor.abort" />
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$getResponseHeader(header) {
        /// <summary =
locid=3D"M:J#Sys.Net.WebRequestExecutor.getResponseHeader" />
        /// <param name=3D"header" type=3D"String"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "header", type: String}
        ]);
        if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$getAllResponseHeaders() {
        /// <summary =
locid=3D"M:J#Sys.Net.WebRequestExecutor.getAllResponseHeaders" />
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
Sys.Net.WebRequestExecutor.prototype =3D {
    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');
=20
Sys.Net.XMLDOM =3D function Sys$Net$XMLDOM(markup) {
    /// <summary locid=3D"M:J#Sys.Net.XMLDOM.#ctor" />
    /// <param name=3D"markup" type=3D"String"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "markup", type: String}
    ]);
    if (e) throw e;
    if (!window.DOMParser) {
        var progIDs =3D [ 'Msxml2.DOMDocument.3.0', 'Msxml2.DOMDocument' =
];
        for (var i =3D 0, l =3D progIDs.length; i < l; i++) {
            try {
                var xmlDOM =3D new ActiveXObject(progIDs[i]);
                xmlDOM.async =3D false;
                xmlDOM.loadXML(markup);
                xmlDOM.setProperty('SelectionLanguage', 'XPath');
                return xmlDOM;
            }
            catch (ex) {
            }
        }
    }
    else {
        try {
            var domParser =3D new window.DOMParser();
            return domParser.parseFromString(markup, 'text/xml');
        }
        catch (ex) {
        }
    }
    return null;
}
Sys.Net.XMLHttpExecutor =3D function Sys$Net$XMLHttpExecutor() {
    /// <summary locid=3D"M:J#Sys.Net.XMLHttpExecutor.#ctor" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    Sys.Net.XMLHttpExecutor.initializeBase(this);
    var _this =3D this;
    this._xmlHttpRequest =3D null;
    this._webRequest =3D null;
    this._responseAvailable =3D false;
    this._timedOut =3D false;
    this._timer =3D null;
    this._aborted =3D false;
    this._started =3D false;
    this._onReadyStateChange =3D (function () {
       =20
        if (_this._xmlHttpRequest.readyState =3D=3D=3D 4 ) {
            try {
                if (typeof(_this._xmlHttpRequest.status) =3D=3D=3D =
"undefined") {
                    return;
                }
            }
            catch(ex) {
                return;
            }
           =20
            _this._clearTimer();
            _this._responseAvailable =3D true;
            try {
                _this._webRequest.completed(Sys.EventArgs.Empty);
            }
            finally {
                if (_this._xmlHttpRequest !=3D null) {
                    _this._xmlHttpRequest.onreadystatechange =3D =
Function.emptyMethod;
                    _this._xmlHttpRequest =3D null;
                }
            }
        }
    });
    this._clearTimer =3D (function() {
        if (_this._timer !=3D null) {
            window.clearTimeout(_this._timer);
            _this._timer =3D null;
        }
    });
    this._onTimeout =3D (function() {
        if (!_this._responseAvailable) {
            _this._clearTimer();
            _this._timedOut =3D true;
            _this._xmlHttpRequest.onreadystatechange =3D =
Function.emptyMethod;
            _this._xmlHttpRequest.abort();
            _this._webRequest.completed(Sys.EventArgs.Empty);
            _this._xmlHttpRequest =3D null;
        }
    });
}
    function Sys$Net$XMLHttpExecutor$get_timedOut() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.Net.XMLHttpExecutor.timedOut"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._timedOut;
    }
    function Sys$Net$XMLHttpExecutor$get_started() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.Net.XMLHttpExecutor.started"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._started;
    }
    function Sys$Net$XMLHttpExecutor$get_responseAvailable() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.Net.XMLHttpExecutor.responseAvailable"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._responseAvailable;
    }
    function Sys$Net$XMLHttpExecutor$get_aborted() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.Net.XMLHttpExecutor.aborted"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._aborted;
    }
    function Sys$Net$XMLHttpExecutor$executeRequest() {
        /// <summary =
locid=3D"M:J#Sys.Net.XMLHttpExecutor.executeRequest" />
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        this._webRequest =3D this.get_webRequest();
        if (this._started) {
            throw =
Error.invalidOperation(String.format(Sys.Res.cannotCallOnceStarted, =
'executeRequest'));
        }
        if (this._webRequest =3D=3D=3D null) {
            throw Error.invalidOperation(Sys.Res.nullWebRequest);
        }
        var body =3D this._webRequest.get_body();
        var headers =3D this._webRequest.get_headers();
        this._xmlHttpRequest =3D new XMLHttpRequest();
        this._xmlHttpRequest.onreadystatechange =3D =
this._onReadyStateChange;
        var verb =3D this._webRequest.get_httpVerb();
        this._xmlHttpRequest.open(verb, =
this._webRequest.getResolvedUrl(), true );
        if (headers) {
            for (var header in headers) {
                var val =3D headers[header];
                if (typeof(val) !=3D=3D "function")
                    this._xmlHttpRequest.setRequestHeader(header, val);
            }
        }
        if (verb.toLowerCase() =3D=3D=3D "post") {
            if ((headers =3D=3D=3D null) || !headers['Content-Type']) {
                this._xmlHttpRequest.setRequestHeader('Content-Type', =
'application/x-www-form-urlencoded; charset=3Dutf-8');
            }
            if (!body) {
                body =3D "";
            }
        }
        var timeout =3D this._webRequest.get_timeout();
        if (timeout > 0) {
            this._timer =3D =
window.setTimeout(Function.createDelegate(this, this._onTimeout), =
timeout);
        }
        this._xmlHttpRequest.send(body);
        this._started =3D true;
    }
    function Sys$Net$XMLHttpExecutor$getResponseHeader(header) {
        /// <summary =
locid=3D"M:J#Sys.Net.XMLHttpExecutor.getResponseHeader" />
        /// <param name=3D"header" type=3D"String"></param>
        /// <returns type=3D"String"></returns>
        var e =3D 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 =3D this._xmlHttpRequest.getResponseHeader(header);
        } catch (e) {
        }
        if (!result) result =3D "";
        return result;
    }
    function Sys$Net$XMLHttpExecutor$getAllResponseHeaders() {
        /// <summary =
locid=3D"M:J#Sys.Net.XMLHttpExecutor.getAllResponseHeaders" />
        /// <returns type=3D"String"></returns>
        if (arguments.length !=3D=3D 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=3D"String" =
locid=3D"P:J#Sys.Net.XMLHttpExecutor.responseData"></value>
        if (arguments.length !=3D=3D 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=3D"Number" =
locid=3D"P:J#Sys.Net.XMLHttpExecutor.statusCode"></value>
        if (arguments.length !=3D=3D 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'));
        }
        var result =3D 0;
        try {
            result =3D this._xmlHttpRequest.status;
        }
        catch(ex) {
        }
        return result;
    }
    function Sys$Net$XMLHttpExecutor$get_statusText() {
        /// <value type=3D"String" =
locid=3D"P:J#Sys.Net.XMLHttpExecutor.statusText"></value>
        if (arguments.length !=3D=3D 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 locid=3D"P:J#Sys.Net.XMLHttpExecutor.xml"></value>
        if (arguments.length !=3D=3D 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 =3D this._xmlHttpRequest.responseXML;
        if (!xml || !xml.documentElement) {
            xml =3D Sys.Net.XMLDOM(this._xmlHttpRequest.responseText);
            if (!xml || !xml.documentElement)
                return null;
        }
        else if (navigator.userAgent.indexOf('MSIE') !=3D=3D -1) {
            xml.setProperty('SelectionLanguage', 'XPath');
        }
        if (xml.documentElement.namespaceURI =3D=3D=3D =
"http://www.mozilla.org/newlayout/xml/parsererror.xml" &&
            xml.documentElement.tagName =3D=3D=3D "parsererror") {
            return null;
        }
       =20
        if (xml.documentElement.firstChild && =
xml.documentElement.firstChild.tagName =3D=3D=3D "parsererror") {
            return null;
        }
       =20
        return xml;
    }
    function Sys$Net$XMLHttpExecutor$abort() {
        /// <summary locid=3D"M:J#Sys.Net.XMLHttpExecutor.abort" />
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        if (!this._started) {
            throw =
Error.invalidOperation(Sys.Res.cannotAbortBeforeStart);
        }
        if (this._aborted || this._responseAvailable || this._timedOut)
            return;
        this._aborted =3D true;
        this._clearTimer();
        if (this._xmlHttpRequest && !this._responseAvailable) {
            this._xmlHttpRequest.onreadystatechange =3D =
Function.emptyMethod;
            this._xmlHttpRequest.abort();
           =20
            this._xmlHttpRequest =3D null;           =20
            this._webRequest.completed(Sys.EventArgs.Empty);
        }
    }
Sys.Net.XMLHttpExecutor.prototype =3D {
    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);
=20
Sys.Net._WebRequestManager =3D function Sys$Net$_WebRequestManager() {
    /// <summary locid=3D"P:J#Sys.Net.WebRequestManager.#ctor" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    this._defaultTimeout =3D 0;
    this._defaultExecutorType =3D "Sys.Net.XMLHttpExecutor";
}
    function Sys$Net$_WebRequestManager$add_invokingRequest(handler) {
        /// <summary =
locid=3D"E:J#Sys.Net.WebRequestManager.invokingRequest" />
        var e =3D 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 =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().removeHandler("invokingRequest", =
handler);
    }
    function Sys$Net$_WebRequestManager$add_completedRequest(handler) {
        /// <summary =
locid=3D"E:J#Sys.Net.WebRequestManager.completedRequest" />
        var e =3D 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 =3D 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 =3D new Sys.EventHandlerList();
        }
        return this._events;
    }
    function Sys$Net$_WebRequestManager$get_defaultTimeout() {
        /// <value type=3D"Number" =
locid=3D"P:J#Sys.Net.WebRequestManager.defaultTimeout"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._defaultTimeout;
    }
    function Sys$Net$_WebRequestManager$set_defaultTimeout(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Number}]);
        if (e) throw e;
        if (value < 0) {
            throw Error.argumentOutOfRange("value", value, =
Sys.Res.invalidTimeout);
        }
        this._defaultTimeout =3D value;
    }
    function Sys$Net$_WebRequestManager$get_defaultExecutorType() {
        /// <value type=3D"String" =
locid=3D"P:J#Sys.Net.WebRequestManager.defaultExecutorType"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._defaultExecutorType;
    }
    function Sys$Net$_WebRequestManager$set_defaultExecutorType(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: String}]);
        if (e) throw e;
        this._defaultExecutorType =3D value;
    }
    function Sys$Net$_WebRequestManager$executeRequest(webRequest) {
        /// <summary =
locid=3D"M:J#Sys.Net.WebRequestManager.executeRequest" />
        /// <param name=3D"webRequest" =
type=3D"Sys.Net.WebRequest"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "webRequest", type: Sys.Net.WebRequest}
        ]);
        if (e) throw e;
        var executor =3D webRequest.get_executor();
        if (!executor) {
            var failed =3D false;
            try {
                var executorType =3D eval(this._defaultExecutorType);
                executor =3D new executorType();
            } catch (e) {
                failed =3D 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 =3D new Sys.Net.NetworkRequestEventArgs(webRequest);
        var handler =3D =
this._get_eventHandlerList().getHandler("invokingRequest");
        if (handler) {
            handler(this, evArgs);
        }
        if (!evArgs.get_cancel()) {
            executor.executeRequest();
        }
    }
Sys.Net._WebRequestManager.prototype =3D {
    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 =3D new Sys.Net._WebRequestManager();
=20
Sys.Net.NetworkRequestEventArgs =3D function =
Sys$Net$NetworkRequestEventArgs(webRequest) {
    /// <summary locid=3D"M:J#Sys.Net.NetworkRequestEventArgs.#ctor" />
    /// <param name=3D"webRequest" type=3D"Sys.Net.WebRequest"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "webRequest", type: Sys.Net.WebRequest}
    ]);
    if (e) throw e;
    Sys.Net.NetworkRequestEventArgs.initializeBase(this);
    this._webRequest =3D webRequest;
}
    function Sys$Net$NetworkRequestEventArgs$get_webRequest() {
        /// <value type=3D"Sys.Net.WebRequest" =
locid=3D"P:J#Sys.Net.NetworkRequestEventArgs.webRequest"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._webRequest;
    }
Sys.Net.NetworkRequestEventArgs.prototype =3D {
    get_webRequest: Sys$Net$NetworkRequestEventArgs$get_webRequest
}
Sys.Net.NetworkRequestEventArgs.registerClass('Sys.Net.NetworkRequestEven=
tArgs', Sys.CancelEventArgs);
=20
Sys.Net.WebRequest =3D function Sys$Net$WebRequest() {
    /// <summary locid=3D"M:J#Sys.Net.WebRequest.#ctor" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    this._url =3D "";
    this._headers =3D { };
    this._body =3D null;
    this._userContext =3D null;
    this._httpVerb =3D null;
    this._executor =3D null;
    this._invokeCalled =3D false;
    this._timeout =3D 0;
}
    function Sys$Net$WebRequest$add_completed(handler) {
    /// <summary locid=3D"E:J#Sys.Net.WebRequest.completed" />
    var e =3D 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 =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
    if (e) throw e;
        this._get_eventHandlerList().removeHandler("completed", =
handler);
    }
    function Sys$Net$WebRequest$completed(eventArgs) {
        /// <summary locid=3D"M:J#Sys.Net.WebRequest.completed" />
        /// <param name=3D"eventArgs" type=3D"Sys.EventArgs"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "eventArgs", type: Sys.EventArgs}
        ]);
        if (e) throw e;
        var handler =3D =
Sys.Net.WebRequestManager._get_eventHandlerList().getHandler("completedRe=
quest");
        if (handler) {
            handler(this._executor, eventArgs);
        }
        handler =3D =
this._get_eventHandlerList().getHandler("completed");
        if (handler) {
            handler(this._executor, eventArgs);
        }
    }
    function Sys$Net$WebRequest$_get_eventHandlerList() {
        if (!this._events) {
            this._events =3D new Sys.EventHandlerList();
        }
        return this._events;
    }
    function Sys$Net$WebRequest$get_url() {
        /// <value type=3D"String" =
locid=3D"P:J#Sys.Net.WebRequest.url"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._url;
    }
    function Sys$Net$WebRequest$set_url(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: String}]);
        if (e) throw e;
        this._url =3D value;
    }
    function Sys$Net$WebRequest$get_headers() {
        /// <value locid=3D"P:J#Sys.Net.WebRequest.headers"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._headers;
    }
    function Sys$Net$WebRequest$get_httpVerb() {
        /// <value type=3D"String" =
locid=3D"P:J#Sys.Net.WebRequest.httpVerb"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        if (this._httpVerb =3D=3D=3D null) {
            if (this._body =3D=3D=3D null) {
                return "GET";
            }
            return "POST";
        }
        return this._httpVerb;
    }
    function Sys$Net$WebRequest$set_httpVerb(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: String}]);
        if (e) throw e;
        if (value.length =3D=3D=3D 0) {
            throw Error.argument('value', Sys.Res.invalidHttpVerb);
        }
        this._httpVerb =3D value;
    }
    function Sys$Net$WebRequest$get_body() {
        /// <value mayBeNull=3D"true" =
locid=3D"P:J#Sys.Net.WebRequest.body"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._body;
    }
    function Sys$Net$WebRequest$set_body(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
mayBeNull: true}]);
        if (e) throw e;
        this._body =3D value;
    }
    function Sys$Net$WebRequest$get_userContext() {
        /// <value mayBeNull=3D"true" =
locid=3D"P:J#Sys.Net.WebRequest.userContext"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._userContext;
    }
    function Sys$Net$WebRequest$set_userContext(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
mayBeNull: true}]);
        if (e) throw e;
        this._userContext =3D value;
    }
    function Sys$Net$WebRequest$get_executor() {
        /// <value type=3D"Sys.Net.WebRequestExecutor" =
locid=3D"P:J#Sys.Net.WebRequest.executor"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._executor;
    }
    function Sys$Net$WebRequest$set_executor(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Sys.Net.WebRequestExecutor}]);
        if (e) throw e;
        if (this._executor !=3D=3D null && this._executor.get_started()) =
{
            throw =
Error.invalidOperation(Sys.Res.setExecutorAfterActive);
        }
        this._executor =3D value;
        this._executor._set_webRequest(this);
    }
    function Sys$Net$WebRequest$get_timeout() {
        /// <value type=3D"Number" =
locid=3D"P:J#Sys.Net.WebRequest.timeout"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        if (this._timeout =3D=3D=3D 0) {
            return Sys.Net.WebRequestManager.get_defaultTimeout();
        }
        return this._timeout;
    }
    function Sys$Net$WebRequest$set_timeout(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Number}]);
        if (e) throw e;
        if (value < 0) {
            throw Error.argumentOutOfRange("value", value, =
Sys.Res.invalidTimeout);
        }
        this._timeout =3D value;
    }
    function Sys$Net$WebRequest$getResolvedUrl() {
        /// <summary locid=3D"M:J#Sys.Net.WebRequest.getResolvedUrl" />
        /// <returns type=3D"String"></returns>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return Sys.Net.WebRequest._resolveUrl(this._url);
    }
    function Sys$Net$WebRequest$invoke() {
        /// <summary locid=3D"M:J#Sys.Net.WebRequest.invoke" />
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        if (this._invokeCalled) {
            throw Error.invalidOperation(Sys.Res.invokeCalledTwice);
        }
        Sys.Net.WebRequestManager.executeRequest(this);
        this._invokeCalled =3D true;
    }
Sys.Net.WebRequest.prototype =3D {
    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 =3D function =
Sys$Net$WebRequest$_resolveUrl(url, baseUrl) {
    if (url && url.indexOf('://') !=3D=3D -1) {
        return url;
    }
    if (!baseUrl || baseUrl.length =3D=3D=3D 0) {
        var baseElement =3D document.getElementsByTagName('base')[0];
        if (baseElement && baseElement.href && baseElement.href.length > =
0) {
            baseUrl =3D baseElement.href;
        }
        else {
            baseUrl =3D document.URL;
        }
    }
    var qsStart =3D baseUrl.indexOf('?');
    if (qsStart !=3D=3D -1) {
        baseUrl =3D baseUrl.substr(0, qsStart);
    }
    qsStart =3D baseUrl.indexOf('#');
    if (qsStart !=3D=3D -1) {
        baseUrl =3D baseUrl.substr(0, qsStart);
    }
    baseUrl =3D baseUrl.substr(0, baseUrl.lastIndexOf('/') + 1);
    if (!url || url.length =3D=3D=3D 0) {
        return baseUrl;
    }
    if (url.charAt(0) =3D=3D=3D '/') {
        var slashslash =3D baseUrl.indexOf('://');
        if (slashslash =3D=3D=3D -1) {
            throw Error.argument("baseUrl", Sys.Res.badBaseUrl1);
        }
        var nextSlash =3D baseUrl.indexOf('/', slashslash + 3);
        if (nextSlash =3D=3D=3D -1) {
            throw Error.argument("baseUrl", Sys.Res.badBaseUrl2);
        }
        return baseUrl.substr(0, nextSlash) + url;
    }
    else {
        var lastSlash =3D baseUrl.lastIndexOf('/');
        if (lastSlash =3D=3D=3D -1) {
            throw Error.argument("baseUrl", Sys.Res.badBaseUrl3);
        }
        return baseUrl.substr(0, lastSlash+1) + url;
    }
}
Sys.Net.WebRequest._createQueryString =3D function =
Sys$Net$WebRequest$_createQueryString(queryString, encodeMethod) {
    if (!encodeMethod)
        encodeMethod =3D encodeURIComponent;
    var sb =3D new Sys.StringBuilder();
    var i =3D 0;
    for (var arg in queryString) {
        var obj =3D queryString[arg];
        if (typeof(obj) =3D=3D=3D "function") continue;
        var val =3D =
Sys.Serialization.JavaScriptSerializer.serialize(obj);
        if (i !=3D=3D 0) {
            sb.append('&');
        }
        sb.append(arg);
        sb.append('=3D');
        sb.append(encodeMethod(val));
        i++;
    }
    return sb.toString();
}
Sys.Net.WebRequest._createUrl =3D function =
Sys$Net$WebRequest$_createUrl(url, queryString) {
    if (!queryString) {
        return url;
    }
    var qs =3D Sys.Net.WebRequest._createQueryString(queryString);
    if (qs.length > 0) {
        var sep =3D '?';
        if (url && url.indexOf('?') !=3D=3D -1)
            sep =3D '&';
        return url + sep + qs;
    } else {
        return url;
    }
}
Sys.Net.WebRequest.registerClass('Sys.Net.WebRequest');
=20
Sys.Net.WebServiceProxy =3D function Sys$Net$WebServiceProxy() {
}
    function Sys$Net$WebServiceProxy$get_timeout() {
        /// <value type=3D"Number" =
locid=3D"P:J#Sys.Net.WebServiceProxy.timeout"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._timeout;
    }
    function Sys$Net$WebServiceProxy$set_timeout(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Number}]);
        if (e) throw e;
        if (value < 0) { throw Error.argumentOutOfRange('value', value, =
Sys.Res.invalidTimeout); }
        this._timeout =3D value;
    }
    function Sys$Net$WebServiceProxy$get_defaultUserContext() {
        /// <value mayBeNull=3D"true" =
locid=3D"P:J#Sys.Net.WebServiceProxy.defaultUserContext"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._userContext;
    }
    function Sys$Net$WebServiceProxy$set_defaultUserContext(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
mayBeNull: true}]);
        if (e) throw e;
        this._userContext =3D value;
    }
    function Sys$Net$WebServiceProxy$get_defaultSucceededCallback() {
        /// <value type=3D"Function" mayBeNull=3D"true" =
locid=3D"P:J#Sys.Net.WebServiceProxy.defaultSucceededCallback"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._succeeded;
    }
    function Sys$Net$WebServiceProxy$set_defaultSucceededCallback(value) =
{
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Function, mayBeNull: true}]);
        if (e) throw e;
        this._succeeded =3D value;
    }
    function Sys$Net$WebServiceProxy$get_defaultFailedCallback() {
        /// <value type=3D"Function" mayBeNull=3D"true" =
locid=3D"P:J#Sys.Net.WebServiceProxy.defaultFailedCallback"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._failed;
    }
    function Sys$Net$WebServiceProxy$set_defaultFailedCallback(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Function, mayBeNull: true}]);
        if (e) throw e;
        this._failed =3D value;
    }
    function Sys$Net$WebServiceProxy$get_path() {
        /// <value type=3D"String" =
locid=3D"P:J#Sys.Net.WebServiceProxy.path"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._path;
    }
    function Sys$Net$WebServiceProxy$set_path(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: String}]);
        if (e) throw e;
        this._path =3D value;
    }
    function Sys$Net$WebServiceProxy$_invoke(servicePath, methodName, =
useGet, params, onSuccess, onFailure, userContext) {
        /// <summary locid=3D"M:J#Sys.Net.WebServiceProxy._invoke" />
        /// <param name=3D"servicePath" type=3D"String"></param>
        /// <param name=3D"methodName" type=3D"String"></param>
        /// <param name=3D"useGet" type=3D"Boolean"></param>
        /// <param name=3D"params"></param>
        /// <param name=3D"onSuccess" type=3D"Function" =
mayBeNull=3D"true" optional=3D"true"></param>
        /// <param name=3D"onFailure" type=3D"Function" =
mayBeNull=3D"true" optional=3D"true"></param>
        /// <param name=3D"userContext" mayBeNull=3D"true" =
optional=3D"true"></param>
        /// <returns type=3D"Sys.Net.WebRequest"></returns>
        var e =3D 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 =3D=3D=3D null || typeof onSuccess =3D=3D=3D =
'undefined') onSuccess =3D this.get_defaultSucceededCallback();
        if (onFailure =3D=3D=3D null || typeof onFailure =3D=3D=3D =
'undefined') onFailure =3D this.get_defaultFailedCallback();
        if (userContext =3D=3D=3D null || typeof userContext =3D=3D=3D =
'undefined') userContext =3D this.get_defaultUserContext();
       =20
        return Sys.Net.WebServiceProxy.invoke(servicePath, methodName, =
useGet, params, onSuccess, onFailure, userContext, this.get_timeout());
    }
Sys.Net.WebServiceProxy.prototype =3D {
    get_timeout: Sys$Net$WebServiceProxy$get_timeout,
    set_timeout: Sys$Net$WebServiceProxy$set_timeout,
    get_defaultUserContext: =
Sys$Net$WebServiceProxy$get_defaultUserContext,
    set_defaultUserContext: =
Sys$Net$WebServiceProxy$set_defaultUserContext,
    get_defaultSucceededCallback: =
Sys$Net$WebServiceProxy$get_defaultSucceededCallback,
    set_defaultSucceededCallback: =
Sys$Net$WebServiceProxy$set_defaultSucceededCallback,
    get_defaultFailedCallback: =
Sys$Net$WebServiceProxy$get_defaultFailedCallback,
    set_defaultFailedCallback: =
Sys$Net$WebServiceProxy$set_defaultFailedCallback,
    get_path: Sys$Net$WebServiceProxy$get_path,
    set_path: Sys$Net$WebServiceProxy$set_path,
    _invoke: Sys$Net$WebServiceProxy$_invoke
}
Sys.Net.WebServiceProxy.registerClass('Sys.Net.WebServiceProxy');
Sys.Net.WebServiceProxy.invoke =3D function =
Sys$Net$WebServiceProxy$invoke(servicePath, methodName, useGet, params, =
onSuccess, onFailure, userContext, timeout) {
    /// <summary locid=3D"M:J#Sys.Net.WebServiceProxy.invoke" />
    /// <param name=3D"servicePath" type=3D"String"></param>
    /// <param name=3D"methodName" type=3D"String"></param>
    /// <param name=3D"useGet" type=3D"Boolean" =
optional=3D"true"></param>
    /// <param name=3D"params" mayBeNull=3D"true" =
optional=3D"true"></param>
    /// <param name=3D"onSuccess" type=3D"Function" mayBeNull=3D"true" =
optional=3D"true"></param>
    /// <param name=3D"onFailure" type=3D"Function" mayBeNull=3D"true" =
optional=3D"true"></param>
    /// <param name=3D"userContext" mayBeNull=3D"true" =
optional=3D"true"></param>
    /// <param name=3D"timeout" type=3D"Number" =
optional=3D"true"></param>
    /// <returns type=3D"Sys.Net.WebRequest"></returns>
    var e =3D 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 =3D new Sys.Net.WebRequest();
    request.get_headers()['Content-Type'] =3D 'application/json; =
charset=3Dutf-8';
    if (!params) params =3D {};
    var urlParams =3D params;
    if (!useGet || !urlParams) urlParams =3D {};
    =
request.set_url(Sys.Net.WebRequest._createUrl(servicePath+"/"+encodeURICo=
mponent(methodName), urlParams));
    var body =3D null;
    if (!useGet) {
        body =3D =
Sys.Serialization.JavaScriptSerializer.serialize(params);
        if (body =3D=3D=3D "{}") body =3D "";
    }
    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 =3D response.get_statusCode();
            var result =3D null;
          =20
            try {
                var contentType =3D =
response.getResponseHeader("Content-Type");
                if (contentType.startsWith("application/json")) {
                    result =3D response.get_object();
                }
                else if (contentType.startsWith("text/xml")) {
                    result =3D response.get_xml();
                }
                else {
                    result =3D response.get_responseData();
                }
            } catch (ex) {
            }
            var error =3D response.getResponseHeader("jsonerror");
            var errorObj =3D (error =3D=3D=3D "true");
            if (errorObj) {
                if (result) {
                    result =3D new Sys.Net.WebServiceError(false, =
result.Message, result.StackTrace, result.ExceptionType);
                }
            }
            else if (contentType.startsWith("application/json")) {
                if (!result || typeof(result.d) =3D=3D=3D "undefined") {
                    throw =
Sys.Net.WebServiceProxy._createFailedError(methodName, =
String.format(Sys.Res.webServiceInvalidJsonWrapper, methodName));
                }
                result =3D result.d;
            }
            if (((statusCode < 200) || (statusCode >=3D 300)) || =
errorObj) {
                if (onFailure) {
                    if (!result || !errorObj) {
                        result =3D new Sys.Net.WebServiceError(false , =
String.format(Sys.Res.webServiceFailedNoMsg, methodName), "", "");
                    }
                    result._statusCode =3D statusCode;
                    onFailure(result, userContext, methodName);
                }
                else {
                    var error;
                    if (result && errorObj) {
                        error =3D result.get_exceptionType() + "-- " + =
result.get_message();
                    }
                    else {
                        error =3D response.get_responseData();
                    }
                    throw =
Sys.Net.WebServiceProxy._createFailedError(methodName, =
String.format(Sys.Res.webServiceFailed, methodName, error));
                }
            }
            else if (onSuccess) {
                onSuccess(result, userContext, methodName);
            }
        }
        else {
            var msg;
            if (response.get_timedOut()) {
                msg =3D String.format(Sys.Res.webServiceTimedOut, =
methodName);
            }
            else {
                msg =3D String.format(Sys.Res.webServiceFailedNoMsg, =
methodName)
            }
            if (onFailure) {
                onFailure(new =
Sys.Net.WebServiceError(response.get_timedOut(), msg, "", ""), =
userContext, methodName);
            }
            else {
                throw =
Sys.Net.WebServiceProxy._createFailedError(methodName, msg);
            }
        }
    }
    return request;
}
Sys.Net.WebServiceProxy._createFailedError =3D function =
Sys$Net$WebServiceProxy$_createFailedError(methodName, errorMessage) {
    var displayMessage =3D "Sys.Net.WebServiceFailedException: " + =
errorMessage;
    var e =3D Error.create(displayMessage, { 'name': =
'Sys.Net.WebServiceFailedException', 'methodName': methodName });
    e.popStackFrame();
    return e;
}
Sys.Net.WebServiceProxy._defaultFailedCallback =3D function =
Sys$Net$WebServiceProxy$_defaultFailedCallback(err, methodName) {
    var error =3D err.get_exceptionType() + "-- " + err.get_message();
    throw Sys.Net.WebServiceProxy._createFailedError(methodName, =
String.format(Sys.Res.webServiceFailed, methodName, error));
}
Sys.Net.WebServiceProxy._generateTypedConstructor =3D function =
Sys$Net$WebServiceProxy$_generateTypedConstructor(type) {
    return function(properties) {
        if (properties) {
            for (var name in properties) {
                this[name] =3D properties[name];
            }
        }
        this.__type =3D type;
    }
}
=20
Sys.Net.WebServiceError =3D function Sys$Net$WebServiceError(timedOut, =
message, stackTrace, exceptionType) {
    /// <summary locid=3D"M:J#Sys.Net.WebServiceError.#ctor" />
    /// <param name=3D"timedOut" type=3D"Boolean"></param>
    /// <param name=3D"message" type=3D"String" =
mayBeNull=3D"true"></param>
    /// <param name=3D"stackTrace" type=3D"String" =
mayBeNull=3D"true"></param>
    /// <param name=3D"exceptionType" type=3D"String" =
mayBeNull=3D"true"></param>
    var e =3D 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 =3D timedOut;
    this._message =3D message;
    this._stackTrace =3D stackTrace;
    this._exceptionType =3D exceptionType;
    this._statusCode =3D -1;
}
    function Sys$Net$WebServiceError$get_timedOut() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.Net.WebServiceError.timedOut"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._timedOut;
    }
    function Sys$Net$WebServiceError$get_statusCode() {
        /// <value type=3D"Number" =
locid=3D"P:J#Sys.Net.WebServiceError.statusCode"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._statusCode;
    }
    function Sys$Net$WebServiceError$get_message() {
        /// <value type=3D"String" =
locid=3D"P:J#Sys.Net.WebServiceError.message"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._message;
    }
    function Sys$Net$WebServiceError$get_stackTrace() {
        /// <value type=3D"String" =
locid=3D"P:J#Sys.Net.WebServiceError.stackTrace"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._stackTrace;
    }
    function Sys$Net$WebServiceError$get_exceptionType() {
        /// <value type=3D"String" =
locid=3D"P:J#Sys.Net.WebServiceError.exceptionType"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._exceptionType;
    }
Sys.Net.WebServiceError.prototype =3D {
    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 =3D function Sys$Services$_ProfileService() =
{
    /// <summary locid=3D"M:J#Sys.Net.ProfileService.#ctor" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    Sys.Services._ProfileService.initializeBase(this);
    this.properties =3D {};
}
Sys.Services._ProfileService.DefaultWebServicePath =3D '';
    function =
Sys$Services$_ProfileService$get_defaultLoadCompletedCallback() {
        /// <value type=3D"Function" mayBeNull=3D"true" =
locid=3D"P:J#Sys.Services.ProfileService.defaultLoadCompletedCallback"></=
value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._defaultLoadCompletedCallback;
    }
    function =
Sys$Services$_ProfileService$set_defaultLoadCompletedCallback(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Function, mayBeNull: true}]);
        if (e) throw e;
        this._defaultLoadCompletedCallback =3D value;
    }
    function =
Sys$Services$_ProfileService$get_defaultSaveCompletedCallback() {
        /// <value type=3D"Function" mayBeNull=3D"true" =
locid=3D"P:J#Sys.Services.ProfileService.defaultSaveCompletedCallback"></=
value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._defaultSaveCompletedCallback;
    }
    function =
Sys$Services$_ProfileService$set_defaultSaveCompletedCallback(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Function, mayBeNull: true}]);
        if (e) throw e;
        this._defaultSaveCompletedCallback =3D value;
    }
    function Sys$Services$_ProfileService$get_path() {
        /// <value type=3D"String" mayBeNull=3D"true" =
locid=3D"P:J#Sys.Services.ProfileService.path"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._path || '';
    }
    function Sys$Services$_ProfileService$load(propertyNames, =
loadCompletedCallback, failedCallback, userContext) {
        /// <summary locid=3D"M:J#Sys.Services.ProfileService.load" />
        /// <param name=3D"propertyNames" type=3D"Array" =
elementType=3D"String" optional=3D"true" elementMayBeNull=3D"false" =
mayBeNull=3D"true"></param>
        /// <param name=3D"loadCompletedCallback" type=3D"Function" =
optional=3D"true" mayBeNull=3D"true"></param>
        /// <param name=3D"failedCallback" type=3D"Function" =
optional=3D"true" mayBeNull=3D"true"></param>
        /// <param name=3D"userContext" optional=3D"true" =
mayBeNull=3D"true"></param>
        var e =3D 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 =3D "GetAllPropertiesForCurrentUser";
            parameters =3D { authenticatedUserOnly: false };
        }
        else {
            methodName =3D "GetPropertiesForCurrentUser";
            parameters =3D { properties: =
this._clonePropertyNames(propertyNames), authenticatedUserOnly: false };
        }
        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) {
        /// <summary locid=3D"M:J#Sys.Services.ProfileService.save" />
        /// <param name=3D"propertyNames" type=3D"Array" =
elementType=3D"String" optional=3D"true" elementMayBeNull=3D"false" =
mayBeNull=3D"true"></param>
        /// <param name=3D"saveCompletedCallback" type=3D"Function" =
optional=3D"true" mayBeNull=3D"true"></param>
        /// <param name=3D"failedCallback" type=3D"Function" =
optional=3D"true" mayBeNull=3D"true"></param>
        /// <param name=3D"userContext" optional=3D"true" =
mayBeNull=3D"true"></param>
        var e =3D 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 =3D =
this._flattenProperties(propertyNames, this.properties);
        this._invoke(this._get_path(),
                                        "SetPropertiesForCurrentUser",
                                        false,
                                        { values: =
flattenedProperties.value, authenticatedUserOnly: false },
                                        Function.createDelegate(this, =
this._onSaveComplete),
                                        Function.createDelegate(this, =
this._onSaveFailed),
                                        [saveCompletedCallback, =
failedCallback, userContext, flattenedProperties.count]);
    }
    function Sys$Services$_ProfileService$_clonePropertyNames(arr) {
        var nodups =3D [];
        var seen =3D {};
        for (var i=3D0; i < arr.length; i++) {
            var prop =3D arr[i];
            if(!seen[prop]) { Array.add(nodups, prop); =
seen[prop]=3Dtrue; };
        }
        return nodups;
    }
    function =
Sys$Services$_ProfileService$_flattenProperties(propertyNames, =
properties, groupName) {
        var flattenedProperties =3D {};
        var val;
        var key;
        var count =3D 0;
        if (propertyNames && propertyNames.length =3D=3D=3D 0) {
            return { value: flattenedProperties, count: 0 };
        }
        for (var property in properties) {
            val =3D properties[property];
            key =3D groupName ? groupName + "." + property : property;
            if(Sys.Services.ProfileGroup.isInstanceOfType(val)) {
                var obj =3D this._flattenProperties(propertyNames, val, =
key);
                var groupProperties =3D obj.value;
                count +=3D obj.count;=20
                for(var subKey in groupProperties) {
                    var subVal =3D groupProperties[subKey];
                    flattenedProperties[subKey] =3D subVal;
                }
            }
            else {
                if(!propertyNames || Array.indexOf(propertyNames, key) =
!=3D=3D -1) {
                    flattenedProperties[key] =3D val;
                    count++;=20
                }
            }
        }
        return { value: flattenedProperties, count: count };
    }
    function Sys$Services$_ProfileService$_get_path() {
        var path =3D this.get_path();
        if (!path.length) {
            path =3D 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) !=3D=3D "object") {
            throw =
Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,=
 methodName, "Object"));
        }
        var unflattened =3D this._unflattenProperties(result);
        for (var name in unflattened) {
            this.properties[name] =3D unflattened[name];
        }
       =20
        var callback =3D context[0] || =
this.get_defaultLoadCompletedCallback() || =
this.get_defaultSucceededCallback();
        if (callback) {
            var userContext =3D context[2] || =
this.get_defaultUserContext();       =20
            callback(result.length, userContext, =
"Sys.Services.ProfileService.load");
        }
    }
    function Sys$Services$_ProfileService$_onLoadFailed(err, context, =
methodName) {
        var callback =3D context[1] || this.get_defaultFailedCallback();
        if (callback) {
            var userContext =3D context[2] || =
this.get_defaultUserContext();       =20
            callback(err, userContext, =
"Sys.Services.ProfileService.load");
        }
        else {
            Sys.Net.WebServiceProxy._defaultFailedCallback(err, =
methodName);
        }
    }
    function Sys$Services$_ProfileService$_onSaveComplete(result, =
context, methodName) {
        var count =3D context[3];
        if (result !=3D=3D null) {=20
            if (result instanceof Array) {
                count -=3D result.length;
            }
            else if (typeof(result) =3D=3D=3D 'number') {
                count =3D result;
            }
            else {
                throw =
Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,=
 methodName, "Array"));
            }
        }
       =20
        var callback =3D context[0] || =
this.get_defaultSaveCompletedCallback() || =
this.get_defaultSucceededCallback();
        if (callback) {
            var userContext =3D context[2] || =
this.get_defaultUserContext();
            callback(count, userContext, =
"Sys.Services.ProfileService.save");
        }
    }
    function Sys$Services$_ProfileService$_onSaveFailed(err, context, =
methodName) {
        var callback =3D context[1] || this.get_defaultFailedCallback();
        if (callback) {
            var userContext =3D context[2] || =
this.get_defaultUserContext();
            callback(err, userContext, =
"Sys.Services.ProfileService.save");
        }
        else {
            Sys.Net.WebServiceProxy._defaultFailedCallback(err, =
methodName);
        }
    }
    function =
Sys$Services$_ProfileService$_unflattenProperties(properties) {
        var unflattenedProperties =3D {};
        var dotIndex;
        var val;
        var count =3D 0;
        for (var key in properties) {
            count++;
            val =3D properties[key];
            dotIndex =3D key.indexOf('.');
            if (dotIndex !=3D=3D -1) {
                var groupName =3D key.substr(0, dotIndex);
                key =3D key.substr(dotIndex+1);
                var group =3D unflattenedProperties[groupName];
                if (!group || =
!Sys.Services.ProfileGroup.isInstanceOfType(group)) {
                    group =3D new Sys.Services.ProfileGroup();
                    unflattenedProperties[groupName] =3D group;
                }
                group[key] =3D val;
            }
            else {
                unflattenedProperties[key] =3D val;
            }
        }
        properties.length =3D count;
        return unflattenedProperties;
    }
Sys.Services._ProfileService.prototype =3D {
    _defaultLoadCompletedCallback: null,
    _defaultSaveCompletedCallback: null,
    _path: '',
    _timeout: 0,
    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,
    load: Sys$Services$_ProfileService$load,
    save: Sys$Services$_ProfileService$save,
    _clonePropertyNames: =
Sys$Services$_ProfileService$_clonePropertyNames,   =20
    _flattenProperties: Sys$Services$_ProfileService$_flattenProperties,
    _get_path: Sys$Services$_ProfileService$_get_path,   =20
    _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 =3D new Sys.Services._ProfileService();
Sys.Services.ProfileGroup =3D function =
Sys$Services$ProfileGroup(properties) {
    /// <summary locid=3D"M:J#Sys.Services.ProfileGroup.#ctor" />
    /// <param name=3D"properties" optional=3D"true" =
mayBeNull=3D"true"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "properties", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    if (properties) {
        for (var property in properties) {
            this[property] =3D properties[property];
        }
    }
}
Sys.Services.ProfileGroup.registerClass('Sys.Services.ProfileGroup');
Sys.Services._AuthenticationService =3D function =
Sys$Services$_AuthenticationService() {
    /// <summary locid=3D"M:J#Sys.Services.AuthenticationService.#ctor" =
/>
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    Sys.Services._AuthenticationService.initializeBase(this);
}
Sys.Services._AuthenticationService.DefaultWebServicePath =3D '';
    function =
Sys$Services$_AuthenticationService$get_defaultLoginCompletedCallback() =
{
        /// <value type=3D"Function" mayBeNull=3D"true" =
locid=3D"P:J#Sys.Services.AuthenticationService.defaultLoginCompletedCall=
back"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._defaultLoginCompletedCallback;
    }
    function =
Sys$Services$_AuthenticationService$set_defaultLoginCompletedCallback(val=
ue) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Function, mayBeNull: true}]);
        if (e) throw e;
        this._defaultLoginCompletedCallback =3D value;
    }
    function =
Sys$Services$_AuthenticationService$get_defaultLogoutCompletedCallback() =
{
        /// <value type=3D"Function" mayBeNull=3D"true" =
locid=3D"P:J#Sys.Services.AuthenticationService.defaultLogoutCompletedCal=
lback"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._defaultLogoutCompletedCallback;
    }
    function =
Sys$Services$_AuthenticationService$set_defaultLogoutCompletedCallback(va=
lue) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Function, mayBeNull: true}]);
        if (e) throw e;
        this._defaultLogoutCompletedCallback =3D value;
    }
    function Sys$Services$_AuthenticationService$get_isLoggedIn() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.Services.AuthenticationService.isLoggedIn"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._authenticated;
    }
    function Sys$Services$_AuthenticationService$get_path() {
        /// <value type=3D"String" mayBeNull=3D"true" =
locid=3D"P:J#Sys.Services.AuthenticationService.path"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._path || '';
    }
    function Sys$Services$_AuthenticationService$login(username, =
password, isPersistent, customInfo, redirectUrl, loginCompletedCallback, =
failedCallback, userContext) {
        /// <summary =
locid=3D"M:J#Sys.Services.AuthenticationService.login" />
        /// <param name=3D"username" type=3D"String" =
mayBeNull=3D"false"></param>
        /// <param name=3D"password" type=3D"String" =
mayBeNull=3D"true"></param>
        /// <param name=3D"isPersistent" type=3D"Boolean" =
optional=3D"true" mayBeNull=3D"true"></param>
        /// <param name=3D"customInfo" type=3D"String" optional=3D"true" =
mayBeNull=3D"true"></param>
        /// <param name=3D"redirectUrl" type=3D"String" =
optional=3D"true" mayBeNull=3D"true"></param>
        /// <param name=3D"loginCompletedCallback" type=3D"Function" =
optional=3D"true" mayBeNull=3D"true"></param>
        /// <param name=3D"failedCallback" type=3D"Function" =
optional=3D"true" mayBeNull=3D"true"></param>
        /// <param name=3D"userContext" optional=3D"true" =
mayBeNull=3D"true"></param>
        var e =3D 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, customInfo, redirectUrl, loginCompletedCallback, =
failedCallback, userContext]);
    }
    function Sys$Services$_AuthenticationService$logout(redirectUrl, =
logoutCompletedCallback, failedCallback, userContext) {
        /// <summary =
locid=3D"M:J#Sys.Services.AuthenticationService.logout" />
        /// <param name=3D"redirectUrl" type=3D"String" =
optional=3D"true" mayBeNull=3D"true"></param>
        /// <param name=3D"logoutCompletedCallback" type=3D"Function" =
optional=3D"true" mayBeNull=3D"true"></param>
        /// <param name=3D"failedCallback" type=3D"Function" =
optional=3D"true" mayBeNull=3D"true"></param>
        /// <param name=3D"userContext" optional=3D"true" =
mayBeNull=3D"true"></param>
        var e =3D 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, {},=20
                                        Function.createDelegate(this, =
this._onLogoutComplete),
                                        Function.createDelegate(this, =
this._onLogoutFailed),
                                        [redirectUrl, =
logoutCompletedCallback, failedCallback, userContext]);
    }
    function Sys$Services$_AuthenticationService$_get_path() {
        var path =3D this.get_path();
        if(!path.length) {
            path =3D =
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) !=3D=3D "boolean") {
            throw =
Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,=
 methodName, "Boolean"));
        }
       =20
        var redirectUrl =3D context[4];
        var userContext =3D context[7] || this.get_defaultUserContext();
        var callback =3D context[5] || =
this.get_defaultLoginCompletedCallback() || =
this.get_defaultSucceededCallback();
       =20
        if(result) {
            this._authenticated =3D true;
            if (callback) {
                callback(true, userContext, =
"Sys.Services.AuthenticationService.login");
            }
           =20
            if (typeof(redirectUrl) !=3D=3D "undefined" && redirectUrl =
!=3D=3D null) {
                window.location.href =3D redirectUrl;
            }
        }
        else if (callback) {
            callback(false, userContext, =
"Sys.Services.AuthenticationService.login");
        }
    }
    function Sys$Services$_AuthenticationService$_onLoginFailed(err, =
context, methodName) {
        var callback =3D context[6] || this.get_defaultFailedCallback();
        if (callback) {
            var userContext =3D context[7] || =
this.get_defaultUserContext();
            callback(err, userContext, =
"Sys.Services.AuthenticationService.login");
        }
        else {
            Sys.Net.WebServiceProxy._defaultFailedCallback(err, =
methodName);
        }
    }
    function =
Sys$Services$_AuthenticationService$_onLogoutComplete(result, context, =
methodName) {
        if(result !=3D=3D null) {
            throw =
Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,=
 methodName, "null"));
        }
       =20
        var redirectUrl =3D context[0];
        var userContext =3D context[3] || this.get_defaultUserContext();
        var callback =3D context[1] || =
this.get_defaultLogoutCompletedCallback() || =
this.get_defaultSucceededCallback();
        this._authenticated =3D false;
       =20
        if (callback) {
            callback(null, userContext, =
"Sys.Services.AuthenticationService.logout");
        }
       =20
        if(!redirectUrl) {
            window.location.reload();
        }
        else {
            window.location.href =3D redirectUrl;
        }
    }
    function Sys$Services$_AuthenticationService$_onLogoutFailed(err, =
context, methodName) {
        var callback =3D context[2] || this.get_defaultFailedCallback();
        if (callback) {
            callback(err, context[3], =
"Sys.Services.AuthenticationService.logout");
        }
        else {
            Sys.Net.WebServiceProxy._defaultFailedCallback(err, =
methodName);
        }
    }
    function =
Sys$Services$_AuthenticationService$_setAuthenticated(authenticated) {
        this._authenticated =3D authenticated;
    }
Sys.Services._AuthenticationService.prototype =3D {
    _defaultLoginCompletedCallback: null,
    _defaultLogoutCompletedCallback: null,
    _path: '',
    _timeout: 0,
    _authenticated: false,
    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, =20
    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   =20
}
Sys.Services._AuthenticationService.registerClass('Sys.Services._Authenti=
cationService', Sys.Net.WebServiceProxy);
Sys.Services.AuthenticationService =3D new =
Sys.Services._AuthenticationService();
Sys.Services._RoleService =3D function Sys$Services$_RoleService() {
    /// <summary locid=3D"M:J#Sys.Services.RoleService.#ctor" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    Sys.Services._RoleService.initializeBase(this);
    this._roles =3D [];
}
Sys.Services._RoleService.DefaultWebServicePath =3D '';
    function =
Sys$Services$_RoleService$get_defaultLoadCompletedCallback() {
        /// <value type=3D"Function" mayBeNull=3D"true" =
locid=3D"P:J#Sys.Services.RoleService.defaultLoadCompletedCallback"></val=
ue>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._defaultLoadCompletedCallback;
    }
    function =
Sys$Services$_RoleService$set_defaultLoadCompletedCallback(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Function, mayBeNull: true}]);
        if (e) throw e;
        this._defaultLoadCompletedCallback =3D value;
    }
    function Sys$Services$_RoleService$get_path() {
        /// <value type=3D"String" mayBeNull=3D"true" =
locid=3D"P:J#Sys.Services.RoleService.path"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._path || '';
    }
    function Sys$Services$_RoleService$get_roles() {
        /// <value type=3D"Array" elementType=3D"String" =
mayBeNull=3D"false" =
locid=3D"P:J#Sys.Services.RoleService.roles"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return Array.clone(this._roles);
    }
    function Sys$Services$_RoleService$isUserInRole(role) {
        /// <summary locid=3D"M:J#Sys.Services.RoleService.isUserInRole" =
/>
        /// <param name=3D"role" type=3D"String" =
mayBeNull=3D"false"></param>
        /// <returns type=3D"Boolean"></returns>
        var e =3D Function._validateParams(arguments, [
            {name: "role", type: String}
        ]);
        if (e) throw e;
        var v =3D this._get_rolesIndex()[role.trim().toLowerCase()];
        return !!v;
    }
    function Sys$Services$_RoleService$load(loadCompletedCallback, =
failedCallback, userContext) {
        /// <summary locid=3D"M:J#Sys.Services.RoleService.load" />
        /// <param name=3D"loadCompletedCallback" type=3D"Function" =
optional=3D"true" mayBeNull=3D"true"></param>
        /// <param name=3D"failedCallback" type=3D"Function" =
optional=3D"true" mayBeNull=3D"true"></param>
        /// <param name=3D"userContext" optional=3D"true" =
mayBeNull=3D"true"></param>
        var e =3D Function._validateParams(arguments, [
            {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;
        Sys.Net.WebServiceProxy.invoke(
                    this._get_path(),
                    "GetRolesForCurrentUser",
                    false,
                    {} ,
                    Function.createDelegate(this, this._onLoadComplete),
                    Function.createDelegate(this, this._onLoadFailed),
                    [loadCompletedCallback, failedCallback, =
userContext],
                    this.get_timeout());
    }
    function Sys$Services$_RoleService$_get_path() {
        var path =3D this.get_path();
        if(!path || !path.length) {
            path =3D Sys.Services._RoleService.DefaultWebServicePath;
        }
        if(!path || !path.length) {
            throw Error.invalidOperation(Sys.Res.servicePathNotSet);
        }
        return path;
    }
    function Sys$Services$_RoleService$_get_rolesIndex() {
        if (!this._rolesIndex) {
            var index =3D {};
            for(var i=3D0; i < this._roles.length; i++) {
                index[this._roles[i].toLowerCase()] =3D true;
            }
            this._rolesIndex =3D index;
        }
        return this._rolesIndex;
    }
    function Sys$Services$_RoleService$_onLoadComplete(result, context, =
methodName) {
        if(result && !(result instanceof Array)) {
            throw =
Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,=
 methodName, "Array"));
        }
        this._roles =3D result;
        this._rolesIndex =3D null;
        var callback =3D context[0] || =
this.get_defaultLoadCompletedCallback() || =
this.get_defaultSucceededCallback();
        if (callback) {
            var userContext =3D context[2] || =
this.get_defaultUserContext();
            var clonedResult =3D Array.clone(result);
            callback(clonedResult, userContext, =
"Sys.Services.RoleService.load");
        }
    }
    function Sys$Services$_RoleService$_onLoadFailed(err, context, =
methodName) {
        var callback =3D context[1] || this.get_defaultFailedCallback();
        if (callback) {
            var userContext =3D context[2] || =
this.get_defaultUserContext();
            callback(err, userContext, "Sys.Services.RoleService.load");
        }
        else {
            Sys.Net.WebServiceProxy._defaultFailedCallback(err, =
methodName);
        }
    }
Sys.Services._RoleService.prototype =3D {
    _defaultLoadCompletedCallback: null,
    _rolesIndex: null,
    _timeout: 0,
    _path: '',
    get_defaultLoadCompletedCallback: =
Sys$Services$_RoleService$get_defaultLoadCompletedCallback,
    set_defaultLoadCompletedCallback: =
Sys$Services$_RoleService$set_defaultLoadCompletedCallback,
    get_path: Sys$Services$_RoleService$get_path,
    get_roles: Sys$Services$_RoleService$get_roles,
    isUserInRole: Sys$Services$_RoleService$isUserInRole,
    load: Sys$Services$_RoleService$load,
    _get_path: Sys$Services$_RoleService$_get_path, =20
    _get_rolesIndex: Sys$Services$_RoleService$_get_rolesIndex,
    _onLoadComplete: Sys$Services$_RoleService$_onLoadComplete,
    _onLoadFailed: Sys$Services$_RoleService$_onLoadFailed
}
Sys.Services._RoleService.registerClass('Sys.Services._RoleService', =
Sys.Net.WebServiceProxy);
Sys.Services.RoleService =3D new Sys.Services._RoleService();
Type.registerNamespace('Sys.Serialization');
Sys.Serialization.JavaScriptSerializer =3D function =
Sys$Serialization$JavaScriptSerializer() {
    /// <summary =
locid=3D"M:J#Sys.Serialization.JavaScriptSerializer.#ctor" />
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
}
Sys.Serialization.JavaScriptSerializer.registerClass('Sys.Serialization.J=
avaScriptSerializer');
Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs =3D [];
Sys.Serialization.JavaScriptSerializer._charsToEscape =3D [];
Sys.Serialization.JavaScriptSerializer._dateRegEx =3D new =
RegExp('(^|[^\\\\])\\"\\\\/Date\\((-?[0-9]+)(?:[a-zA-Z]|(?:\\+|-)[0-9]{4}=
)?\\)\\\\/\\"', 'g');
Sys.Serialization.JavaScriptSerializer._escapeChars =3D {};
Sys.Serialization.JavaScriptSerializer._escapeRegEx =3D new =
RegExp('["\\\\\\x00-\\x1F]', 'i');
Sys.Serialization.JavaScriptSerializer._escapeRegExGlobal =3D new =
RegExp('["\\\\\\x00-\\x1F]', 'g');
Sys.Serialization.JavaScriptSerializer._jsonRegEx =3D new =
RegExp('[^,:{}\\[\\]0-9.\\-+Eaeflnr-u \\n\\r\\t]', 'g');
Sys.Serialization.JavaScriptSerializer._jsonStringRegEx =3D new =
RegExp('"(\\\\.|[^"\\\\])*"', 'g');
Sys.Serialization.JavaScriptSerializer._serverTypeFieldName =3D =
'__type';
Sys.Serialization.JavaScriptSerializer._init =3D function =
Sys$Serialization$JavaScriptSerializer$_init() {
    var replaceChars =3D =
['\\u0000','\\u0001','\\u0002','\\u0003','\\u0004','\\u0005','\\u0006','\=
\u0007',
                        =
'\\b','\\t','\\n','\\u000b','\\f','\\r','\\u000e','\\u000f','\\u0010','\\=
u0011',
                        =
'\\u0012','\\u0013','\\u0014','\\u0015','\\u0016','\\u0017','\\u0018','\\=
u0019',
                        =
'\\u001a','\\u001b','\\u001c','\\u001d','\\u001e','\\u001f'];
    Sys.Serialization.JavaScriptSerializer._charsToEscape[0] =3D '\\';
    Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs['\\'] =
=3D new RegExp('\\\\', 'g');
    Sys.Serialization.JavaScriptSerializer._escapeChars['\\'] =3D =
'\\\\';
    Sys.Serialization.JavaScriptSerializer._charsToEscape[1] =3D '"';
    Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs['"'] =3D =
new RegExp('"', 'g');
    Sys.Serialization.JavaScriptSerializer._escapeChars['"'] =3D '\\"';
    for (var i =3D 0; i < 32; i++) {
        var c =3D String.fromCharCode(i);
        Sys.Serialization.JavaScriptSerializer._charsToEscape[i+2] =3D =
c;
        Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs[c] =
=3D new RegExp(c, 'g');
        Sys.Serialization.JavaScriptSerializer._escapeChars[c] =3D =
replaceChars[i];
    }
}
Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder =3D =
function =
Sys$Serialization$JavaScriptSerializer$_serializeBooleanWithBuilder(objec=
t, stringBuilder) {
    stringBuilder.append(object.toString());
}
Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder =3D =
function =
Sys$Serialization$JavaScriptSerializer$_serializeNumberWithBuilder(object=
, stringBuilder) {
    if (isFinite(object)) {
        stringBuilder.append(String(object));
    }
    else {
        throw =
Error.invalidOperation(Sys.Res.cannotSerializeNonFiniteNumbers);
    }
}
Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder =3D =
function =
Sys$Serialization$JavaScriptSerializer$_serializeStringWithBuilder(string=
, stringBuilder) {
    stringBuilder.append('"');
    if =
(Sys.Serialization.JavaScriptSerializer._escapeRegEx.test(string)) {
        if (Sys.Serialization.JavaScriptSerializer._charsToEscape.length =
=3D=3D=3D 0) {
            Sys.Serialization.JavaScriptSerializer._init();
        }
        if (string.length < 128) {
            string =3D =
string.replace(Sys.Serialization.JavaScriptSerializer._escapeRegExGlobal,=

                function(x) { return =
Sys.Serialization.JavaScriptSerializer._escapeChars[x]; });
        }
        else {
            for (var i =3D 0; i < 34; i++) {
                var c =3D =
Sys.Serialization.JavaScriptSerializer._charsToEscape[i];
                if (string.indexOf(c) !=3D=3D -1) {
                    if (Sys.Browser.agent =3D=3D=3D Sys.Browser.Opera || =
Sys.Browser.agent =3D=3D=3D Sys.Browser.FireFox) {
                        string =3D =
string.split(c).join(Sys.Serialization.JavaScriptSerializer._escapeChars[=
c]);
                    }
                    else {
                        string =3D =
string.replace(Sys.Serialization.JavaScriptSerializer._charsToEscapeRegEx=
s[c],
                            =
Sys.Serialization.JavaScriptSerializer._escapeChars[c]);
                    }
                }
            }
       }
    }
    stringBuilder.append(string);
    stringBuilder.append('"');
}
Sys.Serialization.JavaScriptSerializer._serializeWithBuilder =3D =
function =
Sys$Serialization$JavaScriptSerializer$_serializeWithBuilder(object, =
stringBuilder, sort, prevObjects) {
    var i;
    switch (typeof object) {
    case 'object':
        if (object) {
            if (prevObjects){
                for( var j =3D 0; j < prevObjects.length; j++) {
                    if (prevObjects[j] =3D=3D=3D object) {
                        throw =
Error.invalidOperation(Sys.Res.cannotSerializeObjectWithCycle);
                    }
                }
            }
            else {
                prevObjects =3D new Array();
            }
            try {
                Array.add(prevObjects, object);
               =20
                if (Number.isInstanceOfType(object)){
                    =
Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder(object=
, stringBuilder);
                }
                else if (Boolean.isInstanceOfType(object)){
                    =
Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder(objec=
t, stringBuilder);
                }
                else if (String.isInstanceOfType(object)){
                    =
Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder(object=
, stringBuilder);
                }
           =20
                else if (Array.isInstanceOfType(object)) {
                    stringBuilder.append('[');
                  =20
                    for (i =3D 0; i < object.length; ++i) {
                        if (i > 0) {
                            stringBuilder.append(',');
                        }
                        =
Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(object[i], =
stringBuilder,false,prevObjects);
                    }
                    stringBuilder.append(']');
                }
                else {
                    if (Date.isInstanceOfType(object)) {
                        stringBuilder.append('"\\/Date(');
                        stringBuilder.append(object.getTime());
                        stringBuilder.append(')\\/"');
                        break;
                    }
                    var properties =3D [];
                    var propertyCount =3D 0;
                    for (var name in object) {
                        if (name.startsWith('$')) {
                            continue;
                        }
                        if (name =3D=3D=3D =
Sys.Serialization.JavaScriptSerializer._serverTypeFieldName && =
propertyCount !=3D=3D 0){
                            properties[propertyCount++] =3D =
properties[0];
                            properties[0] =3D name;
                        }
                        else{
                            properties[propertyCount++] =3D name;
                        }
                    }
                    if (sort) properties.sort();
                    stringBuilder.append('{');
                    var needComma =3D false;
                    =20
                    for (i=3D0; i<propertyCount; i++) {
                        var value =3D object[properties[i]];
                        if (typeof value !=3D=3D 'undefined' && typeof =
value !=3D=3D 'function') {
                            if (needComma) {
                                stringBuilder.append(',');
                            }
                            else {
                                needComma =3D true;
                            }
                          =20
                            =
Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(properties[i=
], stringBuilder, sort, prevObjects);
                            stringBuilder.append(':');
                            =
Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(value, =
stringBuilder, sort, prevObjects);
                         =20
                        }
                    }
                stringBuilder.append('}');
                }
            }
            finally {
                Array.removeAt(prevObjects, prevObjects.length - 1);
            }
        }
        else {
            stringBuilder.append('null');
        }
        break;
    case 'number':
        =
Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder(object=
, stringBuilder);
        break;
    case 'string':
        =
Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder(object=
, stringBuilder);
        break;
    case 'boolean':
        =
Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder(objec=
t, stringBuilder);
        break;
    default:
        stringBuilder.append('null');
        break;
    }
}
Sys.Serialization.JavaScriptSerializer.serialize =3D function =
Sys$Serialization$JavaScriptSerializer$serialize(object) {
    /// <summary =
locid=3D"M:J#Sys.Serialization.JavaScriptSerializer.serialize" />
    /// <param name=3D"object" mayBeNull=3D"true"></param>
    /// <returns type=3D"String"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "object", mayBeNull: true}
    ]);
    if (e) throw e;
    var stringBuilder =3D new Sys.StringBuilder();
    Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(object, =
stringBuilder, false);
    return stringBuilder.toString();
}
Sys.Serialization.JavaScriptSerializer.deserialize =3D function =
Sys$Serialization$JavaScriptSerializer$deserialize(data, secure) {
    /// <summary =
locid=3D"M:J#Sys.Serialization.JavaScriptSerializer.deserialize" />
    /// <param name=3D"data" type=3D"String"></param>
    /// <param name=3D"secure" type=3D"Boolean" =
optional=3D"true"></param>
    /// <returns></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "data", type: String},
        {name: "secure", type: Boolean, optional: true}
    ]);
    if (e) throw e;
   =20
    if (data.length =3D=3D=3D 0) throw Error.argument('data', =
Sys.Res.cannotDeserializeEmptyString);
    try {   =20
        var exp =3D =
data.replace(Sys.Serialization.JavaScriptSerializer._dateRegEx, "$1new =
Date($2)");
       =20
        if (secure && =
Sys.Serialization.JavaScriptSerializer._jsonRegEx.test(
             =
exp.replace(Sys.Serialization.JavaScriptSerializer._jsonStringRegEx, =
''))) throw null;
        return eval('(' + exp + ')');
    }
    catch (e) {
         throw Error.argument('data', =
Sys.Res.cannotDeserializeInvalidJson);
    }
}
=20
Sys.CultureInfo =3D function Sys$CultureInfo(name, numberFormat, =
dateTimeFormat) {
    /// <summary locid=3D"M:J#Sys.CultureInfo.#ctor" />
    /// <param name=3D"name" type=3D"String"></param>
    /// <param name=3D"numberFormat" type=3D"Object"></param>
    /// <param name=3D"dateTimeFormat" type=3D"Object"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "name", type: String},
        {name: "numberFormat", type: Object},
        {name: "dateTimeFormat", type: Object}
    ]);
    if (e) throw e;
    this.name =3D name;
    this.numberFormat =3D numberFormat;
    this.dateTimeFormat =3D dateTimeFormat;
}
    function Sys$CultureInfo$_getDateTimeFormats() {
        if (! this._dateTimeFormats) {
            var dtf =3D this.dateTimeFormat;
            this._dateTimeFormats =3D
              [ 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 =3D =
this._toUpperArray(this.dateTimeFormat.MonthNames);
        }
        return Array.indexOf(this._upperMonths, this._toUpper(value));
    }
    function Sys$CultureInfo$_getAbbrMonthIndex(value) {
        if (!this._upperAbbrMonths) {
            this._upperAbbrMonths =3D =
this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthNames);
        }
        return Array.indexOf(this._upperAbbrMonths, =
this._toUpper(value));
    }
    function Sys$CultureInfo$_getDayIndex(value) {
        if (!this._upperDays) {
            this._upperDays =3D =
this._toUpperArray(this.dateTimeFormat.DayNames);
        }
        return Array.indexOf(this._upperDays, this._toUpper(value));
    }
    function Sys$CultureInfo$_getAbbrDayIndex(value) {
        if (!this._upperAbbrDays) {
            this._upperAbbrDays =3D =
this._toUpperArray(this.dateTimeFormat.AbbreviatedDayNames);
        }
        return Array.indexOf(this._upperAbbrDays, this._toUpper(value));
    }
    function Sys$CultureInfo$_toUpperArray(arr) {
        var result =3D [];
        for (var i =3D 0, il =3D arr.length; i < il; i++) {
            result[i] =3D this._toUpper(arr[i]);
        }
        return result;
    }
    function Sys$CultureInfo$_toUpper(value) {
        return value.split("\u00A0").join(' ').toUpperCase();
    }
Sys.CultureInfo.prototype =3D {
    _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 =3D function Sys$CultureInfo$_parse(value) {
    var cultureInfo =3D =
Sys.Serialization.JavaScriptSerializer.deserialize(value);
    return new Sys.CultureInfo(cultureInfo.name, =
cultureInfo.numberFormat, cultureInfo.dateTimeFormat);
}
Sys.CultureInfo.registerClass('Sys.CultureInfo');
Sys.CultureInfo.InvariantCulture =3D =
Sys.CultureInfo._parse('{"name":"","numberFormat":{"CurrencyDecimalDigits=
":2,"CurrencyDecimalSeparator":".","IsReadOnly":true,"CurrencyGroupSizes"=
:[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparat=
or":",","CurrencySymbol":"\u00A4","NaNSymbol":"NaN","CurrencyNegativePatt=
ern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegat=
ivePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","Nu=
mberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":=
",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","Posi=
tiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","Per=
centGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","Na=
tiveDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution"=
:1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTi=
me":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","Algor=
ithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnl=
y":true},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"Ful=
lDateTimePattern":"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","Sort=
ableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","TimeSepar=
ator":":","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":["Sunda=
y","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"Abbrev=
iatedMonthNames":["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":["Janu=
ary","February","March","April","May","June","July","August","September",=
"October","November","December",""]}}');
if (typeof(__cultureInfo) =3D=3D=3D 'undefined') {
    var __cultureInfo =3D =
'{"name":"en-US","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecim=
alSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroup=
Sizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","Currency=
Symbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegative=
Pattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"Negativ=
eInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"=
NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositiveP=
attern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","Percent=
DecimalDigits":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,"CalendarT=
ype":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparat=
or":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dd=
dd, 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":["Sunda=
y","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"Abbrev=
iatedMonthNames":["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":["Janu=
ary","February","March","April","May","June","July","August","September",=
"October","November","December",""]}}';
}
Sys.CultureInfo.CurrentCulture =3D =
Sys.CultureInfo._parse(__cultureInfo);
delete __cultureInfo;
=20
Sys.UI.Behavior =3D function Sys$UI$Behavior(element) {
    /// <summary locid=3D"M:J#Sys.UI.Behavior.#ctor" />
    /// <param name=3D"element" domElement=3D"true"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    Sys.UI.Behavior.initializeBase(this);
    this._element =3D element;
    var behaviors =3D element._behaviors;
    if (!behaviors) {
        element._behaviors =3D [this];
    }
    else {
        behaviors[behaviors.length] =3D this;
    }
}
    function Sys$UI$Behavior$get_element() {
        /// <value domElement=3D"true" =
locid=3D"P:J#Sys.UI.Behavior.element"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._element;
    }
    function Sys$UI$Behavior$get_id() {
        /// <value type=3D"String" =
locid=3D"P:J#Sys.UI.Behavior.id"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        var baseId =3D 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() {
        /// <value type=3D"String" =
locid=3D"P:J#Sys.UI.Behavior.name"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        if (this._name) return this._name;
        var name =3D Object.getTypeName(this);
        var i =3D name.lastIndexOf('.');
        if (i !=3D -1) name =3D name.substr(i + 1);
        if (!this.get_isInitialized()) this._name =3D name;
        return name;
    }
    function Sys$UI$Behavior$set_name(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: String}]);
        if (e) throw e;
        if ((value =3D=3D=3D '') || (value.charAt(0) =3D=3D=3D ' ') || =
(value.charAt(value.length - 1) =3D=3D=3D ' '))
            throw Error.argument('value', Sys.Res.invalidId);
        if (typeof(this._element[value]) !=3D=3D 'undefined')
            throw =
Error.invalidOperation(String.format(Sys.Res.behaviorDuplicateName, =
value));
        if (this.get_isInitialized()) throw =
Error.invalidOperation(Sys.Res.cantSetNameAfterInit);
        this._name =3D value;
    }
    function Sys$UI$Behavior$initialize() {
        Sys.UI.Behavior.callBaseMethod(this, 'initialize');
        var name =3D this.get_name();
        if (name) this._element[name] =3D this;
    }
    function Sys$UI$Behavior$dispose() {
        Sys.UI.Behavior.callBaseMethod(this, 'dispose');
        if (this._element) {
            var name =3D this.get_name();
            if (name) {
                this._element[name] =3D null;
            }
            Array.remove(this._element._behaviors, this);
            delete this._element;
        }
    }
Sys.UI.Behavior.prototype =3D {
    _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 =3D function =
Sys$UI$Behavior$getBehaviorByName(element, name) {
    /// <summary locid=3D"M:J#Sys.UI.Behavior.getBehaviorByName" />
    /// <param name=3D"element" domElement=3D"true"></param>
    /// <param name=3D"name" type=3D"String"></param>
    /// <returns type=3D"Sys.UI.Behavior" mayBeNull=3D"true"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "name", type: String}
    ]);
    if (e) throw e;
    var b =3D element[name];
    return (b && Sys.UI.Behavior.isInstanceOfType(b)) ? b : null;
}
Sys.UI.Behavior.getBehaviors =3D function =
Sys$UI$Behavior$getBehaviors(element) {
    /// <summary locid=3D"M:J#Sys.UI.Behavior.getBehaviors" />
    /// <param name=3D"element" domElement=3D"true"></param>
    /// <returns type=3D"Array" =
elementType=3D"Sys.UI.Behavior"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    if (!element._behaviors) return [];
    return Array.clone(element._behaviors);
}
Sys.UI.Behavior.getBehaviorsByType =3D function =
Sys$UI$Behavior$getBehaviorsByType(element, type) {
    /// <summary locid=3D"M:J#Sys.UI.Behavior.getBehaviorsByType" />
    /// <param name=3D"element" domElement=3D"true"></param>
    /// <param name=3D"type" type=3D"Type"></param>
    /// <returns type=3D"Array" =
elementType=3D"Sys.UI.Behavior"></returns>
    var e =3D Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "type", type: Type}
    ]);
    if (e) throw e;
    var behaviors =3D element._behaviors;
    var results =3D [];
    if (behaviors) {
        for (var i =3D 0, l =3D behaviors.length; i < l; i++) {
            if (type.isInstanceOfType(behaviors[i])) {
                results[results.length] =3D behaviors[i];
            }
        }
    }
    return results;
}
=20
Sys.UI.VisibilityMode =3D function Sys$UI$VisibilityMode() {
    /// <summary locid=3D"M:J#Sys.UI.VisibilityMode.#ctor" />
    /// <field name=3D"hide" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.VisibilityMode.hide"></field>
    /// <field name=3D"collapse" type=3D"Number" integer=3D"true" =
static=3D"true" locid=3D"F:J#Sys.UI.VisibilityMode.collapse"></field>
    if (arguments.length !=3D=3D 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
Sys.UI.VisibilityMode.prototype =3D {
    hide: 0,
    collapse: 1
}
Sys.UI.VisibilityMode.registerEnum("Sys.UI.VisibilityMode");
=20
Sys.UI.Control =3D function Sys$UI$Control(element) {
    /// <summary locid=3D"M:J#Sys.UI.Control.#ctor" />
    /// <param name=3D"element" domElement=3D"true"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    if (typeof(element.control) !=3D 'undefined') throw =
Error.invalidOperation(Sys.Res.controlAlreadyDefined);
    Sys.UI.Control.initializeBase(this);
    this._element =3D element;
    element.control =3D this;
}
    function Sys$UI$Control$get_element() {
        /// <value domElement=3D"true" =
locid=3D"P:J#Sys.UI.Control.element"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._element;
    }
    function Sys$UI$Control$get_id() {
        /// <value type=3D"String" =
locid=3D"P:J#Sys.UI.Control.id"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        if (!this._element) return '';
        return this._element.id;
    }
    function Sys$UI$Control$set_id(value) {
        var e =3D 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=3D"Sys.UI.Control" =
locid=3D"P:J#Sys.UI.Control.parent"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        if (this._parent) return this._parent;
        if (!this._element) return null;
       =20
        var parentElement =3D this._element.parentNode;
        while (parentElement) {
            if (parentElement.control) {
                return parentElement.control;
            }
            parentElement =3D parentElement.parentNode;
        }
        return null;
    }
    function Sys$UI$Control$set_parent(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Sys.UI.Control}]);
        if (e) throw e;
        if (!this._element) throw =
Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
        var parents =3D [this];
        var current =3D value;
        while (current) {
            if (Array.contains(parents, current)) throw =
Error.invalidOperation(Sys.Res.circularParentChain);
            parents[parents.length] =3D current;
            current =3D current.get_parent();
        }
        this._parent =3D value;
    }
    function Sys$UI$Control$get_visibilityMode() {
        /// <value type=3D"Sys.UI.VisibilityMode" =
locid=3D"P:J#Sys.UI.Control.visibilityMode"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        if (!this._element) throw =
Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
        return Sys.UI.DomElement.getVisibilityMode(this._element);
    }
    function Sys$UI$Control$set_visibilityMode(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Sys.UI.VisibilityMode}]);
        if (e) throw e;
        if (!this._element) throw =
Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
        Sys.UI.DomElement.setVisibilityMode(this._element, value);
    }
    function Sys$UI$Control$get_visible() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.UI.Control.visible"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        if (!this._element) throw =
Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
        return Sys.UI.DomElement.getVisible(this._element);
    }
    function Sys$UI$Control$set_visible(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Boolean}]);
        if (e) throw e;
        if (!this._element) throw =
Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
        Sys.UI.DomElement.setVisible(this._element, value)
    }
    function Sys$UI$Control$addCssClass(className) {
        /// <summary locid=3D"M:J#Sys.UI.Control.addCssClass" />
        /// <param name=3D"className" type=3D"String"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "className", type: String}
        ]);
        if (e) throw e;
        if (!this._element) throw =
Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
        Sys.UI.DomElement.addCssClass(this._element, className);
    }
    function Sys$UI$Control$dispose() {
        Sys.UI.Control.callBaseMethod(this, 'dispose');
        if (this._element) {
            this._element.control =3D undefined;
            delete this._element;
        }
        if (this._parent) delete this._parent;
    }
    function Sys$UI$Control$onBubbleEvent(source, args) {
        /// <summary locid=3D"M:J#Sys.UI.Control.onBubbleEvent" />
        /// <param name=3D"source"></param>
        /// <param name=3D"args" type=3D"Sys.EventArgs"></param>
        /// <returns type=3D"Boolean"></returns>
        var e =3D Function._validateParams(arguments, [
            {name: "source"},
            {name: "args", type: Sys.EventArgs}
        ]);
        if (e) throw e;
        return false;
    }
    function Sys$UI$Control$raiseBubbleEvent(source, args) {
        /// <summary locid=3D"M:J#Sys.UI.Control.raiseBubbleEvent" />
        /// <param name=3D"source"></param>
        /// <param name=3D"args" type=3D"Sys.EventArgs"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "source"},
            {name: "args", type: Sys.EventArgs}
        ]);
        if (e) throw e;
        var currentTarget =3D this.get_parent();
        while (currentTarget) {
            if (currentTarget.onBubbleEvent(source, args)) {
                return;
            }
            currentTarget =3D currentTarget.get_parent();
        }
    }
    function Sys$UI$Control$removeCssClass(className) {
        /// <summary locid=3D"M:J#Sys.UI.Control.removeCssClass" />
        /// <param name=3D"className" type=3D"String"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "className", type: String}
        ]);
        if (e) throw e;
        if (!this._element) throw =
Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
        Sys.UI.DomElement.removeCssClass(this._element, className);
    }
    function Sys$UI$Control$toggleCssClass(className) {
        /// <summary locid=3D"M:J#Sys.UI.Control.toggleCssClass" />
        /// <param name=3D"className" type=3D"String"></param>
        var e =3D Function._validateParams(arguments, [
            {name: "className", type: String}
        ]);
        if (e) throw e;
        if (!this._element) throw =
Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
        Sys.UI.DomElement.toggleCssClass(this._element, className);
    }
Sys.UI.Control.prototype =3D {
    _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,
    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);


Type.registerNamespace('Sys');
Sys.Res=3D{
"urlMustBeLessThan1024chars":"The history state must be small enough to =
not make the url larger than 1024 characters.",
"argumentTypeName":"Value is not the name of an existing type.",
"methodRegisteredTwice":"Method {0} has already been registered.",
"cantSetIdAfterInit":"The id property can\u0027t be set on this object =
after initialization.",
"cantBeCalledAfterDispose":"Can\u0027t be called after dispose.",
"componentCantSetIdAfterAddedToApp":"The id property of a component =
can\u0027t be set after it\u0027s been added to the Application =
object.",
"behaviorDuplicateName":"A behavior with name \u0027{0}\u0027 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.",
"historyInvalidHistorySettingCombination":"Cannot set enableHistory to =
false when ScriptManager.EnableHistory is true.",
"stateMustBeStringDictionary":"The state object can only have null and =
string fields.",
"boolTrueOrFalse":"Value must be \u0027true\u0027 or =
\u0027false\u0027.",
"scriptLoadFailedNoHead":"ScriptLoader requires pages to contain a =
\u003chead\u003e element.",
"stringFormatInvalid":"The format string is invalid.",
"referenceNotFound":"Component \u0027{0}\u0027 was not found.",
"enumReservedName":"\u0027{0}\u0027 is a reserved name that can\u0027t =
be used as an enum value name.",
"eventHandlerNotFound":"Handler not found.",
"circularParentChain":"The chain of control parents can\u0027t have =
circular references.",
"undefinedEvent":"\u0027{0}\u0027 is not an event.",
"notAMethod":"{0} is not a method.",
"propertyUndefined":"\u0027{0}\u0027 is not a property or an existing =
field.",
"historyCannotEnableHistory":"Cannot set enableHistory after =
initialization.",
"eventHandlerInvalid":"Handler was not added through the =
Sys.UI.DomEvent.addHandler method.",
"scriptLoadFailedDebug":"The script \u0027{0}\u0027 failed to load. =
Check for:\r\n Inaccessible path.\r\n Script errors. (IE) Enable =
\u0027Display a notification about every script error\u0027 under =
advanced settings.\r\n Missing call to =
Sys.Application.notifyScriptLoaded().",
"propertyNotWritable":"\u0027{0}\u0027 is not a writable property.",
"enumInvalidValueName":"\u0027{0}\u0027 is not a valid name for an enum =
value.",
"controlAlreadyDefined":"A control is already associated with the =
element.",
"addHandlerCantBeUsedForError":"Can\u0027t add a handler for the error =
event using this method. Please set the window.onerror property =
instead.",
"namespaceContainsObject":"Object {0} already exists and is not a =
namespace.",
"cantAddNonFunctionhandler":"Can\u0027t add a handler that is not a =
function.",
"invalidNameSpace":"Value is not a valid namespace identifier.",
"notAnInterface":"Value is not a valid interface.",
"eventHandlerNotFunction":"Handler must be a function.",
"propertyNotAnArray":"\u0027{0}\u0027 is not an Array property.",
"typeRegisteredTwice":"Type {0} has already been registered. The type =
may be defined multiple times or the script file that defines it may =
have already been loaded. A possible cause is a change of settings =
during a partial update.",
"cantSetNameAfterInit":"The name property can\u0027t be set on this =
object after initialization.",
"historyMissingFrame":"For the history feature to work in IE, the page =
must have an iFrame element with id \u0027__historyFrame\u0027 pointed =
to a page that gets its title from the \u0027title\u0027 query string =
parameter and calls Sys.Application._onIFrameLoad() on the parent =
window. This can be done by setting EnableHistory to true on =
ScriptManager.",
"appDuplicateComponent":"Two components with the same id \u0027{0}\u0027 =
can\u0027t be added to the application.",
"historyCannotAddHistoryPointWithHistoryDisabled":"A history point can =
only be added if enableHistory is set to true.",
"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 \u0027{0}\u0027.",
"arrayParseBadFormat":"Value must be a valid string representation for =
an array. It must start with a \u0027[\u0027 and end with a =
\u0027]\u0027.",
"stateFieldNameInvalid":"State field names must not contain any =
\u0027=3D\u0027 characters.",
"cantSetId":"The id property can\u0027t be set on this object.",
"historyMissingHiddenInput":"For the history feature to work in Safari =
2, the page must have a hidden input element with id =
\u0027__history\u0027.",
"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 \u0027{0}\u0027 =
because it returned a null value.",
"argumentDomNode":"Value must be a DOM element or a text node.",
"componentCantSetIdTwice":"The id property of a component can\u0027t 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\u0027t add a component that doesn\u0027t 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 \u0027{0}\u0027 contains =
multiple calls to Sys.Application.notifyScriptLoaded(). Only one is =
allowed.",
"invokeCalledTwice":"Cannot call invoke more than once.",
"webServiceFailed":"The server method \u0027{0}\u0027 failed with the =
following error: {1}",
"webServiceInvalidJsonWrapper":"The server method \u0027{0}\u0027 =
returned invalid data. The \u0027d\u0027 property is missing from the =
JSON wrapper.",
"argumentType":"Object cannot be converted to the required type.",
"argumentNull":"Value cannot be null.",
"controlCantSetId":"The id property can\u0027t be set on a control.",
"formatBadFormatSpecifier":"Format specifier was invalid.",
"webServiceFailedNoMsg":"The server method \u0027{0}\u0027 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":"\u0027{0}\u0027 is not a valid value for enum {1}.",
"scriptLoadFailed":"The script \u0027{0}\u0027 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 \u0027{0}\u0027 =
returned an invalid type. Expected type: {1}",
"servicePathNotSet":"The path to the web service has not been set.",
"argumentTypeWithTypes":"Object of type \u0027{0}\u0027 cannot be =
converted to type \u0027{1}\u0027.",
"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.",
"cannotSerializeObjectWithCycle":"Cannot serialize object with cyclic =
reference within child properties.",
"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 \u0027{0}\u0027 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)!=3D=3D'undefined')Sys.Application.notifyScriptLoaded();
------=_NextPart_000_0000_01CABAA3.2F896710
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.gurtong.net/ScriptResource.axd?d=SfjSoLGRsOpAW_hyk0nI9Ptp7jGvs8reMwZIcJNWsRSK3zkRE6JIsWbaR88mRobW9_9JalsqmnW4vDjb02anb4Ca0CO5uHF2cvA6ZOR0qPUd0LVwelYMRg2&t=fec45

=EF=BB=BF// Name:        MicrosoftAjaxWebForms.debug.js
// Assembly:    System.Web.Extensions
// Version:     3.5.0.0
// FileVersion: 3.5.30729.196
//-----------------------------------------------------------------------=

// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------=

// MicrosoftAjaxWebForms.js
// Microsoft AJAX ASP.NET WebForms Framework.
Type.registerNamespace('Sys.WebForms');
Sys.WebForms.BeginRequestEventArgs =3D function =
Sys$WebForms$BeginRequestEventArgs(request, postBackElement) {
    /// <summary locid=3D"M:J#Sys.WebForms.BeginRequestEventArgs.#ctor" =
/>
    /// <param name=3D"request" type=3D"Sys.Net.WebRequest"></param>
    /// <param name=3D"postBackElement" domElement=3D"true" =
mayBeNull=3D"true"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "request", type: Sys.Net.WebRequest},
        {name: "postBackElement", mayBeNull: true, domElement: true}
    ]);
    if (e) throw e;
    Sys.WebForms.BeginRequestEventArgs.initializeBase(this);
    this._request =3D request;
    this._postBackElement =3D postBackElement;
}
    function Sys$WebForms$BeginRequestEventArgs$get_postBackElement() {
        /// <value domElement=3D"true" mayBeNull=3D"true" =
locid=3D"P:J#Sys.WebForms.BeginRequestEventArgs.postBackElement"></value>=

        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._postBackElement;
    }
    function Sys$WebForms$BeginRequestEventArgs$get_request() {
        /// <value type=3D"Sys.Net.WebRequest" =
locid=3D"P:J#Sys.WebForms.BeginRequestEventArgs.request"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._request;
    }
Sys.WebForms.BeginRequestEventArgs.prototype =3D {
    get_postBackElement: =
Sys$WebForms$BeginRequestEventArgs$get_postBackElement,
    get_request: Sys$WebForms$BeginRequestEventArgs$get_request
}
Sys.WebForms.BeginRequestEventArgs.registerClass('Sys.WebForms.BeginReque=
stEventArgs', Sys.EventArgs);
=20
Sys.WebForms.EndRequestEventArgs =3D function =
Sys$WebForms$EndRequestEventArgs(error, dataItems, response) {
    /// <summary locid=3D"M:J#Sys.WebForms.EndRequestEventArgs.#ctor" />
    /// <param name=3D"error" type=3D"Error" mayBeNull=3D"true"></param>
    /// <param name=3D"dataItems" type=3D"Object" =
mayBeNull=3D"true"></param>
    /// <param name=3D"response" =
type=3D"Sys.Net.WebRequestExecutor"></param>
    var e =3D 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 =3D false;
    this._error =3D error;
    this._dataItems =3D dataItems || new Object();
    this._response =3D response;
}
    function Sys$WebForms$EndRequestEventArgs$get_dataItems() {
        /// <value type=3D"Object" =
locid=3D"P:J#Sys.WebForms.EndRequestEventArgs.dataItems"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._dataItems;
    }
    function Sys$WebForms$EndRequestEventArgs$get_error() {
        /// <value type=3D"Error" =
locid=3D"P:J#Sys.WebForms.EndRequestEventArgs.error"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._error;
    }
    function Sys$WebForms$EndRequestEventArgs$get_errorHandled() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.WebForms.EndRequestEventArgs.errorHandled"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._errorHandled;
    }
    function Sys$WebForms$EndRequestEventArgs$set_errorHandled(value) {
        var e =3D Function._validateParams(arguments, [{name: "value", =
type: Boolean}]);
        if (e) throw e;
        this._errorHandled =3D value;
    }
    function Sys$WebForms$EndRequestEventArgs$get_response() {
        /// <value type=3D"Sys.Net.WebRequestExecutor" =
locid=3D"P:J#Sys.WebForms.EndRequestEventArgs.response"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._response;
    }
Sys.WebForms.EndRequestEventArgs.prototype =3D {
    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.EndRequestEv=
entArgs', Sys.EventArgs);
Sys.WebForms.InitializeRequestEventArgs =3D function =
Sys$WebForms$InitializeRequestEventArgs(request, postBackElement) {
    /// <summary =
locid=3D"M:J#Sys.WebForms.InitializeRequestEventArgs.#ctor" />
    /// <param name=3D"request" type=3D"Sys.Net.WebRequest"></param>
    /// <param name=3D"postBackElement" domElement=3D"true" =
mayBeNull=3D"true"></param>
    var e =3D Function._validateParams(arguments, [
        {name: "request", type: Sys.Net.WebRequest},
        {name: "postBackElement", mayBeNull: true, domElement: true}
    ]);
    if (e) throw e;
    Sys.WebForms.InitializeRequestEventArgs.initializeBase(this);
    this._request =3D request;
    this._postBackElement =3D postBackElement;
}
    function =
Sys$WebForms$InitializeRequestEventArgs$get_postBackElement() {
        /// <value domElement=3D"true" mayBeNull=3D"true" =
locid=3D"P:J#Sys.WebForms.InitializeRequestEventArgs.postBackElement"></v=
alue>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._postBackElement;
    }
    function Sys$WebForms$InitializeRequestEventArgs$get_request() {
        /// <value type=3D"Sys.Net.WebRequest" =
locid=3D"P:J#Sys.WebForms.InitializeRequestEventArgs.request"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._request;
    }
Sys.WebForms.InitializeRequestEventArgs.prototype =3D {
    get_postBackElement: =
Sys$WebForms$InitializeRequestEventArgs$get_postBackElement,
    get_request: Sys$WebForms$InitializeRequestEventArgs$get_request
}
Sys.WebForms.InitializeRequestEventArgs.registerClass('Sys.WebForms.Initi=
alizeRequestEventArgs', Sys.CancelEventArgs);
=20
Sys.WebForms.PageLoadedEventArgs =3D function =
Sys$WebForms$PageLoadedEventArgs(panelsUpdated, panelsCreated, =
dataItems) {
    /// <summary locid=3D"M:J#Sys.WebForms.PageLoadedEventArgs.#ctor" />
    /// <param name=3D"panelsUpdated" type=3D"Array"></param>
    /// <param name=3D"panelsCreated" type=3D"Array"></param>
    /// <param name=3D"dataItems" type=3D"Object" =
mayBeNull=3D"true"></param>
    var e =3D 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 =3D panelsUpdated;
    this._panelsCreated =3D panelsCreated;
    this._dataItems =3D dataItems || new Object();
}
    function Sys$WebForms$PageLoadedEventArgs$get_dataItems() {
        /// <value type=3D"Object" =
locid=3D"P:J#Sys.WebForms.PageLoadedEventArgs.dataItems"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._dataItems;
    }
    function Sys$WebForms$PageLoadedEventArgs$get_panelsCreated() {
        /// <value type=3D"Array" =
locid=3D"P:J#Sys.WebForms.PageLoadedEventArgs.panelsCreated"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._panelsCreated;
    }
    function Sys$WebForms$PageLoadedEventArgs$get_panelsUpdated() {
        /// <value type=3D"Array" =
locid=3D"P:J#Sys.WebForms.PageLoadedEventArgs.panelsUpdated"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._panelsUpdated;
    }
Sys.WebForms.PageLoadedEventArgs.prototype =3D {
    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.PageLoadedEv=
entArgs', Sys.EventArgs);
Sys.WebForms.PageLoadingEventArgs =3D function =
Sys$WebForms$PageLoadingEventArgs(panelsUpdating, panelsDeleting, =
dataItems) {
    /// <summary locid=3D"M:J#Sys.WebForms.PageLoadingEventArgs.#ctor" =
/>
    /// <param name=3D"panelsUpdating" type=3D"Array"></param>
    /// <param name=3D"panelsDeleting" type=3D"Array"></param>
    /// <param name=3D"dataItems" type=3D"Object" =
mayBeNull=3D"true"></param>
    var e =3D 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 =3D panelsUpdating;
    this._panelsDeleting =3D panelsDeleting;
    this._dataItems =3D dataItems || new Object();
}
    function Sys$WebForms$PageLoadingEventArgs$get_dataItems() {
        /// <value type=3D"Object" =
locid=3D"P:J#Sys.WebForms.PageLoadingEventArgs.dataItems"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._dataItems;
    }
    function Sys$WebForms$PageLoadingEventArgs$get_panelsDeleting() {
        /// <value type=3D"Array" =
locid=3D"P:J#Sys.WebForms.PageLoadingEventArgs.panelsDeleting"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._panelsDeleting;
    }
    function Sys$WebForms$PageLoadingEventArgs$get_panelsUpdating() {
        /// <value type=3D"Array" =
locid=3D"P:J#Sys.WebForms.PageLoadingEventArgs.panelsUpdating"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._panelsUpdating;
    }
Sys.WebForms.PageLoadingEventArgs.prototype =3D {
    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.PageLoading=
EventArgs', Sys.EventArgs);
=20
Sys.WebForms.PageRequestManager =3D function =
Sys$WebForms$PageRequestManager() {
    this._form =3D null;
    this._activeDefaultButton =3D null;
    this._activeDefaultButtonClicked =3D false;
    this._updatePanelIDs =3D null;
    this._updatePanelClientIDs =3D null;
    this._updatePanelHasChildrenAsTriggers =3D null;
    this._asyncPostBackControlIDs =3D null;
    this._asyncPostBackControlClientIDs =3D null;
    this._postBackControlIDs =3D null;
    this._postBackControlClientIDs =3D null;
    this._scriptManagerID =3D null;
    this._pageLoadedHandler =3D null;
    this._additionalInput =3D null;
    this._onsubmit =3D null;
    this._onSubmitStatements =3D [];
    this._originalDoPostBack =3D null;
    this._originalDoPostBackWithOptions =3D null;
    this._originalFireDefaultButton =3D null;
    this._originalDoCallback =3D null;
    this._isCrossPost =3D false;
    this._postBackSettings =3D null;
    this._request =3D null;
    this._onFormSubmitHandler =3D null;
    this._onFormElementClickHandler =3D null;
    this._onWindowUnloadHandler =3D null;
    this._asyncPostBackTimeout =3D null;
    this._controlIDToFocus =3D null;
    this._scrollPosition =3D null;
    this._processingRequest =3D false;
    this._scriptDisposes =3D {};
   =20
    this._transientFields =3D ["__VIEWSTATEENCRYPTED", =
"__VIEWSTATEFIELDCOUNT"];
}
    function Sys$WebForms$PageRequestManager$_get_eventHandlerList() {
        if (!this._events) {
            this._events =3D new Sys.EventHandlerList();
        }
        return this._events;
    }
    function Sys$WebForms$PageRequestManager$get_isInAsyncPostBack() {
        /// <value type=3D"Boolean" =
locid=3D"P:J#Sys.WebForms.PageRequestManager.isInAsyncPostBack"></value>
        if (arguments.length !=3D=3D 0) throw Error.parameterCount();
        return this._request !=3D=3D null;
    }
    function Sys$WebForms$PageRequestManager$add_beginRequest(handler) {
        /// <summary =
locid=3D"E:J#Sys.WebForms.PageRequestManager.beginRequest" />
        var e =3D 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 =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().removeHandler("beginRequest", =
handler);
    }
    function Sys$WebForms$PageRequestManager$add_endRequest(handler) {
        /// <summary =
locid=3D"E:J#Sys.WebForms.PageRequestManager.endRequest" />
        var e =3D 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 =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().removeHandler("endRequest", =
handler);
    }
    function =
Sys$WebForms$PageRequestManager$add_initializeRequest(handler) {
        /// <summary =
locid=3D"E:J#Sys.WebForms.PageRequestManager.initializeRequest" />
        var e =3D 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 =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().removeHandler("initializeRequest", =
handler);
    }
    function Sys$WebForms$PageRequestManager$add_pageLoaded(handler) {
        /// <summary =
locid=3D"E:J#Sys.WebForms.PageRequestManager.pageLoaded" />
        var e =3D 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 =3D Function._validateParams(arguments, [{name: "handler", =
type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().removeHandler("pageLoaded", =
handler);
    }
    function Sys$WebForms$PageRequestManager$add_pageLoading(handler) {
        /// <summary =
locid=3D"E:J#Sys.WebForms.PageRequestManager.pageLoading" />
        var e =3D 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 =3D 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 =3D null;
        }
    }
    function Sys$WebForms$PageRequestManager$_cancelPendingCallbacks() {
        for (var i =3D 0, l =3D window.__pendingCallbacks.length; i < l; =
i++) {
            var callback =3D window.__pendingCallbacks[i];
            if (callback) {
                if (!callback.async) {
                    window.__synchronousCallBackIndex =3D -1;
                }
                window.__pendingCallbacks[i] =3D null;
                var callbackFrameID =3D "__CALLBACKFRAME" + i;
                var xmlRequestFrame =3D =
document.getElementById(callbackFrameID);
                if (xmlRequestFrame) {
                    =
xmlRequestFrame.parentNode.removeChild(xmlRequestFrame);
                }
            }
        }
    }
    function =
Sys$WebForms$PageRequestManager$_commitControls(updatePanelData, =
asyncPostBackTimeout) {
        if (updatePanelData) {
            this._updatePanelIDs =3D updatePanelData.updatePanelIDs;
            this._updatePanelClientIDs =3D =
updatePanelData.updatePanelClientIDs;
            this._updatePanelHasChildrenAsTriggers =3D =
updatePanelData.updatePanelHasChildrenAsTriggers;
            this._asyncPostBackControlIDs =3D =
updatePanelData.asyncPostBackControlIDs;
            this._asyncPostBackControlClientIDs =3D =
updatePanelData.asyncPostBackControlClientIDs;
            this._postBackControlIDs =3D =
updatePanelData.postBackControlIDs;
            this._postBackControlClientIDs =3D =
updatePanelData.postBackControlClientIDs;
        }
        if (typeof(asyncPostBackTimeout) !=3D=3D 'undefined' && =
asyncPostBackTimeout !=3D=3D null) {
            this._asyncPostBackTimeout =3D asyncPostBackTimeout * 1000;
        }
    }
    function Sys$WebForms$PageRequestManager$_createHiddenField(id, =
value) {
        var container, field =3D document.getElementById(id);
        if (field) {
            if (!field._isContained) {
                field.parentNode.removeChild(field);
            }
            else {
                container =3D field.parentNode;
            }
        }
        if (!container) {
            container =3D document.createElement('span');
            container.style.cssText =3D "display:none !important";
            this._form.appendChild(container);
        }
        container.innerHTML =3D "<input type=3D'hidden' />";
        field =3D container.childNodes[0];
        field._isContained =3D true;
        field.id =3D field.name =3D id;
        field.value =3D value;
    }
    function =
Sys$WebForms$PageRequestManager$_createPageRequestManagerTimeoutError() =
{
        var displayMessage =3D =
"Sys.WebForms.PageRequestManagerTimeoutException: " + =
Sys.WebForms.Res.PRM_TimeoutError;
        var e =3D Error.create(displayMessage, {name: =
'Sys.WebForms.PageRequestManagerTimeoutException'});
        e.popStackFrame();
        return e;
    }
    function =
Sys$WebForms$PageRequestManager$_createPageRequestManagerServerError(http=
StatusCode, message) {
        var displayMessage =3D =
"Sys.WebForms.PageRequestManagerServerErrorException: " +
            (message || String.format(Sys.WebForms.Res.PRM_ServerError, =
httpStatusCode));
        var e =3D Error.create(displayMessage, {
            name: 'Sys.WebForms.PageRequestManagerServerErrorException',
            httpStatusCode: httpStatusCode
        });
        e.popStackFrame();
        return e;
    }
    function =
Sys$WebForms$PageRequestManager$_createPageRequestManagerParserError(pars=
erErrorMessage) {
        var displayMessage =3D =
"Sys.WebForms.PageRequestManagerParserErrorException: " + =
String.format(Sys.WebForms.Res.PRM_ParserError, parserErrorMessage);
        var e =3D 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 =3D 0, l =3D source.length; i < l; i++) {
                Array.add(destinationIDs, source[i]);
                Array.add(destinationClientIDs, =
this._uniqueIDToClientID(source[i]));
            }
        }
    }
    function Sys$WebForms$PageRequestManager$_destroyTree(element) {
        if (element.nodeType =3D=3D=3D 1) {
            var childNodes =3D element.childNodes;
            for (var i =3D childNodes.length - 1; i >=3D 0; i--) {
                var node =3D childNodes[i];
                if (node.nodeType =3D=3D=3D 1) {
                    if (node.dispose && typeof(node.dispose) =3D=3D=3D =
"function") {
                        node.dispose();
                    }
  
