????

Your IP : 18.220.23.205


Current Path : C:/Windows/Microsoft.NET/Framework/v4.0.30319/
Upload File :
Current File : C:/Windows/Microsoft.NET/Framework/v4.0.30319/System.Web.Extensions.dll

MZ����@���	�!�L�!This program cannot be run in DOS mode.

$PEL�A�f�" 0�X� �,d  ��`���O��U�N��  H.text � `.rsrc�U�V�@@.reloc�@B�H|���	0M
�O��(�
*s�
z(�
*:(}*F{o�
s�
*2{o�
*6{o�
*2{o�
*6{o�
*2{o�
*2{o�
*2{o�
*6{o�
*2{o�
*6{o�
*2{o�
*6{o�
*2{o�
*6{o�
*2{o�
*6{o�
*2{o�
*6{o�
*2{o�
*2{o�
*6{o�
*2{o�
*6{o�
*2{o�
*2{o�
*6{o�
*2{o�
*2{o�
*2{o�
*6{o�
*2{o�
*6{o�
*2{o�
*6{o�
*2{o�
*6{o�
*2{o�
*6{o�
*2{o�
*6{o�
*2{o�
*6{o�
*6{o�
*6{o�
*6{o�
*6{o�
*6{o�
*6{o�
*6{o�
*6{o�
*:{o�
*6{o�
*6{o�
*6{o�
*2{o�
*2{o�
*2{o�
*2{o�
*6{o�
*6{o�
*:{o�
*6{o�
*6{o�
*6{o�
*>{o�
*>{o�
*6{o�
*6{o�
*:{o�
*>{o�
*>{o�
*6{o�
*00~-#(�

o
o
(
o
�~*0�o

-*(0,o
-s
*-So
(
s
o
+(
(	

		o

o
(
-��c�:o5
�o
(
s
o

+#o
o
,o

o
o6
-��,o5
�*B,n�0�0�s

,o
-*o
(1
o
8�o
(	
,v,so
,i(
o
,Wo
-No
,o
rpo
��,.o
(
(N	(�
,	o

+o
o6
:a����,o5
�	,o
**��0(9(�

,(5(O*0(9(�

,(5(O*.(9(<*0(9(�

,(5(P* ��*>(V(
*0p(�
o 
}o!
}o"
}{,
{o#
+
9(o$
�iZ�"}o$

+T	�{~X���{~X{o%
�{~X���XX	�i2�o&
�('
((
9��('
()
,{~ w���*�('
()
,{~ �����*�('
()
,{~ �����*�('
()
9�{~!B��
���{~ ����{~X!$��������{~X ����{~X!x:Z������{~X w���{~X K���*�('
()
,rp}to*
}*�('
()
,rKp}*.(+
(Z*0�-*o"
,o"
o#
o&
+
~o,
,�('
()
,*s-
~o
uC-vsX
	([(�
o.
1Lr}pr�p(/
	{,#r�p	|(0
(1
r�p(2
	{s3
~o4
*0Ls5

rp{o6
r#p{o6
r=p{o6
r[p{o6
*�s7
(8
� 	(9
�����*0�(:
(f
o;
o3
+~o9
tMo<
(=

	repo>
,"o<
(?
(`o@
+6	rupo>
,((A
oB
oC
/o<
(?
(_o6
:w����uO,o5
�*��0�	�	('
oD
oE
s�
o�uo�oF
o�,o�oF
o�zo�oF
o�sG

oH
	sI
(J
(goK
&oL
�,o5
��:oM
(+
r�p�"%(N
�%�(O
sP
z*o#���:>0
�
(g
sno�u#o�(ar�p(Q

(l	sFsD �
('
(�(R
-+(N
oozoy(do�:oM
(+
r�p�"%(N
�%�(O
sP
z*��:>0No3

+)o9
to8-o7.(csS
zo6
-��uO,o5
�*5<0[o3

+6o9
to8-"oT
1(U
oV
&(coV
&o6
-��uO,o5
�*BI0�o;
o<(R
:�o9/%(+
r�p�"%o<�%�(O

+{o:/3(+
r�p�"%o<�%o9���%�(O

+?(+
r�p�"%o<�%o9���%o:���%�(O

*0s
(a(ao�oW
1Woeo�oX
-E(e-=sY

(b(b(+
(M�"%�%oZ
�(O
sS
z*0N,Go[
o\

+o9
tTo]
o^
1�o6
-��uO
	,	o5
�***9F(_
(:
o`
*0(j
(:
-sa
z(h*0n(b
(b
o.
o.
3~c
*(d
o.
oe
�%/�of

+�(k�X�i2�rp(g
*0(h

-sa
z(i
(b
*B(irp(j
*0�(R
,r1psk
zsY

+E-ol
(m
,	_on
&ol
(o
,ol
on
&+	_on
&Xo.
2�oZ
rCpo>
,rGp*0�
,O,Lo�op

+%(q
o�rMp(r
,o�
(s
-���Go5
�st
,(u
sv
+(w
sx
oy
ropoz
rop({
(|
*2F(}
**0�-rspsk
zo\

8�o9
teo~
o\
8~o9
tf
	o
o^
@a�j('
	o
o�
(q,.�('
	o
o�
(q,	o
o�
+J�j('
	o
o�
(q,,�('
	o
o�
(q,	o
o�
9�	o
o�
o�
(�
9�s�
o�
o\
+2o9
tho�
o�
o�
(r
,	o�
o6
-��uO,o5
�o�
	+	(�

o�

o�
	(�
-��	�Io5
�o6
:w����uO,o5
�o6
:9����uO,o5
�*Ad'?f�#�2����05o�
o�
uj
,o&
()
,o�
(r,**0B
(�
-*o�
�,$�iY�(=
r�p(r
,
��&�*	*!;l{*^}(t,(w*{ *z} }!(v,(u*{!*{"*"}"*j{#-s�
}#{#*{$*"}$*{%*"}%*{&*"}&*j{'-s�
}'{'*j{(-s�
}({(*{)*"})*{**"}**F{0,{/**>}0}/*{0*F{2,{1**>}2}1*{2*{+*"}+*j{,-s�
},{,*j{--s�
}-{-*j{.-s�
}.{.*{3*"}3*{4*"}4*{5*"}5*{6*J(�s�}6*:(�}6*2{6o�*6{6o�*2{6o�*2{6o�*2{6o�*2{6o�*0({8-(�

�uoZ
}8{8*Z-r�psk
z}8*j{9-s�
}9{9*j{:-s�
}:{:*j{;-s�
};{;*j{<-s�
}<{<*:(�}=*{=*Zu-*ts�*Zu-*to�*0]{>-Ns�
}>�('
oD
�('
r�po�

{>(�
o�
&�
,o5
�{>*7L
j{?-s�}?{?*2{=(�
*^{=(u
(�
(�
*J(�~c
}@*v(�(�}A(�*{A*>}A(�**{A�*{@*Z-r�psk
z}@*>(�}A*J(�
~c
}B*:(�
(�*{D*"}D*{B*�-r�psk
z(�-(+
(Q�"%�(O
s�
z}B*{C*"}C*0G-r�psk
z(�
o�
/'�%~�
�%~�
�%~�
�o�
2**�(�
}E}F}G}H*{E*"}E*{F*"}F*{G*"}G*{H*"}H*0ko�
o\

+;o9
u�,,t�o�
r�po>
-rpo>
,
� o6
-��uO,o5
�*	*GSJ,
{Io�
**�,,o�
,$o�
(�,{Io�
o�
o�
&*Js�
}I(�
*0{J-(+*{J
*6s�
}J*0.(�o�
o�o�o�
�
,o5
�*#
0�
o�sG}Ys�
}X�Hs�

s�
%o�o�
%o�
%o�
~c
(�
	o�
(�
{X(��	o�
�,o5
�,o5
�,(�*(^ ~	^)�	��
0%oo�o�o�

o��*
>0%o�o�o�o��

o��*
>0�o�o�
o�
�{o�
u~,zo�
u
	,X	o�
1M(+
(G�"%	oM
�%	o�
���%	o�
���(O
		o�
	o�
s�
z	z�*{}0}o�o�

+(�
o�-o�(�
-���Ro5
�o�op
+(q

	o�-	o�(s
-���Go5
�*$0J$n0�(�o�o�

+(�
o�(�(�
-���Ro5
�o�op
+(q

	o�	(�(s
-���Go5
�*#6P#s0
o�~[%-&~Z�Ks�
%�[(+~\%-&~Z�Ls�
%�\(+
o�~]%-&~Z�Ms�
%�](+~^%-&~Z�Ns�
%�^(+(
s�
(+o


+=	o
o�
-o�
&+ (+
(W�"%�(O
s�
z	o6
-��
	,	o5
�*�I�
"o�*0,(�(�

�uoZ
}N�$}T*0=(�(�

�uoZ
}N}M-rpsk
z(*0=(�(�

�uoZ
}N}M-rpsk
z(*{T*�{S-{L(}S{S*0 {Ts�
s�

o�
*{L*"}L*{N*"}N*{P*"}P*.-}P*{Q*"}Q*.-}Q*2(�oU*2(�oV*2(�oW*2(�oX*2(�oY*{O*^/(Rs�
z}O*J{O{R��*B-{R}O*{M*"}M*2(�oZ*0�!r3prKpo�
,
�sr�pr�po�
,
�]r�pr�po�
-r�prEpo�
,
�5r�pr�po�
,
�r�pr�po�
,
�	
�&
�*��~0S!{L
YE +$rAp*rMp*rWp*r_p*r_p*rgp*rqp*0�"((R
-x(
ropo�
-c(�
o�
2
Xoe

rp((�
o.
o.
1o�
,o.
o.
Yo�

o.
1*r{p*f}Ts�
s�
(*03#s�

s�
o�
oL
o�
}TsI
(*0b$-r�psk
z(�}Ss�

{L-*((}S{SoV-}L�
,o5
�*#4W
n(��$}T}S*0A%(�,(�sT*{Ts�
s�
s�

(�
,o5
�**5
0�&sO
Ec/+M(�
sP
+S(�
sQ
oW(o�
+4(�
sR
oX(o�
+s�
o�
sS
�
sT
�*{�
>0�'{L(
oV,oVz(�Ex+A]]+voW,noW(�
+`oW
	,V	(�
+MoX,EoX(�
+7oY,/oYo�
(�
+oY,oYo�
s�
*n((R
,(�*(*v(�
~c
}U~c
}V*0h(�
-r�psk
z-r�psk
zo.
-(Ls�
z-(Ks�
z}V}U/(Rs�
z}W*{U*Z-r�psk
z}U*{V*Z-r�psk
z}V*{W*^/(Rs�
z}W*{X*"}X*{Y*"}Y*v(�
~c
}Z~c
}[*{Z*"}Z*{[*"}[*�(�
}ao�
}\o�
}]~c
}^}_}`*�(�
}a}\oM
}]}^}_}`*�(�
}a}\oM
}]}^}_}`*0@(�
}a}\oM
}]}^o�
}_o�
}`*0@(�
}a}\oM
}]}^o�
}_o�
}`*0A(�
}a}\oM
}]}^o�
}_o�
}`*{a*{\*{_*{`*{]*{^*J(�
~c
}b*r(�
-r�psk
z}b*{b*"}b*{c*"}c*{d*"}d*{e*"}e*06(-r�psk
z-r�psk
zs�

Q~g�i�X+s�
�X~g�i2�o�

8�	o�
s�
+Q�o�
	~g�0{u~g�0{v(Jo�
	1X~g�i2�o�
1I-
o�
+;o�

+
(�
o�
o�

(�
-��
�\o5
�	o6
:/����
	,	o5
�*�$S�+
0	m)o�

(R
,~c

o�
o�
8%o�
o�
9(Us�

	o�
9�(K-arp(T~c
(+
(I�"%�%	oZ
�%o�
�%o�
�%�(O
sS
s2o
+i(R
-`rp(T~c
(+
(J�"%�%	oZ
�%o�
�%o�
�%�(O
sS
s3o
o
+o�
o�
	o
o
:����uO,o5
�*A!7X0�*~c
Qo&

o&
((
,*~c
o

+]	�(Y,H(Z�"o
�"o
(L--*(R
,PX	�i2�Q*0I+~c
Q--*�^('
o
()
,9-~i-~it^t^(P-(VQ**�\('
o
o
,[-~j-~jt\t\(N-	(VP(TQ*P(R
-	(VP(TQ*,-(VP(TQ*o&
o&
((
,(VP(TQ*(M-(VP(TQ*P(R
-(VP(TQ*0�~c
Q,-
-�**o&
o&
((
,*u�,t�t�(K*u�,t�t�(O*ud,tdtd(R*u�,t�t�(S*o,
*0~,~c
Qo3

o3
~c

o6
-+o9
Qo6
-+o9
QPP(M-*(R
,P
PPP,P-�Q	QQ*�o
o
(r
,'o	
o	
(r
,o

o

(r
**07-QQ(Q
(Q(N-t�Q	t�Q**0V.o
��
o3
+o9
t�
%X	�o6
-��uO,o5
�s](+* 50�/~c
Qo
o
(r
,o	
o	
(r
-*o

o

(P-E-~c
+rpo
(�
-~c
+rpo
(�
(WQ*o
o
(N-B-~c
+t�o
	-~c
+	t�o
(WP(TQ**No

o

(r
*�(R
,*(R
,*rop(/
*0S0-rpsk
zo&

r!po
(
,#�"o
u,t*~c
*~c
*0:1o

~c
,(X(X
	(W(R
,o
*0F~c

o.
1*o.
1(r
,
+r+p(/

+
+o.
1
*029
8��us,rptso
(�
*uo,mto
	o
()
-
o�
,Ju�,;t�(Uo.
1$(0
r/p�"%	o
�%�(O
*	o
*u(,u�,rpt�o
(�
*u),ud,tdo
*u*,u�,t�o
*X�i?����~c
*0N3o

,A+5�
~f+�	o�
,*X�i2�X�i2�*0J4o

~h+�
	()
-		o
,*X�i2�o
rQp(r
,**04�;%�o('
�%�s('
�%�(('
�%�)('
�%�*('
��f�0%ж('
rips[�0%Я('
rsps[�0%�+('
r�ps[�0%�,('
r�ps[�0%�-('
r�ps[�0�g�;%�^('
�%�_('
�%�`('
�%з('
��h���i�"�j*{k*J(�sm}k*:(�}k*2{kof*6{kog*2{koj*2{kok*2{kol*2{koh*0({m-(�

�uoZ
}m{m*Z-r�psk
z}m*j{n-s�}n{n*Z-r�psk
z}n*j{o-s�
}o{o*j{p-s�
}p{p*j{q-s�
}q{q*:(�}r*{r*Zu$-*t$s_*Zu#-*t#o]*0]{s-Ns�
}s�$('
oD
�$('
r�po�

{s(�
o�
&�
,o5
�{s*7L
j{t-s�}t{t*2{r(�
*^{r(u
(�
(�
*{v*{z*{}*{~*{w*{x*{y*{|*{{*�~-�.('
o
s
�~*0�(�
-r�psk
z-r�psk
z-rpsk
z-rApsk
z-rgpsk
z-r�psk
z-r�psk
z	-rpsk
z}~}{}|}v}w}x}y}z	}}*05-rIpsk
z-r_psk
z	()
,rpsk
zs�

s�
s
	(�
oe	(�s
	(�		(�(�,(�	s�
�A~c
s3o
s
s
s
s
s
s 
s�
�
*nR�A>0	p6s!

o"
r�po#
o~,%o$
`o%
+%o$
�_o%
%o$
�_o%
ov,%o$
@`o%
+.ot,&%o$
`o%
 2%o$
 `o%
o�,%o$
`o%
+%o$
�_o%
9^o�o&
81('
o�o�
	(�-:~c
(+
(V�"%o��(O
s�
s2o
��	((
o�o)
(r
,o�o*
(r
-[~c
(+
(U�"%o��%o*
�%o)
�%o��%o��(O
s�
s2o
o)
o*
s�
o+
o,
o-
	o.
�~c
s2o
�(/
:�����go5
�o�o0
+"(1
o"
o'o)o#
(2
-���jo5
�*AL��>�D1/`0�7-rgpsk
z-rpsk
z-rApsk
z-rpsk
z
s 
Q	s
Qo3
o+
o5
+{s^o6
}w,#{wo�,�_s7
(+,C{wo9

	,3	o:
{wo*
{wo)
s�
Po;
o6
:z����
,o5
�o<
9�o=
+#(>
o?
&	Po@
(A
-���oo5
�oB
	+	oC


oD
	o6
-��	,	o5
�
P	PoE
(��>oF
oG

+
oH
s1o

o6
-��
,
o5
��*A|`��
08O(w�$�LM�>0q8sI

sJ
	oK
oy,%oL
`oK
oM
oN
oO
&oM
�3('
oN
oO
&oP
oQ
oR
*0;9sS

sT
oU
oV
r�poW
o~oX
o�oY
oyoZ
o|o[
9�(�,7o>
+o=
o\
o]
o6
-��,o5
�(�
	,7	o>
+o=
o^
o]
o6
-��,o5
�o�o0
+"(1
	oV
	o'	o)oW
(2
-���jo5
�o_
*(t#��#��/$0	�:-r�psk
zs`

(�9�oa
8�ob

u,:	o�o>
+o=
oc
o6
-��i,o5
�	od
+H�		o
o�((
,		oc
�&�
~c

s3o
�X�i2�o6
:K����
,o5
�o�oe
+{(f
oFo�

(�-7~c
(+
(V�"%oF�(O
s�
s2o
�#
og
�~c
s2o
�(h
:y�����yo5
�o{oe
8�(f
oFo�oi
,Hoj
,5~c
(+
(H�"%oF�(O
sk
s2o
ol
&�~c
s3o
�(h
:p�����yo5
�(�o>
+o=
ol
&o6
-��,o5
�om
*pQp� ��� �>*��
[c>����c>��:UtV /~�*�;*0�;9�o>
:�(�
(�on
+oo

		o�(�o�o6
-��
,o5
�op
+oq
or
(�os
o6
-��,o5
�(�*(&N
`+�~ot
,o.
oe
(�
**�(R
,r�p*rpo�
-rp(�
**r()
,*ou
-ov
**0�<sw

o�,mo�,9ox

+	oy
~c
s3o
	o6
-��
	,	o5
�,oz
�~c
s2o
�o�o{
+M(|
o?o�(}
,o~
-o
�	~c
	s2o
�(�
-����o5
�*4&(N
Vd>�-�>�Z�0	�=s�

o�o�
+s(�
oAo�
	(�-6~c
(+
(V�"%oA�(O
s�
s2o
� 	o�
�~c
s2o
�(�
-����o5
�*Tp>��0	�>o�(�
oeo�-
(�,9�(�
9�o�
o�
o�
o�
o�
o�
E&+$�7('
(�+�8('
(�(�s�o�
s�
s�
-s�
s�
o�
О('
oe(�o�
.&o�
М('
oe	(�o�
s�

	oeo�o�
o�
С('
	o�
s�
oeo�o�
o�
Т('
o�
*0�?
o�
+#o�
u

	,-(�
	o]o6
-��
,o5
�o�
+)o�
u
,-(�
o]o6
-��,o5
�*	/8
J6�0-@
+o�
o&
()
,o�
X
o�
2�*0cAs�

o�op
+4(q
o�,$o�,o�o�o�
t�o�
(s
-���Go5
�*AS0gBs�

o�
+4o�
o-%o
	,	o�
�(�o
�o6
-��
,o5
�(�(�*1>
@M
0�C
u,o�ts5
8�u~,o�t~s4
+iu},So�
u,o�s5
+Bo�
u~,o�s4
+#o�t}s2
+o�s2
*0�Ds�

o�
+0(�

	o�
(�
(�
,	o�
t�	o�
(�
-����o5
�o�
8�(�
o�
(�
(�
,io�
teo�
o�
o\
+&o9
t�		o�
o�
	o�
o6
-��uO

,
o5
�(�
:o������o5
�o�
(I9�o�
+eo�
o�


o�
(�
(�
,
o�
&+4
o�
(�
(�
,!
o�
teo�
o�
o�
o6
-��,o5
�*4
=J�3�`��"r�0WEs�

o�
+,o�
o�
(�
(�
,o�
te
	o�
o6
-��
,o5
�(�*
8E
0YFss
o�
o"
s
Qo�
&o�
o\
8�o9
teo~
o\

+{	o9
tfo
o\
+>o9
tgo�
Po�
�&�o�
s2o
�o6
-��uO		,	o5
�	o6
:z����	uO		,	o5
�o6
:?����uO		,	o5
�o�
Qo�
Qo�
oG

+
oH
s1o

o6
-��
,
o5
�*Lx�}x�>hK�K��.�)#L0�G-~c
(�
(�9�o[
o\
8co9
tT
	o�
(r
9E	o]
o\
8o9
t�o�
9�o�
o\
8�o9
t�o�
o:
��('
o
(r
9�o�
o\
+\o9
t�		o�
r�p(r
,:	o�
u�

,(
o�
u,

o�
t(�o�
o6
-��uO,o5
�o6
:4����uO,o5
�o6
:���uO,o5
�o6
:�����uO,o5
�*Ad�i7��ZZ#}*u�0wHo[
o\

+Jo9
tTo]
o\
+o9
t�
	(�o6
-��uO,o5
�o6
-��uO,o5
�*&DVb0�Io�
o\

8�o9
t�u�,
t�(�+|u�,tu�o�
o\

+A	o9
t�o�
3*�.('
o�
(�-o�
(�o�
&	o6
-��	uO,o5
�o6
:X����uO,o5
�*MM���0`Jo\

+8o9
t�o�
o
(r
-o�
o
(r
,�o6
-��uO
	,	o5
�**DK0$Ko�

(�
r	p(r
�&�*�0RLo�

+1o�
o�
(�
(�
,o�
te(�,
�o6
-��
,o5
�*	*=D
0�Mo�
o\

+Po9
tho�
o\
+o9

	u�,�>o6
-��uO,o5
�o6
-��uO,o5
�**&$J\hf�;%��('
���*�(�
}�s�
}�s�
}�*0Ns�
o�*0,Oo�

8o�
o�
(R
,~c
o�
o\

+H	o9
t�o�
s�
{�o�
,(�+{�o�
	o6
-��	uO,o5
�o�
o\
+Io9
t�		o�
s�

{�
o�
,	(�+{�
	o�
o6
-��uO,o5
�o6
:���
,o5
�*AL4T��V�!
0�Psj
}z}x}y{xo�
o^
��{xo�
o�
sa(	+{yo�
o^
��{yo�
o�
sa(	+�ks�
(
+&*0�Qo�
o�
o�
o�
(�-
(�*o�
o�
o�
o�
(�-
(�*o�
o^
��
o�
o�
sc(+o�
o^
��o�
o�
sc(+��s�
(+-
(�**�--*,-*o�
o�
(�*0�Rsl
}}}{}|{{o�
o^
��{{o�
o�
se(
+{|o�
o^
��{|o�
o�
se(
+�ms�
(+&*�o�
o�
(�,o�
o�
(�-o�
o�
(�**�(�
,(�
,(�
*(�
,(�
**0	_{�~c
(+
(T�"%o�
�%o�
o�
�%o�
o�
�%o�
�(O
sS
s2o
*0	n{�~c
(+
(S�"%o�
�%o�
o�
�%o�
o�
o�
�%o�
o�
o�
�(O
sS
s2o
*0	_{�~c
(+
(P�"%o�
�%o�
o�
�%o�
o�
�%o�
�(O
sS
s2o
*0	_{�~c
(+
(O�"%o�
�%o�
�%o�
o�
�%o�
o�
�(O
sS
s2o
*0�So�

o�
o6
-��+o9
��o6
-��+o9
��
��,	��,	o�
-*��,	��-�	o�
*�,,o�
o�
(�*-,**�(�
-r
	pr+	p(�
*(�
r
	pr+	pt$(�*0|T-
,(�
*-!o&

�$('
()
-(�
z(�
,r�	pr+	p(�
r�	pr�pof(�
r�	pr+	poh(�oj,Br�	pr+	p(�
+r�	pr+	po�
(�Xo
2�(�
ok
	,Gr
pr+	p(�
+ r
pr+	p	oF
(�X	o
2�(�
ol,Ir-
pr+	p(�
+!rC
pr+	po�
(�Xo
2�(�
(�
*0�U-
,(�
*-!o&

�('
()
-(�
z(�
,rC
pr+	p(�
r_
pr�po�(�
r!pr�po�(�
(�
*08U-
,(�
*-!o&

�('
()
-(�
z(�
,r
pr+	p(�
r_
pr�po�(�
rq
pr�po�(�(�
r�	pr�po�(�
o,r�
pr�po(�
(�
o,r�
pr�po(�
(�
o,r�
pr�po
(�
(�
r�
pr�po(�
o&o&o&(�
*0{V
E
"*2+8r�
p
+Kr�
p
+Cr�
p
+;rp
+3r�p
++rp
+#r�p
+j(0
(�
rp(
z*0�U-
,(�
*-!o&

�('
()
-(�
z(�
,r�	pr+	p(�
r�pr�po!(�
r�pr�po#(�
r�
pr�po%(�
(�
(�
*0�W-
,(�
*-!o&

�
('
()
-(�
z(�
,r�	pr+	p(�
r�pr+	pot(�
(
ox,r�pr+	pov(�
(
r-pr+	poy(�
(
o{,BrQpr+	p(�
+rmpr+	po
(�Xo
2�(�
r�pr+	po|(�
(
r�pr+	po~(�
(
r�pr+	po�(�
(
o�
	,Gr
pr+	p(�
+ r'
pr+	p	o
(�X	o
2�(�
o�,IrI
pr+	p(�
+!ro
pr+	po
(�Xo
2�(�
r�
pr+	po�(�
(
r�
pr+	po�(�(
o�,r�
pr+	po�(�
(
o�,rpr+	po�(�
(
rpr+	po�(�
(
o�,IrIpr+	p(�
+!rspr+	po
(�Xo
2�(�
o�		,Ir�pr+	p(�

+!r�pr+	p	
o
(�
X

	o
2�(�
o�,Irpr+	p(�
+!r7pr+	po
(�Xo
2�(�
(�
*0�U-
,(�
*-!o&

�('
()
-(�
z(�
,repr+	p(�
r!pr�po�(�
r�pr�po�(�
r�pr�po�(�
(�
*0rU-
,(�
*-!o&

�!('
()
-(�
z(�
,r�pr+	p(�
r�pr�poF(�
(�
*0rU-
,(�
*-!o&

�('
()
-(�
z(�
,rspr+	p(�
r�pr�po?(�
(�
*0KV
E
+r�p
++r�p
+#r'p
+j(0
(�
rCp(
z*0�U-
,(�
*-!o&

� ('
()
-(�
z(�
,r�pr+	p(�
r�pr�poA(�
r�pr�poC(�(�
(�
*0KV
E
+r�
p
++rp
+#rp
+j(0
(�
r,p(
z*0�U-
,(�
*-!o&

�('
()
-(�
z(�
,r'
pr+	p(�
r�pr�po'(�
r�pr�po)(�
(�
*(
*0bX
(	
o

&(	
o
38(	
o
{�3(	
o

{�3(�
+(
zr�p(
*0�Y-+(

,(
,-(�
-$o�
{�3o
{�.(
z,*smoj
okol��+c�->(	
o
{�3+(	
o

{�3(	
o
og�+(	
o
(
-rUp(
(	
o
-�(	
o
&(	
o
,
(	
o
*(	
o
(	
o

&(
	8H(	
o
@EA��8�(	
o
{�3!(	
o

{�3(�oi8�(	
o
{�@!(	
o

{�@(
:�oj

,
(	
o
,(	
o
8i(	
o
(	
o

&(
8�(	
o
3V(	
o
{�35(	
o

{�3"
-
(	
o
++
(�o
+r]p(
+r]p(
(	
o

&(
(	
o
.(	
o
:[���(
8�8�(	
o
{�@!(	
o

{�@(
:Sok

,
(	
o
,(	
o
8*(	
o
(	
o

&(
8�(	
o
3V(	
o
{�35(	
o

{�3"
-
(	
o
++
(�o 
+r�p(
+r�p(
(	
o

&(
(	
o
.(	
o
:[���(
8S8K(	
o
{�@(	
o

{�@(
:ol,
(	
o
,(	
o
8�(	
o
(	
o

&(
8�(	
o
3V(	
o
{�35(	
o

{�3"-
(	
o
++(�o!
+rEp(
+rEp(
(	
o

&(
(	
o
.(	
o
:[���(
++(
+(
(	
o

&	(
(	
o
.(	
o
:����(
*0�Z-+(

,(
,-(�
-$o�
{�3o
{�.(
z,*s���
8�	�-=(	
o
{�3*(	
o

{�3(	
o
o�	�+a	�-=(	
o
{�3*(	
o

{�3(	
o
o�	�+(	
o
(
-r�p(
(	
o
:M���(	
o
&(	
o
,
(	
o
*(	
o
(	
o

&(
+>(	
o
3r�p(
+r�p(
(	
o

&(
(	
o
.
(	
o
-�(
*0B[-+(

,(
,-(�
-$o�
{�3o
{�.(
z,*s���
8&	�-@(	
o
{�3-(	
o

{�3(	
o
o�	�8�	�-F(	
o
{�33(	
o

{�3 (	
o
(�o�	�8�	�-@(	
o
{�3-(	
o

{�3(	
o
o�	�8Q	�-L(	
o
{�39(	
o

{�3&(	
o
("
oo	�8	�-L(	
o
{�39(	
o

{�3&(	
o
("
oo	�8�	�-I(	
o
{�36(	
o

{�3#(	
o
(#
oo	�+a	�-=(	
o
{�3*(	
o

{�3(	
o
o	�+(	
o
(
-r�p(
(	
o
:���(	
o
&(	
o
,
(	
o
*(	
o
(	
o

&(
+>(	
o
3r�p(
+r�p(
(	
o

&(
(	
o
.
(	
o
-�(
*0�\(?
 V}��5  V�<;� WW�\.X V}��._8� yE �5 q_��.w yE �.$8� �7�.D Y �3wr�
p(�
-\+hr�
p(�
-O+Yr�
p(�
-B+Jrp(�
-5+;r�p(�
-(+,rp(�
-+r�p(�
-+*******�,('
($
z0	]-+(

,(
,-(�
-$o�
{�3o
{�.(
z,*s��
8�	�-@(	
o
{�3-(	
o

{�3(	
o
o"	�8�	�-=(	
o
{�3*(	
o

{�3(	
o
o$	�+f	�-B(	
o
{�3/(	
o

{�3(	
o
(#
o&	�+(	
o
(
-rxp(
(	
o
:���(	
o
&(	
o
,
(	
o
*(	
o
(	
o

&(
+>(	
o
3r�p(
+r�p(
(	
o

&(
(	
o
.
(	
o
-�(
*0^-+(

,(
,-(�
-$o�
{�3o
{�.(
z,*s�o{
o�o�o�o�o���	+(	
o
(
-(%
(	
o
-�(	
o
&(	
o
,
(	
o
*(	
o
(	
o

&
(
8�
(	
o
@�
	�-F(	
o
{�33(	
o

{�3 (	
o&
("
ou	�8d
	�-F(	
o
{�33(	
o

{�3 (	
o&
("
ow	�8
	�-F(	
o
{�33(	
o

{�3 (	
o&
("
oz	�8�	(	
o
{�@!(	
o

{�@(
:�	o{,
(	
o
,(	
o
8l	(	
o
(	
o

&
(
8�(	
o
3V(	
o
{�35(	
o

{�3"-
(	
o
++(�o'
+r�p(
+r�p(
(	
o

&
(
(	
o
.(	
o
:[���(
8�	�-F(	
o
{�33(	
o

{�3 (	
o&
("
o}	�8I	�-F(	
o
{�33(	
o

{�3 (	
o&
("
o	�8�	�-F(	
o
{�33(	
o

{�3 (	
o&
("
o�	�8�(	
o
{�@!(	
o

{�@(
:zo�,
(	
o
,(	
o
8Q(	
o
(	
o

&(
8�(	
o
3V(	
o
{�35(	
o

{�3"-
(	
o
++(�o(
+r(p(
+r(p(
(	
o

&(
(	
o
.(	
o
:[���(
8z(	
o
{�@!(	
o

{�@(
:Co�,
(	
o
,(	
o
8(	
o
(	
o

&(
8�(	
o
3V(	
o
{�35(	
o

{�3"-
(	
o
++(�o)
+r�p(
+r�p(
(	
o

&(
(	
o
.(	
o
:[���(
8C		�-G(	
o
{�34(	
o

{�3!(	
o&
("
o�		�8�	
�-H(	
o
{�35(	
o

{�3"(	
o&
(�o�	
�8�	�-G(	
o
{�34(	
o

{�3!(	
o&
("
o�	�8X	�-G(	
o
{�34(	
o

{�3!(	
o&
("
o�	�8
	
�-G(	
o
{�34(	
o

{�3!(	
o&
("
o�	
�8�(	
o
{�@!(	
o

{�@(
:�o�,
(	
o
,(	
o
8\(	
o
(	
o

&(
8�(	
o
3V(	
o
{�35(	
o

{�3"-
(	
o
++(�o*
+rp(
+rp(
(	
o

&(
(	
o
.(	
o
:[���(
8�(	
o
{�@!(	
o

{�@(
:No�,
(	
o
,(	
o
8%(	
o
(	
o

&(
8�(	
o
3V(	
o
{�35(	
o

{�3"-
(	
o
++(�o'
+r�p(
+r�p(
(	
o

&(
(	
o
.(	
o
:[���(
8N(	
o
{�@(	
o

{�@(
:o�,
(	
o
,(	
o
8�(	
o
(	
o

&(
8�(	
o
3V(	
o
{�35(	
o

{�3"-
(	
o
++(�o+
+r+p(
+r+p(
(	
o

&(
(	
o
.(	
o
:[���(
+r�p(
+r�p(
(	
o

&
(
(	
o
.(	
o
:
���(
*0_-+(

,(
,-(�
-$o�
{�3o
{�.(
z,*s���
8�	�-@(	
o
{�3-(	
o

{�3(	
o
o�	�8�	�-=(	
o
{�3*(	
o

{�3(	
o
o�	�+a	�-=(	
o
{�3*(	
o

{�3(	
o
o�	�+(	
o
(
-ry p(
(	
o
:���(	
o
&(	
o
,
(	
o
*(	
o
(	
o

&(
+>(	
o
3r�p(
+r�p(
(	
o

&(
(	
o
.
(	
o
-�(
*0w`-+(

,(
,-(�
-$o�
{�3o
{�.(
z,*sH��
+a	�-=(	
o
{�3*(	
o

{�3(	
o
oG	�+(	
o
(
-r� p(
(	
o
-�(	
o
&(	
o
,
(	
o
*(	
o
(	
o

&(
+>(	
o
3r�p(
+r�p(
(	
o

&(
(	
o
.
(	
o
-�(
*0wa-+(

,(
,-(�
-$o�
{�3o
{�.(
z,*s=��
+a	�-=(	
o
{�3*(	
o

{�3(	
o
o@	�+(	
o
(
-r� p(
(	
o
-�(	
o
&(	
o
,
(	
o
*(	
o
(	
o

&(
+>(	
o
3r�p(
+r�p(
(	
o

&(
(	
o
.
(	
o
-�(
*0Ar�p(�
-r�p(�
-r'p(�
-+***�)('
($
z0�b-+(

,(
,-(�
-$o�
{�3o
{�.(
z,*sE��
8�	�-=(	
o
{�3*(	
o

{�3(	
o
oB	�+g	�-C(	
o
{�30(	
o

{�3(	
o
(�oD	�+(	
o
(
-r� p(
(	
o
:G���(	
o
&(	
o
,
(	
o
*(	
o
(	
o

&(
+>(	
o
3r�p(
+r�p(
(	
o

&(
(	
o
.
(	
o
-�(
*0Ar�
p(�
-rp(�
-rp(�
-+***�/('
($
z0�c-+(

,(
,-(�
-$o�
{�3o
{�.(
z,*s+��
8�	�-=(	
o
{�3*(	
o

{�3(	
o
o(	�+a	�-=(	
o
{�3*(	
o

{�3(	
o
o*	�+(	
o
(
-r!p(
(	
o
:M���(	
o
&(	
o
,
(	
o
*(	
o
(	
o

&(
+>(	
o
3r�p(
+r�p(
(	
o

&(
(	
o
.
(	
o
-�(
*0}(	
o,
r�po-
}�(	
o,
r
	po-
}�(	
o,
r�po-
}�(	
o,
rpo-
}�(	
o,
r�po-
}�(	
o,
r�po-
}�(	
o,
r�po-
}�(	
o,
r_
po-
}�(	
o,
r�	po-
}�(	
o,
r�	po-
}�(	
o,
r�po-
}�(	
o,
r�	po-
}�(	
o,
rQpo-
}�(	
o,
r
po-
}�(	
o,
repo-
}�(	
o,
rq
po-
}�(	
o,
r�
po-
}�(	
o,
r'
po-
}�(	
o,
r�po-
}�(	
o,
r�
po-
}�(	
o,
r�
po-
}�(	
o,
r�po-
}�(	
o,
r�	po-
}�(	
o,
r�
po-
}�(	
o,
rspo-
}�(	
o,
r�po-
}�(	
o,
r�po-
}�(	
o,
r+	po-
}�(	
o,
rC
po-
}�(	
o,
rI
po-
}�(	
o,
r�po-
}�(	
o,
rIpo-
}�(	
o,
r�
po-
}�(	
o,
r�po-
}�(	
o,
r7po-
}�(	
o,
r!po-
}�(	
o,
r�
po-
}�(	
o,
r�po-
}�(	
o,
r�po-
}�(	
o,
r
po-
}�(	
o,
r
po-
}�(	
o,
r-po-
}�(	
o,
r�po-
}�(	
o,
r�
po-
}�(	
o,
r�po-
}�(	
o,
r-
po-
}�(	
o,
ro
po-
}�(	
o,
rmpo-
}�(	
o,
rpo-
}�(	
o,
rpo-
}�(	
o,
r�po-
}�(	
o,
r�	po-
}�*(.
*s�*s�*(/
*Fr
	pr+	po�
*6t)o�*2t*o�*(�*04d{�-%s7

rY!pr:"po4
{�-}�{�*04d{�-%s7

rY!prf"po4
{�-}�{�*04d{�-%s7

rY!ps�o0
{�-}�{�*Z�$('
()
,**j�$('
()
,s�**(1
*�(�
-r
	pr�"p(�
*(�
r
	pr�"pt(�*0�e-
,(�
*-!o&

�('
()
-(�
z(�
,r�"pr�"p(�
r�	pr�po�(�
o�,Br�	pr�"p(�
+r�	pr�"po�
(�Xo
2�(�
o�
	,Gr
pr�"p(�
+ r
pr�"p	oF
(�X	o
2�(�
o�,Ir-
pr�"p(�
+!rC
pr�"po�
(�Xo
2�(�
o�,Ir#pr�"p(�
+!r*#pr�"po2
(�Xo
2�(�
(�
*0�U-
,(�
*-!o&

�('
()
-(�
z(�
,r*#pr�"p(�
r!pr�po-(�
r>#pr�po/(�
(�
*0�U-
,(�
*-!o&

�('
()
-(�
z(�
,rC
pr�"p(�
r_
pr�po�(�
r!pr�po�(�
(�
*08U-
,(�
*-!o&

�('
()
-(�
z(�
,r
pr�"p(�
r_
pr�po�(�
rq
pr�po�(�(�
r�	pr�po�(�
o,r�
pr�po(�
(�
o,r�
pr�po(�
(�
o,r�
pr�po
(�
(�
r�
pr�po(�
o&o&o&(�
*0{V
E
"*2+8r�
p
+Kr�
p
+Cr�
p
+;rp
+3r�p
++rp
+#r�p
+j(0
(�
rp(
z*0�U-
,(�
*-!o&

�('
()
-(�
z(�
,r�	pr�"p(�
r�pr�po!(�
r�pr�po#(�
r�
pr�po%(�
(�
(�
*0bX
(	
o

&(	
o
38(	
o
{�3(	
o

{�3(�
+(
zrJ#p(
*0�f-+(

,(
,-(�
-$o�
{�3o
{�.(
z,*s�o�
o�o�o���+c�->(	
o
{�3+(	
o

{�3(	
o
o��+(	
o
(
-rUp(
(	
o
-�(	
o
&(	
o
,
(	
o
*(	
o
(	
o

&	(

8K(	
o
@ED��8�(	
o
{�@!(	
o

{�@(
:�o�,
(	
o
,(	
o
8�(	
o
(	
o

&(

8�(	
o
3V(	
o
{�35(	
o

{�3"-
(	
o
++(�o
+r�#p(
+r�#p(
(	
o

&
(
(	
o
.(	
o
:[���(
8�8�(	
o
{�@!(	
o

{�@(
:�o�,
(	
o
,(	
o
8i(	
o
(	
o

&(
8�(	
o
3V(	
o
{�35(	
o

{�3"-
(	
o
++(�o 
+r:$p(
+r:$p(
(	
o

&(
(	
o
.(	
o
:[���(
8�8�(	
o
{�@!(	
o

{�@(
:So�,
(	
o
,(	
o
8*(	
o
(	
o

&(
8�(	
o
3V(	
o
{�35(	
o

{�3"-
(	
o
++(�o!
+r�$p(
+r�$p(
(	
o

&(
(	
o
.(	
o
:[���(
8S8K(	
o
{�@(	
o

{�@(
:o�,
(	
o
,(	
o
8�(	
o
(	
o

&(
8�(	
o
3V(	
o
{�35(	
o

{�3"-
(	
o
++(�o3
+r$%p(
+r$%p(
(	
o

&(
(	
o
.(	
o
:[���(
++(
+(
(	
o

&	
(
(	
o
.(	
o
:����(
*0�g-+(

,(
,-(�
-$o�
{�3o
{�.(
z,*s,��
8�	�-=(	
o
{�3*(	
o

{�3(	
o
o.	�+a	�-=(	
o
{�3*(	
o

{�3(	
o
o0	�+(	
o
(
-r�%p(
(	
o
:M���(	
o
&(	
o
,
(	
o
*(	
o
(	
o

&(
+>(	
o
3r�p(
+r�p(
(	
o

&(
(	
o
.
(	
o
-�(
*0�Z-+(

,(
,-(�
-$o�
{�3o
{�.(
z,*s���
8�	�-=(	
o
{�3*(	
o

{�3(	
o
o�	�+a	�-=(	
o
{�3*(	
o

{�3(	
o
o�	�+(	
o
(
-r�p(
(	
o
:M���(	
o
&(	
o
,
(	
o
*(	
o
(	
o

&(
+>(	
o
3r�p(
+r�p(
(	
o

&(
(	
o
.
(	
o
-�(
*0B[-+(

,(
,-(�
-$o�
{�3o
{�.(
z,*s���
8&	�-@(	
o
{�3-(	
o

{�3(	
o
o�	�8�	�-F(	
o
{�33(	
o

{�3 (	
o
(�o�	�8�	�-@(	
o
{�3-(	
o

{�3(	
o
o�	�8Q	�-L(	
o
{�39(	
o

{�3&(	
o
("
oo	�8	�-L(	
o
{�39(	
o

{�3&(	
o
("
oo	�8�	�-I(	
o
{�36(	
o

{�3#(	
o
(#
oo	�+a	�-=(	
o
{�3*(	
o

{�3(	
o
o	�+(	
o
(
-r�p(
(	
o
:���(	
o
&(	
o
,
(	
o
*(	
o
(	
o

&(
+>(	
o
3r�p(
+r�p(
(	
o

&(
(	
o
.
(	
o
-�(
*0�\(?
 V}��5  V�<;� WW�\.X V}��._8� yE �5 q_��.w yE �.$8� �7�.D Y �3wr�
p(�
-\+hr�
p(�
-O+Yr�
p(�
-B+Jrp(�
-5+;r�p(�
-(+,rp(�
-+r�p(�
-+*******�,('
($
z0	]-+(

,(
,-(�
-$o�
{�3o
{�.(
z,*s��
8�	�-@(	
o
{�3-(	
o

{�3(	
o
o"	�8�	�-=(	
o
{�3*(	
o

{�3(	
o
o$	�+f	�-B(	
o
{�3/(	
o

{�3(	
o
(#
o&	�+(	
o
(
-rxp(
(	
o
:���(	
o
&(	
o
,
(	
o
*(	
o
(	
o

&(
+>(	
o
3r�p(
+r�p(
(	
o

&(
(	
o
.
(	
o
-�(
*0n(	
o,
r�po-
}�(	
o,
r�	po-
}�(	
o,
r�
po-
}�(	
o,
r�
po-
}�(	
o,
r�
po-
}�(	
o,
r!po-
}�(	
o,
r�"po-
}�(	
o,
rC
po-
}�(	
o,
r#po-
}�(	
o,
r
	po-
}�(	
o,
r_
po-
}�(	
o,
r�	po-
}�(	
o,
rq
po-
}�(	
o,
r*#po-
}�(	
o,
r>#po-
}�(	
o,
r�po-
}�(	
o,
r�"po-
}�(	
o,
r
po-
}�(	
o,
r
po-
}�(	
o,
r�
po-
}�(	
o,
r�	po-
}�(	
o,
r-
po-
}�(	
o,
r�po-
}�*s�*s�*Fr
	pr�"po�
*6t.o�*2t/o�*(�*04d{�-%s7

r�%pr�&po4
{�-}�{�*04d{�-%s7

r�%pr�&po4
{�-}�{�*04d{�-%s7

r�%ps�o0
{�-}�{�*Z�('
()
,**j�('
()
,s�**0Ch(R
,*�%,�of

+�o4

	(r
,*X�i2�*0:io.
[�$
+ Zo�
 (0
(5
�X�i2�*0=j�iZs6

+!�$r�&p(0
(7
oV
&X�i2�oZ
*"(8
*�(�
s9
}:
s;
}<
s=
}>
*2{:
o?
*2{<
o@
*6{:
oA
*�(B
{:
oC
{<
oD
{>
oE
*2{>
oF
*�{:
oG
{<
oD
{>
oE
*�{:
oH
{<
oI
{>
oJ
*6{:
oK
*6{:
oL
*:sM
%}N
*0*@{<
oO

.{<
oP
{>
oQ
*R(B
{:
oR
*:{:
oS
*2{:
o.
*V(T
(U
(V
*6{:
o0
*:{:
o1
*0k{:
o2

,
(T
(B
*(W
*0Nl3*t�
t�o
o
.*+oX
oX
(Y
-*Xo
2�*0Im-*sZ

t�o3
+o9
o[
o6
-��uO
	,	o5
�o\
*1.s��*:(t�*0{n-r�&psk
z-r'psk
zo]
�('
(.
o^
�P('
r'p�;%o]
���%o_
�%(`
�(a
ob
*0�n-r�&psk
z-r#'psk
zo]
(.
o^
�P('
r5'p�;%o]
�%oc
od
���%o_
�%(`
�(a
ob
*:("t�*0�o-r�&psk
z-rC'psk
z��%o]
r�p(e
�
sEoJo_

rU'pre'pof
+sog
�P('
{�-+�;%o]
�%{�od
���%	�%{�(3(`
�(a

r�'pr�'po6
-��,o5
�o^
	ob
*c��0Z-r�&psk
zo^
�P('
r�'p�;%o]
���%o_
�%��(h
�(a
ob
*0Z-r�&psk
zo^
�P('
r�'p�;%o]
���%o_
�%��(h
�(a
ob
*0�p-r�&psk
z-r�'psk
z-r�'psk
zo]
(.
o]
(.o^
�P('
r(p�;%o]
�%oc
od
�%oc
od
���%o_
�%(`
�%(`
�(a
ob
*0Q-r�&psk
zo^
�P('
r(p�;%o]
���%o_
�(a
oi
��*0Q-r�&psk
zo^
�P('
r(p�;%o]
���%o_
�(a
oi
��*0}q(&
oj

sY
r)(poV
&+@1r-(poV
&�o
oV
&r3(poV
&�o
ok
&X�i2�r7(poV
&oZ
*�(�
-rpsk
z()
,ripsk
z}�}�*{�*{�*0rsE
oI*v��%r�p(e
�(/*0rsE
oI(3*�Л('
Ц('
(.t�*2~�o=*0As,�i+
X�;+�od
�X2�od
�(4(l
*�,�i2�i1sm
z~��iY�on
*0M�;%Љ('
�%Ђ('
�%�S('
�%�T('
�%�U('
���*0bt(�
(+}�}�op

++oq
{�o+or
o,or
aa}�o6
-��
,o5
�* 7W
{�*^u<-*t<(:*0m@{��i{��i.*
+H{��o+{��o+(s
-!{��o,{��o,((
,*X
{��i2�*.s<��*0�u(�
st

�('
�;%�('
�(u
�"%��sv
ow
r;(psx

(y
	oz
rY(po{
}�s|
}�s}
}�*0�v{�o~
s7
{�o
-P{�o�
{�o
,
�?(�
{�(>{�o�
�{�o�
�
�{�o�
�	*05ekw0`wrg(p{�X��(�

{��8('
o�
(?(@(Ao�

{�X}�	*0.x�i��
8�rCpo+(�
o,o�

o+ o,o�
r�(po+(�
 �o,~�
o�
o�
~�
o�
~�
	o�
~�
o�
r�(po+(�
 ��;%o,�o�
o�
~�
o�
~�
o�
~�
	o�
~�
o�
o�
o�
	�X�i?��*0�yr�(p ��('
�;%�"('
�o�

o�
o�
o�

~�
o�
~�
o�
~�
o�
~�
o�
~�
	o�
~�
o�
~�
o�
	o�
8��o�
�_('
�;%�on
o�

~�
r�(po�
o�
~�
o�
~�
o�
~�
o�
~�
o�
~�
r�(p�;%�%�o�
o�
~�
	o�
~�
o�
~�
o�
	o�
X�i?"���~�
o�
~�
o�
*0�zr�(p ��('
~�
o�

o�
~�
o�

8�	�o�
�_('
�;%�on
~�
r�(po�
o�
~�
o�
~�
o�
~�
r�(p�;%�o�
o�
~�
o�
	X
	�i?k���~�
o�
*>(k
}�*{�*�(0
(��"%oM
�%{����(O
*0z(�
-r�(psk
z~�-
(���(
s�
}�s�
}�,(F,(G}�{�o.
}�(�(�*0M{
+"�o�
(R
-
o�
(HX�i2��i3�o�
(R
,	�}�*0N|
+C��iY3u�,t�}�+rp(0
(1
(�
(HX
�i2�*�{�o
,(�
�"%�(�z{�o
*0S}|�{�
(K((
,)({%-(�
�"%(j�(�z(�
(�*0�~s�

(Kr�(p(�-
r�(p(�,(�+"r)p(�-
r)p(�,(�s6%}�%}�o�
|�{�
3(�+�(�
(�*0V|�{�
(L|�{�32(�(K(�
(�(�(K
	(\*0c�(M
+<{�(�(M�G('
{�{�(q(�

|�{�.�r%)p(�-�*0c�(N
+<{�(�(N�G('
{�{�(q(�

|�{�.�r+)p(�-�*0��(O
8{�(�(O{�. {�.{�.{��+
	9�od
o�
:�od
o�
-uod
od
((
9od
od
o
,od
(�
8�od
od
o
,od
(�

8�{�{�(rzod
(o-
od
(o,Xod
od
((
,tod
({%,+\od
({%,
+D{�{�(rz	-�I('
+
�J('
{�{�(q{�YE
.BBBB
B9
#+@(�
+5(�
+*(�
+(�
+(�
+	(�
|�{�;��|�{�;���|�{�;���|�{�;����|�{�;����|�{�;����|�{�;����|�{�;o���*0�(P
8�{�(�(P{�
	;�	.
	.^8�od
�('
()
-mod
�('
()
-V�K('
{�{�(q(�
+4�L('
{�{�(q(�
+	(�
|�{�;0���|�{�;���|�{�;
���*0��(Q
+q{�(�(Q�H('
{�{�(q{�
	0
	.&	."+(	.	.+(�

+(�

+(�

|�{�.�|�{�;n���|�{�;]���r3)p(�:M���*0��|�{�.|�{�.r;)p(�9�{�
(�{�3T|�{�.|�{�38|�rC)p|�{�(�
}�|�{�}�(R*(Q{�3'�M('
{�{�(p(�
+%�N('
{�{�(p(�
*(R*0B�(S
|�{�3(�(a
+�|�{�3
(f
+�*0k�|�{�
YE	%%%+#(Y*(T*(U*(V*(X*(�
�"(�z0��(�|�{�ol

|�{�|�{�o.
Yo�
o�

	2	o�
	X+�'35o.
.(�
�"(�z(�ol
�(W*(�(W*0��(�|�{�
ol
-.z(�
-(�
�"%�(�z(� ���j5i��(W*n5m�b(W*!�������5��(W*�a(W*(�
-(�
�"%�(�z(� �j2 ���j0i��(W*��(W*0��(�|�{�
o.
Yol
F.f3!o.
Yo�
(�
,	�c+(�
,�d-(�
�"%�(�z(�(W*0�(h

{�o�
*0/�	(�
(�(�(K

(�
(�(�*0�(�~�|�{�o�
,Ou;,
t;(_*~�3(Z*~�3([*~�3(]*(�t�*{�|�{�o�
-"{�,G{�|�{�o�
,-u�-	(h
+u�,(^*(�*{�,{�(a*(�
�"%|�{��(�z�{�-(�
�"(�z(�{�*0C�|�{�
(�(d�i.(�
�"(�z���(\*0�od
�('
((
,(�
�"(�zod
od
((
9�~�3+od
({
~�3+od
({,-+,-+t~�3rG)p+od
o
~�3rG)p+od
o

,,(�
�"%�%	�(�z(�
�"%�%	�(�z(�
*0+�(�	(�
(�(�s�

s�
|�{�(KrQ)p(�,(�(�(�+/u�-(�
�"(�zo�
o
o�
od
s*o�
|�{�
3(�8c���
(�
(�(�(2o�
��
+*	o�
o+o
o�
(�
�X	�i2�(�
	(�
*0L�|�{�
(�(dod
rW)p(t.(�
�"(�z(�
*0�|�{�
(�|�{�3Mo�
,(h,(�
�"%(j�(�z��('
�;%�on
(�|�{�	3w(do�
(y
	,	.0+;�i3�(`*(�
�"%(j�(�zt�(�
*(�
�"%(j�(�z(�
(�(�(a*0�Uod

()
,*o�
,[o�
,S(h-(h,(i(i()
,(�
*(k-(o,(k-(o,(�
*o
-o
-o�
-o�
,(�
*(�
�"%(j�%(j�(�z0��,od
|�{�
(�(�|�{�	@.,E�('
((
,3�3('
(b((
,o�
�(c*(d�(t,
.%8�(�
�"%�%(j�(�z	t�o�
(g-"(�
�"%o�
(j�(�zo�
�j('
()
,&(�
�"%�%o�
(j�(�z(�
*(�
�"%�%(j�(�z�(s(�
, (�
�"%�%(j�(�zu�-t�(�
*t�(�
*0s�+To�
,o�
()
,*o�
,,o�

+�(b
	((
,	*X�i2�o�
((
,�"('
((
-�*0��{�
r�p(e
}�(d}��O('
(t.(�
�"%�(�z	o
re)p(�
-	o
rm)p(�
,�;%�%�od
�+�;%��-
��%�+ ��%�%���%�(3��!('
	o
(a
*0F�	(�
(�(�|�{�
3��+(e

(�
(�(�*00�s�

(Ko�
|�{�
3(�+�o�
*0�|�{�
(�
(�(�(e(�
(�(�od
o�
,Zod
o�
3�i.(�
�"(�z��('
({-(�
�"(�z(�
*od
(u,.#+/(�
�"%od
(j�(�z	t�(�
*(�
�"%od
(j�(�z0%�~�
+�()
,*X�i2�*�o�
,o�
��('
()
**N(h-*o�
�*0%�(i
o
((
,ru)p(�
**(n�**(n�**(n�*0[�(io�
,*(�

YE+****2(io�
*0M���%P�
ry)p(t.((�
�"%�%�od
(j�(�z�Q*0@���%P�%P�
ry)p(t.PP(rz�Q�Q*�(�
�"%�%od
(j�%od
(j�(�*0T�-+`
(vo>
+"o=
~�
o�

	�,	��o6
-��
,o5
�**.E
0h�-+`
(vo>
+2o=
~�
o�

	(+(y,�o6
-��
,o5
�Q**>U
0��(vo>

+vo=
o�
�,d(+~�%-&~���s�
%��(+~�%-&~���s�
%��(+
	(y,�o6
-��
,o5
�Q**��
0�o�
,s�

(x*(w*>�s�%}�*01�o�
-'o�
o�

+�(xX�i2�*0��s�
}�}�~�%-&~���s�
%��(+��s�
(+(+}�{��i1"{���s�
(+(+}�{��i36{��+{�{���X{��i2�{�Q+Q{��i*0\�{��i�i.*�i��
+1{��o�
,*�o�
({
	-*	�X�i2�}�*0��od
()
,*u�9�t�
~�3o�
,(h9�(�
*{�o�
9�(i
od
(�
	YE
0000(+.(|
+$��('
()
,(|
+(}
	,	(�
*od
(~,o�
`,(�
***0�(i(�

YE-AVhz����8�(�
9��m*(�
9��$*(�
9�	�n*(�
9��o*(�
,t��*(�
,b�b*(�
,P��*(�
,>�a*	(�
,,	�c*
(�
,
�d*(�
,��**0-�o�
,#~�
o�

�,�t�o�
**0p�()
,*o�
-o
*(i
(i((
,()
,*o�
-(�
+o�
-(�
+
YE	@L|�����8�	YE����8�*	Y	B�*	YE	iii+g*	Y5_*		YE88+6*	
Y5-*	.	
Y5*	Y5*	
Y5
*()
,**0F�
+8�od
{��o�
{��o�
(�/*1
X�i2�*0g�()
,*()
,*()
,*(~
(~,-*,-*(l,
(m,*(l,
(m,**"(�
*"(�
*�od
�('
()
,r})p(���(h
(�
*(�
*�od
�('
()
,r})p(���(h
(�
*(�
*�od
�('
()
,r})p(���(h
(�
*(�
*�od
�('
()
,r})p(���(h
(�
*(�
*0Dod
�('
()
,%od
�('
()
,r�)p(�*(�
*"(�
*0�od
o�
,�"('
(�
od
o�
,�"('
(�
�('
r�)p�;%�"('
�%�"('
�(�
��%�%�(�
*�od
�;%od
�%od
�o�
*z(���%�%�(�
*�}�{�{�2+{�{�ol
}�*0E{�{�/{�X}�{�{�2+{�{�ol
}�*0Y�+(�{�(
-�{�{�[B�!YE"�99GT�y�������9999999999�9�5[�[;�8,];�|;�8(�{�=3(�
81
8*(�
8(�{�&3(�
8�
8�(�	
8�(�

8�(�
8�(�
8�(�
8�(�
8�(�
8�(�
8�(�
8z(�{�=3(�
8\{�>3(�
8D
8<(�{�=3(�
8
8(�{�=3(�
8�
8�(�
8�(�
8�(�
8�(�{�|3(�
8�
8�{�
(�+(�{�{�/	{�	3�{�{�3{�(�
�"(�z(�{�	.�
88{�(�-{�@.
{�_3$(�{�(�-�{�_.�
8�{�(m
9�
(�{�(m
-�{�.3!
(�(�(�{�(m
-�{�E.
{�e3;
(�{�+.
{�-3(�(�(�{�(m
-�{�F.
{�f3@(�+8{�{�3
+&{�(�
�"%{���(�z|�}�|�{�{�Yo�
}�|�}�*V(
_b _�*V(
_b �_�*�|�{�3|�{�(r
**06(�
(�|�{�
o.
1ol
@3oe

*�{�(m
-{�(�
�"(�z*v|�{�.�"(�z*�|�{�.(�
�"(�z*R|�{�(�*N(+
(O
sB*0��(
s�

r�)p~�o
r�)p~�o
rG)p~�o
~�~�o
~�~�o
~�~�o
~�+�
	o
	o
X�i2�*0s�;%�"('
�%�('
�%�('
�%�('
�%�m('
�%�$('
�%�n('
�%�o('
�%�('
�%	�b('
�%
�('
�%�a('
�%�c('
�%
�d('
�%��('
�%�*('
�%��('
�%��('
�%�u('
�%�q('
�%�r('
�����(h
����(h
��(h
��r�)p��r�)p��r�)p��*~�*�|�(
-(�s
}�|�(
*0�r�)p(
t�
o
*.s���*�o4
o.
1+o
(R
,+(r
-(�
s�
z*r~�-(
o	
��~�*09�~o
t�
(

,o
sx
(

~o4
*0E�~�o
tZ
(

,)~�,(�o

+(

~�o4
**(��*0%�~o
-(�
~o
&*08�o

+�t�u�
	,	�X�i2��&�**00"0W�s('
oD
����('
oD
����s7
(8
��s7
(8
�s
�*r(
-r�)psk
z}*{*(�*:(�}*�~(
,�D('
r	*p(�
�~*(�*"(�*V{-~c
*{*"}*0f�{-W(�o

-(�
sS
z(h}{-)(0
(�
�"%(�o
�(O
sS
z{*0/�(�(�}(�{o:(�
o.
9�{o&
o
(
,6(0
(�
�"%�%(��%(�o
�(O
sS
zo
rW)po�
o

o�
�j('
o
,	�i3��('
	�o�
o
-6(0
(�
�"%�%(��%(�o
�(O
sS
zo
(�(
{o
*0R(�(R
-{*(�o7
{o
(�
-{o
r*p(�
ot
**"}*0H(�(R
,r*p*r9*p(�(�(R
-rp(�(�
+~c
(/
*0��
o9,$oo�o4

o.
1o 

,Go!
+%("

	o�,	o�o�	(�
(#
-����o5
�(�*82j0��(2
,DP- �s6
QrY*po
Pr�*poV
&P($
oV
&Pr+poV
&(R
�,8P- �s6
QPr'+poV
&P($
oV
&Pr�+poV
&`,,o
o%
,
Pr�+poV
&*B{%-&~c
*"}*:(�
}	*2{	o&
*6{	o'
*:{	o(
*>{	o)
*>{	o*
*F{	o+
*F{	o,
*:(�
}
*2{
o-
*0$�{
uS
,o	*{
o
*j{-s}{*0�o$-((.(.(-o<+++
((R
:�(
,	(
o59�(9�(�9�(.
+NoZ
(+#�		o4
(r
,+X�i2�-o/
(0
o,
,�,		o.
Yo�
r,p(/

(	o	*s0
(�o1

8�
os
o-3!o,o�r,pot
:�o�(R
�oM(R
-o��+
o�.�+-uo�o�o�&o(}
,<~�(}
,.(�,%(.
(�"%�%�(O
sS
z
-o�,o2
(}
,s3
s4
o5

`9�,Eo(R
,!o�o�oo�+)oo�+oM(�(6
,(7
-(o(8
o9
s:
o;

o6
:*����
,
o5
�(u*A"��0C�(�o1

+os
o�~�(

,�o6
-��
,o5
�**)5
0:�(�o1

+os
o,�o6
-��
,o5
�** ,
(*r(
-r-,psk
z}*{*09�,,
uI,+o<
o=

o<
-
-�+o=

*0�o.
0*ol
_3ol
_.*rM,pot
-are,p(r
-Sr�,p(r
-Er�,p(r
-7r�,p(r
-)r�,p(r
-r-p(r
-
r%-p(r
**{
*"}
*{*"}*{*"}*~*�*J(�
(�(�*:(�
(�*{*0��9�o&

�;%�('
�rC-po�
(+(�rk-po�
(+(�r�-po�
(+(�(�,(�,(�,}*}*0k(�,(�o�
�&�**"0�(�,(�o�
�&�**"0(�,(�o�
�&�**"0m�(>
-Mr�-p(?

((
,(r�-po@
(
,oA
(+(��&�(B
(�-*(�o�*?K"vЛ('
(C
u���*:(�
}*2{oD
*2{oE
*~*�|(
-(�s
}|(
*0�r.p(F
t�
oG
*.s��*��('
()
,~c
*(H
*(I
*(J
*V(J
}}*0+�{,{*o

-(�
sS
zsk*0\�{-Mo

-(�
sS
z(h}{-$(0
(�
�"%o
�(O
sS
z{*V{,{*~c
*"}*(K
*0!�oL

+u�,*oL

-�*:(M
(�*0��(�(R
,$(0
(�
�"%o
�(O
sS
z(�o=

--(0
(�
�"%o
�%(��(O
sS
z(�(�.(�
sS
z(�o+*�(N
(�o4(O
-(�o?*"o�*o�*:(
}*{*:(�
}*2{oP
*2{oQ
*6{oR
*6{oS
*:(�
}=*V{H-~c
*{H*0;�{=oAooT

oU
~I(V
-oW
~J(V
**2{=oX
*0w�{=o o
�
-^{=o o,L{=o ooY
+o9
toZ
3
�o6
-��uO
	,	o5
�*?%d0c@-~c
-~c
o.

(0
(1
o�
|o[
o�
|o[
o�
|o[
o�
|o[
*:{>(R*6{A(L*:{@(R*0��9�o\
>�sY

8�o]

	oK
9�-	,on
&,	'on
&	o
oV
&,	'on
&	o^
3,r3.poV
&+H,on
&+=,$r;.poV
&	oP
oV
&'on
&+,on
&	oP
oV
&Xo\
?H���oZ
*~c
*0L-rA.psk
*uI-4u -,u!-$(0
(��"%o
�(O
s�
**0G�u
,o_
*ux, �*uy, �*o�
,o�
(N* �*0(�o`

,+oa

oa
-�o
*~c
*6{B(L*:{?(R*0��9�ob
>�sY

+joc

	oK
,V-	,on
&,	o�-f+ton
&	o
oV
&3,on
&	o^
.
	oP
oV
&Xob
2�oZ
*~c
*0��od
rQ.poe

,K+A��%,�of

+	�o4
rq.p(�
,*X	�i2�X�i2�of
r�.pog
(R
-o4
r�)p(�
**0��og

9�|oh
.o�
Xoe
}H+
~c
}H{=o
(s
,9,oh
. }D�%,�of
}E+}D}E{>,D{>ob
,7{>oi

+(j
o�(k
-����o5
�}G*��0��{=o1,j{={�-]{=oAooT

ol
~;(V
,oU
~<(V
,om
+,
(F�{=oR{=o=,{=oA�Vsn
o$*0��{=oAo!oo

{=s�ov{=o(R
,{=ooop
-oM
(N
{=o,({=ooop
,(G-
+
	,H{=oooq
r�.p��or
r/por
r}/p��or
*v{=oA�bss
o2*0�{M9�~c

{K(R
-	{K
+!{L,{LoK
,{LoP

o.
1B{=r�/p�
('
oD
oqr0pr0p(Hr50p~c
(H*0�{=oK{?o5{=oK{?o:{=oK{?o;{=oK{?o6{=oK{?o7{=oK{?o9*06�{>9*{>ob
st
}?{>ob
st
}@{=o
ou

8�{>oc
o�-@{D,o
{D(r
-${E,{Eo
(+��++
oL
+Lu�,.{?ow
-{@ow
,
{@ox
+oL
-
+3�	,o�{?ox
+o�X{>ob
?���*0t(M
,z{B,2{Boy
,$(0
(��"%o
�(O
s�
z{A-sz
}A{Aoy
-{Ao{
*0�-rA.psk
z{=o=-(�sS
z{C-
s�}C+7{Co�,)(0
(��"%o
�(O
rA.ps|
z{Cs�o}
*b(E,{M-}M*0t(M
,z{A,2{Aoy
,$(0
(��"%o
�(O
s�
z{B-sz
}B{Boy
-{Bo{
*�{>-s~
}>{>ox
{G,o�*z{=oA{=o4(d*0��{?,C{?oi
+(j
oK
,{FoR
(k
-����o5
�{=oA
o,}
o ~
o
~
s�
o�
o�
+o9
t�oR
o6
-��'uO,o5
�,
o 	o&�*()=�$�df�0��(Z{=oAo 
rA0po�
o�
o�
rW0p~c
r[0p(H{=oAo�ass
o}Fs�o{=oAo
	,Q	o�
+0o�
(�
(�,r_0p(�
(�
(Ho6
-��,o5
�rw0p~c
(J(Hr�0p~c
(P(Hr�0p~c
(I(Hr�0p~c
(K(Hr1p~c
(Q(Hr91p~c
{=o(0
(1
(Ho�,rc1p~c
o�(H{=oAo,-{=oAo"(R
-ry1p~c
(H(c(Y(X*�=�0c�{C,Z{Co�

+3(�
o�-r�1p+r�1po�oP
o�(H(�
-����o5
�*@T0�@r�1po�
{=o
o�
rr2po�
{=oAooo�
r|2po�
{>(er�2po�
(Jo�
r�2po�
(Po�
r�2po�
{=o
(0
(1
o�
r�2po�
{=o
(Oo�
r�2po�
r�2po�
*0��9�ob
>�
8�oc
oK
,{-,o[

r�2po�
o�-f+to[
o
o�
r�2po�
o^
3
r�2po�
+"r�2po�
oP
o�
r�2po�
Xob
?e���*�{=oAo/{=o=,}L}K(]*f{=oAo0(h*�{=o=,o4
}K}L(]*0M{>,{>ow
-)(0
(��"%o
�(O
r�2ps|
z{>o�
&*�s�
�;s�
�<r�2ps�
�Ir�2ps�
�J*:(�
}N*2{No�
*2{N{�
*F{No�
s�*2{No�
*�{Nou
,{Nou
s�**2{No�
*2{No�
*2{No�
*2{No�
*F{No�
s�
*F{No�
s*F{No�
s�
*2{No�
*6{No�
*6{No�
*6{No�
*6{No�
*6{No�
*6{No�
*6{No�
*2{No�
*6{No�
*6{No�
*6{No�
*6{No�
*6{No�
*6{No�
*6{No�
*6{NoS
*6{No�
*6{No�
*:(�}O*0f�{O-W(�o

-(�
sS
z(h}O{O-)(0
(�
�"%(�o
�(O
sS
z{O*0�(�(�
(�o<*
*�(�(R
,r3p*r3p(�(�
*0��
o:,8oEo�o4

o.
1o

o�,{Ps�
,qo!

+O("
o�,=o�o�(�
o�,-{Ps�
+
{P(�(#
-����o5
�(�*N\�0\�
,o�
�+(3,DP- �s6
Qr.3po

Prj3poV
&P($
oV
&Pr+poV
&(R
-_-r.3po

,(r
-(�sS
zP- �s6
QPr�3poV
&P($
oV
&Pr�+poV
&9�P- �s6
QoO
,Pr&4poV
&*,fo�
s�

o
o�
+o9
t(�o6
-��uO,o5
�P	(�*(=0?h
+1�(R
-!o4

	o.
1	o�
-	o�
&X�i2�*0��.oh

3
+Jo�
Xoe
P-s�
Qs�

P	o�
+Po�

	-s�

P	o�
(
o
�,#-(+
(�
�"%�(O
s�
z,	,	o

+o�
*0��s�

rL4poV
&o�
oV
&r�4poV
&,ko�
+No�
r�4poV
&(�
oV
&r�4poV
&(�
o�
oV
&r:5poV
&o6
-��
,o5
�*7Z�
V{P,{P��**�{P-�}P{Po�
t�*b,
o�
t�}P*B{Q%-&~c
*"}Q*r(�
}R}S}T*{S*{T*{R*r(�
}U}W}V*{U*{W*{V*�(�
}X}[}Y}Z}\*{Y*{Z*{X*{[*{\*r(�
}]}^}_*{]*{_*{^*�(�
}`}a}d}b}f*�(�
}`}a}d}b}c}e*{e*{a*{b*{c*{`*{d*{f*"(B
*.��('
*0((�

-(�
rB5p(�
(�
o�

*>(A
}l*"(A
*.��('
*0n�{m-_}m(�
t
(R
-D(�
(�
o�
{l((
,{l(�
to�
�&�(�
(�
*B[�:(�
}o*�{n-"}n(�
{o(�
o�
(�
(�
*:(�
}q*�{p-"}p(�
{q(�
o�
(�
(�
*0��
o;,+oGo�o�o4

o.
1o

,Uo!

+3("
o�,!o�o�,o�(�
(#
-����o5
�(�*A@�02�(4
,DP- �s6
QrV5po
Pr�5poV
&P($
oV
&Pr+poV
&(R
�,`-rV5po
,(r
-(�sS
zP- �s6
QPr�5poV
&P($
oV
&Pr�+poV
&,qoO
,P- �s6
QPr<6poV
&*(�

	,B	�,>P- �s6
QPrX6poV
&Ps�
	(�
oV
&Pr�4poV
&*{r*"}r*B{s%-&~c
*"}s*B(�(�*�o�(R
,(�r*p(�(/
*o�*(�*�{t(R
,(�(�*{t*"}t*0@.o�

3*Xoe
*�{t(R
-rp{t(�(�*�}y((R
,(�
rips|
z}{*�(�(R
,(�
r�6ps|
z}u*o�*{u*~{v-(�
s�
}v{v*B{w%-&~c
*"}w*~{x-(�
s�
}x{x*{y*"}y*j{z-s�
}z{z*{{*�(R
,(�
r�ps|
z}{*�(R
,(�
r�6ps|
zs�(�*�(R
,(�
r�6ps|
zs(�*�(R
,(�
rps|
z(R
,(�
r�6ps|
z(�o�
*:s(�*�(R
,(�
rps|
z(�o�
*�(R
,(�
r�6ps|
zs(�*0��{v9�{vo�
>�{on
&
{vo�
+So�
,
+	,on
&"on
&(�
($
oV
&"on
&:on
&(�
oV
&o6
-��
,o5
�r7(poV
&*rG)poV
&*3_�
0��
{x9�{xo�
>�{xo�
+uo�
(�
o�-`,r)(poV
&
+r�6poV
&"on
&(�
($
oV
&"on
&:on
&(�
(�o�o6
-��
,o5
�,
rG)poV
&*r7(poV
&**��
0��
{x9�{xo�
>�{xo�
+vo�
(�
o�3`,r)(poV
&
+r�6poV
&"on
&(�
($
oV
&"on
&:on
&(�
(�o�o6
-��
,o5
�,
rG)poV
&*r7(poV
&**��
0�
o�(R
-r�6po�(�sY

r�6poV
&(�oV
&r-(poV
&(�r-(poV
&(�r-(poV
&(�(�,6r-(poV
&r7poV
&(�($
oV
&r7poV
&r7poV
&oZ
*�(�,$oQ,r7po�r.7p(/
o�*(�
*V(�
}|}}*0+�{},{}*o

-(�
sS
zsk*0\�{|-Mo

-(�
sS
z(h}|{|-$(0
(�
�"%o
�(O
sS
z{|*R(M
(�o+*�(�
(�o4(O
-(�o@*o�*o�*(�*(�*�(0
(��"%r�	p�%�p('
o
�(O
sS
z:(�
}�*j{~-s�
}~{~*j{�-s�
}�{�*Z(�(�}�*0>�{�,5{�o�
o�

+o�
(�o6
-��
,o5
�*3
0g�o6
,\t�ot

+6	os
,*-s�ooo	o�
	o6
-��
	,	o5
�*B\
0>�{~,5{~o�
o�

+o�
(o6
-��
,o5
�*3
0g�o
,\t�ot

+6	os
,*-s�ooo	o�
	o6
-��
	,	o5
�*B\
0%�oL

+{�o
3*oL

-�*"}*0����-rJ7psk
z-rj7psk
z(+{-(�sS
z{�,(�sS
z(���o�
-sz

(���o�
o{
*0d@��-r�7psk
z{-(�sS
z{�,(�sS
z(���o�
&X
(���o�
*0��-rJ7psk
zu�
-2(0
(�
�"%��('
o
�(O
rJ7ps|
z(�o�
-)(0
(��"%o
�(O
rJ7ps|
zo�
++(�

	oK
,	(,	o((�
-����o5
�*�8�0��-r�7psk
zu�
-2(0
(�
�"%��('
o
�(O
r�7ps|
z(�o�
-)(0
(��"%o
�(O
r�7ps|
z+o5
	(X2�*0��9�
or
+Eoq
,;-sY

r�7po�
&r�7poV
&o	o�
&{�o
o6
-��
,o5
�,:r�7po�
&oZ

{�of{��s('
	o�*Q`
0����o&

(��-,(0
(��"%�%Ё('
�(O
sS
zo&

+	�o
,*X	�i2�(0
(��"%��o
�%o
�%�%�(O
sS
z���s�
��s�
��s�
��s�
��st��
*0[(!}�}�}�}�}�Z}�}�}�(
s�
}�}�(J
*0�(!}�}�}�}�}�Z}�}�}�(
s�
}�}�(J
}�}�}�}�}�%-&(!}�s
}�*{�*{�*"}�*V{�,{�*(�*V{�-~c
*{�*"}�*2(DoD*{�*^/r�ps�
z}�*j{�-s�}�{�*j{�-s�}�{�*"}�*.~�
t}*B{�%-&~c
*"}�*j{�-s�}�{�*F{�,{�**V{�,{�*(i*0��~�(

9�~�:�~�9�(�
,
(�
(+
+;(
o	
o�
( +~�%-&~��s�
%��(!+
oa
+5ob

	~�(}
,	(�,	o������o6
-��
,o5
���~�%-&~�*zA�
n(

,r�psk
z��*V{�,{�*(�*2(#o*~o�
r8po�
u%-&~c
*Jo�
r8po�
*{�*n{�,(�sS
z}�*{�*n{�,(�sS
z}�*{�*n{�,(�sS
z}�*{�*�21r�ps�
z{�,(�sS
z}�*{�*"}�*{�*n{�,(�sS
z}�*{�*n{�,(�sS
z}�*{�*"}�*{�*"}�**{��**{��**{��*�($,*(I,	(I3(o
*(I�*{�*{�*�|�(
-&o�
,o�
o
(�+s
}�|�(
*0L|�(
-3o�
,o�
o
,o�
o
o�
+s
}�|�(
*0+�{�,{�*o

-(�
sS
zsk*{�*"}�*n{�-sC}�{�*j{�-s�}�{�*j{�-s�
}�{�*j{�-s�}�{�*n{�-s�}�{�*{�*n21r�ps�
z}�*n{�-s }�{�*j{�-s}�{�*V{�,{�*~c
*"}�*j{�-s�}�{�*0��~�:�s�

r8po�
&rX8po�
&r�8po�
&r�8po�
&r9po�
&r>9po�
&r�9po�
&r�9po�
&r�9po�
&r":po�
&r^:po�
&r�:po�
&r�:po�
&r;po�
&��~�*F(1-*{�*�(1-(�sS
z{�,(�sS
z}�}�*0@{�-1(Aood
r^;pog
r~;p(}�}�{�*>}�}�*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
**(`*Z(~(�(�*0L�(~o�

+o9
tog
(�o6
-��uO,o5
�(�*
&3�(Ao�s('
r�;pr�;p(�($
ry<p(/
o*0��
o�
9uo�
(R
,o�
o�85o�
uv,g(R
- o�(�
,o�(

-	(R
-7o�o	(�
,#--o*o
&8�uH9�	o�o1

+s
os
(R
- o�(�
,o�(

-	(R
-:o�o	(�
,&--o�Zo
&	�
o6
-��
,
o5
�	-Xo�
?����,o�

oo
**��W0��(-
.8(g}�-){�(R
-r�<ps�(c}�(Q,#.r�<ps�(-�(c&-0r#=ps�
	o{�	o�o�
&	(c&*0�{�,G{�o�o
,5{�(o{�o	{�o{�o�
{�9�{�o1

+pos
o,?o�r,pot
-o�rE=pot
,o{�o�o�
&(oo	oo�
o6
-��
,o5
�,+o
+o

	o�o6
-��
,o5
�*f|�
�
�{�X}�rk=p|�(0
(1
(�
*0S

o�
{�(�o�
{�(�o�
{�(�,oT
1oZ
**�-r�=psk
zo�
�s('
o
us*Vr�=p(F
t�s�*F(Ko!s
*F(Ko"s
*F(Ko#s
*F(Ko$s	
*F(Ko%s

*F(Ko's
*F(Ko&s
*�(5-(0
+(.
(U(t*0��(7,o
s
{�o*{�-~c
*sY
{�o

+V	o9
�&-&on
&+(
t(

oV
&=on
&(
t(

oV
&	o6
-��	uO,o5
�oZ
*Cb�0�(R
,(�
s
}�s

8�(7,{o
sot?}�s

{�o

++	o9
�&(
t(
to
	o6
-��~	uO,o5
�(

o
(�
s
}�o�
+#o9
t{�og
o0
o6
-��uO,o5
�s�(x*[7��0�09(=,(DoT+ (+,(-.og

(s*�o�-"3o,(Po�o�
****0"�(�
~�o
t

,o
*0�(
(O
:o
(}
,P~�(}
,C(�~�(�(
,,(.
(��"%�%~�(��(O
sS
z(Ao
(h,(�sS
zo�"('
or
o�s('
or
�zsn
o&�ysn
o,o,o(S}�(DoU(H�sn
o**0c�(�
~�o
t
,o
(Fo!
+("
o�
,o
(#
-����o5
�*-'T0
�}�(=-C(Q,((-.(Aos
o&(�(�(�*(�(+,;(-.2{�,{�o
-}�{�,(r(�*0{(Ao,(=,(Q-(�sS
z}�(+,C(-.:(�(Ao,&(Aor�,po
o
(�
}�*n(M
(=,(DoW*0"�(�
~�o
t
,o
*0"�(�
~�o
t
,o
*0F(+-(�sS
z(=-(�sS
z}�{�-(�
s
}�*"(s*&(+*6(Do[*6(�*2(,*.(�**(-*&(/*07�,2(h
(ol,,oLs�%o�o
**�,o
(�,*�s('
(�*r(�,*�s('
(�**(�*>(Do\*~(Q,(-.
(Ko0*2(1*:(Ho"+*0��(39�(-;�(+
(Z
9�o 
(R
-~(<,&(-3r�=p�s('
r�>p(4�s('
r�>po 
(,o!
(R
-'o!
s�o�o(Lo
*&(2**(3*6(Ho#+*6(Ho*6(Ho*6(Do^*0"�o
(R
,uv,o�
*0:�(o�
9&(
s�
o"

8�(#
(�(o�,fo
(o�,Ko

+)o
o�
&{�o�
,oo6
-��,o5
�($
:m������o5
�o%
-*s&
o"
	+7	(#


(�
o,

o�
+o�
-
o�
	($
-��	��o5
�**(n6�$���D(0��s&

{�(e(Ho�(do"
+<(#

	uv,so}+	uH,
s�o|($
-����o5
�(-(B(=-
(Ao+|�(�(�(�*-Iv0<�(<,(=+
{�(R
�(B(-
o"
8�(#
(Uo-	o,o�s('
o�+4r�>p('
r�>p(/
o�s('
o�(��`,Wo,M	.I-o,(b
,2{�3((Ao�s('
r8?p{�o($
:������o5
�*7�-0
��(',()-*uv
9�o�o(R
-}(Uo�(R
,*{�,o�s('
o(.*o�s('
o(0
r\?p�"%o�%�(O
o�*0��{�,1{�o(

+o)
o�o6
-��
,o5
�{�,6{�o!
+("

	o�(#
-����o5
�(/,8o�
(A(<(�(R
-�s('
o�*/
Mi0.�o
o*
-s+
o,
��o-
*0��o�

:�3:o�
uv
	9�,!	o�(R
-	o�	o�(�*@�o�
uvo�
uv,|,xo�o�(s
-o�o�(s
,N,Ho�(R
-o�o�(�o�(R
-o�o�(�*s.
s/
o"
8(#
uH9�	o�o1

8�
os
o�(R
-o�o�s0
+
o�s0
o1
,(�sS
z,$o2
(}
,o2
o3
(�3(o,P-o�r�?pot
,Q-	-(u,o	o4

o6
:(����
,
o5
�($
:������o5
�o"

8
(#
uH,
o�
8�uv9�o�(R
-o�o�s0
+
o�s0
3!o,o�r,pot
:�o1
:�o
,
o4
3(o,P-o�r�?pot
,Q-(u,o,$o2
(}
,o2
o3
(�o�

($
:����
��o5
�*AL3�(,B0r6(�*2(4*0b�(=:O(-;Co-(Q,(Do`(+9(O
:(A9#r=@po5
o
o5
oP
o5
/o6
o7
s�
s�

rK@po�
(<,(-3r�@po�
rPApo�
oP
o�
o�
r-(po�
o
o�
o�
r7po�
{�,4{�o
,'r�Apo�
(r($
o�
r�2po�
r�Apo�
r�2po�
((R
--r.Bp(r7p(/
�s('
rjBp(�(AooT
o8
r�Bpo>
9�(Ao"(R
,(A(�o#o%o.
,4o%o%?oh
3r�Bp+r�Bp(Ao"(/
+(Ao"(r
r�Bpo5
	o5
r�Bpo9
-o6
o7
(N
*6(Dof*�o
,o
o�
,o
o�
*6(Dog*0H-{�o:
,6{�o;
*{�o:
,{�o4
*{�o0
*2o�
s<
*(O
*n(Fo=
-(Fo>
*6(Do_*6(Doi*&ot*o�*"o*&(�*&(�*&(�*6(�*&(�*.(�*"(�*6(Doh*(@*(-
*:(J
}�*j{�-s�}�{�*j{�-s�}�{�**{��**{��**{��*Z(�
~�o
t*j{�-s�}�{�*j{�-s�}�{�*0a�{�-Ro

-(�
sS
zo
(h}�{�-$(0
(�
�"%o
�(O
sS
z{�*j{�-s}�{�*j{�-s�}�{�*J(�
~�o�
*J(�
~�o�
*0��{�,B{�o�o
,0{�o{�o	{�o{�o�
{�,E{�o1

+#os
oo	oo�
o6
-��
,o5
�*^/�
r(
(O
-(�o=*0:�{�,1{�o(

+o)
o�o6
-��
,o5
�*/
.s�
��*V(�(�(�*:(�(*�(�(�(((	*{�*"}�*V{�,{�*~c
*>}�}�*2(�o*�((R
-(*(�o*2(�o*�(-0(�(R
,((R
,(�o(R
-**(*{�*"}�*V{�,{�*~c
*>}�}�*n{�-s}�{�*0.�o5-(0
+(�
(0
o,
-(�**�r,po�
,!o.
Yo�
o 
r,p(/
*0?kPo(

,PP(�QPPo(
,	P(�Q*0��(,	(�-+(�(R
-(�(�(.
(l*(0
*(.

+:oZ
(
+	�o4
(r
,*	X
	�i2�o/

(0
o,
,�*n(�(R
-(�(�**0-�(�
(

,o*~�(

-*o*�r,po�
-(.
(��"%�(O
sS
z(*0N�(�(R
-(�(�(�,(R
-+(
+
(�*~~�(}
,(�-~�*Rrop(�(/
*0��($+
~�o
t-|o
sx
o@

o
oZ
(A
(0
o,
-	(�rop�%	(

�%�%(

�%(

�(g
~�o4
*0S�(�(R
�
(�(R
�-((R
,(sS
z,-(�sS
z(�*0k,o'+
(�*0��(�(R
-Eo-<(�(�,.(.
(�"%(��%(��(O
sS
z((R
-((�*(�o(R
-d,C(�
(R
-(�(�(�(�
	(R
-	*(�o(�o(�*o(�*0��(�
(R
�o@,
-�++
--
(�o+((�o+-
(�o+(�o
,K	(R
,C-
(�o+(�o(R
,!(�,-	ow+ox
	(R
-(	(�o	**0��(�
(�(�(�,(�(R
-*o5-(0
+(�
(�-
oM(R
,
	(t*	oM(�(,oo�*o	*03(�(�
(,
oo�*(o	*0<�(�-o$,*(�
YE	+o<****N(�o(

*F(�~�(

*F(�~�(

*0D�, (�(-
(�-
+
+
(�-(�,(�*�(�(R
-(�*((R
-(*(&
o
*Bs7
(8
��*:}�(�
*{�*"}�*{�*"}�*{�*"}�*{�*"}�*{�*"}�*{�*"}�*V{�,{�*~c
*"}�*{�*"}�*{�*n21r�ps�
z}�*{�*"}�*0e?oh
2?oh
o�

oe
+
r,po�
-(.
(��"%�(O
sS
z((�
*jo.
Yo�
r�Bp(�
*(B
*r(
-r�6psk
z}�*{�*:(�
}�*j{�-sC
}�{�*j{�-sD
}�{�*j{�-sE
}�{�*j{�-sF
}�{�*j{�-sG
}�{�*j{�-sD
}�{�*j{�-sD
}�{�*^~�-
sH
��~�*0Mo�

o4
o.
,6(0
(�"%o�o
�%o��%�(O
sS
z*0Z,u�
{�o
3*,;ob
12+-u�,+oc
3*Xob
2�oL
-�*0b-rA.psk
zo
-(rA.ps|
zo
o�
oI
o
(h
,s�oKo!oJ
*0i-rA.psk
zo
-(rA.ps|
zo
o�
o+
o
(h
,s�oKo"oK
*0d-rA.psk
zo
-(rA.ps|
zo
o�
o*
o
(h
,s�oKo"oK
*0O-rA.psk
zo
-(rA.ps|
zo
(h
,oKo(sL
oM
*0�-rA.psk
zo
-(rA.ps|
z()
,ripsk
z(R
,r�Bpsk
zo
(h
-o
o�
oN
*(O
s�%o�%o
o�%o�%ooUo�
o
o�
	oP
	s�oKo"oK
*0-rA.psk
zo
-(rA.ps|
z-rCpsk
zoL

+u�-
oL

-�9�s�(#oQ
{�o=:�s�

 s6
r CpoV
&	oP
o�
r-(poV
&	o�
r7po�
&{�oAo�z('
{�ofoZ
o*0h-rA.psk
zo
-(rA.ps|
zo
o�
oR
o
(h
,s�oKo$oS
*0b-rA.psk
zo
-(rA.ps|
zo
o�
oT
o
(h
,s�oKo%oU
*0f-rA.psk
zo
-(rA.ps|
zo
o�
oV
o
(h
,s�oKo'oK
*0i-rA.psk
zo
-(rA.ps|
zo
o�
o,
o
(h
,s�oKo&oK
*0�	sC

(!oW
+>(X

	o�,.(*+,	oY
-	oJ
(Z
-����o5
�oW
+"(X
r�Cpo�o�(H(Z
-����o5
�*K_u/�0>
-*sF

($o[
+>(\

	o�,.(*+,	o]
-	oS
(^
-����o5
�o[
8�(\
�%r�Cp�%o��%rDp�%o��%r
Dp�(_
o�,rDpo�($
rDp(/
	+*o�,rDpo�rDp(/
	+rG)p	rDp	(H(^
:Q������o5
�*Kcy�/0�sG

(�
s`
(%oa

+V(b
o�,.(*+,)o�oc
-oU
o�od
(e
-����o5
�oa
+"(b
r_0po�o�(H(e
-����o5
�*c��/�0EsD

sf
og

+a(h
o�,.(*+,4o�o�sL
oc
-oK
od
(i
-����o5
�og
8�(h
		o�(R
,)	o�,r'Dp	o�(H+	(<+r0p	o�(H~�,/~�	o�	o�sL

oj
,rODp
(H(i
:k������o5
�*n���60`
-*(#ok

+4(l
o�(*,rmDpo�oP
o�(H(m
-����o5
�*AQ�r0p("(8r�Dp(&(8*0�sD

sf
('og

+a(h
o�,.(*+,4o�o�sL
oc
-oK
od
(i
-����o5
�og
+(h
	r�Dp	o�(H(i
-����o5
�*n��)�0�o�
~�on
8roo
Y()s5

op
r�Dpoq
or
os
1oo
ot
X+xoo
ot
Xr�Dpou
		32(0
(�"%o�o
�%o��(O
sS
z	Yo�

	r�Dp
ov
		Xop
r�Dpoq
or
op
r�Dpoq
or
+9ow
oZ
ow
oZ


(x

	
ov
Xos
2�s�
(y
1(y
o�
	o�
r
Ep(H~�on
oz
:����o.
Y()-2(0
(	�"%o�o
�%o��(O
sS
z*Jr9Eps{
��**(?*�(|
(R
,(�
rFps|
z}�}�}�*{�*(C*{�*{�*(B*0Yo}

+1o9
�&(
to~
u
	,	o
o6
-��uO,o5
�*=D0(�
s�

(E(E*0~�o�

o�
8�o9
t0
	oo
Yo�
oV
&	op
r�Bpoq
o�
	op
r&Fpoq
o�
r@Fp(r
,(.
(toV
&+(�
oV
&�$(+
(�"%�(O
s�
z	oo
	ot
Xo6
:5����uO,o5
�o.
Yo�
oV
&*y/�$��^(R
,*(Is�
*�r^Fpo�
,o.

Yo�
**0	v(�
rtFpo�
,%o.
	Yo�
r,p(�
(�~�3,~�3(
s�
z
(�
o�
(�
o�
o~(R
-o~(H(0
o�

,+o~(R
-o~(H(0
o�
,Qo~(R
-Do~(R
-7oo(s
,$(+
(�"%o~�(O
s�
zsY
	(PozQoZ
	�!(�
o�
,o�
	,	o�
�	*q�R!0?@.o�

.1r�FpoV
&o�
oV
&r�2poV
&,o�
&*0�
o�
+f(�
,
+	,on
&,o�
&"on
&(�
($
oV
&r�FpoV
&(�
($
oV
&"on
&(�
-����o5
�*	s|0�
o}
+~o9
�&(
t
	o~
u,S,
+	,on
&,o�
&"on
&	($
oV
&r�FpoV
&($
oV
&"on
&o6
:w����uO,o5
�*	��02-,*o
(R
,o
o{(O*0�o�
&(KoV
&r�FpoV
&,,(F(L+,(M+,(M,o�
&r�Fpo�
&*r�FpoV
&*0�o}o�
s�

o{,lo�
r�Fpo}(�
o�
&r�Fpo@
(�
o�
&rGpo
oZ
(�
o�
&r4Gp(A
(�
o�
&o|,o�
(G+o�
oV
&(N�
,o5
�*��
JrVGps{
��*B{�%-&~c
*"}�*B{�%-&~c
*"}�*�{�-(R(d}�{�*�{�-(T(d}�{�*{�*"}�*B{�%-&~c
*"}�*B{�%-&~c
*"}�*B{�%-&~c
*"}�*{�*"}�*B{�%-&~c
*"}�*0H~c

(R
-8{�,*rHpot
,rHpoe
(�

+~c

+~c

*(W*(V*:~�(i*0�(R
,(�
rps|
z-rHpsk
zob(R
,o^(R
,(rHps|
zo^(ko\(koT(koR(k(s{�s0
o�
*2{�o�
*0A(R
-8(7
-0(�
-((�
-(0
(
�"%�(O
sS
z*6~�(m*07(R
,(�
rps|
z(s{�s0
o�
&*07-r5Hpsk
zo�
(R
-o�(om*6~�(p*07(R
,(�
rps|
z(s{�s0
o�
&*"(l*&(m*Z(}
,(�,*Js�
}�(�
*0�(uo�
}�o�
}�o�
}�o�
}�o�
}�{�(R
-{�rtFpo�
+}�,oC}�oB}�{�(R
-${�(�
}�o�
(�
}�*{�*{�*{�*{�*{�*{�*{�*{�*{�*0}~�o�
:�s�
�{('
o�

+V	�t{o@o�
,)(+
(�"%�%o�
�(O
sS
zo�
X	�i2�~���or
s�

~�o
t~:��('
o�
		
+(
�to�
(r
,+X
�i2�,Y�{('
o�
		
+(
�t{o@(r
,+X
�i2�sv+~�~�or
*�s7
(8
��s7
(8
��su��*:(�
}�*{*"}*B{�%-&~c
*"}�*0U(�
o�
o
o
(j

� &(0
(9�"%�(O
s�
zo�
o<(
*	" "�(�oO
-o<-rUHp+r]Hp(�
*01o�
(R
,(sS
z,
o

+o 

*0[o�,.o?-Jo�
(R
-9�s('
o�*o�(R
-�s('
o�*�o�(R
-o�*(&
o
*(�
*�(|
()
,roHpsk
z}*{*0)~o
t�
-(�
~o4
*0;Ё('
o�

�i�;+�t�o��X�i2�*Bs7
(8
�*00�{-!o

-(�
sS
zsk}{*0Xo�
r�Hpo�

-*��*0PX{-1(�
,)o�
r�Hpo�

,����+}o�
r�Hp��o�
*0!Xo�
r�Hpo�

- `�*��*0dX0r�p(s�
z{-1(�
,)o�
r�Hpo�

,����+}o�
r�Hp��o�
*0\�{-Mo

-(�
sS
z(h}{-$(0
(�
�"%o
�(O
sS
z{*J(�
~o�
*J(�
~o�
*0Q@�%r�Hp�%(�-r�)p+r�)p�%r�6p�%(�
(0
(1
�%r�Hp�(_
*>�s%}�*"�s&*"o�*o�*o�*0_(M
(�o%+{,'(�o=,}(�(�o�(�o~c
s�
o&*0"(�
~o
t
,o�
*R(�,~�
o�*0W(�o4oP
o5
(r=@po9
r�Bpo9
Lo6
o7
(O
-(�o�*.s�
�*:}(J
*r}(J
}
}	*0"{-s�

s�
}{*{*"}*{
*0J(O
-,{
,$(0
( �"%o
�(O
sS
z}
{
,(�*(�
*�{-o�}(�{*{*0+�{	,{	*o

-(�
sS
zsk*�{-(�-*{,
{o�
-*{o�*{*n21r�ps�
z}*0\�{
-Mo

-(�
sS
z(h}
{
-$(0
(�
�"%o
�(O
sS
z{
*n{-s�}{*{*n21r�ps�
z}*0o�
uh
*J(�{o/*�(�o�
o�
}(�o3*0\(O
,(�{-,o�}{
,{
{o�
(�*{
,{
{o�
*sJ
*s.*�{,(�o8,{o�*�(
(�{-o�}(�*�(�
(O
-(�o9-o�*�(M
(�-,(�-$(0
("�"%o
�(O
sS
z*�(O
-{,(�oB(�
*0I�(O
-@{-8oL

+u�,o�+
oL

-�(�oA}*R(�o4(N
*0�{,>{,*(+
s�
s�

(�
r�2poP
o�
oZ
(H+IoP
o5
{,{o�
(�-
o6
+Lo6
(�
o7
}*�{,($sS
z}}*0`(�-$(0
(&�"%o
�(O
sS
z{,$(0
((�"%o
�(O
sS
z}*^{-*{o�
*:(�o�
*(�*B{%-&~c
*"}*0��(�(R
,)(0
(+�"%(�o
�(O
sS
z(�(�(�
-2(0
(*�"%(��%(�o
�(O
sS
z*{*"}*r(�
-r�Hpsk
z}*{*02 (�

+o�
o�o6
-��
,o5
�(�
*!
04!(�

+o�
o�,�o6
-��
,o5
�**&
02 (�

+
o�
o�o6
-��
,o5
�}* 
�(�o�{,o�(�
*V(�
o�(�
*�(�
o�(�o�{,o�(�
*V{&-~c
*{&*"}&*0"{!-s�

s�
}!{!*6o�
(�
*{$*^/(.s�
z}$*{"*"}"*{%*"}%*05o
(h
-$(0
(�
�"%o
�(O
sS
z*�{",-sJ
}#{"{#o�
o�
{#o�
*6o�
(�
*R(M
(�o&+*0�o�
oP
o5
{%,r�Bpo9
+(r=@po9
r�Hpo9
{!,{!o�
o6
(N
o7
(O
-(�o�*"�s6*>�s>%}�*^{!-*{!o�
*:(�o�
*o�*o�*f �}$}%(J
*0�"~�(

,~(oG*s0

~'o
:����('
o�

+V	�to�
(r
,5o�
,	��+0(.
(4�"%�%�(O
sS
zX	�i2�~'o4
��*0J#~�
�('
o�
('+~�%-&~��Js�
%��((+sF*0a(�-W~�(

,%(.
(6�"%%-&�%�(O

+(.
(5�"%�%�(O

sS
z*�(�-#(.
(3�"%�%�(O
sS
z*js7
(8
�'(��(*"(d	*"(e	*(f	*�{)-r�Hpo�
t�}){)*2(�o*6(�o*2(�o*6(�o
*2(�o*6(�o*:(�
(*{**"}**{+*"}+*F(�	}2*2(�	*B{,%-&~c
*�{,(s
,},}1~�
o�
*B{/%-&~c
*�{/(s
,}/}0~�
o�
*08(
{0()
,(%-
&(o}0{0*B{-%-&~c
*�{-(s
,}-}.~�
o�
*�{.()
,o(R
-o(�}.{.*{6*"}6*{7*"}7*�{1()
,o}1{1*0C$o(
o�
3t�o
*o�
3t�o�
*r�HpsS
z0C%(
(R
,*o�
+�o
(r
,�*X�i2�*0U
(R
-	(�

*0$o�
,o�

�i3�*�"('
*
*0,&o
,o(o((**0>'
o
,$o(o((�	��(#�**130='
o
,#o(o((�	��(#�**020<'
o
,"o(o((�	��(#�**/10(,uO
,o5
*6(o"*~s�
�3s�
�4s�
�5*>
}<(J
*Z
}<(J
}8*�{@-s�
s�
}@{@*0E{9-6sw}9(�
,{9o
{9�Bsn
ou{9*{<*0!Xo�
rCIpo�

,t*~c
*Jo�
rCIpo�
*0+�{8,{8*o

-(�
sS
zsk*0A/r�ps�
z{<.(}<{?,o:{;{<oM*0!Xo�
raIpo�

,t*~c
*Jo�
raIpo�
*{B*"}B*�(O
,~c
*(-oo�
(0og
*{;*L*{=*0V)o
,oP
o5
{@,7('
o�
o3
+o9
to�
o�
o6
-�*�-r�Ipsk
z{:%�Fs�
o�*0�*}Ao�
o�
{9,|{9o�

+So9
t�s�o�
o�
oc,+{;{<{={9oogo�
o6
-��uO
	,	o5
�}A*&_�b~�
o�
o�
o�
*0�+o+(R
-do+(�

-$(+
(�
�"%o+�(O
sS
zu�-$(+
(�
�"%o+�(O
sS
z*o<

+5-$(+
(�
�"%o
�(O
sS
zu�
o<
	-	o
3�	*0@,{C:(0
sY
(O
,ru)poV
&8�(-o,(-oor�po>
+(-o
	o�
oV
&ru)poV
&	o�
o�
+l�(R
-V,	(�-Jo>
-?(

oV
&r3(poV
&	o�
og
(

oV
&r�IpoV
&X�i2�oV
&r3(poV
&oZ
}C{C(0
(1
(�
*0�-};
}<}=u�
,D�(�
�,���};�,���}<�,���}=+(�
{:-+o<}:{:-(�
sS
z{:o9{:{;{<o�}>*f{@,{@o�
�**0(--*t�
�(�
�,o)�o~
*0..u�
, o�,o�,o�oj*r{?,{;{<oM*0�(
(O
-lo<}:{:,D{:o9(0(R
-(D};{:{;{<o�}>o
,o
o�
}?*0 /
(4(�
,Y{<Z
*0{{:-o<}:{:-(�
sS
z{>-D{:o9(0(R
-(D};{:{;{<o�}>(�
*0}@o`	}=o_	};o^	}<{={;0<{=13{;{<Y
/
{=2
{:{<o�*{A-o:*:(�
o�
*�(O
,o�
(.es]	oFoIoJo7
*Ro8o6o6
*"(N
*0�0(�

-{;-{<
3	{=.[�"�{;,
{;��+�{<
.
{<��+�{=.
{=��+�**0-1(�

{9-+{9o�
�"%�%�*�(O
,*{:-(�
sS
z};}<{:o�*j(�
{9,{9o
*oG*6('o�
*:('o�
*�}F}G(�
}D}E}H*{H*{F*"}F*{G*"}G*{D*{E*0)2{L
(�
t|L()+
3�*0)2{L
(�
t|L()+
3�*J(�
s�
}I*{I*{J*{K*2(_o2*6(_o3*2(_o4*0X(]r�Ipo�

,��**�(c.(]r�Ip��o�
ol*03oh
of*6(cod*6(_o=*0-,t�
�,(]�o~
*j{L,{L~�
o�
*0X(]o�

,�"%�**6{Io�
*"}K*N}J(]o
*(^*"ok*op*om*0)2{O
(�
t|O()+
3�*0)2{O
(�
t|O()+
3�*:(�
}M*6oX
u�*&o�
&*0E4sw
(�
+o9
t�oeoyo6
-��uO
	,	o5
�*$2"o�
*&o�
*�E+s
	*s;	*s�	*(�s�
z~N*"o�
*&o�
*(�*j{O,{O~�
o�
*0/3u�
,��sn
oZ{Moo(�*0#3u�
,��sn
o[(�*n(�
u�-(�s�
z*"o�
*"o�
*2t�on*��;%н('
�%о('
�%��('
��N*Z(�
}P}Q*{Q*{P*V(J
}R}S*{S*{R*0"5uL,tLs�
(�
**2,o�
***,o
*:o�
(�*0\6o
(
s

o�
+%o9
�&(
t(
o-
o6
-��uO
	,	o5
�*1I0\7,Wo
(
s�

o�
+ o9
�&(
(
or
o6
-��uO
	,	o5
�**,G(�
*6(�*0�89�o�

8�o9
�&(

(
to�
+$o9
tRo�
(r
,
� o6
-��uO,o5
�	,	o�
�	o�
o�
�or
,
or
o6
:K����uO,o5
�o�
�*(>1o��>
��&(�
*0�9u
9�(�
9�o�
�v&(0
($�"%�%�('
o
�%o
�(O
sS
z&(0
($�"%�%�('
o
�%o
�(O
sS
z*%;�`;T0�:(�
(�
o�
+xo9
�&
(
,(
oZ
+~c
o�
,?o�
-6(
o�
(�o�
�o�
o�
�o6
-��uO,o5
�(*+,**Y#|>��0�;9�o�
:�
o�
,$o�
��('
()
,
o�
�
+o
,o

(�,`o&
((
,P(0
($�"%�%o
�%(0
r�Ip�"%o�
�o
�(O
�(O
sS
z*&(*&( *&("*"(#*"($*.(%*('*(�*"(�*"(�*�{Y-r�Hpo�
t�}Y{Y*2(�o�	*6(�o�	*2(�o�	*6(�o�	*2(�o�	*6(�o�	*2(�o�	*6(�o�	*2(�o�	*2(�o*6(�o*2(�oJ*6(�oK*2(�oL*6(�oM*2(�oN*6(�oO*2(�oP*6(�oQ*2(�o�	*6(�o�	*2(�o�	*2(�o�	*2(�o�	*6(�o�	*2(�o�	*2(�o�	*6(�o�	*2(�o�	*2(�o�	*6(�o�	*2(�o�	*2(�oR*6(�oS*2(�oT*6(�oU*2(�o�	*2(�o�	*6(�o�	*2(�o�	*6(�oV*6(�oW*6(�oX*6(�oY*6(�oZ*6(�o[*6(�o\*6(�o]*6(�o^*6(�o_*6(�ob*6(�oc*6(�od*6(�oe*6(�of*6(�og*6(�oh*6(�oi*6(�oj*6(�ok*6(�ol*6(�om*Jr�Hpo�
s?*o�*:(�o�	*6(�o�	*�(l	(�,(�-(�,(h	o.*n(�
(�,(�o�*>(�o�	*no�(R
,*(�o*J(�oN
o*(�*"(�*6(�o`*6(�oa*:(
}[*:(
}[*{Z*"}Z*{[*:(
}^*:(
}\*{\*{]*"}]*{^*:(
}_*{_*0O<o3

o3
++o6
-*o9
o9

-	,
*	o,
-*o6
-�o6
,**0��+To�
,o�
�3('
()
,*o�

+�(
	((
,	*X�i2�o�
((
,'�"('
((
,�('
((
:|���*:(
}b*:(
}`*{`*{a*"}a*{b*�(
}c}d}e}f}h}i*{c*{d*{e*{f*{g*"}g*{h*{i*V}m(
}l*r}m(
}l}m*V}m(
}j*{j*{k*"}k*{l*{m*V(
}p}q*:(
}n*{n*{o*"}o*{p*{q*2(#(k
*"(k
*&(
*>(9}r*�(
r�Ip��('
o
t�}r*~{r-(
s
}r{r*�(
r�Ip(=��('
o
*Rs�s�(@*�}�}�(}z}}}�*(J*(L*
*(P*0�={{()
,to
(R
,)(0
('�"%{}o
�(O
sS
z(�
}{�+(0
(&�"%{}o
�(O
sP
z{{*GW+>B{|%-&~c
*0Y{|(s
,J{�,)(0
(%�"%{}o
�(O
sS
z}|}{~�
o�
*{*r{.}~�
o�
*{�*r{�.}�~�
o�
*{�*0B{�.8{�,)(0
()�"%{}o
�(O
sS
z}�*{�*r{�.}�~�
o�
*{�*r{�.}�~�
o�
*(*0G((s
,8{�,)(0
(8�"%{}o
�(O
sS
z(
*J(	
~4o�
*J(	
~4o�
*J(	
~3o�
*J(	
~3o�
*J(	
~5o�
*J(	
~5o�
*J(	
~so�
*J(	
~so�
*J(	
~to�
*J(	
~to�
*J(	
~uo�
*J(	
~uo�
*J(	
~vo�
*J(	
~vo�
*J(	
~wo�
*J(	
~wo�
*J(	
~.o�
*J(	
~.o�
*J(	
~/o�
*J(	
~/o�
*J(	
~xo�
*J(	
~xo�
*J(	
~yo�
*J(	
~yo�
*(�*N3(r*(q*0�>
so�os

o-xo
	o{(

,q(�,?.d(0
(7�"%(T�%	o
�%{}o
�(O
sS
z	ono}�+oo&
o{(

,Mu�(
,oo�
o	u�(
,oo
o	o-;(0
(9�"%(T�%	o
�%{}o
�(O
sS
z�Ss+o�s�
o�o--��#-,o+		s)

o��*A4NR0>~�#0Q&(p
,Do-*o-oo"*oo&
o�oo&
o�*0�?}�{~-
s
}~+/{�,'{~o

1{~{~o

Yo
*(p
,xo,oo&
o�o,oo&
o�{~o
ouX,{�,(No
,(N�+}�*�{�tWo�{�tWo�{�tXo�*0u@s
o�o
,*((oos�*s+o�s�
o�o-,
��os)o�*	*4*>0!A,s
o�o
-("*Fo�( *>o�(!*No�(*0�B(�	(�	
o�	{�9�{�({	
	o�	
	o&
o	(|	{�,"uW,o�	o
,o�	�ks+o�s�
o�o--��;,7o
,
o
+o�	-o
s*		o��(*#X{0>#��;0�Co�	o�	o�	o�	o�	o�	s 
o�o
,*o%}�{�(R,*o
-o
,o�	(R
,
o�	(R
+}�{�-(}�+uW-{�,(*0j%(T
(R
,)(0
(:�"%{}o
�(O
sS
zo�
+�o
(r
,�*X�i2�*0*Do

o
o
o
o

	o
*0�E(0
(<�"%o�	�%o
(++oM
�(O
s;
E&oJ+mso�s�
o�o+Is
	o�s�
o�	o+%s2o�s�
o�o4-z*�{�tWo�{�tXo�*0uFs
o�o
,*((oo~�*s+o�s�
o�o-,
��os)o�*	*4*>0BGu�
(
,o
*u�(
,oA
(
,o 
***0"H(	
~4o
t
,o!
*0"I(	
~3o
t
,o"
*0"J(	
~5o
t
,o#
*0"H(	
~so
t
,o!
*0"K(	
~to
t
,o$
*0"L(	
~uo
t"
,o%
*0"H(	
~vo
t
,o!
*0"M(	
~wo
t
,o&
*0"H(	
~.o
t
,o!
*0"N(	
~/o
t 
,o'
*0"H(	
~xo
t
,o!
*0"O(	
~yo
t!
,o(
*0DP{~,;{~o)

+(*
oo"(+
-����o5
�*!5"o,
*0�Q
(�
o-
+Uo9
tV
	o�
o.
,<	o�
-4	o/
	o�
� -(
s

	o�
o0
�o6
-��uO,o5
�*<G >aq0]RsK
o�	(tW(|~�%-&~��Os1
%��(,+}��Ls3
(�	*0iS{�tWo�(�
,8(0
(<�"%o&
�%o4
(++oM
�(O
s;z{�tXo�*0�Ts1
o�o
,*((o6o7o��<(o6o�s+o�s�
o�o-,
��o7s)o�*	* ;<>�-;�X('
o
-)(0
(-�"%{}o
�(O
sS
z*�o
-)(0
((�"%{}o
�(O
s�
zo�*0mo�	(R
-)(0
(*�"%{}o
�(O
sS
zo�	(R
-)(0
(6�"%{}o
�(O
sS
z*0lo5
-)(0
(+�"%{}o
�(O
s�
zo�,o
-)(0
(,�"%{}o
�(O
sS
z*0R-No�
,o�
�i3�W('
o
-)(0
(0�"%{}o
�(O
sS
z*�o
-)(0
(;�"%{}o
�(O
s�
zo�*0Gs�
�ss�
�ts�
�us�
�vs�
�ws�
�xs�
�y*"o6
*"o7
*"o8
*&o9
*"o:
*o;
*0C}�}�}�~c
}�}�}�}�}�(<
*(=
*.(�s�
z{�*"}�*(>
*(?
*(@
*(A
*j{�-s5
}�{�*0Xo�
r�Ipo�

,��**^o�
r�Ip��o�
*(B
*j{�-sC
}�{�*j{�-sC
}�{�*�{�-$(�sD
}�(�
,{�o
{�*�{�-(�sD
}�{�*0"X{�
,t�o�
t�*�*�(�(E
-),o�
t�}�+}�(((|*0X{�
,t�*�*{�*�/r�ps�
z{�.3(�oF
}�(|*�{�1%{�o�oG
/o�{�oH
**{�*"}�*{�*"}�*{�*"}�*0Xo�
rJpo�

,��**^o�
rJp��o�
*0Xo�
rEJpo�

,��**^o�
rEJp��o�
*(I
*(J
*0!Xo�
rwJpo�

,t*r�Jp*0B(R
,(r�p(+
(?�"%rwJp�(O
s�
zo�
rwJpo�
*{�*v/r�ps�
z}�(|*{�*"}�*{�*"}�*(K
*{�*0Xo�
r�Jpo�

,��**�o�.o�
r�Jp��o�
(|*{�*"}�*0!Xo�
r�Jpo�

,t*r	Kp*0B(R
,(r�p(+
(?�"%r�Jp�(O
s�
zo�
r�Jpo�
*j{�-sL
}�{�*{�*"}�*{�*"}�*{�*"}�*0"X{�
,t�o�
t�*�*0B(�(E
-3,o�
t�}�+}�}�(M
,(N
*0X{�
,t�*�*0]U(�,	(��-$(+
(B�"%o
�(O
sS
zo�
o�,oO
/1oP
**{�*0C/r�ps�
z{�.*}�o�,(��,o�o�(|*{�*"}�*0Vo�
,o�oQ
**(�*{�*�21r�ps�
z{�.
}�(|*(�*{�*r{�(s
,
}�(|*(R
*(S
*{�*�}�(�
,{�,{�o
*(T
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*J(�
~�o�
*�oU
(R
,)o (R
,o"(R
,o$(R
�**B{�%-&~c
*v{�(r
-
}�oV
*B{�%-&~c
*v{�(r
-
}�oV
*B{�%-&~c
*v{�(r
-
}�oV
*0^Wu�, s�
o�
oW
o�
o�
*u�, s�o�
oW
o�
o�
*o�
oW
*0-@r)Kp{�
X}�(0
(1
(�
oX
*"}�*0J0o�
r3Kpo�

-(Y
,oZ
,$��.���"o*&([
*0X
o;ot-o�,�"{�0{��+9�o\
(]
-$(+
(j�"%o
�(O
sS
zo^
_o^
�_,:,7u\-/{�o_
{�o`
�{sa
ob
,doc
,o
+Eu\		-)(+
(f�"%(&
o
�(O
sS
z{�	o
�(9
+(8
+(8
(�(�
}�}�u\,God
	od
,-o��+_,3(+
(e�"%o
�(O
sS
z-(EsS
z9*o�_,o�oe
	o�oe
{�,6o�o5}�9�(�,z(��,q	o6+go�.-(+
(P�"%o
�%o��(O
sS
zo�o2}�,(�,(��,	o6-
{�oG
+o�}�{�{�{�s]	ol{�oG
-,o�-$o�
o�
o-+o�
o�
o-{�*j(O
-(�s�
z(f
*0tYsg

o\
o^
(�
(�3	(R
-	rKKp(�

	oh
,0oc
,oi
{�o`
+o`
{�o_
*0;Z{�,2}�o0
('oQs�o`o&*0.Z{�,$o0
('oRs�o`**0PZo�-$(+
(V�"%o
�(O
sS
zo0
('oUs�o`*0Zs�
3}�*"s�*0_[{�3|�(A}�{�
sL

3&o/{�o&o�
X
X(3o�8eo9
,2{�,*s�('oV{�o&X
	o�X	o1('9�o�(��isj
	(�
+#
�(k

	
ov
X
�i2�o�
	3	(�sl
o�
&+		(�sl
om
o�,"	o�
/	on
th	(4	oWs�o`{�o&X
oo
,o�
s�oao�	X
Xo6
:�����uO,o5
�3X{�,*s�('oV{�o&X
o/{�o&o�
X
X{�Y}�*Afx�bo�,{�,}�*�{�-{�3}�*{�op
,}�*0�\{�3|�(A}�{�
}�(3sL

3Ys�('oS{�o&X
(Ao/o&o�
XXo�8�o9
	{�]-l,2{�,*s�('oT{�o&X
s�('oS{�o&X
(Ao�Xo1
9�
	o�(��isj

(�+#�	(k

ov
X�i2�o�
3
(�sl
o�
&+
(�sl
om
o�,%o�
/on
th(4
oW
s�o`{�],%{�,s�oVo&X
o&X	
oo
,
o�

s�oa
o�XXo6
:����uO,o5
�@�{�]-l,2{�,*s�('oT{�o&X
s�('oS{�o&X
(A{�],%{�,s�oVo&Xo/o&o�
XX{�,N+A{�,s�oVo&Xo.o&XX{�]-�{�Y}�	*A���0�]
o�8�o9
(��isj

(�+!�(k
	ov
X�i2�o�
3	(�sl
o�
&+	(�sl
om
X
o6
:u����uO,o5
�*	��0\�}�}�}�}�}�}�sJ

{�,{�o�
o�
o�
s
oi*0.^s�
{�o�{�o�o�o�*0.^s�
{�o�{�o�o�o�*jo�~c
(v(C*�o�
oq
,{�,o�
o�
o7*0�_-rWKpsk
z(r

o�-|u�-(asS
zo�o�3o�uw
+ho�o�3o�uw
+Lo�]3o�,o�uw
++o�uw
+o�3o�,o�uw
9�s5
o�
os
o�
+Po9
�&(
	,'u,to.
-(
o6
+(
o6
o6
-��uO,o5
�ot
+:o9
�&	-(�	(
(-+3	(
	(
or
o6
-��uO,o5
�*�]6SG�"o=
*0�`o�
o�

+o9
t�u�,
�}o6
-��uO,o5
�o�
o�
+.o9
t�u�,
�5(>,
�"o6
-��uO,o5
�*	*&2S;�0"a,u�
,o�**(0
(u
*0(a,u�
-+o�T*(0
(v
*0�b-o�+o�
o=:�{�-
sw
oX
,={�-{�,b(+
(i�"%o
�%o��(O
sS
z{�,-(+
(g�"%o
�%o��(O
sS
zo�
o�
oL
o�
ox
To�
oy
*0Yc
o�32
+.(WsS
zs�o^o
,*(z
,o�-o�(N
*0sdu�
/-(YsS
z(z
,.o\
-$(+
(j�"%o
�(O
sS
z-o�oG
/o�oH
s�
,	o�o<o�oO
>�o�oP
o{
o�
+Mo9
�&	o�(
(
o|
	o�(
o�
,	o�(
o}
o6
-��uO,o5
�	oc	o
,*}�,6	o�}�	o�}�	o�	o��Ds~
o
*�Z
0�es�
{�o�{�o�ob}�}�,o�-
(q,*o�1<{�13{�o�3%{�{�X{�3o�Yo�}�(N
*0:f/(ZsS
zs�
odo
,*o�o�(N
*0�g
(vu�9|o_o�,*
o�
r5'p(r
,"o�o�
t(?(K82rmKp(r
,o�
t(L8rwKp(r
,"o�o�
t(?(E8�r�Kp(r
,"o�o�
t(?(B8�r�Kp(r
,&o�o�o�
t(?(N+zr�Kp(r
,%o�o�o�
t(?(C+Gr�Kp(r
,o�(I+*o�o�
t(@,o�	(G
*0h
(z
,.o\

-&(+
(j�"%o
�(O
sS
z*o�
-*u�/-(XsS
zs5
s5

,	o<o�oO
1xo�oP
o{
o�
+>o9
�&	(
(
ov
(
o�
,
(
o�
o6
-��uO,o5
�	�Hs~
o�
*�K�v,
(q,*o�(N
*0�i,o�.([sS
z,o
,o
o�
-*-{�-(hsS
z
(z
,.o\

-$(+
(j�"%o
�(O
sS
zs�o�o<ofo
,*,$o�}�o��Js~
o�
*0pjs�
{�o�oe}�,o�-(q,*o�o�
,o
o�
o�
-o�o�-(N
*0Ek/(\sS
zs�
ono
,*o�o�~�
om(N
*0#l
(�(�
,
(�-
(M*0�ms�
opo
,*(z
,Z((o\
-$(+
(j�"%o
�(O
sS
zo�o�(�o�(�}�~�
oo(N
*0�nu�
/-(]sS
z,o
,o
o�
-*(z
,.o\
-$(+
(j�"%o
�(O
sS
zs	
(�o�
+'o9
�&	o	(
(
o|
o6
-��uO,o5
�o�oO
1ao�oP
o{
o�
+'o9
�&	o
	(
(
o|
o6
-��uO,o5
�-o�oG
1
o�oH

,	o	o<	oh	o
,*,H	o
	}�	o	}�	o	}�	o
		o		o	�Os~
o�
*�4��4#0�os�
{�o	{�o	{�o	og}�}�}�,o�-(q,*o	o�
,o
o�
o�
-o	o	-o�(N
*V~c
(v(I*V{�,{�o�
*V{�,{�o�
*V{�,{�o�
*V{�,{�o�
*V{�,{�o�
*V{�,{�o�
*0{p{�
-$(+
(c�"%o
�(O
sS
z]3{�,{�
{�3{�,{�
{�3{�,{�
o�
*0�-}�}�}�}�}�~c
}�}��}�u�
91�(�
�,���}��,���}��,���}��,�t}��,��p}��,�t�}��,	�(Y�,���}�	�,>{�,6{��,-{��isj
{�sl
}�{�	�o~

�,
�t�}��,
�([�,���}�
�,
���}�+(�
(�
-{�{�{�s]	ol*0[q,Wt�
(��i((
+5(�sj
sl
o�
&(�	on
tM	�o~
	X
	�i2�*09-,.t�
�(�
�, (�tE�t,(�
*(�
*0\q,Xt�
(��i}�
+5(�sj
sl
o�
&(�	on
tM	�o~
	X
	�i2�*0Wr
~c
u�-uL,s�tLs�,o�ux
	,	o�

	o�
(F*0Q(�
o
, o��,o
o�
o
o�
(O
-o�
(R
-o�
(�
*0_s(�
~�o
t&
,	o�
*(z
-4o
-,(+
(��"%o
�%r�Kp�(O
sS
z*0"t(�
~�o
t'
,o�
*0"u(�
~�o
t(
,o�
*0cv(�
~�o
t(
,o�
(�
~�o
t0,(o�o�o�s�
s�

	o�
*0"w(�
~�o
t#
,o�
*0_x(�
~�o
t)
,	o�
*(z
-4o
-,(+
(��"%o
�%r�Kp�(O
sS
z*0_y(�
~�o
t*
,	o�
*(z
-4o
-,(+
(��"%o
�%r�Kp�(O
sS
z*0"z(�
~�o
t$
,o�
*0_{(�
~�o
t+
,	o�
*(z
-4o
-,(+
(��"%o
�%rLp�(O
sS
z*0"|(�
~�o
t%
,o�
*0_}(�
~�o
t,
,	o�
*(z
-4o
-,(+
(��"%o
�%r#Lp�(O
sS
z*0"~(�
~�o
t
,o�
*0"~(�
~�o
t
,o�
*0"(�
~�o
t-
,o�
*0"�(�
~�o
t
,o�
*0"~(�
~�o
t
,o�
*0_�(�
~�o
t.
,	o�
*(z
-4o
-,(+
(��"%o
�%r=Lp�(O
sS
z*0"~(�
~�o
t
,o�
*0_�(�
~�o
t/
,	o�
*(z
-4o
-,(+
(��"%o
�%riLp�(O
sS
z*�{�-*o
{�o�
o
o�
*0��(�
o�
o*
(�
o�
r3Kp��o�
o�(z
,>.:o�oG
/,(�
,$(�oF
(�o�oH
o<o�,(�,�-(}sS
z*0G�{�,*}�o;(O
,(>
,o.}�(�
�}��*
4>0�/{�,9{�1g
+{�o�
{�o�
X
{�2�}�+7{�1.+{�o�
{�o�
X{�2�}�}�*"o�
*�}�,o
o�
o�,}�*0�0(�

:�{�0w{�3n{�3e{�3\{�3S{�,
{�o.
->{�-6{�3-{�,	{��-{�9G{�o�
>6�"�{�.
{���+�{�.
{���+�{�.
{���+�{�,{�o.
,{�+�{�,
{���+�{�,{��,{�+�(x�{�.
{���+�	{�,
{�o�
+�
{�,{��,{�+�(z�{����
{����*��*0j�s�

{�,K{�o�
1={�o�
�"
+"t�{�on
tMo�
�X2�{�,,**0/�(�

{�-+{�(�
�"��*0j�s�

{�,K{�o�
1={�o�
�"
+"t�{�on
tMo�
�X2�{�,,**�(+
(D�"%o�
�(O
sS
zB(M
,(N
*&(M*Z~c
(v(N*0?(��-r�p+(��
o�
oU
o o$o"o�
*o�*{�*o�*{�**o�*"(K*"(E*0s�/ryLps�
z/r�Lps�
z{�3	{�.8sa	
,okoc	}�ob	}�,~�
oj,(N
*J(�
~�o�
*J(�
~�o�
*o�*"o�*(�*o�*o�*o�*"o�*o�*"o�*o�*"o�*o�
*"o�
*(�
*o�
*"o�
*o�*"o�*o�
*"o�
*o�*N��
s�
(*N��
s�
(*J(�
~�o�
*J(�
~�o�
*0�s�
��s�
��s�
��s�
��s�
��s�
��s�
��s�
��s�
��s�
��s�
��s�
��s�
��s�
��s�
��s�
��s�
��s�
��s�
��s�
��*Z(�
}�}�*{�*{�*Z(�
}�}�*{�*{�*{�*"}�*04�u�,
(�
*uL,tLs�
(�
**Z(�}�}�*{�*"}�*{�*{�*0"�uL,tLs�
(�
**r(
}�}�}�*{�*{�*{�*"}�*j{�-s5
}�{�*j{�-s5
}�{�*"}�*"}�*>(�
}�*{�*j{�-s5
}�{�*j{�-s5
}�{�*>(�
}�*{�*�(
}�}�}�}�*{�*{�*{�*"}�*{�*"}�*j{�-s5
}�{�*"}�*>(�
}�*{�*j{�-s5
}�{�*:(J
}�*{�*{�*"}�*
*0"�uL,tLs�
(�
**:(
}�*{�*V(�
}�}�*{�*"}�*�{�-*(�-(�2(�*(�(�Y*(�(�Y*{�*"}�*0B{�-*(�,{�*{�u\,{�t\o
*(�sS
zf(�(�X(�2**{�*"}�*{�*"}�*
*{�*"}�*0$�(�
+o9
%Xo�
o6
-�*0�/
(�-(�
{�u\,(�{�u�,{�t�sX*{�u,{�t�s\*{�u\,{�t\sT*{�,{�o3
(�sP*{�o3
*�{�-*{�u~,{�t~o�
**~c
*>(�
}�*{�*"}�*Z(�
}�}�*{�*"}�*{�*"}�*(�
*s�
*"o�
*(�
*�(
}�}�}�}*{�*{�*{�*"}�*{*"}*j{�-s5
}�{�*j{�-s5
}�{�*"}�*"}�*"}�*:(
}*{*j{-s5
}{*j{-s5
}{*j{-s5
}{*(\*0!X(]r�Lpo�

,t*~c
*�(	(s
,(]r�Lpo�
ol*0X(]r�Lpo�

,��**�21r�ps�
z(	.(]r�Lp��o�
ol*Z{{X{�**{�*0!X(]r�Lpo�

,t*~c
*�(	(s
,(]r�Lpo�
ol*0!X(]rMpo�

,t*(�*�(	(s
,(]rMpo�
ol*0!X(]r!Mpo�

,t*~c
*�(	(s
,(]r!Mpo�
ol*0!X(]rCMpo�

,t*(�*�(	(s
,(]rCMpo�
ol*0!X(]r]Mpo�

,t*~c
*�(	(s
,(]r]Mpo�
ol*0!X(]rMpo�

,t*(�*�(	(s
,(]rMpo�
ol*0!X(]r�Mpo�

,t*~c
*�( 	(s
,(]r�Mpo�
ol*0!X(]r�Mpo�

,t*(�*�("	(s
,(]r�Mpo�
ol*0X(]r�Mpo�

,��**�($	.(]r�Mp��o�
ol*0X(]r3Npo�

,��**�(&	.(]r3Np��o�
ol*0X(]roNpo�

,��**�((	.(]roNp��o�
ol*0X(]r�Npo�

,��**�(*	.(]r�Np��o�
ol*0X(]r�Npo�

,��**�(,	.(]r�Np��o�
ol*0X(]r�Npo�

,��**�(.	.(]r�Np��o�
ol*z($	,o�
rOps�
o�
*0�t�(	o	t�(	o	t�(	o	t�(	o	t�(	o	t�(	o	t�(	o	t�(	o	t�( 	o!	t�("	o#	t�((	o)	t�(*	o+	t�(,	o-	t�(.	o/	(f*s
	*0=�(_o0(R
9'o�
rOp(�
,2{(_o.Y
/
(_(_o.oM*o�
r)Op(�
,H{(_o.X{1{(_o.Y(_(_o.oM*o�
r3Op(�
,(_(_o.oM*o�
r?Op(�
,L{(_o.]
	-{(_o.Y+	{	Y(_(_o.oM*0��-0(&	,(s�
o�
(	(R
-(	o�
*(	
	E,+*s�

t�o�
+Fs�

t�o�
+1s�

t�o�
t�o�
t�(x
o�
o�
o�
o�
(0
(1
o�
u,(	(R
-(	o�
u�*0H�X
s�
o�
(io�
o�
o�
(	(R
-(	o�
*�}}}(_o0(R
,
(7	*(8	*0�((	,0o�
r3Op(	(	(	(4	o�
(0	(.	,0o�
rOp("	( 	(	(4	o�
(0	(,	,0o�
r)Op(	(	(	(4	o�
(0	(*	,0o�
r?Op(	(	(	(4	o�
(0	*0�(a((	,+o�
(	(	(	(5	o�
(0	(.	,;{{[Y
o�
("	( 	(	(5	o�
(0	(,	,@{{X{[o�
(	(	(	(5	o�
(0	(*	,M{{[{{],+Yo�
(	(	(	(5	o�
(0	*0�u�
9o	(	(�
9�o	(	@�o	(	(�
9�o	(	(�
9�o	(	(�
9�o	(	(�
9�o	(	(�
,so	(	(�
,`o 	( 	(�
,Mo"	("	(�
,:o(	((	3,o*	(*	3o,	(,	3o.	(.	3**0��(	or
(	
��or
`(	or
`(	or
`(	or
`(	or
`(	or
`(	or
`( 	or
`("	or
`((	(�
`(*	(�
`(,	(�
`(.	(�
`*0X(]rIOpo�

,��**�/r�ps�
z(<	.(]rIOp��o�
ol*0X(]r�Lpo�

,��**�21r�ps�
z(>	.(]r�Lp��o�
ol*0!X(]raOpo�

,t*~c
*�(@	(s
,(]raOpo�
ol*0!X(]r]Mpo�

,t*~c
*�(B	(s
,(]r]Mpo�
ol*0!X(]rMpo�

,t*(�*�(D	(s
,(]rMpo�
ol*0!X(]r�Opo�

,t*~c
*�(F	(s
,(]r�Opo�
ol*0!X(]r�Opo�

,t*~c
*�(H	(s
,(]r�Opo�
ol*0!X(]r�Mpo�

,t*~c
*�(J	(s
,(]r�Mpo�
ol*0!X(]r�Mpo�

,t*(�*�(L	(s
,(]r�Mpo�
ol*0X(]r�Mpo�

,��**�(N	.(]r�Mp��o�
ol*z(N	,o�
rOps�
o�
*0�t�(<	o=	t�(>	o?	t�(@	oA	t�(B	oC	t�(D	oE	t�(F	oG	t�(H	oI	t�(J	oK	t�(L	oM	(f*s;	*0�(_o0(R
9�
{(_o.[{(<	(_o.Z[(<	Z(<	XY
	X(_o.ZYo�
rOp(�
,Y(_o.Z
/Z
+Vo�
r)Op(�
,#X
{
16{
(_o.Y
+!o�
(0
(u
(_o.Z
.(_(_o.oM*0d�(>	,.
+s�

+s�

o�
o�
o�
o�
u,(H	(R
-(H	o�
u�*0D�X
s�
(0
(1
o�
(io�
(H	(R
-(H	o�
*0��(>	E
+s�

+,s�

+$s�

t�o�
t�(x
o�
o�
o�
o�
o�
u,(F	(R
-(F	o�
u�*0@�X
s�
o�
(io�
o�
(F	(R
-(F	o�
*�}}	}
(_o0(R
,
(Y	*(Z	*0��{{	[
{(<	{	Z[(<	Z(<	XYX{	ZY
,5o�
(L	rOp(0
(1
(J	(V	o�
(P	8�X3Ks�
XX(0
(1
o�
(@	(R
-
(@	o�
o�
o�
+Co�
XX(0
(1
(0
(1
X(0
(1
(T	o�
(P	X(<	/{
X{	Z=>���	{
Y/<(P	o�
(D	r)Op(0
(1
(B	(V	o�
(P	*0K�{{	[
(a{(<	{	Z[(<	Z(<	XYX{	ZY
,'o�
(L	Y(J	(W	o�
(P	+tX3Ks�
XX(0
(1
o�
(@	(R
-
(@	o�
o�
o�
+o�
X(U	o�
(P	X(<	/{
X{	Z=l���	{
Y/3(P	o�
(D	(<	X(B	(W	o�
(P	*0��u�
9�o<	��(<	��(Y
9�o>	(>	@�o@	(@	(�
,toB	(B	(�
,aoD	(D	(�
,NoF	(F	(�
,;oH	(H	(�
,(oJ	(J	(�
,oL	(L	(�
,**0x�(<	
(�
(>	��or
`(@	or
`(B	or
`(D	or
`(F	or
`(H	or
`(J	or
`(L	or
`*r(
}}}
*{*{*{
*V(
}}*{*{*:(�
}*:(�
}*(�
*n{-oi	}{*0+�{,{*o

-(�
sS
zsk*�{-�%r�Hp�s�
}{*0\-r�Opsk
zo.
,?r�Hp(r
-1(0
(�"%o
�%r�Hp�(O
r�Ops|
z(g	*~(
(h	�o	sn
o(*"}*0t(g	o�	o�
o�
(g	o�	o�
o�
(g	o�	o�
o�
(g	o�	o�
o�
(g	o�	o�
o�
*on	*0?�s�

(�
}�
{,{o�
}�
{�
-
{�
-**j(�
{,{o
*08�-(�
*t�
{�
(�
{�
,(g	{�
o~
*2(g	o�	*6(g	o�	*6(g	o�	*{*"}*{*"}*0��u�
,*u,�%�(.+*uR,io&
(~	((
,(�
*s�
o3
+o9
o�
o6
-��uO		,	o5
�(/+*�X('
�;%o&
�on

	(�t�o�
&(�
*]|0;��!('
rPp(�
�;%�o�

�"%�o�
t�*0O<o3

o3
++o6
-*o9
o9

-	,
*	o,
-*o6
-�o6
,**0��+To�
,o�
�3('
()
,*o�

+�(~	
	((
,	*X�i2�o�
((
,'�"('
((
,�('
((
:|���*R,o�
(�	**0��o
(
s

o�
+do9
�&(
t
	(R
,$(0
(5�"%o
�(O
sS
z	(�	rp	(�
(
o
o6
-��uO,o5
�*p�0��o
(
s

o
+Zo
(	

	(R
,$(0
(5�"%o
�(O
sS
z	(�	rp	(�
(
o
o6
-��
,o5
�*f~
01,,o
1#(�(�	
(R
-�"o�**0?�,:o
11(�	
o`(R
-o`�"%ob�o�**0��sd
o
s
ocsY
o

8�	o
(	
(
,(
oZ
+(R
-f(R
-]rPp%X��(�
oT
1rPpoV
&oV
&r'PpoV
&oV
&ob(
o�
	o6
:[����
	,	o5
�oZ
oa*&��
0t�sY

o
+Jo
(
t
	(R
-.(	
	(�	oT
1r-(poV
&	oV
&o6
-��
,o5
�oZ
*
Vc
�~o�
-#(0
(.�"%�%�(O
sS
z*�~o�
-((0
(/�"%�%o
�(O
sS
z*�r1Pp�~rQp(�
s�
�~r Qp(�
s{
�*vs�(�	}!}"*�}+},(�
}!}#}"*{)*r{).})~�
o�
*{**r{*.}*~�
o�
*{+*r{+.}+~�
o�
*{,*r{,.},~�
o�
*j{-s�
}{*0D{-5s�
}{��	sn
o�
{-,{(�{*{-*j{ -s�
} { *0D{-5s�
}{��	sn
o�
{-,{(�{*0D{-5s�
}{��	sn
o�
{-,{(�{*B{%%-&~c
*�{%(s
,}%~�
o�
*B{&%-&~c
*�{&(s
,}&~�
o�
*B{$%-&~c
*�{$(s
,}$~�
o�
*0D{-5s�
}{��	sn
o�
{-,{(�{*B{'%-&~c
*�{'(s
,}'~�
o�
*0D{-5s�
}{��	sn
o�
{-,{(�{*B{(%-&~c
*�{((s
,}(~�
o�
*j{-s�
}{*(�	*2~�
o�
*0��o�	{!{"(�
o�	{!{"o�
(�o�	{!{"(�o�	{!{"(�
o�	{!{"(�	s�	*0:�-rtQpsk
z(�	
}1o�	,({	o�	**�(�	(�	(�	*0	/�9's�	
o�	o�	%-&(�	,Lo�	(R
-)(0
(=�"%{"o
�(O
sS
zo�	{#(�	+;o�	(R
-.{#o�	�"%o�	{"(�	�o�(�	,Lo�	(R
-)(0
(1�"%{"o
�(O
sS
zo�	{#(�	+;o�	(R
-.{#o�	�"%o�	{"(�	�o�o�	(R
,9o�	(R
:�(0
(2�"%{"o
�(O
sS
z{#r�)p�"%o�	{"(�	�o�o�	(R
-.{#o�	�"%o�	{"(�	�o�o�	(R
-.{#o�	�"%o�	{"(�	�o�**0;o�	o�

o�
,%o�	,(R
-{#�"o�*0�o^
9�o�	,oc
,$o�	o
,o�	{#o�o�
o�	o�
>�o�	o�
2x{#o�	o�
o�{#o�	o�
o�+Do�	o
,7o�	o
3)(0
(4�"%{"o
�(O
sS
z*0}-,yt�
�,o�	�o~
�,o�	�o~
�,o�	�o~
�,o�	�o~
�,o�	�o~
�,�t?}1*0n-�"
{(��{(��{(��{(��{(��{1,{1o
1	{1�*�}-{(�{(�{(�{(�{(�*0$�(�	o�	
o]
(|	o�	*"}1*0��{19ws�

o�

8�	o9
�&(
t{1o:
,y(
{1o
t,+Lo�
0on
(�	o�
+#o�
,on
(�	o�
Xo�
2�	o6
:R����	uO		,	o5
�o�
2
Xo�
2(3sS
z{1o
(
s
{1o

+6
o9
�&(
t,(
ton
o

o6
-��
uO		,	o5
�**��(Ck0��o�	(�

o
o�
(
s
}1o-

8�	o9
tVo�
,no�
o.
,`s�
{1o�
o4
o3
+o9
o/
o�
&o6
-��uO,o5
�	o6
:p����	uO,o5
�*�'�2��*o�
*&o�
*"o�
*0h�sz	
o�	(
s�
o�	
o�	(�-*(�-*	,	(�-*(�oy	*0d�sz	
o�	(
s�
o�	o�	{!{"o�
(�-*o�	(�-*(�ow	*0��sz	
o�	(
s�
(
s�

o�	o�		(�-*	(�-*,	(�-*(�-*(�ow	ov	,	(�oy	*06�(
s

(�	(*+,
o�	+
ox	o�	**05�(
s

(�	(*+,
o�	+
ov	o�	**0=�(
s

(�	(*+,
o�	+ox	ov	o�	**J(	
~0o�
*J(	
~0o�
*0"�(	
~0o
t
,o�
*0$�uR
uR,,(}	*o,
*(�	*"o�	*o�	*o�	*~s�
�.s�
�/s�
�0*{2*"}2*{3*"}3*{4*"}4*{5*"}5*{6*"}6*{7*"}7*�(�
(�	(�	(�	(�	(�	(�	*{8*"}8*:(
(�	*:(J
};*0j{;-[o�	(R
,(�
sS
zo�	(�
u�};{;-$(+
(��"%o�	�(O
sS
z{;*2(�	oc
*B{:%-&~c
*v{:(s
,};}:*j{9-sf
}9{9*�(O
-/o�	��	s�
o�(�	o�
o�	od
(
*b(�	o�	oe
o�	*05�s�

(�
}�
{9-+{9oc
o�
}�
*02�t�
{�
(�
{�
,(�	oc
{�
o~
*~(�
{9,{9oc
o
*j{A-s�
}A{A*{?*:}?ol*J(�	~@o�
*J(�	~@o�
*ft�o�	o�	(f*s�	*0K�
u�,o�
{>sRo�	oV.(_oVoToM*�}<}=}>{?,{?o�
*0E�(�	~@o
t1
,	o�
*(+
(�"%r�Qp�(O
sS
z.s�
�@*b{B(�
t2}B*b{B(�
t2}B*0�oY
s

(�	o
*Z{B,
{Bo�
*(`
*{C*"}C*{D*"}D*V(
(
(
*{G*"}G*{H*"}H*{I*"}I*{E*�{F-s�
}F{E,{Fo
{F*:(�
(	
*6(
o�
*B,(
o~
*Z{F-*{Fo�
*n}E{F,{Fo
*0@-r�Hpsk
z-r�Qpsk
z-r�Qpsk
z(	
(
(
*(
*"o
*o
*o
*{L*"}L*{M*"}M*6oX
t�*&o�
*0T�(
(
}J(�

+o9
t�{Jo
o6
-��uO,o5
�*&B0OE +$s{
*s<
*sW
*sr
*sb
*s
*r�Qps�
z&(�
*&o�
&*~K*2t�o
*(�
*0Z�;%��('
�%��('
�%��('
�%��('
�%��('
�%��('
��K*0$Uod
(.

od
()
,*(�
*�o�
, o�
��('
()
,	o�
�**6~c
(�*0Q�-*(R
,*
�%.�of

+ 	�-(�

+	(�

	X
	�i2�*rr'p�;%o]
�(3
*�-r�&psk
zo^
�P('
(a
ob
*0C-r�&psk
zo^
�P('
��%o_
�%(`
�(a
ob
*0:�
o�
+o�
,-
+(�

o6
-��
,o5
�*	%.
0:�
o�
+o�
,-
+(�

o6
-��
,o5
�*	%.
~(
r�po�
t%-&~c
*J(
r�po�
*~(
r�Qpo�
t%-&~c
*J(
r�Qpo�
*0X(
r�Qpo�

-*��*^(
r�Qp��o�
*0@(`
�%�B
s�
�%�C
s�
�%�D
s�
�}O*N(R
-	(�
**0�u
,o�
**0��(8
(R
,(�sS
z
(

u,'(+
(8
�"%o�
�(O
(9
+(8
rRpo
,(�sS
z{O
+8	�o
()
-(8
~No

(
-
	X
	�i2�*0��-r�&psk
z(?

oY
(
,.(:
,*(0
(��"%(8
�(O
sS
zo 
-$(+
(��"%(8
�(O
sS
zo
�,�o�
o&
o
--(+
(��"%(8
�%o&
�(O
sS
z�i�"
	�+d�o
o�
-.(+
(��"%(8
�%o
�(O
sS
z	o�
o
(��X�i2�	o�
,Ju�,o]
o]
o
-)(+
(��"%o]
o
�(O
sS
zt�*"\�N*2(6
(=
*2(

(>
*�(
,
(
o
-*(
o
o&
*0.U{P(
,(F
(K

(L
}P{P*B{Q%-&~c
*v(F
(s
,}Q}P*(
*�(
()
,ripsk
zoN
(G
(L
}P*"(
*0n�(R
,)(+
(��"%(
o
�(O
sS
z(�

�/(+
(��"%�%(
o
�(O
sP
z*2=/>��P('
rRp(�
�;%�o�
*�o^
(E
��%o_
�(�
ob
*~(
r"Rpo�
t%-&~c
*J(
r"Rpo�
*0X(
r6Rpo�

-*�p*^(
r6Rp�po�
*j{V-s
}V{V*0��-*(N
(R
,(�
sS
zo]
~c
(e

(P
(N
(T
(R
o
+o
o~
o|
(T
o6
-��
,o5
�*P)y
0K�-(U
+(V

(0
��%�(
�;%o]
�%od
�(3
*n,.+rU'p*re'p*rU'p*^,.+r�'p*r�'p**�{W-"s�
}W{W�[
sn
o�
{W*b(X
(
(
(�*�(
o
�\
sn
o�
*R(

,(

o�*b(X
(
(
o�
*0%�s�

(
}�
{W(�}�
*0-�t�
{�
(
{�
,(X
{�
o~
*J(
{W(�*0��-*oY

s�
o]
~c
(e
o

+a	o
(	
(R
-K(	
(0
(
od
(/
,#od
(�
(�
o�
	o6
-��
	,	o5
�(0+, (5
		��%�(
(1
***m�
j{[-s+
}[{[*�}Y}X}Z(c
o 
*0J�-*(c
o�

+o9
t�o
%-&o6
-��uO,o5
�*&70X(
rJRpo�

-*��*^(
rJRp��o�
*0X(
rZRpo�

-*��*^(
rZRp��o�
*b(X
(
(
o�
*0�-*(g
(R
,(�
sS
zom

o]
~c
(e
(g
(0
(-
(i
-(k
-(�sS
z
(i
,0o
-(�sS
zo	
,o	
(i
(o

(k
,Ho
,	,o
3(�sS
z	,	o	
+o	
,(k
(p
-	-*	(q
��%�(
(1
*0:�od
(/
(h

E
+(�
**(�
**0:�od
(/
(h

E
+(�
**(�
**j--*-*-*(�
*~(
rjRpo�
t%-&~c
*J(
rjRpo�
*0X(
r�Rpo�

-*��*^(
r�Rp��o�
*0X(
r�Rpo�

-*��*^(
r�Rp��o�
*0��-*(s
,(s
o4
(R
,(�
sS
zoY

o
-(sS
z(1+(
(+
(

(R
,*(s
�%,�o
s�

o]
~c
(e
+,�o4
(0
			(z
o�
X�i2�	(4
��%�(
(1
*0��(u
,(
r�Rpo�
-5(u

��oZ
~�
��%od
(�
�(
*(u

��oZ
~�
��%od
(�
�%(w
��(h
�(
*{d*"}d*{e*"}e*0-�~f- r�Rp��('
oD
s�

�f~f*~g*�g*V(�
r�Rp~go�
*V(�
r.Sp~go�
*V(�
rVSp~go�
*V(�
r�Sp~go�
*V(�
r�Sp~go�
*V(�
r�Sp~go�
*V(�
r.Tp~go�
*V(�
rTTp~go�
*V(�
r�Tp~go�
*V(�
r�Tp~go�
*V(�
r Up~go�
*V(�
rNUp~go�
*V(�
rpUp~go�
*V(�
r�Up~go�
*V(�
r�Up~go�
*V(�
r"Vp~go�
*V(�
r�Vp~go�
*V(�
r�Vp~go�
*V(�
r�Vp~go�
*V(�
r Wp~go�
*V(�
rbWp~go�
*V(�
r�Wp~go�
*V(�
r�Wp~go�
*V(�
rNXp~go�
*V(�
r�Xp~go�
*V(�
r�Xp~go�
*V(�
r�Xp~go�
*V(�
r(Yp~go�
*V(�
rxYp~go�
*V(�
r�Yp~go�
*V(�
r�Yp~go�
*V(�
rZp~go�
*V(�
rNZp~go�
*V(�
r|Zp~go�
*V(�
r�Zp~go�
*V(�
rn[p~go�
*V(�
r�[p~go�
*V(�
r\p~go�
*V(�
rH\p~go�
*V(�
r�\p~go�
*V(�
r�\p~go�
*V(�
r�\p~go�
*V(�
rD]p~go�
*V(�
r�]p~go�
*V(�
r^p~go�
*V(�
rd^p~go�
*V(�
r�^p~go�
*V(�
r_p~go�
*V(�
rt_p~go�
*V(�
r�_p~go�
*V(�
r"`p~go�
*V(�
rt`p~go�
*V(�
r�`p~go�
*V(�
r&ap~go�
*V(�
r�ap~go�
*V(�
r�ap~go�
*V(�
r2bp~go�
*V(�
rpbp~go�
*V(�
r�bp~go�
*V(�
r�bp~go�
*V(�
rHcp~go�
*V(�
r�cp~go�
*V(�
r�cp~go�
*V(�
r*dp~go�
*V(�
rrdp~go�
*V(�
r�dp~go�
*V(�
rep~go�
*V(�
rTep~go�
*V(�
r�ep~go�
*V(�
r�ep~go�
*V(�
r&fp~go�
*V(�
rtfp~go�
*V(�
r�fp~go�
*V(�
r�fp~go�
*V(�
rHgp~go�
*V(�
r�gp~go�
*V(�
r�gp~go�
*V(�
r0hp~go�
*V(�
rzhp~go�
*V(�
r�hp~go�
*V(�
r�hp~go�
*V(�
rJip~go�
*V(�
r�ip~go�
*V(�
r�ip~go�
*V(�
rjp~go�
*V(�
rRjp~go�
*V(�
r�jp~go�
*V(�
r�jp~go�
*V(�
r6kp~go�
*V(�
r�kp~go�
*V(�
r�kp~go�
*V(�
r,lp~go�
*V(�
rllp~go�
*V(�
r�lp~go�
*V(�
rmp~go�
*V(�
r6mp~go�
*V(�
rlmp~go�
*V(�
r�mp~go�
*V(�
r�mp~go�
*V(�
r�mp~go�
*V(�
r@np~go�
*V(�
rnnp~go�
*V(�
r�np~go�
*V(�
r�np~go�
*V(�
rop~go�
*V(�
rHop~go�
*V(�
rtop~go�
*V(�
r�op~go�
*V(�
r�op~go�
*V(�
rpp~go�
*V(�
r>pp~go�
*V(�
rhpp~go�
*V(�
r�pp~go�
*V(�
r�pp~go�
*V(�
r�pp~go�
*V(�
r&qp~go�
*V(�
r\qp~go�
*V(�
r�qp~go�
*V(�
r�qp~go�
*V(�
r�qp~go�
*V(�
rrp~go�
*V(�
rdrp~go�
*V(�
r�rp~go�
*V(�
r�rp~go�
*V(�
rsp~go�
*V(�
rNsp~go�
*V(�
r�sp~go�
*V(�
r�sp~go�
*V(�
r
tp~go�
*V(�
r8tp~go�
*V(�
rxtp~go�
*V(�
r�tp~go�
*V(�
r�tp~go�
*V(�
rup~go�
*V(�
rLup~go�
*V(�
r�up~go�
*V(�
r�up~go�
*V(�
rvp~go�
*V(�
r2vp~go�
*V(�
rtvp~go�
*V(�
r�vp~go�
*V(�
r�vp~go�
*V(�
rwp~go�
*V(�
rTwp~go�
*V(�
r�wp~go�
*V(�
r�wp~go�
*V(�
r�wp~go�
*V(�
rLxp~go�
*V(�
rxxp~go�
*V(�
r�xp~go�
*V(�
r�xp~go�
*V(�
ryp~go�
*V(�
rvyp~go�
*V(�
r�yp~go�
*V(�
r�yp~go�
*V(�
rzp~go�
*V(�
rFzp~go�
*V(�
rpzp~go�
*V(�
r�zp~go�
*V(�
r{p~go�
*V(�
r^{p~go�
*V(�
r�{p~go�
*V(�
r|p~go�
*V(�
rf|p~go�
*V(�
r�|p~go�
*V(�
r}p~go�
*V(�
rj}p~go�
*V(�
r�}p~go�
*V(�
r~p~go�
*V(�
rR~p~go�
*V(�
r�~p~go�
*V(�
r�~p~go�
*V(�
rPp~go�
*V(�
r�p~go�
*V(�
r�p~go�
*V(�
rZ�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
rR�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r2�p~go�
*V(�
r��p~go�
*V(�
rЂp~go�
*V(�
r�p~go�
*V(�
rj�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
r:�p~go�
*V(�
rf�p~go�
*V(�
r��p~go�
*V(�
rԄp~go�
*V(�
r"�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
r؅p~go�
*V(�
r�p~go�
*V(�
rB�p~go�
*V(�
rx�p~go�
*V(�
rƆp~go�
*V(�
r�p~go�
*V(�
rH�p~go�
*V(�
r|�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
r:�p~go�
*V(�
rh�p~go�
*V(�
r��p~go�
*V(�
rȈp~go�
*V(�
r�p~go�
*V(�
r@�p~go�
*V(�
rn�p~go�
*V(�
r��p~go�
*V(�
r̉p~go�
*V(�
r��p~go�
*V(�
r$�p~go�
*V(�
rR�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
rԊp~go�
*V(�
r�p~go�
*V(�
rH�p~go�
*V(�
rt�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r$�p~go�
*V(�
rt�p~go�
*V(�
r��p~go�
*V(�
r،p~go�
*V(�
r�p~go�
*V(�
r2�p~go�
*V(�
rd�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r �p~go�
*V(�
rP�p~go�
*V(�
r~�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r�p~go�
*V(�
r>�p~go�
*V(�
rp�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
r6�p~go�
*V(�
rx�p~go�
*V(�
r��p~go�
*V(�
rp~go�
*V(�
r$�p~go�
*V(�
rR�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r"�p~go�
*V(�
rl�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
rR�p~go�
*V(�
r��p~go�
*V(�
r �p~go�
*V(�
r��p~go�
*V(�
rȔp~go�
*V(�
r�p~go�
*V(�
r^�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r4�p~go�
*V(�
r��p~go�
*V(�
rЖp~go�
*V(�
r �p~go�
*V(�
rh�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
rX�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r8�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r8�p~go�
*V(�
r��p~go�
*V(�
rԛp~go�
*V(�
r*�p~go�
*V(�
rf�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
rB�p~go�
*V(�
r��p~go�
*V(�
rܝp~go�
*V(�
r�p~go�
*V(�
rt�p~go�
*V(�
rĞp~go�
*V(�
r�p~go�
*V(�
rX�p~go�
*V(�
rʟp~go�
*V(�
r
�p~go�
*V(�
rV�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
rT�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
rV�p~go�
*V(�
r��p~go�
*V(�
rޢp~go�
*V(�
r�p~go�
*V(�
rx�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
r@�p~go�
*V(�
r��p~go�
*V(�
rԤp~go�
*V(�
r�p~go�
*V(�
rT�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
rb�p~go�
*V(�
r��p~go�
*V(�
r �p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
rR�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
rV�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r(�p~go�
*V(�
rx�p~go�
*V(�
r�p~go�
*V(�
r(�p~go�
*V(�
rp�p~go�
*V(�
r�p~go�
*V(�
rR�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
rJ�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
rd�p~go�
*V(�
rʮp~go�
*V(�
r�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r^�p~go�
*V(�
r��p~go�
*V(�
rаp~go�
*V(�
r�p~go�
*V(�
r@�p~go�
*V(�
rx�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
rR�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r6�p~go�
*V(�
r��p~go�
*V(�
r̳p~go�
*V(�
r�p~go�
*V(�
rD�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
rV�p~go�
*V(�
r��p~go�
*V(�
rԵp~go�
*V(�
r�p~go�
*V(�
r8�p~go�
*V(�
rd�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r�p~go�
*V(�
r\�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
rB�p~go�
*V(�
rl�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r.�p~go�
*V(�
r��p~go�
*V(�
rιp~go�
*V(�
r�p~go�
*V(�
rZ�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r4�p~go�
*V(�
r~�p~go�
*V(�
r�p~go�
*V(�
r@�p~go�
*V(�
r��p~go�
*V(�
rܼp~go�
*V(�
r*�p~go�
*V(�
rv�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
r$�p~go�
*V(�
rj�p~go�
*V(�
r��p~go�
*V(�
rؾp~go�
*V(�
r�p~go�
*V(�
r^�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r�p~go�
*V(�
r6�p~go�
*V(�
rV�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r8�p~go�
*V(�
rv�p~go�
*V(�
r�p~go�
*V(�
r��p~go�
*V(�
rX�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
r �p~go�
*V(�
rh�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
rV�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
rH�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
r$�p~go�
*V(�
r��p~go�
*V(�
r�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
rA�p~go�
*V(�
r}�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
r+�p~go�
*V(�
rs�p~go�
*V(�
r��p~go�
*V(�
r��p~go�
*V(�
r-�p~go�
*0-�~h- re�p��('
oD
s�

�h~h*~i*�i*V(Dr��p~io�
*V(Dr��p~io�
*V(DrQ�p~io�
*V(Dr��p~io�
*V(Dr��p~io�
*V(Dr+�p~io�
*V(Dre�p~io�
*V(Dr��p~io�
*V(Dr��p~io�
*V(Dri�p~io�
*V(Dr��p~io�
*V(Dr�p~io�
*V(DrM�p~io�
*V(Dr��p~io�
*V(Dr#�p~io�
*V(Dr��p~io�
*V(Dr��p~io�
*.(:(�
*j-r%�psk
z(:(

*~(�
(7(
,	(
**F(�
(7(
*n(�
(7(�
o
o%
*0y�,o
-*o
o

(x,*(2,(�-*o
,*,r/�po�
-*(
,~ko
o^
()
,**0%�t�
,o
(_,
o
o
*0��t�
o
o
r�.po
9���9�o
o
o�
o
o�
o
o�
o
o
rA0po�
o
r/po
t
o
r}/po
u�- �+��o
o�
r9�p(0
(1
	(H*0�o
o
~jo
,*o
o
~j~jor
l(
-�dsn
(
�esn
o
�asn
o
�bsn
o
*0U�t%
o
o
s�
(S9o�
o�
o
s

+	o�
o
o 
Xo�
o
2�o�
o�
+	o!
o�
X	o"
2�o�
o
rA0po�
o
rE�por
o#
o�
rW0p~c
r[0p(Hr��p�% �of
~%-&~�gs$
%�(2+(%
o�
r��p~c
(H*(�,(AsS
 �(�*0i�t�
o
o
o
o&
u�,C(�,;(�
o
(
o'
oe

	o 
(�
(�o(
*o`*"oc*js�
�j��('
�k*r~r-r��p(i
�r~r*F �(
s)
*0��(R
,(0
*(3+
~oo
t@:SrtFpo�
-+o.
	Yo�
r,p(�
(�
-+(�	o~(R
,9�o~(R
:�	o~(H-+
o~(H	,(0
o�
&o�
,(0
o�
&o�
	-:,@+4o/
(0
o,
-9o�
-+
o�
	-	,�+(0
+(0
(q,o,
,(0
~oor
*:(x-(�*0���%,�of

�i.�i.(�s*
�o+
�i3<�s�
o,
�
	o.
0(0
+	s-
o.
�(o/
(0
�!(��(��(��*(v	�v	��v	��0)�~no
t
-(p
~nor
*0-�o
sx

o1
o2
(3
(4
s5
*0N�~oo
t@
-8�('
o�
,#�,�to6
(7

~oor
*2(so�*^~q-
sr�q~q*>(so�*6(so�*�(},0,+o
o8
r�Bpo9
,o
o8
o:
�***^(R
-
(j(r
**�(zr�p(;
r�p(/
o<
*0U�o�

(=
o>
o?
rZ�po@
oA
#�v@(B
(C
oD
oE
oF
*0C�o�

(=
o>
#�v@(B
(C
oD
oE
oF
o�
*>s<
(}*0��
oG
oH
,oI
o�
(moI
o�
rZ�pog

	(R
,(�	~J
(K

�(��%- &~%-&~�vsh%�(~�(,%-
&�L
sM
oN
(��*IW���(>0A�(R
,(�ol
Z5&QYE8>RD2Z.&+JqYE,,z3&
+&
+ 
+
+oe
(y*(�*oe
(R
,(��%|�of
,�i.�i.(�+�i],(�sY

,V���(n		(

,(�		(R
-	s-
+(0
(JoV
&8W
8B�(R
�

,ol
#;X��%,�of
�-(�
-+(n(

,_-r^�p+E~s-�(i
+�oi
,		
on
&
	oV
&X�i2�+|+o�X�
,		
on
&
	(R
-	s-
+(0
(JoV
&-�(kz(kzX�i2�X�i?����(|,(z+({o�
,s�
sO
(P
sQ
	oZ
o�
�,o5
�,o5
�o�
r~�pr~;poR
oS
�ioT
�,o5
�	oZ
o<
*@Tc
�Tm
���)��l(�q*(kz(kz"o|*ov*0Cs7
(8
�ns7
(8
�os�
�psr�q�s �t*0�sU

~woV
~xoV
*~y*F~w(W
t*6~w(X
*F~x(W
t*6~x(X
*(Y
*0jsZ
�us[
�vrip�('
~u~vs\
�wrp�('
~u~vs\
�x(��y*0�sU

~zoV
~{oV
*Br��p(
t�*~|*F~z(W
��*J~z��(X
*F~{(W
��*J~{��(X
*(]
*0Ir%�p�('
��s^
�zr5�p�('
��s^
�{(��|*0)�sU

~}oV
~~oV
~oV
*~�*F~}(W
t�*F~~(W
��*J~~��(X
*F~(W
��*J~��(X
*0�rK�p��('
s_
�}ra�p�('
d�� ���s`
s\
�~r�p�('
 ��� ���s`
s\
�(���*0)�sU

~�oV
~�oV
~�oV
*Br��p(
t�*~�*F~�(W
��*J~���(X
*0"�~�(W
t�
,o�
t�**v,
o�
t�~�(X
*0"�~�(W
t�
,o�
t�**v,
o�
t�~�(X
*0vr%�p�('
��s^
��r�p��('
�sa
s\
��r;�p��('
�sa
s\
��(���*0�sU

~�oV
*Brg�p(
t�*~�*F~�(W
��*J~���(X
*�r%�p�('
��s^
��(���*0�sU

~�oV
~�oV
*~�*F~�(W
��*J~���(X
*F~�(W
��*J~���(X
*0Kr��p�('
��s_
��r��p�('
��s_
��(���*Z(b
r�poc
t�*Z(d
r/�poe
t�*(f
*Z(d
r[�poe
t�*Z(d
r�poe
t�*Z(d
r��poe
t�*Z(d
r��poe
t�*Z(b
r��poc
t�*(g
*~�*6(h
t�*f(h
,(i
oj
*"ok
*:ol
(m
*(n
*s�*2t�o�*0��so

(Y
8�o9
t�o�(?

	()
,$(0
(�
�"%o��(O
s�
z�('
	o
-$(0
(�
�"%	o
�(O
s�
z	(p
toq
o6
:h����uO,o5
�or
*
��.sU
��*
*(|
*�(|
()
,ripsk
z}�*{�*B{�%-&~c
*"}�*�oo�
oos
(t
(�*V(
}�}�*0,�,-*o(

-*s�oj
*�,{�r��poV
&*{�r'�poV
&*rM�p*{�**(�*0&�()
,ripsk
z-re�psk
z
(�,s
s

8�(�,s�s

8�(�9�ro�p(
(}
,Wr&�pou

	((
,B	r��p(o
(
,)�"%�%�%���%�o�
u*(+
(��"%o
�(O
s�
z(+
(��"%o
�(O
s�
zoj
*F��('
o
*0-��('
o�

��*0-�('
o�

��*05-r�Qpsk
z(


,o
r��po�
o
o�
*0_�o
o'
o.
2o
o'
ol
/.(;sS
zo
o
(

o
o'
oe
(�*0'�o 

oG
,s�+s�}�*0��oF

>�o
o�
o
o
o�
(=
l(v
ow
o
o�
ox
o
o�
oy
oE
oz
1o
o�
o{
r�po@
*o
o�
o{
o|
*o
o�
o}
o
o�
~~
o
*0h�o
o�

s+
oE
o�
+2o�

	oS
o
og
,o�
o
o6
-��
,o5
�*>\
0.�o
o�
s�

o�
(R
,s+
*o4+*0�oL
,Vo
o�
r�p(�
,o@
o
(�*(+
(:�"%oB
�%rp�(O
sS
zo
o�
rp(�
,o@
o
(�*(+
(:�"%oB
�%r�p�(O
sS
z0��(�
oH
-o@
o
o^
(p

oM

oJ
,bu
	,oK
,H(


�>(+
(<�"%oB
�%o&
o
�%oM
�(O
sS
zr�p+'r�po@
o
o�
r7(p(/

r�po
o�
	,o
	o�
*M	V>>0,�(�

,o�
(�(��
(��*!!
>0,s5

r@�po6
rP�po6
rf�po6
*6 �(�*0�o
o�

o
o�
o
o�
o
o�
o
o�
o
(�
o�
o
r�po�
o
r��pr�)po�
o
o�
o
o�
o
o�
s�
sQ
u�,o�
o�
,!(7~c
~c
(�(�
o�
+'oM
o�
o�
o
(�(�
o�
oL
�
,o5
�*�h
6{�(�*(�*�-r�Qpsk
zo
o'
(�,s�*(�*�o
(�-o
o'
(�**�o'
(R
-'o�
r��pot
-o�
r�p(r
***6r]Hp(r
*^rUHp(r
-(�**v(�
s�}�s�
}�*0\�(�,	{�+{�o�

u��u�,,s�*s�*,s�*s~*j-r�6psk
ztzo*{�*"}�*{�*"}�*{�*"}�*.+_o�
*0>Uo,
o�
,
o,
o�
*o�
,o
(
*�('
()
-�('
()
,r��p*o�
,�('
()
,r��p*r��p*o�
,H�*('
()
,r��p*�u('
()
,r��p*��('
()
,r��p*�('
o
,r��p*o�
,)
o�
-o�

�9('
()
,r��p*o�
-�R('
o
,r��p*r�p*04Uo�
,*o�
-"o�

��('
()
,	o�
�**0V�o&
s�

s�
(P
s�
o�
jo�
s�

	o�
�	,	o5
�,o5
�*5
?
+I
0�(

s
oj
*0M�o�

o�
s�
(�
(�
(�
(�
(�
(�
(�
(�
s�
*0��o
o
(

o
o^
oD
(
o
o�
r
�pog
,&(�
,(�
,o
 0o�
*o
o'
(�
	-?(�
(�
(�
,,o
o�
o
o�
(�
ow
o
o
	s
oj
*V(
}�}�*{�*{�*0s�/o�

3d(N
r.�po>
,�('
s
*rf�po>
,��('
s
*r��po>
,��('
s
**.(
*2r��p(�
*.(
*0)�(i
(

o�
o�
u�:�(_
o�
,z(�
()
,��('
(�

	,	o&
�&�((
,ns
(�
,Y(_
o�
(=
o�
o�
o�
+/r4�po�
,!o
o�
(
,
o�
o�
-G,B,(0
(@�"%�(O
sS
z(0
(?�"%�(O
sS
z**6-c�Js�
}�(�
*0^�s�
}�(�
}�s�
}�sw
{�oyo�
{�oxo�
{�ozo�
*0I-o
o�
sW
(
}�{�-!�('
o�

�-(>sS
z*>(
}�*0W��<('
o�

�-*��('
o�
�,	�t��t<s>

	oB
	o�
*0��{�-{�o^
()
,*
(�
s�
{�o^

	o�
+	o�

	o�
	o�
((
-�(
s�
{�,`+`o�
Y+?o�
o�
	+	�

(
	X		�i2�Y/�}��
,(�
�* ��
{�*J(
{�o�
*"}�*0F�s�

}�s�
}�s7
}�}�s�
}�}�}�*0D�(

{�o�
-$(+
(B�"%�(O
rT�ps|
z(!
*02�{�,*
(�
{�,�("
�
,(�
�*
'
0�s�
}�s�
}�s�
}�s7
}�{�o^
��('
o�
t(#
(
o�

+vo�
oC
��('
o�
t(#
oE
o�
+o�

	oS
o�
($
o6
-��
,o5
�oJ
-oI
($
o6
-��
,o5
�}�� &}�}�}��}��*4�$�
^��
!��"!�0�
8��o�(R
-{�o�o
o�o
o�
	o�
:�	�"('
()
-{	�('
()
-i	�*('
()
-W	�u('
()
-E�R('
	o
-3�('
	o
-!	o�
,	o�
�i0	{�(�
-$(0
(8�"%	o
�(O
sS
z	(%
X�i?����**(&
**(&
*0��-{�o�
,*{�o4
o�
,a
,(f
t�
+4o
o�
(�
(�
(�
�a('
()
s8

{�o\
(3
o�
*o�
,%,('
*o�
�i1*�(&
*o�
,o
(&
*o�
:��"('
()
:��('
()
-}�*('
()
-k�j('
()
-Y��('
()
-G�u('
()
-5�R('
o
-#�('
o
--{�(�
-*,('
*o
(3
{�o
o�
sW
o�
{�o�
*0��(f

-*�R('
o
-2�('
o
- {�o\
(2
o�
((
-6(e
o�

+	o�
((
&	o6
-��
	,	o5
�*c�
0Z�o\
(2

u�,${�o�
-3{�t�o�
+{�o�
-{�o�
*2(*
o�
*6(!
{�*"}�*6(!
{�*J(!
{�o�
*6(!
{�*"}�*0�
(*
o�
,
,o^
**0o
(2

(*
o�
-**&(3
*0,(!
{�o�
,**0o[

-o\
(3

*R(X
(<
*Z(W
(<
*R(X
(=
*V(X
(=
*{�*{�*{�*Z}�}�}�*0n|}�o�
��}�
+Ao�
,{�t�(0
o�
�+{�t�(0
o�
�X
o�
2�}�*0N(�
}�}�}�{�o�
}�}�{�(R
,o
}�*�(�
}�}�}�s
}�*{�*0q�{�,*
(�
s�

{�o
+&�o
	sP
o�
	X
X�i2�}��
,(�
�*
Yf
{�*{�*6(A
{�*2(D
o�
*2{�o�
*2{�o�
*2{�o 
*r{�(
-{�o�
**f{�,{�o��**Z{�,{�o
**�|�(
,|�(
*{�,{�o
**J(O
(N
*0��(A
{�o�
�"
{�o�
o�
+Q(�
oS
o
o�
,oR
	�+)(0
(=�"%oS
o
�(O
sS
z(�
-���o5
�{�o�
*(^�0��(D

o
s
o
+Oo

(	
o�
,5o�
oS
o�
(
(@
o
(�
o�
o6
-��
,o5
�*[u
V(�
}�}�*r(�
}�}�}�*{�*{�*n{�,{�o
*{�*n{�,{�o�
*{�*0�s�
���m('
rj�p(_
�$('
rt�p(_
�n('
r��p(_
�o('
r��p(_
�('
r��p(_
�b('
r��p(_
�('
r��p(_
�a('
r��p(_
*0t(�
(R
,}�()
,G}�+>rp(/
}�()
,#(0
r��p�"%�%�(O
}�}�}�**(W
*�~�(�
,r
�pr �ps�
��~�*�~�(�
,r��pr �ps�
��~�*{�*{�*{�*{�*0�r�ps�

~�o�
*0"k-*
o�
-o�
u�(a

*0j�o�
,
o�
o^
-*o�
o^
.*o�
o�

u�-*t�o�
r��p(�
-o�
~�
(�
**0R�Q-*o�
u�
,
Q(c
*o�
u�o�
,o�
u�
,
Q(c
**0��o�
o�

+o�
t�u�-�no
-��uO
	,	o5
�o�
~�
(�
,?o�
o�
r��p(�
,&o�
o
r�p(�
,o�
o^
�****$00.�,)o�

+o�
3sa
zo�

-�o�
**0t�s�

s�
o�
o�
o
o3

8&	o9
t�o�
r �p(�
:o�
o�
8�o�
u�o�
(
9�o
o\
(�
,o]
(�
:�o
(R
-r	u�
(b
,'o
(
o

o
(i
	+,u�(`
-*u�-o
(
sX
		,	o
o
:'����uO,o5
�	o6
:����	uO,o5
�*A4\�<&8^0�
s�
o
o
-eo�
,A(�
�a('
()

o�
(
o
(
(�
(�
	s7

+o�
(
o
(
sX

*0K�(Y
(h

-*o

r!po
o

o

r��po

	o

s�
*0��9�o	
,o	
o^
1qo	
o�
u�,^o	
o�
t�
o

,B+8�ud
	,(	o
o�
(�
,	o	
o
(�
,	*X�i2�*0��r��pr�ps�
(g

~�o
�a('
()
s

s

o�
o�
+vo�
t�u�o
(Z
(h
(d
-	o
j	+!,(
(
	+(
(
		o
o
	o
o
-��uO

,
o5
�	o
o
s5
*O��0oo
o
-*sY
}�{�,s�
}�ol
om
(k
(u
(q
(x
o-
(y
{�oZ
*00o|

{�oV
r��poV
oV
r�poV
&*0Non
{�r>�poV
&{�o|
oV
r\�poV
&(o
{�r��poV
&*0��on
{�r��poV
&{�r��poV
&{�o|
oV
rG�poV
&
o
o�
+$o�
-{�r��poV
&
(w
o6
-��
,o5
�{�r��poV
&*U0�
~o
o]
o
o\
({
*0E{�r��poV
&{�r��poV
&{�r��poV
&{�r'�poV
&*0h�o|

o
o�
87o�
oB

{�oV
.on
	oV
rU�poV
&sY
oE
o�
++o�
-,on
&+oT
oV
&o6
-��,o5
�-
,on
&rm�poV
&{�oZ
oV
r��poV
&{�,){�r��poV
&{�{�	o
oV
&{�oV
r��poV
	oV
(on
&{�oZ
oV
r��poV
&o6
:�����
,o5
�*A4b8�I]
0S�o|

{�oV
r��poV
oV
r�poV
&{�9�{�oV
r'�poV
&{�oV
rg�poV
&{�oV
r��poV
&{�oV
r��poV
&{�oV
r��poV
&{�oV
r�poV
&{�oV
rZ�poV
&{�oV
r�poV
&{�oV
r]�poV
&{�oV
r��poV
&{�oV
r#�poV
&{�oV
r�poV
&{�oV
rr�poV
&{�oV
r��poV
&{�oV
rR�poV
&{�oV
r{�poV
&{�oV
r��poV
&{�oV
rI�poV
&{�oV
r��poV
&{�oV
r��poV
&{�oV
r8�poV
&{�oV
r��poV
&{�oV
r��poV
&{�oV
r�poV
&{�oV
rW�poV
&{�oV
r��poV
&{�oV
r)�poV
&{�oV
r��poV
&8�{�oV
r��poV
&{�oV
rg�poV
&{�oV
r2�poV
&{�oV
rt�poV
&{�oV
r��poV
&{�oV
r�poV
&{�oV
r��poV
&{�oV
r�poV
&{�oV
rB�poV
&{�oV
r��poV
&{�oV
r��poV
&{�oV
r�poV
&{�oV
r��poV
&{�oV
r��poV
&{�oV
r`�poV
&{�oV
r{�poV
&{�oV
r��poV
&{�oV
rI�poV
&{�oV
r*�poV
&{�oV
r��poV
&{�oV
r8�poV
&{�oV
r��poV
&{�oV
r��poV
&{�oV
r�poV
&{�oV
rW�poV
&{�oV
r��poV
&{�oV
r��poV
&{�oV
r��poV
&or
(R
-brHpot
-rD�pot
,FrV�po
rV�p(.
Xropou

	.#	o�
	oe
(
(�
+(
{�oV
r^�poV
oV
rv�poV
&ot
,d{�oV
r��poV
&os
(R
-<r��po>
--{�oV
r��poV
(�
oV
r�poV
&*0@�{on
&oE
o�

8�o�
oT
9�r�poV
oV
rDpoV
&oU
(	

o@
	(
oz
(R
-r0�poV
oV
rDpoV
&r@�poV
	o
oV
rD�poV
&oT
1,on
&,on
&oV
&oV
:on
oV
&o6
:"����
,o5
�,
~�oV
&r7(poV
&oT
1	,on
&rZ�poV
&*�
0*�oB

o@
o|
oL
-r�)p+r�)p{�oV
:on
&sY

sY
{�,sY
	(v
{�,oZ
{�o
{�r��poV
	oZ
oV
r��poV
&{�,{�oV
&{�r��poV
&{�r�2poV
oV
r�2poV
&{�oV
,on
&{�oZ
oV
r&�poV
&*0�
o)
o�
8�o�
,{�r��poV
&
o4

o\
oz
(
o]
oz
o]
(}
(~
{�r�poV
oV
r �poV
&({
{�rN�poV
&{�	oV
&{�rv�poV
&{�oV
r��poV
oV
rZ�poV
&o6
:����
,o5
�*�
0��o

8oo
o]
(}
o\
oz
(

o:
o;
o]
oz
	(~
{�r�poV
	oV
r �poV
&	.oh
3{�rl�poV
&{�	oV
rv�poV
&{�	oV
r�poV
&+g1{�,on
&{��oV
&{�r��poV
&o9
,{��o
&+{��o
&X�i2�{�r��poV
&{�	oV
r�poV
	oV
'on
&{�r"�poV
&o6
:�����
,o5
�*A��
0�(
oz

(R
-
,*(}
+!-rpo
-{�rl�poV
&{�oV
&,{�r>�poV
&{�=on
&{�o4
*Fo
o\
(
*0Ooz
(R
,*{�o�
-.{�r�FpoV
oV
rT�poV
&{�o4
*0��
(R
-$rp(�
o

	1
	o.
XX
.o�
8�o�
{�o�
-h{�o�
-Y{�o4
{�r�pr`�p(/
oV
&,{�rl�poV
&{�r��p(�
oV
&.Xo�
=l���*vs7
}�s7
}�(�
*.r��p��*0Q�s�

o�
{�o�
(
,)(0
(�
�"%{�oZ
�(O
s�
z*�(�
s�
}�}�}�*0��X%{�1{�(�
o�
s�
z{�o�

(
-*{�o�
(�
,(�
*(�
,%(�
r��po 
,{�(�
**(�
,(�
*(�
,(�
*(�
*0
�sC

{�o�
(
-�#+(!
s"

[(#
.+
($
�,{�(�
o�
s�
z8�{�o�
(�
o�
&{�o�
(
-�#+(!
s"

](#
.+($
:�(
-�#+(!
s"

,(#
.+
($
�,{�(�
o�
s�
z{�o�
%(
,F(
-�#+(!
s"

](#
.+
($
�:���,{�(�
o�
s�
z(
-�#+(!
s"

](#
.+
($
�,{�(�
o�
s�
z*0��
{�o�
(
-�#+(!
s"
{
(#
	.+
($
�9{�(�
o�
s�
z{�o�
(
-�#+(!
s"
:
(#
	.+($
,{�(�
o�
s�
z(
-�#+(!
s"
}
(#
	.+
($
�,k(�
{�o�
(
-�#+(!
s"
:
(#
	.+
($
�,{�(�
o�
s�
z-s+

-{�o�
8�o
(�
(�
o�
{�o�
(
-�#+(!
s"
}
(#
	.+($
-r(
-�#+(!
s"
,
(#
	.+
($
�,{�(�
o�
s�
z{�o�
%(
:����(
-�#+(!
s"
}
(#
	.+
($
�,{�(�
o�
s�
z*�(%
2#r�p�"%(%
���(&
sS
z*08{�o�

(
-*{�o�
(�
,(�
*(�
*0�(�

rG)po'
,*r�)po'
,��*r�)po'
,��*.oh
��r/�po(
��-L-0(0
(v
,��*(0
()
,��*o(0
(*
,��* �(0
(+
,	�d*(0
(�
�"%�(O
s�
z0�sY

�"+W(,
(o
-,(,
..!(,
-.(,
_.(,
+3(,
on
&+
{�o�
+{�o�
%(
-�oZ
*0sY

{�o�
(�

8�(
-�#+(!
s"
\(#
.+($
,,
\on
&+m+i,(�
+Z(
-�#+(!
s"
	(#
.+($
,oZ
(-
*(,
on
&{�o�
%(
:'���{�(�
o�
s�
z0�(
-�#	+(!
s"

"(#
.+($
-x(
-�#	+(!
s"

'(#
.+($
-<(
-�#	+(!
s"

/(#
.+($
,(,
on
&*(
-�#	+(!
s"

b(#
.+($
,	on
&*(
-�#	+(!
s"

f(#
.+($
,
on
&*(
-�#	+(!
s"

n(#
.+($
,

on
&*(
-�#	+(!
s"

r(#
.+($
,

on
&*(
-�#	+(!
s"

t(#
.+($
,
	on
&*(
-�#	+(!
s"

u(#
.+($
,${�o�
 (0
(.
�on
&*{�(�
o�
s�
z0�"

(
-�#+(!
s"
'(#
.+($
,
(,

+V
(
-�#+(!
s"
"(#
.+
($
�,{�(�
o�
s�
z*0(/
9�{�r3�p$o�

?�{�Xo�
r;�p(0
op
r��poq
o�
(�
9�{�ot
o�
& 'jZ~�Xs1
�**{�r3�po�

{�	Xo�
r;�p(0
op
r��poq
o�
(�
,2{�ot
o�
& 'jZ~�X(1
�**(�
*0:(
-�#	+(!
s"

[(#
.*($
*0+{�o�

,{�o�
r�p(r
**0:(
-�#	+(!
s"

{(#
.*($
*0x(
-�#	+(!
s"

"(#
.+($
-:(
-�#	+(!
s"

'(#
.*($
**0s�

o�
*0>X-r�psk
zo.
o�
1(�
r�ps|
z(�

(�
*"(�
*�(�
}�d(�
  (�
*{�*^/(�
s�
z}�*{�*^/(�
s�
z}�*{�*j{�-s2
}�{�*0p-rK�psk
zo3

+Do4
o�
,3o>

+	o=
(�
o5
	o6
-��
	,	o5
�o6
-��
,o5
�*/"Q
Pe
�{�,.+#{�o6
,
{�o7
*o�
((
-�*>(�
QP�*>(�
(�
*vЛ('
(�
(�
��*>(�
(�
*^Л('
(�
��*&(�
*&(�
*0
sY

(�
oZ
**(�
*�(�
-oT
(�
1(�
sS
z*v,
r�)poV
&*r�)poV
&*�rDpoV
 �o8
oV
rDpoV
&*�rDpoV
�uoZ
oV
rDpoV
&*0{	-<r�poV
&(�

(9
~�Y 'j[o
&r�poV
&*r�poV
&(�

(9
~�Y 'j[o
&r�poV
&*0P

o&
{on
&(�
,7(�
o�
,%r��p(�
:on
&(�

o:
+Q�(�
-:-	,on
&o
(�
:on
&(;
(�

X�i2� oj

		+o	�

(�
-X
oA
(
-Eo
�-;-	,on
&
o
(�
:on
&(<

(�

	X		�i2�}on
&*0;�('
o=
,*�('
(>
t
,
o�
,**0�{on
&
r��po�
, 
r��pr��po
(�
o�
8�o9
�&
(
u-)(0
(�
�"%o&
o
�(O
s�
z,r��p(r
,+#-	,on
&(
(�

o6
:u����uO,o5
�}on
&*A���(�
:on
&(�
*0\
[on
&
o3
+#o9
-	,on
&(�

o6
-��uO
	,	o5
�]on
&*/A�"on
&($
oV
&"on
&*0�X%{�1(�
s�
z
,So&
(�
,Co�
(�
,!(�
o&
o�
,r��po�
(�
oV
&*(�
*0�,
~?
o,
,
rG)poV
&*u
,(�
*u,"�-
rG)poV
&*oZ
(�
*u�,
��(�
*u*,�*(�
*u�,��
(@
(�
*uu,
�u(�
*uk(A
,(�
*ud,!�dr�p(0
(B
oV
&*uc,!�cr�p(0
(C
oV
&*o&
o�
-u�,.u�,(0
oD
oV
&*oZ
oV
&*o&
o�
9�(�
�('
()
-�a('
()
,X(

-(�
+=(+
(�
�"%o
�%oE
o
�(O
r��p(�
(/
sS
ztmr�poF
oV
&*-s�s
+.o:
,$(+
(�
�"%o
�(O
sS
zo0
u		,	(�
�8uR

,
(�
�(�
�
,o;
�*��
0	 �sG

(9
��*:(�
}�*0K+,{�{�X}�ol

(
-sH
*{�o.
{�0��"*0?{�o.
{�1"{�{�
X}�ol
sH
*�"*0:{�o.
{�X2#{�{�o�

{�X}�**b{�1{�Y}�*�+{�Y}�Y{�10�*�{�o.
{�1{�{�oe
*~c
*��"%�%r�p�%{����%r�p�%{��(I
*�{�o.
{�1{�{�ou
{�Y**0;@{�{�{�o.
{�Y(J
oK

2	{�Y**�{�o.
{�X1{�{�o�
*oZ
*0Lo3
+!o9
(�
-
�(o�
&o6
-��uO,o5
�*	*-40�u
,(�
-*or
*o&
o@
(
,LoL
(
,:o
(�
-*�"%�o�
&�P&,��DoM

	(
,/	o�
(�
-*	oN
�&,��**f~"�
�"0�

r��po�
,d�('
(�
-��Q*t,9o�
,%o�
o�

()
,,sa
zQ*r��poO
&((
,2o�
,'o�
Q�$&,�Q�-	(�
,(p

oP
sQ
(�
9o�
��('
((
,@�"('
((
,-,$(0
(�
�"%o
�(O
sS
zQ*o�
�	(�
,(p
t	+*~��;%�%�on


(p
t		,`oR
+5(S
oT

(�
-Q�	
or
(U
-���'o5
�	Q*((
,z	o&
o
-l-Q*~�oV
(W
,$(0
(�
�"%o
�(O
sX
z(0
(�
�"%o
�(O
sS
zoR
+*(S
oT
	(�
-	Q�(U
-���'o5
�	Q**(��"�B�~7�0X(�
&*0b-?�('
()
,�Q*(�
,,(�
sS
zQ*Q*o&
()
,Q*(�
*0Nu�
,(�
*u�,(�
,	Q*Q*()
-o&
()
,Q*(�
o&
oY
,*(0
oZ
Q��&,�Qݶ�('
oY
,_u*,&�*(�
r"�p(0
([
+(\
o]
o�
Q�T&,�Q�Eo&
o
,Q*,((+
(�
�"%o&
�%�(O
sS
zQ**k�"�P�"0()
-�"('
()
-(�
9��"('

((
,�"('
((
,o

sC
(�
-Q*�,('
()
-6�R('
()
-$о('
()
-�\('
()
,Q*o^
Q*o�
9�o�
�i@�o�
�~��;%�on

	o
9�~��;%�on
(�
,!о('
o
,(p
t�+Eo
,-,$(0
(�
�"%o
�(O
sS
zQ*(p
t�(�
-Q*Q*(�
,9о('
o
,'(p
t�(�
-Q*Q*,$(+
(�
�"%o
�(O
sS
zQ*0Qo�
-G�,('
()
-5�R('
()
-#о('
()
-�\('
()
**0m()
-o_
-o�
-o�
,*�"('
()
,*
o�
,*o�
,*~�oV
(W
,**0C((
,8o�
,0�('
o
-o�
~�()
,o�
�i�**�((
,+o�
,#o�
,o�
��('
()
�***.(�
*0H�;���X('
���3('
���2('
���9('
��*{�*"}�*.�9('
*n()
,ripsk
zoN
*(�
*(`
*V(
}�}�*{�*{�*{�*:(�
}�*J{�oa
(b
*J~�-(�
~�*R(�
.��(�
*0"(c
r&�p(�

(d
����*0@(c
r&�p(�

~�-(e
*(f
�$oT
�
,o5
�*%5
{�*{�*{�*{�*{�*�(�
}�}�}�}�(}�}�*�{�,(&
o
sg
z{�{�{�(oh
&*:o(i
*z,{�,{�oj
}�*0,ok

sl
+
�om
X�i2�on
*0,~o

(p

(q
�~o
(r
,(s
�*r(�
}�}�}�*{�*"}�*{�*"}�*{�*"}�*0@
r@�po�
(,s:rJ�ps�
s�
(t
*0|,s�
zrb�p(�
�%rp�p�%r��p�%r��p�
�"%�%�%����('
(�,u�,��**0�-r�psk
z(u
r�pog
}�r��pog
}�r"�pog
({�(R
,
(�}�+H(v
{�ow
,6(v
{�ow
ox
}�(v
{�ow
oy
}�{�(�..+}�+}r8�pog

(R
-r�)p(z
�}�r8�po{
rpo{
rh�po{
r�po{
r��po{
r"�po{
o|
o}
+3o9
t
	(R
-(0
(�
�"%	�(O
s�
zo6
-��uO,o5
�*H?�*(*B-+(*0�
(�
(R
-+(,,{, {(~
o
oa
s�o�

�[{�(R
-@+:(,,{, {(~
o
oa
s�o�

�2�
�
,(�
�	*��
0�(~

,
o
u
-*(�
(�
-Qo
t
o�

{,s�
z(r��p(�
o
oa
{�{�(�&o
oa
{�{�(�(�
s�
(t
�
,(�
�({,{r�ps�o�
*��
~{�(R
,(s�
z{�*{�*�}�{�(R
,}*{�r@�po�
}*0) {
(�
t3|(5+
3�*0) {
(�
t3|(5+
3�*0!
-+((R

���(~
,!(~
o
u
,(~
o
oa

(R
,,	,(~
u,>(~
o
u
,-(~
o
oa
(�
,(~
o
t
o�
(R
-9(z
-/(�
-(+({�{�(�-k	,$JXT(-JdXT*(�
-1({{�{�(-*(+(-*�`,-+((~
u,((~
o
u
,(~
o
oa
(s
,8-({�{�(�rJ�ps�
s�
(t
,(z
,{�{�(�*0�"{�-{,{(�o�*{�{�(�
o�
o�
o�
r��po�
o�

	-+	oZ
�"&,o�
�,o�
�,o5
�*(67m"6E{
4Q�
0#{�-{,%{(�
o�(�
o�o�*{�{�(�o�
o�

	o�
	rK�po�
	o�
&(R
-|o�

	o�
	r�po�
	r��p(�	o�
&o�

	o�
	r�po�
	r��p(=
(�
(0
(�
(�	o�
	o�
&�"&,o�
�,o�
�,o5
�*(J��"J�
H�
0e${�()
,"{�(R
,*{�(�
}�{�(p
to�
-*oQoQo	R*0�%{�-*�$
s�
o�
(4
({�-{,"{(�
	o�	o�	o�*{�{�(�o�
o�
r��po�
r-prQp(�
(�o�
o�
&o�
rmpo�
r�prp(�
(�o�
o�
&o�
r2po�
r-prQp(�
(�rp(�o�
o�
&o�
r'po�
r�prp(�
(�r�p(�o�
o�
&�)&,
o�
�,o�
�,o5
�*ALw%�"w6�qH�0N&(�
o�

�i�iX�$o�
�io�
(�

	o�
�
	,	o5
�(4
*3
=
0RX{,s�
z(rp(�
{�{��('
(�
,u�,��**0/'{�-*
{�-{, {(�
	o�
	o�8�{�{�(�o�
o�
r4po�
r-prQp(�
(�o�
u
o�
o�
r�po�
r�prp(�
(�o�
u�)&,
o�
�,o�
�,o5
�(R
-(R
,*(�
((�
*(U��"U��U��r�p* ���*r�p*s�
z:}�(�
*0�-r�psk
z(u
r"�pog
(Ervpog

(R
-(0
(�
}r��pog
}{(R
,
(�}+H(v
{ow
,6(v
{ow
ox
}(v
{ow
oy
}{(�..+}+}r�pog

(R
-r�)p(z
�}
rpo{
rh�po{
rvpo{
r��po{
r"�po{
r�po{
o|
o}
+3o9
t
	(R
-(0
(�
�"%	�(O
s�
zo6
-��uO,o5
�*\?�0*(o�

+�
	(z
-*X�i2�*0Q)
(�
(~
,o
,
o
o�
-�
�(R
-$o
oa
(z
,(�
r�ps|
z{o
oa
(z
-(�
{	(�
,{
ݶo
oa
(B,{
ݗ(�
,�
݄}(�
}	o
oa
}o
(?{
-4{�i/)o
u
,o
t
o�
o
(?(A{
�
,(�
�	*AAE
01*
(�
}(�
}	(@�
,(�
�*"&
0�+
u
,t
o�

{
,s�
z(Cr�p(�
oa
{{��('
(�,t�}+�}(�
{l(�
}	*0�,{(R
,*{-{, {{(�
o�o�*{{{(�o�
o�

	r�po�
	r��p{(�	o�
	o�
&o�

	rPpo�
	r�pr�p{(�
(�	o�
	o�
&�"&,o�
�,o�
�,o5
�*(Xw�"X��
V��
0T-{-{,0{{(�{o�(�
o�o�*(@
{{{(�o�


{+M�o�

	rpo�
	r��p{(�	r�p(�	o�
	o�
&X�i2�o�

	r�po�
	r�pr�p{(�
(�	r��p(�
(�
(0
(�
(�	o�
	o�
&�"&,o�

�,o�
�,o5
�*(`�1"`�?
`�I
0.}(�
}	}{-{,[{(�
o�-*o�}o�{l(�
}	(�
-{	(�
(�
,**{{{(�
o�

o�
	o�
repo�
r�pr�p{(�
(�o�
u-�(0
(
(�
{l(�
}	(�
-{	(�
(�
,��o�
	o�
rpo�
r��p{(�sC
o�
	+	o�
o�
&	o�
-��	,	o5
�o�
�}
+{

on
t�
X

o�
2��"&	,	o�

�	,	o�
�,o5
�*Ad���Q�"�_�
�k
~{(R
,(s�
z{*{*�}{(R
,}
*{r@�po�
}
*v �}(�
}	(�
*0�/
(~
o
s�
u
,t
o�

r@�po�
,s�
zr�p(�
oa
�(('
(�
	t(,9o�
+o�
o�
(To6
-��,o5
�*w$�0
g0o
o(�
oo

--*os�
rp��o0
	os�
o�
*0�1�(�
r�pog

(R
-(_(�
r	pog

(R
-D(v
ow
,.(v
ow
ox
}(v
ow
oy
}+}+(�}(�
r_	pog

(R
-r�)p(z
�}-
(&
oZ
(u
9�r"�pog

(R
-(_r��pog

(R
-B(v
ow
,.(v
ow
ox
}(v
ow
oy
}+}rpo{
rh�po{
r��po{
r"�po{
o|
o}
+3o9
t(R
-(0
(�
�"%�(O
s�
zo6
-��uO
	,	o5
�{(�..*�*�*~?�0�2,	o�
/s�
*~
(�
~-?,<r�	po
u;((
,"r�	p (0
o�
u��s�
}}(e(W{
�
,(�
�	*u�
0�k(~
o
oa
}{,}(m}(s{,,}(ns�
}(u{(Y(o
(j(�
-&,{(h&+(f{(l{o�
{o�
/(u*083,	o�
/*~
(�
(d(Y�
,(�
�*-
0d4~
(�
(o(l
(�
-	(h
,#{,	-s

{	s�o�
�
,(�
�*QY
0Z3~
(�
{-	(n�8s�
}(u{o�
}(n�
,(�
�*GO
0J{-s�
}{o�
o
-{o�
(W{o�
o�
*v~(R
,(s�
z~*~*��~(R
,�*~r@�po�
�*0)5{
(�
t4|(6+
3�*0)5{
(�
t4|(6+
3�*J~-(c~*0�@s7
��;%�('
�%�('
�%�,('
�%� ('
�%Э('
�%�>('
��
+~~�~c
o0
X
~�i2�*0�6~-(c
o�
+Xo9
t�~o�
o
o�
-5~o�
o
~c
o0
-sC

o�
o
o�
&o6
-��uO
	,	o5
�,8~�io�
X�;~o�
~�io�
�*dy0�7~-(c
o�
+Io9
t:~o
o�
-+~o
~c
o0
-sC

o
o�
&o6
-��uO
	,	o5
�,8~�io�
X�;~o�
~�io�
�*Uj0S8{(g{o�
{o�
�
{�_, (~
o
u
,
o�
(g*09{o�
�
(~
o

{o�
+o9
t:%Xo�
�o6
-��uO,o5
�	u
,	t
o�
~,s�
z�%r�	p�%r�	p��"%�%	o�
,	u
�+���	(]r'
p(�
	oa
{{�9('
(�	�&,��	9�	t9

o
8�(
{(	
o


9�{
o�
o�
-
s�
(
,D
o
(
o&
o
-*(

o
s�
(�
,:o�
+(
o�
o�
o�
,
{o�
(
:-�����:o5
�*(-)V�;
"+�0b:
(~
o
u
(i,o�
�+
�&,{,�
�{�_,,o�
(i*/�0;s+

o�
+3o9
t�-	o�
,o�
o�
o�
o
o6
-��uO,o5
�(~
o

	u
,	t
o�
~,s�
z�%ra
p�%r�	p��"%�%	o�
,	u
�+���(]ro
p(�
	oa
{{�>('
(�		t>(p*@P0a<~-
~9�(~
o
oa
~(�
o�,o�-*o��io��io��i3o��io��i.*+"o��o��o��(kX2�*(~
o
oa
(v{(�
	o�
	o�
r�
po�
o�
o�
+7o�
o�
o�
-
o�
+		(ko�
-��,o5
��'&,
o�
�,o�
�	,	o5
�*4�D+��9"��J��V
0�=r0p(s
,r4p(s
,r8p(s
,*{o

-*{o�
-	s�
r0p(�
-r4p(�
-r8p(�
-+o�
+(�
o�
+o�
o�
o�
,{o�
*0�>(~
o
oa

~-
~9~(�o�
�o�o�
�o�o�
�o�o�

8�	o9
t�o�o�
o�
�o�
-o�r8p�+Hu,o�r0p�o�t�+!o�r4p�o�t�(4
�X	o6
:l����	uO,o5
�,o�o�*(v{(�o�
o�
	8&	o9
t�
o�
o�
r<po�
r�p
o�
o�
(�o�
&o�
o�

o�
-+r�po�
r�p
o�
o�
(�8�u,=r{po�
r�p
o�
o�
(�rJ
pt(�+@r\
po�
r�p
o�
o�
(�rJ
pt�(4
(�o�
&	o6
:����	uO,o5
��)&,
o�
�,o�
�,o5
�,(p*A|i�Q9�@a�"@r�=��0L?~-~,!(~
o
oa
~(�
o�*r+p(q,rIp(�
**0Q@~-~,((~
o
oa
~(�
o�o�*r+p-rMp+rIp(r*0L?~-~,!(~
o
oa
~(�
o�*rQp(q,rIp(�
**0Q@~-~,((~
o
oa
~(�
o�o�*rQp-rMp+rIp(r*0\A(~
o
oa

(v{(�o�
rspo�
r�p(�o�
u
�
,o5
�	*#-P
0�B(~
o
oa

(v{(�o�
r*po�
r�p(�o�
&,3o�
r�po�
r�p(�r�p(�o�
&�
,o5
�*#^�
0�C(�
o�

+go9
t�o&
r�po�
(
-Ao�

	(
-1	o
�o�
r�p(�
	�"%�o�
&o6
-��uO,o5
�*s~0M(m}{,8{o�
1*o�{(z
,~,
~o�
�&�*6I"0�D{o�

+Uo9
t:{o�
o�
-4s�
o�
o�
o�
o�

	o�
{o�
o6
-��uO,o5
�*amj{-(�}{*�r�p}}r�p}s�
}(�
*���r�p�s�
�����*0RE(�

(R
-(�
r��ps|
z(R
-o�
(z
,(�
r�ps|
zs�
(t
*B(�
s�
(t
*(�
*0�F(�
t�
o�
r�po�
o�
rpo�
P-(�QP,Po�
,7�,2(��ijo�
o�
�ioT
�,o5
�jo�
o�
t�
	-(�
s�
z	P(�()
,��(�
-s�
+s�
s�
	(�o�
u9,rZ�po
-(�
s�
zrZ�po�
(�
�`	,	o5
�		o�
t�

-�(+
(��"%
o�
��oZ
�%
(��(O
	s�
z*(p
}
��5
��?V�0�Go�
o�
+o9
t�o�
o6
-��uO
	,	o5
�o�
o

+Co�
o�
,*r,p(�
,o�
o�
(�X2�*+0�H�i
�i.rBps|
z/�$*(Zs6
s�
r)(p�o�
rZp�o�
(2
oV
&
+,r�6p	�o�
rZp	�o�
(2
oV
&	X
	2�r7(poV
&(P
oZ
o�
*0�Io�

(P
s�
 o�
,o�
j1o�
i�
s6
	o�
+	s�
oV
&	o�
0�oZ
�,o5
�,o5
�*h{
~�
0�J-!(~
,(~
o
oa
+~c
(�
,�i/s�
*�i
X�i
X s�
s�

8�	�(R
-	�=oh
/	�~c
+	�o�
	�Xoe
o4
o4
o.
 3r^p(�
-ropo�
s�
o�
	X
	�i?j���*0>((�
,�i/*+�
	,	o4
o.
1*X�i2�*0�K(R
,*�%,�of

8�%X�s�
+B�=oh
�;oh
12&0 r�6poV
&%X�oV
&�i2�oZ

	=oh
2	o�
+	o4
2	Xoe
+~c
o4
o.
1
(�rbp(/
(�&�i?-���*0bL
(�,/*s6
(�-*oZ
�%;�o
,
+		�(��	X
	�i2�*�o4
o.
"3!ol
Q3=oh
 .* o�
(�*0�MP�%;�of

�i/*�,r^p+Po.
s�

+5�o4
rjp(z
-+	r�p�(�
oV
&X�i2�-*,P(�(R
,*QPo4
Qo.
/r�p	oZ
,+oe
(�
Q*	oZ
o4
Q*0$N(
,sQ
+s

s�
}*{*r|p*r(R
,*r|p(z
-**0FOr�po
-,%r�po
,(��(s�
zs�

o�
**
(
��u�-	(�*o�
s�
o�
&*0xPr|p(�
,	(�*r�p(�
,	(�*(�
o�
r�po�
r�prop(�
(�o�
u�
,o5
�*57l
0Qr|p(�
,
(�*r�p(�
,
(�*(�
r8p(�

(�
o�

o�
r�po�
	o�
r�prRp(�
(�o�
&(R
-Zo�
	o�
rXpo�
r�prop(�
(�r�pr3(p(/
(�o�
&�'�"&	,	o�

�	,	o�
�,o5
�*(M��"M�
K�
0�Rr|p(�
-
r�p(�
,r�p(�
(�*(�
o�
o�
r	po�
o�
o�
&�"&,o�
�,o�
�,o5
�*(7)`"77n
5Cx
0S(�
-(�
*0_Tr�po
-*
(�
o�
o4
r�p(z
,
o�

�o�

�(s�
zr�p(�(d
�r�po�
9�r�p(��"%�(�
tOo&
r�p (0
o�
&�,o5
�(�%
o�
-r�po�
o�
&�Zr�po�
o�
&o�
r>po�
o�
&o�
r�po�
o�
&�,o5
�(�*	*(7H��"��oI0�Ur�pr�p(/
(�

((
,*r�prp(/
(�

((
,*r�pr�p(/
(�

((
,*r�prp(/
(�
*0AS~$()
,r�p(��$~$�"%�(�
t�
,o�
*0F~%()
,r�p(��%o�
~%�"%�%�(�
t�o�
&*J(c
(�(�
*0JU(R
,r�p(�
*ok

+�(o
-_�X�i2�r�ps�
(/
*{&*:(
}&*0�	
�"%r�p�%(�

(�
�*�%~c
�%~c
�%��%(�

(�
�*�%��%��%��%	���%
���%��%��})~c
}*(�
*0�V
�"%r�p�%(�

(�
�*�%~c
�%~c
�%��%(�

(�
�*�%��%��%��%	���%
���%��%��})~c
}*(�
r�po�
8�~(�o�
{)�u,{)o�
�8�{)�u*,-o�
 (0
(�

{)	(�
�*�+O{)�u�,2o�
{)(R
-rIp(s
�+���+{)(��o�
X
?4���o�
*0DWs�

+rpo�
o�
oO
&o�
o�
-�o�
�o�
*0D@�-~c
o�

+*rpo�
�,�+~c
o�
o�
X
�i2�*:{)�t**{)�*:{)��**>{)�*�*:{)�t**{)�*:{)�t**{)�*:{)�t�**{)�*:{)��**>{)�*�*:{)�t�**{)�*:{)�t�**{)�*:{)�t�**{)�*>{)	���*B{)	���*>{)
���*B{)
���*>{)�t�*.{)�*>{)�t�*.{)�*0�X{+-{*(�

(��e,o5
�(	
rpo	
�-rpo	
{*s	
(	

	(��	,	o5
�,o5
�,o5
�*4	
[	d
Tn
-Kx
0�Yr�po�

8�~(�o�
{)�-~c
o�
8�{)�u,{)�o	
8�{)�u�,#{)���-rMp+rIpo�
+Q{)�u*,/{)��*(�
r`p(0
(	
o�
+{)�t�(�o�
X

?"���o�
o	
*0�Z
,`rdpr�p(�(�
(	
s	

	(	
s�
�,o5
��
	,	o5
��
,o5
��S&�Pr�p(�(d
,7s		
(	
s�
�,o5
��,o5
��&�-s�
}+}**X4
>, L
#5X
Gd"�
��!�sA�"0y
�%r�p�%rp�%r0p�%rJp�%rdp�%rpp�%r�p�%r�p�%r�p�%	r�p�%
rp�%rHp�%r`p��(*f~--(��-~-*�~/(s
,�/(��.~.*0Y[(�
o�-�o��o�*+o��(z
-	o��*Xo��i2�*0#\(�
o�-�o��o�+t+co��r3(p(�
ot
,Ao��r3(p(/
(s
,o�r3(p(/
�o�o��*Xo��i2�(�
r8p(�
o��iX�o��iX�
o�o�
o�	o�
o��i�	o��ir3(p(/
�o�	o�o�*0!@(�
�o��o�*0m]
�!('
o
,ss
	

+I�"('
o
,s%s
	

+)�('
o
,s�s
	

+	(	

*(	
*{0*"}0*{1*"}1*{2*{3*{4*�(
}0}1}2}3}4*(
*023~5
(�
~6(�
t5�6�
,(�
�*'
023~5
(�
~6(�
t5�6�
,(�
�*'
023~7
(�
~8(�
t6�8�
,(�
�*'
023~7
(�
~8(�
t6�8�
,(�
�*'
0^~6
,o
	
*0_~8
,o	
*^(�
(7(�*b(�
(7(�*�(�
(7(�
o	
o
o�
*0�`-r�psk
z-r��psk
zs�
(�o�-(�o�-(�o�_,"s�(�o�-(��
(��o�*%Rw
>bo�o�(
o�*"(
*0a(sW
o	
*Vs�
�5s�
�7*{9*{:*{;*{<*"}=*{=*�(
}=}9}:}:}<};*0fb(
-�;*(
o�
�;
(
o�
+o9
t:
%X	o
�o6
-��uO,o5
�*+%P{>*"}>*{?*"}?*{@*"}@*{A*"}A*{B*"}B*{C*"}C*{D*"}D*023~E
(�
~F(�
t7�F�
,(�
�*'
023~E
(�
~F(�
t7�F�
,(�
�*'
0c~F
,o	
*0�d-r�	psk
z(9,
(�
(5s+

(�

	(�-*(0,o
-*o

+Uo
-r�	psk
zo
,3(,o�
o
o�
�(�o6
-��,o5
�*((	1
>'�>[b�0�e(9,
(�
(5s+

(-
�(0,o
-
�jo
+7(
(	
(,o�
o
o�
(
-���:o5
��(�*	*CD��>0�f-ra
psk
z(9,
(�
(5s

s/((1(
o
8o
(	
	-
o
8�o-o	
,
o
8�-
o
8�o
-
o
8�(
o
-
o
8�o
- 	o
,"o
rpo
��-
o
+P	(	
(-
o
+3	(
o
�!&o
�&o
�&o
�o6
:���,o5
�	o
�		(�*A|#4�#?�#J�Ic&Qw>0/g(9(<
o	
� o	
�

	(�*#
>0=h(
o

-*o	
o�
-o	
&o	
o�
-**0�i(�

(;
,o
,o
oa
(R
,(
-;,8o
o	
(R
-&o
o	
+o
oa
o
o�

	-$-(R
,,(2s�
z(2sk
z	(	
*0a(sW
o	
*.s�
�E*023~G
(�
~H(�
t8�H�
,(�
�*'
023~G
(�
~H(�
t8�H�
,(�
�*'
N(	
-(�s	
z*0=j(	
o	

s*($o(
(	
o	
-(�s	
z*0<k(:((�
(;
(=( o�

�(#�	*..>0Ll-r%�psk
z(:((�
(;
(=( o	

�(#�	*/>>0a(sW
o	
*0m~H
,o 	
*.s�
�G*{I*{J*"}J*V(
}I}J*{K*{L*f(
}Ks
}L*.(8~M*.(8~N*B(6Q(
*B(8O(
*03nP(
-(�
,o�+s
�PP(
*0,o
(;,o
,o�

-(2s�
z*0=pQ(
-0(�
,o��Ro�s
�Q*s
�Q*0R(2-#(+
(�
�"%rzp�(O
sS
z,$~R,o
o�
- �(�
s!	
z*0�qO(
-y(�
,o�+
	,Ho�,�,(
s�
(>o�,�,(
s�
(>�M�N	s
�O*�(3-#(+
(�
�"%r�p�(O
sS
z*�(4-#(+
(�
�"%r�p�(O
sS
z*B-(~
*o	
*0#r(8(
-s"	
*s"	

(
o�
8�o9
t:o�

~M	o
-
~N	o
+9�o�
,.o�
u,o�
t+o�
t�(4
s	ooo
oN
oo
rpo
��o	o#	
o
o
oo$	
o6
:����uO,o5
�*#�
v,o
-~c
*o
oa
*0<h
+/�,o4
+~c

o.
1
	��o-
X�i2�*0,s,' ŝ�
+ol
a �Z
Xo.
2�*03t{S-$(�

o
�Z}S{So�
{S*"(?
*0cusx

(@oa
+ob
o�
(%	
,
�3o6
-��
,o5
�(+
(N�"%�(O
s&	
z	*%8
F(@Q�>Q*0;ko'	
�
{X{Yo�o(	
�s6o
,o(	
z*.sJ�Z*o�**(R
�*J(�
~c
}l*f(�
}g~c
}l*j(�
}ho�
}l*j(�
}io�
}l*f(�
}j~c
}l*:(�
}k*{g*{k*{h*{i*{j*{l*>}u}v*0+@o	
o	
(z

,*o
o
(z
*>o)	
{w�*No�
o�
(z
*0?@o�
o
o�
o
(z

,*o�
o�
o�
o�
(z
*0�@,e,bo�
o�
(z

/{z{x{y(�*1{z{y{x(�*{z(�-**,{z{x{y(�*,{z{y{x(�**0�@,e,bo�
o�
(z

/{}{{{|(�*1{}{|{{(�*{}(�-**,{}{{{|(�*,{}{|{{(�**:(�
}*	
*0@{*	

�.3
�(+	
�*0�v{*	
{N
,.d
ݡ}*	
},	
{<
o-	
}.	
�}*	
+N|.	
(/	

	{>
{,	
o0	
s1	
}2	
}*	

�D�}*	
{,	
X},	
|.	
(3	
-�(+	
|.	
�*
�(4	
�*��f}*	
|.	
�*o5
*{2	
*2{2	
��*.s���*oA
*"(5	
*fs�%}�%o
}�*f(�
}�(6	
}�*0V@{�
,. *}�+-{�}�}�*}�{�o�
}�{�((
-�*{�*07w{��3{�(6	
3}�
+s�
{�}�*(�*N{�{�(z*0,xs�
}�}�{���s�
(7+*�{�.{�{�{�(**2~
(�
*{�*f(8	
r�p(�
}�*�(9	
{�,r�p(�
,}�*�(�
}�,+~c
}�}�*{�*{�*{�*0;y(�

+(�
o�3�(�
-����o5
�**")(:	
*:(�}�*�"on
&{�($
oV
&"on
&*:(�}�*�r7poV
&{�($
oV
&r7poV
&*:(�}�*>{�o�
*:(�}�*:{�oV
&*"(;	
*J(<	
~=	
o>	
*J(<	
~=	
o?	
*.s��*o@	
*0�z(�
(on
o�oo�
,g(R
,o^o\}�obo`
oT}�oR}�oW}�oV}�oZ(+	(

,(R
-~�
}�	}�}�	(}
,/(R
-'((R
,	(�,
oy(*{�*{�*{�*{�*{�*{�*"}�*{�*{�*{�*f(�
}�(6	
}�*0�{{�
{�,.g*}�r�poP
s�rp(���o�r%�p(���o�r"po
o�}�}�*}�*{�*07|{��3{�(6	
3}�
+s
{�}�*($*f(�
}�(6	
}�*0M@{�
,.6*}�r4pЃ('
(A	
o
s�}�}�*}�*{�*0+}{��3{�(6	
3}�
+s&
*(,*"(�
*"(�
*�(0
(�"%(B	
o
�(O
sS
z0}�(�
�}��*�{�-)(0
(�"%(B	
o
�(O
sS
z(y
*�{�-)(0
(�"%(B	
o
�(O
sS
z(�
*f(�
}�(6	
}�*0@{�
,*}�*{�*0+~{��3{�(6	
3}�
+s6
*(<*f(�
}�(6	
}�*0�{�
{�,	;�*}�o
9�(�oQ9�oK
9�r`poP
s�
(�(R
-F(�(�u�,
oP

+$(0
(0�"%(��(O
sS
zr�p	o�r�p(���o�r�p(���o�}�}�*}�*{�*07�{��3{�(6	
3}�
+s>
{�}�*(D*0��(�
~?%-&~>��sC	
%�?(8+~@%-&~>��sC	
%�@(9+(:+
X��}�~A%-&~>��sC	
%�A(;+~B%-&~>��sF	
%�B(<+oG	
+oH	

{�	oI	
	(=+�o6
-��
,o5
�*�&�
0L(R
,*o.
{��i2*{�o.
�
-*+�(�
,*X�i2�*.sI��*o�
*0d{�o�
oJ	
,O{�o�
oK	
oL	
-5{�o�
oK	
oM	
-{�o�
oK	
oN	
��***.sN��*2oO	
o
*r(�
}�}�}�*2{�o9
*0.k{�o6

{�X}�,{�{��**N{�o8
}�*�(�
}}}X}{o
1o
}*2{o9
*0f@{-.{o3
}
+{o6
&X
{2�{o6
&{X}{{X{�*>}}*�(�
}}}X}{o
1o
}*�{/(�sS
z{{{XoX
*�{X}{{X{�*"}*�(�
}	}
}X}{�i1	�i}*�{/(�sS
z{	{
{X�*�{X}{
{X{�*"}*{
*"}
*{*"}*.sf�*(

*�s0
%s3
%s:
o;
s4
o5
o�*0!�(�
(w-
oP	
+(Q	
o2
(

,
�(R	
-���1o5
�9�s�

oP	
+b(Q	
	o2
o�
o9
oS	
+#(T	
	oU	
o�
	oV	
o�
(W	
-���2o5
�(R	
-���1o5
�	��o�
~	o
t-(n~	or
*(n*('?�0�ao�0��(o
oX	
3)oY	
o2
(}
,o9
oZ	
3
,-r�p+r�p+-r�p+r^ps�
sZ

oP	
8z(Q	
-|on
&+o2
(}
9�o2
(o

o[	

o\	
	o]	
o2
o^	
,co@
oV
&,on
&o
ok
&,on
&o_	
,o_	
ok
&,on
&o`	
(oV
&+o@
oV
&|on
&	o9
oS	

8k
(T	
	-	,on
&o2
(}
9�oU	
oV
&o2
oU	
oV	
(3+~o
t-~o2
oU	
(�~�3oU	
(qo2
o}o�
-oU	
(qo2
oU	
oV	
(lo 
~or
-r�6p+r+poV
&oV
&+`~s-K(_
oU	
o�
-oU	
(qoU	
�%oU	
�oa	
	o]	
oU	
oV
&	
(W	
:�����
�2o5
�(R	
:z�����1o5
�,)~oZ
~J
(b	
rp	oc	
(2
+5rpoV
&	oc	
oV
&~oZ
~J
(b	
(�
o.
~t1((+
(�"%~t���(O
sS
z*A4i~�v��~-'~s-r��p(i
rp(�
+rp�*�(o~rHp(�
~J
(b	
(�
*~(+
(�"%�(O
s�
z�~�s
(8
�s7
(8
�*.su�*0s�(_

o�
-(�od	
(e	
-of	
r,po�
-(�og	
s�

	oh	
Q	o�
�	,	o5
�,o5
�*J\
B$f
0z�(�
rLp(F
t�
,*o�}o�}o�o�}*~~oi	
��}~oi	
��}�}*{*{*{*0e��~-[r�p(
t�
,o��o��+(~�oi	
���~�oi	
�����*.({~*.({~*V(�
}}*J{{oj	
*2{o�
*6{o�
*&(~*R{t�ok	
*J{t�ol	
*&(�*�*(m	
*.s��>*o.
*BSJBv4.0.30319l��#~d�d�#StringsȤ4#US��#GUID���#BlobW_�	�3��B�z�m	�e�L����2+f=�����B���B���>F֝�B��B��B
ڙ�

ˢ�
����B ���Ƞ�J�����[�����Ӟ��=���g���y���������������BDl�BDo�������أ�B��Br��B��~l=�~lm���
Z���0"
f��
I��{�"���
���q��l�70�m���
��
S[�
���

���_�
N��b�:��1������H��K���'�B
��Ô)��V^m���������8�����U�70D�����
62�y��
]2�
q���69m
Ma��ؒ���]���:���O'�]m.�C�����
���
����J�c:�����p���m"�>"�1>"ѱ>"�>��^&%���&5���
^OF^�^�^�~l�^���������&���&6���&ݛ��&ޢ��&���&,���&w���72��&d5���"*?�"q>&�&&�Z��&6���	��&�	��&w��B&r]���"�>J"ۖ=�&G&����u�"n0"&|��"�7>&����I�&�d��&��&B9,��&����{w���"��d"�>"����C���ּ�>"�:>H��"�n�d�m^.2�.�n���"�n��"�m�d"��"�>����@���d�������?��)���Z���
��^�~^�X^��^`�^�W^��^����ϓ��=���&{0��&W��&��������n��B'��>�,mިm
*��*��*�^�*���k*���k*��k*��k������$�A������]��H[A����������}������:��<��3���*��k*��k*r��k�����Z���O��bY���������T��V���������
���
���
���������ߤ���^��
�V�
���Ŋ�����c���������������
K��

�m�


#�
���<}�-���
 Q�

;��
���
����
q���
���`1���������
���

?��

V��
؜��
�0�

���
��������������������
�?�

�(f
9���&��
c(f�m
)��
]��
���
�7��
)
�
�V�
��
�17e�}��T���۞��Y���
��7e]��
�$�

�&�

"�
�����t:m�mg�70
�2�

��2<U�k���l
$��

�Z����70<�l�l�!BD��BD%�ll�~l
4�

B��
a���
Y��

�8�

��

D��

N��

��

���

���
G�

���
*��
,��

���

���

�87e
<(�

���

���
�[7e
�!�

5��

'(�

��7eT�70
�/7e
1���
�������<��6�[�6Z��6�Q�
K�
]��
��
�^�/����6�ذ6��ذ6�[ذ6�sذ
-��

Ф�

�7e
[;7e
�7e
��

�7e
��7e
�7e
��7e
�&7e
]7e
�7e~6�
'�7e
ld7e
�7e
"��

�d7e
��

.�7e
QL7eO��
���

��

�(�
�������
��(f
��(f
�z7e
3�7e
)�7e2<U���
6�
���M���
���O'��>
d�
��
��
M&�"�"�
��������gBD
���K��Ń�/��X�`�������c�B�z��u�ގ�
��l�
C��
�$�&�0��
Ȼ�
/�2�!�����:&�&hJ&�&
w&�&��&^�&�T��.�2�&s&#�&A&m�
ּ��
�8���_������B����"�'�!��:#��>�n
>��n
>8n
���:|���:�-��:����:o���:���>�n
l�I����x���o=�$��0�������|���֦�����P��[�����70&d0���`�V��VB��S�"����"�S�"�SS�"E���"����"�T��"�T��"^���.��.���.2��.t��"����7
.������
I,��,�����h���I�����_�������,��������������&������
>���b�"
?���
� 2��j��Fr�k����)"J�6��2�j�F���e�����m<���
������
�q�m	��
���
g"��}�^�^��^�^X�^u�^�^^:���b"*�]�&�y��&�Y3���&B&A���&Z���&B���&J���&����&�&�&X���B"n>"�1>"��&n��>����'"����"����":2>"_2>"<�>S^&u>��"�>�������������@���^�^}�^�^��^��^\^�^&B��&ͥ��&.v��&�[��3M��*��*�^�*���k*���kd�������������{��|A�XU��U���U��.U��F��9P���*���k���@��`���_��*���k*.��k*���k*���k*��k!2���0��R��2�����������������Х��
Ԫ��
���
����
cA�
Q�
�
��,	"
~��

#,�
���
`,�*<��
-M�����
5����70
̟�

xd�

6,��c��
���
��qy,m��l�l�nl70"
�*7e�A�Q<��
�7e
\(f
��

	 �

�7e
���

�ˬ
�*�

��7e
�x7e
��

F7e
_7e
:7e
�V7e9n��
B��
-���
j��7d��
�H�
���
h�
��b�8��S�1�	9��n�9������D;����
��%���	���e
�Z�"<A�&	�&�_&��&Ӛ&*&���
,�>:��������
�d�����
 ��;$��P��N!��i���%	���<��x��B��j"���kZ�
	����t���:��
�ib�����:5���?�Y��iڦ�����
��>��>��n
>�/��d���>W/n
0Q"X{"
؜Ô
���&�
��
*m�6�ذr�Bk ������L���k����+��E�b�Nm�Ô�
V�r��X�e�2�]32�!^��l��n�nl��t�l��3�!bl�`6���l��7��l�d=�bl�L@�@al��B��|l��E�^�l��I���l�J���l�J���bl��J���l��K��`l�LK�
Ml��U1�l��X'�/l��Z,�7l��\1��l��b=zl��cA�tl��eF�#l��fI%bl�`k]��l��lf�l�drn�:l��uw�;l����BZl�������4������4������4���v5�4�����4�����65���j�65�����65���r565����65������������.���������-������^����Ty���(�����*������-�����6%����7�����;����B�.���E�Y�
����;!�
�����Z�
����]�
��t#�
�\!�
���+�
�	�
,�
�
�\I�
���[�
�����
�
�$+�
�
��+�
��
Z�
��U1�
������
���^�
���+�
����"�
�j3�
�g��

����
�X��

����
�c��
�~��
�
V�
�9��
5����
7zR�
�CF#�
�C_+�
�Nky#�
O�� �
�P�\��
�R�s��
�U���
�X�a6�
�]���
�`�~�
�g����
�l�[��
�l����
qn�Q��
up�!�
�r�<�
�t��<�
�u�����
y|�9<�
�~�""�
�~���<�
��	%#�
����
���AT�
���J�
������
�����
F�\�
��M"�
�� ��
��>5�
��R]��
��h-�
��u�G�
������
J����
���+Y�
��g'�
��$��
����#�
�^S�
����#�
��R��
b�rQ�
��f|�
�!�����
�'���L7e)��7e�*��7e,
� 7e�8%�[7e1DR�$77e�IZL�7e9Mu�[7e1P�b�7e�R���*7e�T�k+7e�T���^7eT��1�7eT��7e�T���(7eX��<L7eX�qL7e0X��^7e�Z
�\7em\A\7em_�*7e�`_^7em`^7emc �]7e�j)`\7emn1 �	7e�r8�7e8s?�+7e���v�7e���]7em���R7e����[7e1���)7e����7e���][7e����\7em��I^7em��v[7e���}^7em����7e���B]7e���y7e���L7e���1^7em���^7em����7e����7e��.[7e���~\7em	X77eD
	377eD;	\7e�]	�\7e�a	�=L7ed	M7e�v	�f*7e�{	��7e��	s�7e�2�	G[7e�8�	�7e�9�	E77eD<�	���kDB�	X]�k�C
����k�E
��k9J
��*�k�N-
���kDN6
��k,PE
���k,RN
����k,WX
���kDXa
���k�Xc
��kD\g
Ev�k�\s
|��kD`s
�w�k�`|
W��k�d|
-D�f�
2Z-D�hC�E���jX6F���j[d�q�j_q%�q�mj�%�qu��1��au�(���yz����y}����y�����y��2���y��������4�����U�����������H��������-B���+;-B����5;-B����-B���0'-B����&-B�����-B���l�-B���W�-B���N�-B�����-B��
��H-B��
;-B��
m-B�
�-B��5
-B��>
-B��P
�-B��V
�/;-B��j
�5����
�5����
������
�.3����
�j1����
������
E3���
3���
��1����
�]����
��K���
��
���
������
���B���
���B���
h��B���
1cq���q	��q-;fq5Qq	y�}q��S+q����@q���[q����*q� �[q�&��q�'��� q�-����B�0��\�B�0�6F�B�5�)\�B�9��6�B�>��B�>�E�B�E�E�B�G�]�B�I'�]�B�K,�M*�B�M0t�S?O3�S@U�TE|�TG��XG!>�ZI�s�_O���gOҒ�m[���q[�xMu[�,�w\a�w^�,�x`�,�xb�,�xd��xf��xj�{l�~n��oG��p4���q�X��r�F��s���t����u����v����wpB��x���y�M�������S���KS����S����S���aS����S����S����S���pS��4���!>���(�����������%���������A����������0��
������2���r��������{y���tHt��cHt�SHt��t��2��!>����������&H��.
��6K��>!\��F!>��HH��K!>��M*9��P
��TҨ�X���	\ن�
`!>�e��h8%�l!>�t�Z�w��Z�{�+�~�����+�������,��������!�s~�/�s~�0�s~�1�V�2�s~�3�V�4�s~�6�V�7�V�8�s~�9�s~�=�!>�>�S���GS��cGS�yGS�1>GS���GS���GS���GS��<GS��<GS��s��c�5�cQ��P�Y�c1d�c��d��e�'qGm�d��d�>d(�Gf�S��pGS���GS���GQ�a
GQ��*Ad�?d�dȫdy�d�Pd�Pd,}d
�d=�&dPd�40d]Hd�5d��do�>d~d�d,$dpd�dG�DG�hG+�GdV��G.1GF�Kd�Tdf�]dvfd޿G�od�4td�dGA yd�gG	adR�}d�DG�dGc|G�kG!�}�d$w�dV�O
G�s�d��GG	GgS�d�d(	4�dL�yd|G0�Gg�DGIDG�dGJ�G��dAWG{`G���dppG�hG|��d�hG�UujQ�d�Ru1<��d1Hd+��dV��G.1G�n�dF�Kd�Tdf�]d޿G�od�4tdQ�>
G��d/�d^��d��d�R�d��d���d�w�d=xe��eQ��u=xe�Re�F e�hG�G^pGAHGzDG}GtPG�gG��GDG�yG	MG[OG`G��GtsG�OG��G�|G;�G�}G7DG@	GܓGs�G�tG	AG��GuaG�YG��G_GG�4G�G�G�dGw�Gn�G��G�YG
G��G�PGYG|G�jG��G�tGZG$G(RGLnG=@�c�@�c�v�c��G@	GG�Gh�GKG�dG��GbaGbrG�G�gGDG�sG'/G?�G"�G �GGj`G�G�LG�jG|G=@�c�@�c�v�c���)���X3yG-e'qGg�2e1=Ou�;7e��d�K<e0P6yGBe>dGe�TLe��5�Ye�1nOu1)�7e1�7e1��7e1B�G1�G1��G�A^ee^ecge�cpe6�{e��Go>������e1�G�eܼ�eV�1�6�j�e6��e��e��d1�Z�c3�Y�c1}Y�e!3}d3#�e���e�&�e�"dDoGg�G!#�e!���e���e!ۡ�e�2�e.3�e
3�eW3�e�36��d!���e1�G�e���e�G3#�e�V�e��e���e�V��!�eV�5"�eV����eS��GS�<GS���GS�F�GQ���GQ���GQ�q�GQ���GQ�l�GQ���GQ�2�GQ���GQ�B�GS��GS�T�GS���GS���GS���GS�f�GS�a�GS���GS�)�GS��GS�|�GQ�W�GQ���GQ�N6GQ��/�1���e1{��eF*�e�df�fƾf�e
ff
f]ifc�G�fQ0 f�0d
G1O��e1J��e3G���e��d!�V%f3#�esIfg�G���eqG�G���e��*fv�G���eqG�G	GdUd���eqG}�GV~/f���e]�Gv�GT�2eGYd��G�V��U/fV���/fV�<�/fV��/fT�2e>d>d!�fG>d! fG�Ldg�GqG�GT�4f.1G�K=f@�d�5�cT�G3#�e�V�eTgHf�&d�gZf3#�e�$d!�V�e!��ef!�jf!�of!��tfTd���e��eQ���LTyfN�Gۡ�e���eC~fB��e��eL�f�R�e��dM�d�.d5H�f��G@�d��d�@d[dI-d5-d��d���dlXGRd�d�0&�d��d?��f1��61l�61��6+��f���fY#�f7"�f� �fy!�f'!�f;+�f�d��d=�d&G��c1�6�(d3#�eۡ�e���eC~f� �fy!�f'!�f1�6�V��yfV�,�yfV�ּyfV���yf1�Y�c��G�dqG�f 4d�
d�3�f���e�Gddg�GZTfLTyf�3d�5d!v��f·�f,��f3#�e�T�f���fc�f�b�fw?�f�og�~�f�oG~fG�iG1Գ�fg�G
�GgG	��e��G�GGxG�d��G!�mg�}GS
d�oG�fG�jGӼd��GG!��G1�Z!g1x!g6��&gg�Ge�d���e�x2e1BY�c1�6��d�V�e3#�eQ���G�V�e3#�eV+g�qdY�0g
(�e�Qd�0d�Q5gN$d~�dtS:g�q?ge$d�G�V���:gV��r:gF**f�0dF**f�V���5gV���5gV+g��0g�'�e�/r�d�
G1	Y�c1mZDg�Ig�56�56�nGjG�2eTjG�2es}2eF*�e4�64�)64��6�56�56!�V�e�?Ng)Sgn����.Jd�0dV+g�?d�"d0�Go7Xg����\���]g$�bg��d� gg�lg� gg1Ru�lg��]g.M6�7Xgm#gg�V��rqgV���qgV���qgQ��oG�vgfG6��{g3�g�"dȊ6fG63�g�"dZ�6��guge}u�g�ugeD�6 tgesge3}d�"dD�6��3�g�"dȊ6Z�69o�g1(-61l�6161.61��61O(61��6���g�2ejGF*�gw��g{�de�d�d��d_�d<��g@�d�dWWd6�6S�[�G��0g��0g��0g֑0g��0g�0g��0g��0gz�0gߋ0g�0g1�]6161��61��61O961�(61x;61
-61O�61��61�-61m�614(61��61)61��61�61N.61�61�;6 �d��d�<��Gq�G��gn�������gw��g�Nf=�f���g���g[��g��g�V�g��g���g5W�g]X�g��g�V�gyX�g��Q���G��d/)���)�eb)���)�e�>G
AG�>G%��R�g�V���gV����g���g.M6�2d���>�6<�3}d�"d)��g�X�g%��X�g)��g��<�3}d�"d�X�g�Td���g�X�gy�g�36���g�V�5��gV�l��gV����g�L�g�dn����R�q�G��g<�3}d�"d�X�g)��g�V�g�Sd%��X�g)��g�V�gn����n����n����n��Q��oG'N�g��g!�V�e��6�61fG1ѷ�f1��fs�g}u�g�u�g�t�gu�g�s�gcs�gyt�g���gF*�g�^hŹG�GO�GܲG��Gs�d��d�Vd=�d��d4t*64��61�)6�W�c�4ge45�g5geW5ge�4ge�5�g�5h6�h�G�Lhn����v�0g1�96T�hH�h�5h�4ge�d=�bg�5�ga4�e�3h�Lh1Ru�5�ga4�e1VY$hgv)h�>�e�jGQ��AGQ�xAGQ�`AGQ�IAGFl4hv�g���gF*�e�Lhql>h�V��rChV��ChV���Ch�V�ijHhV���HhV���Hh�2GF4�gI�Mhq��cI�Mhq��c1.�6�u2ev$Q���G1;Z!g1ZY!g1<�6�%Rh<�G�d��61Wh9\h1�{ah1�lah�Kfh1@!ah1�ah�Kfh18vah1y�ah1&�ah�Kfh1@!ah1+�ah1ɺah�Kfh1@!ah�Kfh1O�ah1E�ah�Kfh1�KfhT�2e�Gg�GQ�djGQ��eG�V��
khV��khphS�GS��G�uh)�uh�kh�d��dg�G�zh�@d�Ahc=#���h���h���h�O�c�&d�5�cS�hGS�JhGS�5hG^�d-Of�X�h
�e:��hd��h�eG(�hF*�h��e���h��nkG�x2eCx2e��G�jG�CGG{�hQ�DGQ�GkGQ�,CGQ�kGQ�9�GQ�{�GQ�-kGQ�{GHl�?�l�?�~G�A�c��c��h�Qd�Z=#Q�1�GQ���Q�`�GQ���Q���.>�h�5�cԑS�BeGS�%�S�9�\3�h;�N�[v�h3{b�h.>G��1f�u
t2e�s2et2e2t2ex4d���h3}d�V����hV����hV�X��hV����hV����hO��hjrd2d�dG>'d�yGGi�A	i)i�&d4mG�AG�BdMiG9�GG*�GC|2e�d�d��d5Ed�'i9�GG*�G�Lf�-G����i[�d�d��d5Ed9�GG)�d[�d�qd4mG�X"iI'iK^�c7�u*�G��6�d��d5Edky,i�/1i8��gQ�.�GQ�:�GQ�}
GQ�I�G4z2e�x2e4mGQ��V�MfyVd�hG,WdQ�6Gi;i�;ipmGz'd#�d�mGBG��G��6�@io�6*[Ji�mGBG��G��d�dF�TiqG�jG�{d��d�=.�G��6�JYi��6�ci�.mimG�Kge�Iri��^e^�^e �eJ �e^ �ed�Gzi�V��0dV��50dV�d50d�w�d_�i6g�i��i��iu�i,�i�V�x�dV���dV���dV�[�dV���dV���dV�P��d���i��i'�ir��i)8}d�DG�V�'�dV�X�dV��O�d�V�x�dV�S��dV����d
y2eqGl��iS��i_��i_�iS��i_��i_�iS�Y�GS��GS�Y�GS��GS�Y�GS��GS��GS�Y�GS�qGS��GS�Y�GS��GS�Y�GS��GS�Y�GS��GS�Y�GS��GS�Y�GS��GS��GS��G�|��L_'��L>2�i��G�o�V�x�iV��7�iV��$�iV�}��iV���iV����iV�Y��iV�c��iV�:�iV�+��iV� ��iV�Z��iV�ɂ�iV���iV�΂�iV����iV�M��iV�h
�iV����iV����iV����iV���iV����iV����iV���iV����iV�:�iV�w��iV��.�iV�<��iV�^��iV���i��iv�i�^�i6g�iw�i��i�j�|�2e6g�2eP�2e�^�iM\j_j�j�jq�d��G���e>�Gk0d�V�'
#jV��#j�V�o�(jV�tH(j1
G&
G�6v�G6g-j�2jgG���eg�G
�G��G�GGxG�3G�|�Dj6_Ij�|��f6Td�|��f6�|�Dj6_Nj!D^Sj6gXj(]jrjgj6grjwj���j��@��j���jo���@��jo���@��do���@�3G�4ge6g�j��j1�Y!g1ZY!g@�G6g�j_�jK�k�[v�j��jb�d\�d<&�j��uh�V��jV�٠�j�V�[m�jV���jV���jV�N��jV�-M�jV���jV��M�jV�5=�jV�X�jV����jV����jV�uM�jV�W�jS���GS���GS���GS�2�GS��GS�n�GS�`GS��HGS�`GS�>GS�9JGS��GS�%rGS��GS���G6g�j��j��j^�j�jP �N;X �D0 _ �N;g �N;�jv ��X�"� ��}�� ��}� ��0�� ��0�� ����� �Z� ��7� ��� �+ �!�6 "!����!�̭")!�J��6!�[�D!�z��	Q!���	_!�}��
l!����
z!��F��!�S��!�S�!�����!����!��p�
�!�C��
�!�V��
�!��*��!�_,��!�Z��"�o�"���'"��5"�UP�B"�dPP"�0�]"�Fk"�sP�x"��P�"�$���"�8�"�"�aw��"�|w"�"�(��"��F��"��F��"���"��#��F�#��F�#��Z
,#��;#���I#�&$$ W#�ژ!e#��"r#��p"#��Y"�#���"�#��>"�#�x�#�#�x�$�#�h[
&�#�D0 '�#��b(�#��b))�#��0,$���/$��`0*$��`19$��`)3I$��`86Y$��?9h$��5�j:�$��b�j:�%��bk<�&�.k>�&�$.%k?�&��6kA'�@.AkAP �N;C('��P�+C/'�N;RkC@'�N;1,F�)�<�[kG�)�<�ekG�*�mrkH+�T;
I���zkI<+��O�kK,�Sb�kL-�vb�kN.��w�kOx.��F�kP�.��X�kR�/�0w�kS@0�
*�kX�0�n�5Y�0�XC�Z�0�<CXZh1�C��\�1�{��\�1��=\42���k]�2�N;_�2�(�:_�2�.�Da�2�G�Nc`5���kf�5���hP �N;i6�HA�i6�hA"i$6�@�j,6�;@"jK6���kS6�ܫ�k[6��"kd6����kl6�Q�l�6�Q"l�6��P�m�6��P"m�6�G}�n�6�d}"n�6�$��ko�6�U��ko�6�'P�o�6�EP"o�6��4lp7��4lp
7�+~�q7�F~"q,7��r47�6$�rF7�B$"rV7���s^7�vH�sf7��H"so7�$�lt�7�ک�kt�7���ltP �N;t�7��d�t�7��dt�7��D�u�7��Du�7�i�v�7�ivP �N;w�7���#lw�7�N;w8�N;(lw8�L	�x*8�S	x88�/�.lyE8��8lyR8��jBly_8�rrLlyl8�L	�y�8�S	y�8�/�.lz�8��8lz�8��jBlz9�rrLlzP �N;z#9�N;z29�yh�{:9�Vl{Q9�\l|h9��� @}�9��4bl}�9��hl}:��`F}:��aF~$:�N;7:�N;nlU:�Q �
�]:�c �m:�21��x:��d���:��d��:����:�N;��:�N;��:�c��	��:�v�vl��:��g���:��g� ;�a��(;�-a"�4;�ih��P �N;��;�N;jI��;��D���;��D��;��d���;��d��;�r|���;��|��;��k���;��k��;�V�}l�x<���l��2�G�N��2�(�:��<�.�D��<�N;���t2<��f��l��/H�l���O�l��<��v�l��<�w�l��
L	���
S	��
/�.l��
�8l��
�jBl�P �N;�=��b�l�P=�Gb�l�0>��`�l�t>��a�l��
yh���Vl��\l���� @���4bl�X ��hl�X �0��X ��`F�X ��`�l�X ��aF�X �b�l��>�;b�l�h?�AL�l�@�/L�l��@��b�l��A�w�l�P �N;��A�N;�(B�N;W�tB�N;nl��B�\��
��B�E�l��B�����C��v�l�C��vm�C�L	��%C�S	�.C�\���6C�g�"�.C����?C��"�KC����SC�$�"�KC�(��\C�C"�hC�ϖ
m�uC�?8�	��C�����C�;m��C���m��C�r���C���C�D���C�Z"��C������C�����C��D��D��vm��D�����E��h���E�ǚ��E�ǚ�F���
��F����F���%m�G���.m��G��:m�}H������H�N;��H�N;@m�,I�&|��4I�2|�KI�;���SI�H��jI�r��rI���I��D���I��D��I�XD���I�iD�P �N;��I�N;��I��d���I��d��I�R����I�\���I�N;Gm�,J�N;Nm�cJ�N;Ym��J�N;em��J�N;pm�4K�N;{m��K�ɒ�m��K������K�!���K����K�KW���K��`���K�N;��K�N;��K�p���K��p��K�i���K�i�L����m�L����m�P �N;�L�i��L�i�P �N;�(L�h>�m��M�ni�m� O����m��O��X�m� Q�eV�m��Q�*m�m�VR�gU
n��R�Cmn�R�w�&nLS�i~0nAT�Q�<n	UT��XxT�ykFn
�T���Mn U��MXtU��*Vn�V���]n�V���]nP �N;LW�T;
�X���dn�X�N;�X�N;jn�X�L	��X�S	�X�/�.l�X��8l�X��jBl�X��nqnY�L	�<Y�S	SY��nqnnY��nvn�Y�/�.l�Y��8l�Y��jBlP �N;�Y�N;�Y�yh��Y�VlZ�\lZ��� @�Z��4bl�Z��hl�Z��`F�Z��aF�Z��|n �Z�eR�n �Z��w�l �Z�,x�l �Z��n [���n [���n [���� [����n  [����n H[�N;�n \�R�o)8]��: o3`��<o;`b��n~oF�b�2�oKPd�IR�oRTg��O�oVlg�l�oW8h�nC�\Xh�
�=_�h�z\�o`�h��G�oa�i��Qpd�j��1pg4l���:pq�l�F�Tpu(m�]Lcpw�m�qpx8n��7�pz�n�i�p|�p��i�p~Hq����p��r�-��p� u�	�p��u���p��v���p�4w��q�tw��Yq��w��Yq��x�T;
��x�N;!q��x��i,q��x�Jo?q�pz��RKq�{��lUq��{�iF_q�|�[Fiq��|�؁sq��|�JM}q�}����q��}����q�~����q�p~�e��q��~�bm�q�k���q�P �N;�������	��q�T���a�q���.`�q�,��8s�q�����L�q�d��rn�q���̱r�����tr�,����r����| r���z'r������2r����*�9r��2�<b����N;����������Cr�����aKr����`Rr�Ж�$sYr�ė��L`r�ܙ�^ngr�����nr�����tur�|����}r����{�r�P���y�r�$�����r�t����r��2�<b�@��	>�ɴ�N;�Ѵ��r�ش�*0�r�ߴ�N;������r����~��r������r��N;Ѵ���rش�0�r��-@�r\���@�r���sv�rܵ�i����5�r��N;��B�P��P��r��F/�r	����a�q@��V`�q���`s�q���L�q�2�<b���N;���-�,��7��r���6/�r ����aKr"���C`Rr$���MsYr&����L`r'�2�<b)���	>)ɴ�N;)V���r)]��*0�r)ߴ�N;)d�����r)v��~��r*������r,���N;-V����r-]��0�r-���-@�r-����@�r-��sv�r-\��i�-s���5�r.��N;/���r��/���T��1(��е�:2q��N;3z��N;3���	���4���	Ä�$4���	��4���	���5���	OVn07	��:�70��Z9S��þ�9a��Ʀ:o��f:F;�����;���!��<������=���	D��?�����r?���js@���sA����sCG��G:�DP �N;DP���c�D����O�F��T;
G ����sG0����2sJ���X�2sMD����sPT����2sSl���[>sV���M>sX<����HsZ�����Us^\����\s_���е�`P �N;`E��N;``}���d�b���s]b���T�csb����ose����~si�����sm��~y�so��~y�sp ���8qm��Jt�ss���T;
tP �N;t���N;�stt��$P�u|���c�u����c�sv
��T;
w��XN;w���Qy�swh��>y�sx���zJ�sy���c�s{���P�s}���N;�I�������������N;	t�p���st����-Xt�&��
�h�\��T�"t������+t�\��B���������0���7������
��L��w���\��
���(��
���4��������������x�����������������@���6t�d���������M$�����L���������4����>t�H�����������Nt����c{"t������Wt����s{dt�����spt�����|t���L��t�`��y�t�����{�t����u�o����v�o���kv�>���ei�t�M���s�o�X��x�o�c��x�o�p��K:�t���Jy�o���:�t�@���?�t����8�t����6�t�4��>�t����f4�t�t��cP�t�����T�t�����B
u���:Au���@\0u�4��R�;u�@�0�=�d����=����������Hu�p��kVu���H�cu�����cu����cu�3�V�cu�q���cu���o�cu���+cu�@���cu�L�T�cu����=ou���|u�$�to�X���������äk�'���k�=�>�d��$����s����y��u���y��u�
�"7�u�"�"7�u�8��A�u���T;
�P �N;�W��F�u�^�	������@��%���T;
����g�u���{��u��,��u�\��f������u���E��u��A��u@�T;
��N;vl��i�	��N;��N;�u��e&�u��
���
�(o�3�6o<��"�u������X$�J�H��.T�е���-F�uH�g�v	�Z���c�P �N;#�N;$v2�	�| ?��H) M���0 \���8 l��U8 |���A ���A ��N;�#��	��$����$$����+v%���1v%D��j�'��A�9v'��N;(�N;@v(!�ǡGv),��Mv)t�w6�,P �N;-�?Xv-�$?^v-%��?ev.-��?kv.6�M?rv/>�d?xv/G��@v0N��@�v0V�N;1i�N;�1x��2�2���2�2 �s�3\���v4����$5��W��v6`�	��v6~�N;�v8��	J��9��	�v�!9P �N;9���F�v9��	���9��@��%9��T;
9���!9-�N;=5�N;==�N;�v=T�	V�v?���"�u?����?
��?�E_�@X �Q_"@�,��vAI�f�!BX��"C����!C��x�vD��C�vE" ��x�vE+ ��C�vF3 �N;�vFB ���GJ �N;�vGY �	��Hf �	�=�Hs �=��!H� �ى�!I�
�| J��H) J���0 K���8 M��U8 P���A S�&�A W�
7��[���$[�
���\�
B��v\�
S�\�
m��\�
�v�!\�
���\��x�v\��C�v]�
��]�
�=�]�U��!]���!^�
��_�
�Z_�
��v_�
��_�
=��v_�
�L#_�
.��_�
t1�_�
�hn"_�
ʦ�:_�
�w_�
�3w_�
�c�_�
�c_�
�6l#`�
�6l#a�
r�l#b�
��l#c�
�l#d�
�l#e�
#l#f�
El#g�
��l#h�
��l#i��j����j���k�j��!l���!m���n����o��xwp��C�vp�
��p�
ܲ�p�
���p����p���wq���s�M�#wt�W�*wu�ox1wv�ox8ww���?wx���?wy� �N;Fwz� ���{� ����{� �g��{!�u�3H{�!��Mw|"��=��"��=Ww�("��=��8"��\w�,#��	iw��#�k
rw��#�
yw�$��=Ww�$��=��,$�Ҫ�w��$���w�p%��-E�p&���� '�7�.�(�f�0(����!��(����!�h)��d��*�����,+����w��+�ģ��+����X,���?w��,���!��,����w��-�a��w��/�.i�!�D0�P��!�<1����w��1�����32����M2�!��x2���?w��2�T;
�	3�N;�L�3�	���%3�	�Z�23�	��v�D3�	���Q3�	)��v�r3�	pL#�3�	����3�	`1���3�	zhn"��3�	���:��3�	݄w��3�	�3w��3�	�c���3�	�c��3�	�6l#�4�	�6l#�4�	^�l#�!4�	��l#�/4�	Ӗl#�=4�	��l#�K4���X4�����f4����t4�	l#��4�	1l#��4�	z�l#��4�	��l#��4�V��!��4����!��4�f���4�������N;��4�N;�u���
����
��4��"�u�h5�����5�X$���5�е���5�zE�u��6�g��w�8�AJ�w�\8�E��w�9�QJ�w��9�]I���9�7I��:�JI��%:�Z���6:�c��P �N;�?:�N;V�\:��d��d:�R���l:���!�t:�N;x��:���!��:�Π���:���x��:�N;���:��d���:�R����:���!��:�����:��T���:�N;V�;���!�#;�T���+;��d��3;�N;l�_;�N; x��;�5Y���;���!��;�l����;�Π���;�	~0x��;�s]��;�G����;�N;��;�����;��$�<�N;F�(<�N;�1<����@<�R����<�N;��<����
=�N;�=�/p��P=��E�u�>�g�6x�F?��L��N?��L"�W?�Z���h?�c��P �N;�q?�N;��?�����?�����?��d���?��d��?�ei=�@�أ��+@�N;�Y@�N;��@�	����@������@�9�Fx��@�	L	���@�	S	��@��HPx��@�����@�,�"��@��4\xA�s�A�
s@A�x�gA�e��A����A���h�A���bx	B���,B���jx
C���jx�C�o�jx�D�أ��E�b<qx�E�N;�E�N;�vF�	V�v8F��"�u�F�f�!�F���!��xw��C�v�F��xw�F��C�vq?�N;�F����?����F�L	��F�S	4G�N;FwCG�g{x^G�fg�xyG�|C�x�G�yg�x�G�m��xpH�-g�x�H����xPI��U�x!�I�V�."�I���w$J�W�*w&�J�ox1w'|K�ox8w((L��x�x)�L��x�x+�أ�-�2�b<qx-P �N;/�M�T;
/�M�N;/DN�N;�x/�N�	k�r6�N����6�N�ތ"6O����x7O�0X�73O�NX7<O�	��8IO�ެ�8QO���8iO�Fy9�O�+y9�O� +
y9�O�Y�y:�O��%�:�O��%:�O�ǡGv;�O���y;�O�m� y;P���&y;Q���,y;(Q��3y<>Q����<KQ�	���<kQ�	��<~Q�	���=�Q���"=�Q�	]��>�Q�s�">�Q����?�Q���"?�Q�0R9y@�Q�FR?y@!R�m@�A)R��@"A2R�@��B:R�[�"BVR���C^R��"CzR����D�R���"D�R����E�R�ŕ"E�R�U!�F�R�� �F�R�
!�F�R�	� �F�R�	���F�R�,��F�R�-��F@S���F�S�	V�vF�S�+�F�S�C"F�S�B#FyG�S�gELyGT��KRyG2T��E]yGMT�"cyGiT�TiyGqT�%ToyG�T�~�vyH�T���+vH�T����H�T���H�T�cB|yIU�Q��yI�U�	ܲ�I�U���"I�E_�JX �Q_"JV�2�KdV�:"KtV�-7�yL�V�D7�yM�V���yN�V���yO�V��H�yP�V��H�yQ�V�uI�yR�V��I�ySW�ߝTW�ߝWV0W�ߝ�yY�W���[�W���y[�Y�=��x^8Z�sm�y_|[���a�[����a\�q��ya1\�@���ybG\��l�ybY\��bzbk\�Āzb}\��Uzb�\�-?$zb�\��~zb�\�k�zb�\���/zb�\�O��d�]�l�d_��NeQ_��
7zg�_��7Azi�_����!j�`�@�Hzk\a�ї�.lb����.n�b�f�!p�b�SIOzq�b��IVzrc��sZc�5�s�2���tcc���]ztcc���fzwmc����z{c���_{�c���oz��c���|z��c�;�l��c��U�z��c��U�z��c�}O�z��c�}O�z��c��I�z��c�>O�z� d�>O�z�=d�����Hd����w�Xd�0���xd�D��z��d���w��d�X��Te��6]z�Te��6fz�^e���z�^e���z�ie�W�*w�we�ox1w��e�ox8w��e�����e����z��e� C�z�Dg����$h���x�|i���z�8j��B�k��"�z�Tk��T{�0o�2�_�>o�&�oz�>o�&�|z�Lo���!��q������q��c��q�����q���Pr�	+��v�]r�	�R��er�(�#w��r�]�?w��r���?w��r��N��r�����r����r�w�V�{c�y�_��c�qUl��r�`Ox��r�����r�'����r��6V�r���l�r����0o�Т_s��
s�	c�s�	��5�N;!s�N;�u0s�FyKs�ǡGvfs�� �qs�U!�|s�
!��s��%{�s�gELy�s��E]y�s��"�uAt���+v\t�cB|y�E_�X �Q_"wt���y�t���y�t����xTu����!tu��BFwPr�	+��v]r�	�R��u�T;
s�	����N;�u�N;�u�N;�u�N;0{!v�L��)v�e�"2v�ȿ�Hv�տXv��rev�z���v�Mf��v�4Tiy�v�����v���"�v��d��v��d
w��;{(w��jA{bw��jI{!�w���Q{#�w���_{'yx�Y�r(�x�Y�h{(�x��j=)y��q{*by��N{{.�y�@��{0�y��{4@z���1v7�z�	�1v9�z�	��{;�{�1��{>�|��k�{BT}����{F�}�� 9vI�}�A�9vJ�}��j�K~���K~���{Kd~�е�O�~�T;
O�~�N;O�~��
�O�~��
"O�~�}3�{P�~��3�{P�~���!Q�~����Q�~��G�R�~��G"R�~��G�S��G"S���T��"T�Z��U5�c�U>�,T�VF�CT�VO�TiyWW�%ToyW��j�X�5�A�9vXs���Y{�-�"Y���=Z���1v[��#�=]��N;^��N;�{^5���{_=��N;Fw_L��t��{`g���b�{`���{T|`����o
|`���`?|`Ӏ��b�{`���~�{`	���#|`$��C/|`���J�9|d����fzgX����|zjЂ��U�zo@��JbI|s���}O�zx���0��{���D��z}���6fz�|����z���&�|z�h���lV|�D���oV|����G?V|�����be|����TV|�����V|����|~V|�����X}|����T;
����N;�ȏ�N;W����Oo�����f��
���i����gf����i��(��SD�|����`D�|�̐�
�|����!�|� ���f=�D����|�ؓ�%D�|�$���N�|�̔��N�|�����|�ԕ�qD}�d��@��'}�L��T;
�_��	���p����y��	�������������W��������ח����ߗ��"���������������	�����������	Z���-��c��6��	�r�>���x�G��	�e��X��f�d����$����	������	/��P �N;�Ș�&D}�ؘ�&L}����Z����.��ݙ��W}����^}�0���h}�s���W}�����^}�ǚ����К����ښ�1�q}���N;�P �N;���N;z}�ƛ�����Λ����֛�����ޛ��}����Ǽ����;
�����Oo������f����i����vG�}����T;
�P �N;�Ý�N;�ҝ�	���ڝ�	(�"���	Z�����	c����7��}�t�����}����O��}����2�}G��е�h��N;p��N;����ux]��������TQ�}ԟ����}��T;
5�N;,��	V�vh��������"����� ��������"�}�E_�X �Q_"�����}	����}
 �����}���xw����C�v��������xw����C�v���f�!��!��!
J��5�`����!ã�T;
ϣ�N;ޣ�N;�v���U�}*���q�2���q";����}D����}���*e�"����'!Ĥ�ò�̤�	V�v��	P��9��@S�}A��OS�}`���"�uȥ�wq�}��TQ�}��cQ�}��Qe�}"���'5���\���Ħ��'!˦�e��"Ӧ���������!����!B��f�!����!���<������!��F��!����Q"ب���D����$\����k��N; s���
� ����
 ����~!P �N;"��)*x"�X$�"�2���"$��=*?w"-��N;?w#J��)*x$T���i$���X$�$����$D��l�~$h����&~����~'���[
�)ū�w
)Ы�U�}*���*e�"*���/�*���/*,��̐�}+4����}+=��N��,E��`�",P���"�}-���we-Ȭ�0:-֬�f�!-����!.{���C�v/����xw/�����$/�����0����C�v2í��xw2˭�N;2��sN~2���NZ~4���M~4}��LN)~7���T;
9Ư�N;1~9ϯ�N;8~:د�N;;���?~;��	�i�;��		j;!���n�<.���n<<��	.j�=I��	Aj=P �N;>W��N;�>f��B��?n��N��?w��B��@��P��@���N;E~A���N;P~D����n�H����nH��.j�I��AjI���]J`��	�i�Jq��		jJ���	"]Kα�B��Kֱ�N��K߱�B��L��P��L��P}]M��b}]Md���^~M����o�=Nز��|g~O����p~P��=My~QD��4�k7R�����x7U������7WT�����Xw����Y���T;
Y���N;Y���N;1~Y̴�U�}Z���*e�"Z��	�>�~ZA�����ZL��	
�Zy��	 Z���	V�v[A��?��[ĵ�L�[��$6�\A��96\T��V"�]\��m""]e��?��^�����^���	q��~^�����^�����!^��D��~_0���?`��0:`���(�~`Ը���` ��-��a���U�b�����b8�����~cr����.e������!g ����hL����!hԼ�m]�~i]���ekl����!k������!l���*��!mĽ�>��nT�����n���J�~nǾ���q���eq����$q�����r��N;�~t4�����~x<��؃�xD���xM��2��yU��G�y^��7�~zf����zp���l#z����l#{ݿ�N;|����6&|���R��|��� �~|��V"�|��m""|#��?��}0��E_�}Y��Q_"}����2�~~����K�~~�Mq�~��2�~��������̜[.������������������(�����6��� �~�?�����S��	6���[������d��j��l��ܓ��t��{l#�����l#���N;�~������~����:�~���?�~�l��ij�~�u������{a�����Q�����	����������D�������.������������.�,��3��.�[������w��9�����!��~����e������T;
����N;����M��������~����N;#���| �~���7�~������~�F����-�S����4�^����;�p����N����@�[�`��QG�.�h���Hd�x���H{����H}�=����~��h������L��Ԧ��������"��X���,������6���[��?��M��H������T������P �N;�������X����������[���M�������������:����������������!�����F���
����
�����J�~��
]���
O]������
�)	���
�)	��\��N;�d��N;��m��N;1~�v��������7������U�"����	�������	��"����sV������V"����#�����0�"���s"����i�"��	j0��	Y��=��	j�"K��	C��X��	T�"f�����s��ү"���	܈����	�"���y�����������t"����dt"��������������Qu"����+����=����u"�	!��ԋ�	.��ߋ	<���s"�
I��ה�
V����"
d��vg�q���g��Ns"����	������	�����	�r"�
���,)(�
���a)(������4�����4����7�@����p�@����,(����,(�$��չL�2����L�@��z-(�N���-(�\���X�j���X�x��0*(����Y*(����K�d����v�d�����'(�����'(� ����p�!���;�p�"���E��#���1�|�#����x7#�����7% �����!&L����!'h����k7(x��	�~]+���	2�+���	nn�,���	�n,���	���-���	.��.���N;/���N;��/���+G�0���>G�0������1��N;�1��N;��2)��i��31���"�39���""3B�����4J��N;�4Y��+G�5d���c��5����v�>7P �N;8T��N;�8c��N;��9r��i��:z���"�:����"":���L��;���N;��;���I2A����t؀A���Qu�3A����u؀A������A���ē�A����s؀B���r؀B	��N;�B��N;�5C<��N;vlER��i�	FZ���"�Fb���""Fk�����Gs����G{��N;G���N;��I���i��J����"�J����""J������K���L��K���N;K���N;K���N;�L���N;�N���N;�/P#��	%o�RC��7�/Rh��N;��T}��N;�W������\������\���KV�\���I��\������\���B��\���"]\t���i�\���	j\���Y��]���j�"]��C��^��T�"^7�����_@��ү"_���܈�`����"`���ה�a�����"a���vg�b����gb3��,)(�cF��a)(�dY����4�el���4�f��7�@�g���p�@�h����,(�i����,(�j���չL�k�����L�l��� ��m��X��n��z-(�o*���-(�p=���X�qP���X�rc��0*(�sv��Y*(�t���K�d�u���v�d�v����'(�w����'(�x����p�y���;�p�z�����P{����p~|���[p~}��V�p~~`��@��<��߈�t��{���������5����x7�G�����7�W��4�k7�l���1����=My~�L��R^~�����p%������w6�����k������?������iF�����w)M�����T��8����[��h��-M�����a�b������	i�����.M��(����p��X��i*M�������w�����E(M�������~����a���2�[��x��X�1����zK���4��CW������Έ�����i�������������r.���@���.�����/���4��Yv������Z.������T;
���:��(�����1������:�����D��!���M���F��P �N;�X��N;����Ͼ�����ݾ����	Œ�}����	ތ�}����H6�1����V6΁����d6�1����t6΁�������1������Ձ����Xd�1����hd܁�����V�3����*e�"���	����1��	��"�I���y������y�Q������l��Ы�����	5�������������	�N��
��	�N��D������h��	A���p��	O�����	�������	8��}����	M��}����	X��}����	n��}����	��}���	(��}���	H���5��	b�"�P��	h���y��	��"����{��1����,6�1����:6΁����	"�����	9�"��	����*��	
��H��	��}�P��	/��}�Y��	���}�a��	���}�j�����1������Ձ�r��	%���|��	M�����	d������	���}����	���}����	�����	��^��	�h���y��	���}����	���}����	��}����	��}����	j��}����	}��}����	������	'���,��g���P��	�������	�������	ߴ���	@��}���	Y��}�$��o���H��	`��P��\���X��v�
�����	/������&������A�������1����"�����������&����	�������	�������m��1����w�Ձ�����,�����,�����-%��-���-%��@���'1��S��(1��f��C�=��y��U�=������8I�����!9I�����\(U�����l(U�����;U�����F;U������a�����a��$��z�m��7����m��J��)�y��]��;�y��p��K�������\��������(l#�����(l#�����l#����l#���&������A������l#���l#.������A������T��.l#g��*.l#	z������
����������5q����	�>����	�>��	�>�
��	�>
7��	�@�H��	�@h���)��������
��X���wep��we�����Ed/2����2 ��*�h��������L������Ȃ ����т,���oق������ٽ����oق������"����$8���K�$t���K�$�����%����&���W
�&����)��� "�+���+�,���3�.�p=�1��_�4\���I�5����Q�7��ِ9��̜Y�:��>8b�=�	�K�Q�@�	�s�k�B�
�$�Q�D0��F���G���s�HP��{�J<�t�Q�M����"O��‹�P�]��Q'�ڎ�R=�n��SS���Ti�܏�U������V�-��X����Y(����Zp���[�����~\<����!^��w���_�A9��`8��(��ah�h;��b���,��c�@���dt�����e���-��f�]���g|�&(ăh��}�˃i�	)�!jH���!kx�l�҃l��m]كm����!n���ot�E.�!p����q�N	�r8��;5r��2�sL��is����!s���\t�>��v����vX����v��7��v
��;5v/��0w@�B�s�wJ����yd��I�{��	ݶ�|��	��|��	���|��	���|���I�~|����������J�~�k�	�\��~�	]����	������	�����	������	�����	[�����	m�����	�����	������	������	8�����	��"���	�	����	�	���	(��� �	"K�� �	]K�� �	kN�� �	�N��( �	%��0 �	`�9 �	�h��A �	�8��U �	�8��i �	�:��| �	;��� �T;
�e!�N;���|!�Ե���!��R���!�N;	���!�M���!���遗�!�>"���!�J""��!����~�5�N;�"�N;7#�"�����#"�����,"����4"�����<"����~�j"�N;���"�+����"�i�	��"��"���"��""��"�Ä�3��"�OV�3��"�!����"�SX���"�N;�#�Ե��#�Ä�3�##�OV�3�>#�N;�N#�t���V#�N;��z#�+����#�i�	��#��"���#��""��#�XT���#�mT"��#�OV�3��#�SX���#�N;#���#���遬�#�OV�3�$�N;*��$��x1��$�	����"$�	����+$�	���+$�	����0$����~�^$�N;#��m$���遱u$�N;��$������$�ҭ"��$�	�����$�NK���$��K;5��$�����:%��V���5������$�� ���5�	1��T%�����\%�ȃ�e%����m%� ��v%�	����y%�����%����%���.��%�f:��z&�K�5��&��o7���&�N;��&�(����&�=���&�N;s���&�`���&�r
���&�/����&�B��'�N;�'�e��"�'���!� '�N;�'�e��"�'���!�('�N;��L'�+���T'�i�	�\'��"��d'��""�m'��S��u'��S"�~'�kX�3��'��V�3��'�!����'��X���'��V���'�N;��'�Ե���'�Ä�3�(�kX�3�(��V�3�7(�N;�@(�Vz��m(�iz��(��z?���(��zE���(��V��)��V��)�G���I)�]��p)������)�����)������)���*����E*�%��l*������*�����*�%����*�6��+�����A+����h+�e����+�z���+��f���+��f"�,�d��5,�@d"�\,�����,��"��,�Q���,�h"��,���%-�#"�L-��
��u-�"��-��BL���-��K�~��.��2�~��.�̜[.�0�l�S��1��^��p1�Mq�~��1��9h���2��h���3��c���4�$P��7(�N;��5�n����5�~��6��z?��=6��zE��x6��y���6�z��6������6���� 7�%���M7�6��t7�
{���7�,{��7��z���7��z�8�����I8����p8�e����8�z���8��f���8��f"�9��BL��49��K�~��9��2�~��9�̜[.��:��
p��l;��y�	�;�Q��	`<�3���	�<�Mq�~	�<��9h�
	�>��h�	�?��c�	�@�$P�	4A�N;cI	QA����	YA���	aA���	iA�N;7#	A����	�A���	�A�N;1~	�A�N;��	�A�N;	�A��|�	�A�	V�v	�1�|�	B�N�-	4B�f��-	�B����!	�B�n���	�B�L	HC� ��.	PC����	�C���	�C����	�C��		D�	�)	�	D�	�)	� 	%D�|��!	-D����!	6D���"	>D���"	P �N;#	HD��^��#	<E�	���$	�E��c��&	�E��v�>(	tF�
�;)	�F�
���,	HG�
���.	�G���ф0	0H�,��3	|H�ֆ�6	�I����7	J��/�8	FJ��m�:	}J�T;
<	�J�N;E~<	�J�N;P~?	K�7��C	K�U�"C	-K����D	5K���"D	RK�	sV�E	ZK�	�V"E	wK�	#��F	K�	0�"F	�5����G	�5����G	���KV�G	���I��G	������G	�5�B��G	�K�	�s"�G	�
�]G	�K�	�t"�G	L�R��G	L�	dt"�G	,L�	Qu"�G	|L�	�u"�G	�L�	��G	�L�	��G	�L�	+��H	M�	=�H	2M�	y��I	CM�	��I	hM�	�t"�J	�M�	���J	�M�	βJ	�M�	�r"�K	<N�	���K	MN�	��K	oN�	Ns"�L	�N�S�.L	�N��N	�=My~N	�N�m��O	8O��"�P	~O��+�Q	�O�Yl+�S	�Q�˻+�U	$R���+�W	S����Y	�S����Z	T���Z	PT��1Z	�T�lW[	�T��W7�[	�2�CW��\	8V�CW@�]	@W���k7_	KW���x7b	UW����7d	`W�v�P�e	�W�:�e�h	DX��}w�j	�5�{��n	�5�i���o	�5�?��q	��w6�r	�X���x7t	8Y����7v	|Y�4�k7w	�Y��)	�z	�Y��)	�{	�Y��)��|	Z��F�}	LZ�	6��	TZ����	]Z�ܓ��	eZ�j��	mZ�T;
�	�Z��s؀�	�Z�t���	�Z�Qu�3�	�Z�gu��	�Z��t؀�	�Z�u���	�Z��u؀�	�Z��u���	�Z��r؀�	�Z��r���	�Z�I2�	�Z�W���	�Z�N;���	([���΅�	0[���ԅ�	9[�N;ԅ�	5�N;�	H[�N;ۅ�	X[�	NK⅏	�[�l腏	�[�	���	�[�	��	
\���	%\����!�	e\��)�	�\�����	�\�����	]����	7(�N;�	"]�9�K&�	=]�	R��}�	E]�	d��}�	T]�`9���	g]�q9���	z]��K�~�	�]��2�~�	�]�̜[.�	�]�Mq�~�	 ^��9��	q^�T;
�	}^� ���	�^�-���	�^��^��	�^�=�$��	�^�N;�	�^���΅�	�^���ԅ�	_�OV؀�	_�ZV���	_�N;+��	._�B�<&�	6_�N�{�	?_�)*!�	G_�3*��	P_�NKⅩ	X_��Kۅ�	a_�R���	i_���6&�	P �N;�	�_�N;��	�_����	�_�����	�_�����	�_����	��^��	�_�T�9��	D`�	6���	L`�����	U`�ܓ��	]`�j��	e`�B�<&�	m`�N�{�	v`�)*!�	~`�3*��	�`���F��	�`���M��	�`�T�9��	���:U��	a�{a�	ka��\��	ua�ijU��	a��Q�	����e��	�����M��	���!�U��	w��9��	�a�e���	�a�N;�	�a�T;
�	b���l��	4b��w�>�	_b�Ԧu��	pb���}��	�b������	�b������	c������	hc�����	�c��7���	d�i��	8d�i�	Kd��e��	kd��e�	�d�[<��	�d�p<"�	�d�N;�	e�H}�=�	$e�H}Ć�	De��>h!�	f��^��	�g�T;
�	�g��]�	�g��]�	�g�O]�	h�i>h!�	Fh�i��	Wh�i�	uh�N;�	}h�N;��	�h�N;��	�h�H}2<�	Hi�z>͆�	mi��^��	�i�b2��	�i�p2�	�i�$��	�i�2
��		j�0lֆ�	$j��^��	�j��^��	k�A��	;k�&A��	uh�N;�	Sk�rr"��	�k�IX؀�	�k�T�9��	�k�?�.�	�k� ��.�	�k�����	$l�����	]l����	uh�N;�	pl��^��	�^�N;�	Xm�l�	sm���9��	�m��^��	P �N;�	�i�b2��	�i�p2�	n�Uy���	)n�ay���	Dn�����	mn�����	�n�IX�3�	�n��^��	�o�����	p���
Vp�H��
�^�N;
qp��>�
�p�?
�p��w�
�p��w%�
�p�Iz,�
q�\z2�
,q��^�
,r���9�	
�^�N;
�r�b2�
�r�p2
�r�$�
�r�2
�
P �N;
P �N;
�r��!C�
-s�Y��
4s�e�I�
<s�7��
Rs��!�
hs��^�
~s���
�s����
�s��-�
�s�=��
�s�C��
�s�o�
t���
t�1�
.t����
Dt�D��
Zt�zu�
pt�z�
�t��q�
�t�q��
�t���
�t�;&�
�t�y��
�t��1�

u�"{�
 u��(�
6u�X\�
Lu��>�
bu�a(�
xu��(�
�u��<�
�u��
�
�u�q��
�u�(��
�u�6�
�u�*_�
v���
(v��J�
>v�T��
Tv�A2�
jv���
�v�8U�
�v���
�v����
�v�p�
�v�0�
�v��;�
w��$�
w�bd�
0w���
Fw����
\w����
rw���
�w��#�
�w�<��
�w����
�w��*�
�w��*�
�w��+�
x��+�
"x�<,�
8x�B+�
Nx�]$�
dx�n+�
zx�m��
�x���
�x��+�
�x��Z�
�x��9�
�x��?�
�x�/�
y���
*y�s��
@y����
Vy����
ly�2�
�y�]_�
�y���
�y��#�
�y�Ί�
�y�r4�
�y�$>�
z��r�
z��;�
2z�,�
Hz�+�
^z��8�
tz��*�
�z�F��
�z��$�
�z��6�
�z�I��
�z�n%�
�z����
{�o�
${����
:{��1�
P{�Yg�
f{��.�
|{��r�
�{�S{�
�{��~�
�{���
�{�H�
�{�_�
|����
|��.�
,|��D�
B|����
X|��7�
n|���
�|�i�
�|�դ�
�|�1y�
�|���
�|��l�
�|�ԉ�
}���
}��
4}��;�
J}�a-�
`}�ȳ�
v}���
�}�
��
�}�Z��
�}�WV�
�}���
�}�?)�
�}�˸�
~�L��
&~��i�
<~��,�
R~�us�
h~���
~~�~�
�~�p�
�~�9��
�~�#��
�~����
�~����
�^��
��t�
.��-�
D����
Z�@t�
p��o�
��ι�
��,u�
��
��
���u�
�����
��=*�

��Y��
 ���s�
6�����
L��<g�
b���'�
x��*s�
�����
���t��
����r�
Ѐ�
#�
��b~�
����
��,<�
(����
>��,/�
T��H�
j��%��
���/�
����W�
���l�
�fe�
؁��m�
�� ��
���
�����
0��B=�
F���"�
\���#�
r����
���	�
�����
���<�
ʂ�^�
��/�
���A#�
����
"�����
8�����
N�����
d���N�
z����
���B��
������
���Y��
҃�]��
����
���b��
�����
*��>��
@���!�
V��|��
l����
���P�
��� ��
�����
Ą�J��
ڄ����
��4��
��{�
�����
2���%�
H��D��
^��"8�
t����
������
�����
�����
̅����
���
����h�
�����
$��>i�
:��&��
P���%�
f�����
|��Ԟ�
���f��
�����
���]��
Ԇ���
��P��
��j��
��49�
,��(�
B��[;�
X���,�
n��3��
������
����-�
���P��
Ƈ�(�
܇�p��
���(�
����
��_��
4����
J��خ�
`��8.�
v��ڻ�
����M�
�����
���r��
Έ���
��U��
����.�
��V/�
&����
<�����
R��i#�
h��0�
~���K�
���}�
���4�
���5�
։��;�
��=�
��,z�
���z�
.����
D��a��
Z�����
p����
������
������
���b��
Ȋ�9��
ފ��c�
���f�

���
 ��#�
6����
L���
�
b�����
x��6��
���q��
������
���L��
Ћ�oz�
���y�
���G��
�����
(��s��
>��گ�
T���z�
j��|z�
���7��
�����
���Cf�
Œ��u�
،���
����
��WF�
��Uu�
0�����
F��4��
\��<��
r��I�
���2u�
����P�
���L�
ʍ��k�
���%�
����%�
��d�
"���<�
8��|!�
N���L�
d��	��
z��`^�
���%�
���&Q�
������
Ҏ���
��.��
���&��
��:%�
*���1�
@��C��
V��R�
l�����
���^7�
���X�
����Q�
���
ڏ��E�
�����
��"�
��\R�
2�����
H�����
^�����
t��v��
�����
�����
���b�
̐�8C�
���!�
����%�
�����
$�����
:�����
P��9��
f�����
|��I@�
�����
������
���[��
ԑ�}��
����
����
���
,�����
B��%��
X���"�
n���#�
���FE�
���!I�
����I�
ƒ��E�
ܒ��S�
��w��
�����
��HB�
4���$�
J�����
`��n�
v�����
���^o�
�����
����d�
���
����
�����
��u��
&��T�
<���S�
R��V�
h��(p�
~��l��
���Y�
������
���;��
֔��D�
��@��
��f��
��B��
.���N�
D��\&�
Z�����
p����
������
����<�
����#�
ȕ��9�
ޕ�-��
��ۛ�

��R�
 ���]�
6����
L��(��
b���W�
x��}��
���0��
����q�
������
Ж�%S�
���F�
���^q�
�����
(��9Q�
>��Ї�
T���
�
j���<�
���E�
���0
�
����/�
—��1�
ؗ�-��
��<��
�����
��_'�
0��N�
F���N�
\���M�
r��cM�
����6�
���-~�
������
ʘ���
��T��
����z�
�����
"�����
8��J�
N��9��
d��k8�
z���=�
P �N;
����!C�
ə�Y��
Й�e�I�
ؙ�'�
����
���h�
���&�
0��>|�
F��U��
\���O�
r��K��
����W�
���WW�
����g�
ʚ���
�����
������
����
"��U�
8���h�
N��u.�
Z��Nc
P �N;
u��
�P�
���&�
���0��
P �N;
ě�\�W�
�2�I�
L��'�.
���'�.
\��’t
����^�
T��v��.
ɟ�̅
џ���t
P �N;
ڟ�T;

�����
��sf�
$����o�
���x��D"
ġ�Y�f#
���|�$
Ԣ���|�%
������&
j���='
w��U%��(
�������(
�������,
���	5^�.
���+!W�.
�����/
����VƇ0
$��hY·2
���$Z·3
פ�a�{4
��a�Շ5
̥�P��9
\��n%�<
d��}
=
l��}��=
t��#�{>
}��	^�?
P �N;?
���T;
?
����?
����C
��$E
ة��I.�F
���H4�F
	��s�F
��
sF
)���d�G
;���dG
I��N;H
T��T;
H
̪��I.�H
�����:�H
���H4�H
����H
 ���"H
3����I
E���"I
X��N;J
`��T;
J
����I.�J
���H4�J
��v@�J
����J
���J
+�����K
=����K
X��N;L
P��T;
L
���I.�L
����F�L
&���H4�L
-����L
?���"L
T��K�M
���-K�M
���FK�N
έ�`K�N
X��N;O
��T;
O
p���I.�O
�����L�O
����H4�O
�����O
����"O
X��N;P
̮�T;
P
����I.�P
"���H4�P
)��+��P
;��=�"P
N����Q
`��/�"Q
X��N;R
t��T;
R
˯�}BR�R
��%X�R
���N;R
��0�^�R
��gEd�R
/��Fj�R
F���Ep�R
���N;R
]��ߺv�R
���N;R
t��N;R
|���H4�R
�����|�R
�������S
���:��U
���!���V
ð�ZW
˰�˕��W
Ұ���;W
��'v��X
ı�T;
X
���X
ӱ�N;Y
۱�N;�Y
���s]Z
����Z
���Z
 ��N;��[
D��N;]
\��a���_
�������b
���ujÈd
ò�Z��e
˲�a�ʈe
ز�a�ӈh

��:v�ol
���u�om
@���u�on
d��a�{o
�5�	5^�p
P �N;p
����%߈p
���%�q
H�����s
��p���u
������x
ܶ��g�z
���>/�|
���y�@�
��7J��
����Q��
(����[��
X��a�{�
�5�	5^��
P �N;�
f��N;�
n��Z&�<�
�2��%�O�
�����W��
���1�f��
��ԧ��
������
P �N;�
��N;�
8��Z&�<�
����%�O�
���̆m��
û�߆s��
̻�ƍ��
Ի�Ս"�
ݻ�^���
��u�"�
ӱ�N;�
ӱ�N;�
���i=�
����{z��
H��~v�>�
��������
��F����
0��,q���
���@a����
n��N;�
���Z���
����4\x�
����E���
��j���
��F�=�
,��j���
8��j���
���N;�
���N;̉�
��N;���
U��N;Ӊ�
h��>㉹
����@�
�����
����>���
���~O�
�����Ӊ�
L��1��
����&�
����R�
@��?U��
[���}��
f���}���
t���}��
D���Q��
������
R���R#��
_����.��
m����:��
v��x�G��
����QS��
�����^��
�����j��
����w2<�
����w��
����$�
����~��
@�������
f��N;���
{��N;���
���N;���
���N;���
���R���
���@M��
���OV���
����Ċ�
����͊�
h��N;׊�
���N;��
���)*���
���s�
����e��
����h!�
���$����
����>��
�������
�������
���\��
����z]�
������

��^���
$������
T���g��
h��B?��
(���r"��
���N;3��
���N;;��
������
���D��
���m��
'���{]�
D��T;
�
���N;J��
|��N;���+lS����alS����������i�����C����s]���:Y� ����a�P��zJh������o�(���z����ذ��	���Q��������
X��2x�����7���L�����h��a�È����yы ���;ы|��Z�ы<������\��?�2��@���@ы�Z�����m��5���X���Fы�����؋ �����$L���Kы%|���K�&б��C$'8��'���(���ujÈ,����C-4����.��N;02��T;
0@�����0���N;�3�����a6t�����7���p��8d��59����l�:������:������:d�����:���I'�:$��k4�<��fq�=��H�>�=<���q�>t��&�>�>�����>�?@������@\����H�A���N;E���N;T�E�����F����F����G����G��
3[�H��va�H4��Hvo�H��z1{�I��,|��J�����L%������MC�����/NS���{��Pk���{��Qu��~��DS���~���T���~���V���~���X��U���[���k�Ȍ]��&2Ҍ_H��Tq܌a��؊�d,�����it��\���j���x��o����] �u ���1�zD��9�|����9����T;
���N;����K��<��K������������������е��7���$�o�����֩T����-�����w2<���w��P �N;���Z�����6k��|��v��|
�y{����
�������_�������������_�o���v�����@��o���^w�o�
�v{����T;
�ӱ�N;�l��E��t�F"�}��w2<����w����N;����w2<����w����N;��
�O̍����׍��~���P �N;���N;�����i�	��������
�����
��"��
"]��
\���
Y����
j�"��
C����
T�"��
܈���
�"��
�n���
�n��
�����
����
�r"���
 ����
X����
%o����	L�`E���N;����bc��Yr�%��gr
��0��r
�`�ur
���	�d����	;'����	�y����G����&����N;���0-�V�I��e�I�"���
�,�����3���N;�L�!�$m��)�1m�2��A��:��A�C��B��K��B"�T�#-:������A��(���-E���#-�
���#-P�����P����&����6����������'����'W��T��'W�����c�������h�����pm�,��L��Aw����~� �Ձ�

�5�����5����5� 4�|!��k��2��k�!����
�!����
�5�f��
���i���
������
�5�9r�
�!�L��
�!�J-��
�!�4���!��A�I�!��A���!��A�I�!�?-�� �!�`-!�!��-��"�!��-��$�!�~�$&�!�U-Ď'�!�-rʎ)�!��r�,�!�pԎ,�!���Ԏ0�!�N;4�!���-E4t#�Ac�
6�#��-5"8(%��Z9x%����9&��:@'�\.:�(��-:L+�6��;l+���;t+�'�;|!��k�<�2��k<�!�+c=�!�6cĎ>�!�9�@�!�#MߎA�!�MߎC�!�{c5"E�!�M�F�!�kc�F�+�N;H|!��k�H�2��kH�+���I�,�����J-���-EM/��X�O�/��Q�0��XCGQ�0�%��Sp1�P��U�2��O�V�1��%�X>2�6��Z\2���Zc2�'��DZ�2��/1�[�2��/1�\3��Q=�]3�R
^�3��QG�^�4��QN�_d5��`�5���"`8�U�a�8�рU�c�9��el;���We4<���h�?�8��j�?�G�"jL@�S��k�@�g�"kA��$l|A�*�m$B�P�o�B��'b�o@C�o�q�C�e��q�C�N;q+D�T;
qhD�#-�
q�D�&�s�5����s�5���s�5� 4�s|!��k�s�2��ks�!����t�!����t�5�f��t���i���t������t�5�9r�t�!�L��t�!�J-��t�!�4��|�!��A�I��!��A����!��A�I��!�?-����!�`-��!��-����!��-����!�~�$��!�U-Ď��!�-rʎ��!��r���!�pԎ��!���Ԏ��D�N;��Vcj���D���p���F�-����`G��r���H�.�����H��'����I�]����(J��Z���,K��X����K����K��ŏ��� �Џ��� t׏��L�N;���L�!����L�y���M�K�A� M�����M�c/����M���@N��
���O�G��HP����lP�(&��R��u�=��R��"���R�p/*��2S��gX�HS��gX��2�T;
��S�$m���S�N;��S�N;�tT�N;�
�V���3��dV���;���V�>m���V�Wm��V�����V�����V�ͽ���V�޽�W�9���W�J��!W��L��0W��L��;W����JW����ZW��M��iW��M��tW�=���W�1=���W�X���W�X���W�����W���"��W�{����W���"��W�aM�
�W�qM�
X�W�
X�W�
$X��
�X��D�
�Y��K�
([�T;

�[��S�
�[��K�
�[�^[Z�
X\��Za�
�]�G�9
�]���J
1^�N;
9^�'�
A^�'"
J^���
R^��"
[^�$m�
c^��A�
k^����
s^�N;W
�^�N;
�^�ȷi�
�^�۷i�
H_��Zu�
�_�[u�
P �N;
�_����
`�[��
&`�#-��
>`�
���!
W`�0��%
���&�%
x`����%
a�����*
5a�h[�9+
@a�A	vl-
`a�T;
.
va�$m�.
~a��A�.
�a����.
�a�v��.
�a�	�".
�a����/
�a�N;��/
�^�N;3
�a��Q=�3
`b�	���4
hb�	���4
qb��p�5
yb��p5
�b�i�6
�b�i6
�b��{�7
�b��{"7
�b����8
�b���"8
�b�O=�9
�b�_=9
�b���:
�b��:
P �N;;
�b��J��;
(c��J��<
xc��JȐ=
P �N;>
�c�$.%k>
�d�.k@
he�@.AkA
xg��ϐC
�g�Χ֐C
h��-�E
�h�A	vlF
�h�T;
G
�h�>�G
8i�T�H
�i�M!
I
�i���I
�i�u.�J
@j�NcJ
�j�A	vlK
�j�m��L
P �N;M
�j�T;
M
�j�-�JM
�j��l�M
k�mM
k�N;�N
�^�N;P
!k��H؀P
)k��I�P
�^�N;P
1k�N;��P
Kk����uQ
Wk�H��uQ
ck�r �%Q
tk���%Q
�k� �%Q
�k�''�Q
l�h
R
Ll�� �R
�l�N
T
>m��
T
jm�1 
T
�m��.#�T
�m�f,�U
�n�}m7�U
o�?�>�V
Po��K�X
�o�yGP�Y
�o�Vt2<Y
�o����lZ
Pp��G�l[
P �N;]
��LFP]
P �N;^
P �N;^
dp�%[�^
�p�T;
`
P �N;`
�p��c�`
�p��a
�p�i�b
�p�6c
�p�N;d
�p�N;o�d
�p�N;v�e
q�N;�f
-q�N;}�g
Gq�N;vlh
Vq�ϖ
mi
^q�?8�	i
fq���i
nq�;mi
vq���mi
~q��D�i
�q�N;Fi
�q�l���k
P �N;m
P �N;m
�q�`��m
�q�l���n
P �N;p
�q�l���p
P �N;r
�q�l���r
P �N;t
�N;a	t
��[v
��[��x
��[��|
P �N;}
@r�KUq}
P �N;
�r�7sq
P �N;�
P �N;�
P �N;�
P �N;�
P �N;�
P �N;�
P �N;�
P �N;�
P �N;�
P �N;�
P �N;�
�s�N;�
�s����
�s����
�t��
�t�	ޘ��
�!����
�t�	,���
�{
�9�
�{
ȑ�
�{
7#�
�{
ؑ�
�{
ޑ�
�{
䑌
�{
ꑎ
�{
�
�{
���
�{
��
�{
��
�{
 ��
�{
0��
�{
@��
�{
P��
�{
`��
�{
�
�{
t��
�{
z��
�{
���
�{
���
�{
���
�{
���
�{
���
�{
В�
�{
�9�
�{
ȑ�
�{
䒸
�{

�{
��
�{
��
�{
���
�{
��
�{
*��
�{
В�
�{
z��
�{
���
�{
���
�{
���
�{
�
�{
=�
�{
>��
�{
C��
�{
H��
�{
O��
�{
Y��
�{
c��
�{
m��
�{
w��
�{
"�
�{
���
���"�
����
���"�
��"�
����
���"�
�����
����
����
���O��
���=�
���Y��
���>��
���c��
���C��
���m��
���H��
���w��
��V�
��VO��
��V=�
��VY��
��V>��
��Vc��
��VC��
��Vm��
��VH��
��Vw��
P �N;�
�t�T;
�
P �N;�
�t�����
u�����
u�����
*u�N;�
�2����
Du����
�u�	��]�
�!����
�u�	,���
�u��9���
�u�G:��
P �N;�
�u����
v�����
P �N;�
Hv�O���
�N;a	�
��[�
��[����[���N;a	��[�v��[����[Ó
�N;a	��[$
��[����[ϓ�N;a	��[���[֓��[�lv�N;yv�~���v����v���L�v�N;�w�v���!�v�����v�V0�w����x\w�N;�
s�����P �N;!dw�N;!���s�"sw����"�w�N;$�5�s�%�w����%�w�N;�'�5�s�(�w����(�w�N;*�5�s�+x����+x�N;�L-X ��.X ��.x�~��D.-x����/@x�T;
0P �N;0Lx����0Tx�N;�{1Vy�ȿr2^y���2fy����2ny�W�2vy���2~y����2�y���2�y����3�y�Z��3�y��e�3�y�N;3�2���4�y���4Uz�	ٙ�4�!���4Uz�	,��4`z��9�4�z�G:�4�z�N;4�2���5�z���5!{�	G��{5�!���5!{�	,��5,{�\9�5c{�G:�5k{�N;�5t{��7�6}{�:�7}{�/��18}{�Z:�{���:�{�!��:|�9�;P|�N;<�2���=l|���=�|�	G��{=�!���=�|�	,��=�|�\9�=�|�G:�=�|�N;=�2���>�|���>�}�	ٙ�>�!���>�}�	,��>~��9�>K~�G:�>T~�N;�>X�ij?��T;
@P �N;@��1!�@P �N;A��+'�A4��T;
BP �N;B@��*.�BM��N;5�Cj��	K��Ex����E���P�Eƀ�N;=�E��	K��H����H���P�H���N;F�Hց�	K��K����K)��P�K2��N;O�Kl��	K��N�����N���P�NĂ�p��N̂��NՂ�rr؀O݂��r��OP �N;P��T;
PP �N;P���$P�N;a	Q��[W�S��[`�U��[o�Y���[��[(��[��_������al�� �
c�����$cˆ�)O�DdP �N;e��T;
e��T;
eP �N;e��iW�e���N;g6����g>��Z��gF��v��gP���
g���+��%g͊���%gي�N;z�g���%i��	5^�i��a�{i��N;z�j��N;z�l'��\��On<��J��OqO��N;z�rY���c�t_���O�vP �N;wP �N;wP �N;wP �N;wP �N;wP �N;wP �N;wP �N;wP �N;wP �N;wP �N;wP �N;wg��T;
wP �N;ws���ws���xs��gyб���z�0t���-����������������R�܅܅�FqOO�['q�����u �������[�0qqs���u ������qq��qs�ĩ�_s�ĩ�����K���X���K���X���XGM4�����m߿m߿JxJxIF�7?p�b�O=xx ���^����j�b߿�2���2��;�>�W|������������������,���߿��b'q'q'q�hn����h����h�D�o�|l������l�;�>��2���2���j�p�GSw�����b�`b��b'qc'qc��b�b�b�b�w'q��n�'q��������������n�nww@v�^|���������X��h�
��h�
�h�
��h�
��h�
ΰ�p�����=xV>by@i\�i=x������9��d�����d���5��u��~S��j?X��������e�����^Z/V�����,����߿��b'q'q=x����/^���R	�w0bo���D���C=k�	~�
��o�1��D���~�=x�2�:��D�C/�^�	�w
��Ro���D��o���D�~�=xo�~�=x~��D�C�|o���C�D�jho��o�=xo�=x0bo����D=k�~�	=x
��0b=k(k{kmy(k0b�=xH���"�=x"�=x�2 �x^��/ǒ�D�C�ayg���"�Ya=xSL=xSLS�_�S�_�S�_�S�_���S�_���`5S�_���Q&��S�_�S�_��i���~ho��]�t~ho��]�t~ho��]�t��~ho��]�t~ho��]�t~ho��]�t~ho��]�t~ho��]�t��~ho��]�t��~ho��]�t�]�w�]�w�]�w-��]�w�]�w�]�w�]�w�]�w-��]�w-��]�w@v��0�g�g��~ho��]�t~ho��]�t~ho��]�t~ho��]�t��~ho��]�t�]�w�]�w�]�w�]�w-��]�w@v��0�g�g��2��;VG�^�^��^��^��^�^�^������������S�_����O\��X�O\��X�O�;�X�O���X�O���X�O���O���O~;n;�X�O�O'qg��}��X�}�}��X
v�}��X��X�K�Kb�
v[�K�� $�K�K;�K;�?;�?�X�
v��X
v�X'q��}�������kog��<g�kog��G�g��G�}�eko�<g�g�g�g�g�g�g�g�g��S�l�<ko�S�l����ko�l�����og��lK{g��eK{�^�Ag��^�Ag�g�
Sg��A�^�A�A�^�<g�����g�'qg��O���^��-���������������������������������������e�����e�����o����>2���X��z��^�oz��^]�m������p�����44#���ǩ8��4#L8��4#]��#cog�	gg�^�w�g�^���g�^�w�HYg�^�w�HY��V�4#S4#ܡ���rVe�����2����������A��������y4#�V����ǩ�0+�+�����0�?cog�	gg�^�w�g�^���g�^�w�HYg�^�w�HYV�+��0�?���������������?�?�������+���[�������0�0�G*LP�0g�>2n��TX��T��ǩ�V�TX��u@�ʨ��
�ǩ�0�0����L�l0��0��0�0���0>��0�0�0X�����0��V���������������?�?���4#�8��4#L8��4#]��I�J�Kc�p�Z�oD�8�Z�o����Tpm���������
'q�eU��Vee���g�^���W~��g�^�w�HY���g����f!f8��4#L8��4#]��L��g�'
�g�g�g�'
���'q2
'q'
'qG''q�'q�'qw����4#G*4#�Vǩ�0g�'
�4#�C�C�C���C�C��+��ǩ��+�������y����+�4#G*���V������������������������������������^��^���c��cW��������L�V	g������
w��Tǩǩǩ�ǩ�ǩǩǩǩV��VTpm���Tpm�����g�^�w�HY�Vg�^�w�HY��g�^�w�HY��g�^����Vg�^�����g�^����Vg�	g��g�	g�V	g��	g�V	g��L���L�l0������
�j�eU��+��VVee���Vee��Vg�^�w���g�^�w��������������w�^�#��^����R\#6H��g�^�w�HY�Vg�^�w�HY��g�^�w�HY�0���c�^��[�0�0���
V���Tpm���g�^�w�HY��g�^�����g�	g������
�j�eU��Ve����g�^�w�����g�^�w�HY�4#�����ǩ4#'q��h�'q�3������4#	g��	g4#� 	g��4#4#�j4#���� ���j	g����O�	g����4#S4#S4#S��4#	g���N4#��S��4#���4#4#�j��� �����������4#��4#S�lw�4#�������d�7f���Tpm���g�^�w�HY��g�^�����g�^���,���g�	g������
�j�eU��Vee���g�^�w���g�^�w�HY�d�0�d�0�d�0�d�0��l�d�0�d�0�d�0�0���o�of�i�E�!ώ�!ώ�!��n���Sݭ	g���f��	g��S�}��jԼ��EԼ��!ώԼ@�!ώ�!�����j�!ώ�!��Լ��@�!ώ�!��S	ݭ����������'q�'q���h�'q'q��)J'q'q��'q'q����������	gh���4#��4#�����A��4#�xaxax�����V�ǩǩV��04#�V����ǩǩǩǩ�0�0�Q^�^���rG*G*��������������ǩ�0^�^����	g��9f�����f�V���������G*�o��G*�o���^�������jg�����*��X�V*��V�Xf��V�����0*	���Oǩ�Oǩǩǩ�ǩ�0�0�0o��f:'q'q�p7��
[���������7*o������	ǩ�� ���� ���7n#�7�������7���7�ǩ����������7���/M
[�7n#�Oǩ
v
v
v�����W��g�}�V�O���w}^J�O�����w�j�g�ok}�t�w��yok�O\��X�O�;�X�O���X�O���O���O~;n;�X�O�O\��X�O�;�X�O���X�O���O���O~;n;�X�O�^г�^г�^гf�lU���^гf�o��f:�������V��������������������������������������*��V�Xǩǩ*��X�V�������Ɋ4��G�	g�[�4��	s~uu�u!t�E�E���4�Ɋ[�4��X�X\
�X:oF��F��G*'q��G*'q���^=���������������������������������������f��^��.�f�*��V�X*��X�V�����^}Jx��f��^��8��ǩǩǩǩǩǩǩǩǩǩǩǩ�^�������a~f��^����.�8����*��V�X�v��*��X�V�^г�^г�^гf�lU���^гf������������������������������������������������������������������������������*N���M��y����M��������M�����Ms���&��W��:�n*����0���0�&��)��0�&���&�=���&�ǩ�����&��e=�������=���&�r�r����&���=�����*******�������Oǩǩǩǩǩǩǩǩǩǩǩǩǩǩǩǩǩǩǩǩǩ��0����r��&���aLo��f:}�}�o��f:��������������&��R��/M
[��Oǩ������Oǩ=�4�*��X&���=�4���X��y��Oǩ�����������QxQxS��r�����0�0=�4��*��X�V&�����������������*�7ǩ�e�������!�������!*o������*��*�������������*�7ǩ��0��e�����e0���������*o������*��*���o����o���V���oǩ���ǩ������7�}�	g�
v����
vG*
vG*
v�O�^
v�O�^	s~u'q�'qG*G*�o��G*�o���^����������ǩ�����O���O���O���O����*�a~a~�U*��X�V*��V�X*��V�w�X�w*��X�V�w.�.�8�8�Jx��*��V�X*��X�V��ǩ����������	s�u~uu!t��7�M�ǩ�ǩ�����7ǩ*o������ǩ���Oǩ���O�X���G*��OG*��M��������G*��M����������������g��g���q�O�O�A�Z��OL>�Zrlrl����jM�O�g�G*�jg�7����O�O���~2U���G*��M�ǩ�ǩ��OG*��M�O����O���Ov���Ov�������O��7������c�mB|[���ǩ�ǩ��ǩ��^��\
���f��h��p�������c��	g��S�S��h����c��������t������%\
����	g��S�S�c������������������1�1�e�g���Vݼh�ݼ���Vݼ|�y�g�h�ݼg�h�ݼ�g�g�g�����|�e?����6?��6?����?�g��?����g����������P�����~���)G'��ʨ&&���~���)G'���'q|g�g���h���ݼ����h�ݼj������������@�����@f��g��@��A�A�A��A�eV�����J���Jw
�����>2g��j�j���j�C-O�X^��j�C��-O�X^��j�C-O�X^��j�C��-O�X^�-O�X^�-O�X^�G*;�e�G*�e)���
v��
v�g����ok�x��'qhog�'qhog�Wkg��Jw��j@�g��g�H�qi�jH�e�j�C�dH�|||||�y|�?�^���~?��Qhoho�j�y[�ho~��j��Ց6��Ց6�����8�6��g�Ց�3��\v�����1�������}�����}���� ���ݭ��ݭ ��8��8<28�q8 ��8�� �e�8�� �^��8�� ��]8�� ���8�8�� ���8�� ��-������X==����>2g�'����}6�7ߧ��l6�7��g�6�7ĉ�g�6�g�6�7ĉ�g�6�7ĉX�g�6�7�g���6g�g��g�6ĉ�>2g�>2g���g�6��64��������������c�'qB��yO'2G��B3y#qB�B���#qBD�#qB�BD�'EHG��%'q$�#qB#qB�B#qBL����#qBL��k-#q#qB�B#qBB[�#qHG#qB�#qB���P4�/��$�#qB�>4#q_4#q�AB#q_4�.#q���r#q�r��#q���Y��A���Y��A����Y��A'q$�#q�h#q��#q���h�hc�h)O�M)O�M�h�h��D����O''q$���������X������K�������������X���X��'qF=c��X�q�����j�j6��ǩ#qB�#qB���P4�/��$�#qB�>4#q_4#q�AB#q_4�.#q���r#q�r��#q���Y��A���Y��A����Y��Ax�HG#q��%�M�W{��HGx�#q��%�M�W��x�#q��%x�#q��%x��p#q��%��#q��%�#q��%1gƥ#q��%��1gƥ��1gƥb�9���#q�����7ok��'q#q���1gƥ#q���#q���#q��#q���j����7ok��#q-�#q-�#q���0Ϙ��������������0#qWr�#qr�#q1gr�#q1gƥr�#qr�v�T��#qB������ǩǩ#qB��#qB����#qB����r[ǩ#q��ǩ�#qB���������������ǩ�K�����X��,'q��ǩ���.�cǩǩ��.m�K��������.���K-��j�p�GSwv�ǩ�����b��W8y'qS�_�r�S�_�S�_�S�_�t��AS�_�S�_���t�E������S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�_�S�S�S�S�S�S�S�S�S�S�S�S�\�\�\�\��;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;�;������~t��A������t�E�t��A������t�E�t��A������t�E�t��A��t�E��j'q�U��L�l0��6�2
6�'
6��6�w�6��V��0)J���G*�7�7���7�����cZ-�=������o����o�����o�������t��A����������t���E���	g��S�S�S�c	g����=&���=&�=&�����E�=&�S�_���-�-�-��uu5555I6�<&@PFHGLLXM\O`QdUL_hols�s�sTsLs�sptTtL|�}����l�������l���%�!�5�=�%�\�i� �i�$�u�`�%�h�����������%�%���q�I���l�i�5�5�5�A�A�A������i�
�
=9 �'X(13
45D"D=D1I J$J K L,L R.RIR*R=R1fVfIfRf=f1g^gIgZg=g1i^iIiZi=i1jVjIjRj=j1o1p1q1r1v|zA{�|�|A}�~�	N;N;N;
1N;9N;AN;IN;QN;YN;"aN;"iN;�N;'�N;�N;�N;�N;�N;�N;�N;�N;�N;�N;�N;"�N;�N;�N;-	N;3iN;�N;9N;IN;�]�:�c�D�|�NIN;3qN;yN;�N;�N;�N;`�N;�N;N;�N;�N;,���,:�,ij�,��,!���f:��N;�yI�a��DK��aP�aK���N;��c��$P�TK��\f:N;3iN;qN;yN;�N;iN;��N;"�N;�N;�N;`�N;!�N;"N;	N;N;"N;"!N;1N;9N;"IN;(YN;/�N;?qN;"�N;F	�N	��		5�	��V	��_	�Ul	}Ox	0��	D��	�6V	�l	��	&�_	!�	��qN;�N;�qN;��N;�	N;3�	���	W��	���	���	N;�	N;�K���f:�K���f:�	��$�	��	
N;
N;)1N;�9
N;"A
�eY
N;i
R��i
���i
��i
���!N;)N;9ּ�9��I���Y5��Y���Y���YߴY��Y'��Yh��Y��"a�	�a�	aT��aNK�a�K�a�N�a�N�aQ�a�i�h�i�8�i!9�i;�iF;��N;R�N;�N;�!N;"1N;"N;\YN;aN;iI�i’t�a�{�5^��N;�N;	
N;�N;)N;1N;IN;QN;iN;qN;`N;�N;N;)�X��N;�)�}�)�})�0�)�0�)���)Z)�7)�)+ �)6 ")���)̭")J��)[�)z��)��)}��)���)�F�)S�)S)���)��)�p�)C��)V��)�*�)_,�)Z��)o�)��)�)UP�)dP)0�)F)sP�)�P)$��)8�")aw�)|w")(�)�F�)�F�)�)�)�F�)�F�)�Z
)�)��)&$$)ژ)�)�p)�Y)��)�>)x�)x�)h[
)D0 )�b)�b))�0)��)�`)�`)�`))�`8)�?�K�O�ʦUy�����b������N;�����N;��f:��K���l�������:�����f:�K���þ��N;����f:K����HE���K�����Ԃ��UR���X��]�R�c���h�:����N;t�d�\��������>��d�H}]��_��\���P��R�����c�N;����b��͂��е�b�N;����)N;)���N;�!1�!Ac��Y%L�!c��)��=�cB1��=QՒJ9F�TA7�Z1"6��ȿrQIJx$����N;�Q�`�YN;������O�!���KW�)�h=s���N;��������N;����qEr��):�$���,����N;е�q�A#�f:��3O)����1�/���5�N;�+�=��G�?�=-����J�Q�'����=�QrX�N;pf���k�):p���k4f:�<K���c�<���N;)�p=�N;�19���N;��H��:�1�j��7��AN;)cB�1������!�9��q\�DN;)�Y.��d�q�d�D:�Df:�LK���!�=L����jJ�9:PQA��Y��aY�~�TN;\N;dN;lN;,N;�42�tN;$N;4N;|N;N;����1l�:����)QrX.V�N;)Sp����)��)��)z�i/��ij���	��	���	�:��N;	��	�N;4	�~�E	�N;�N;a	�N;�J>g	��yn	�oYu	���|	��&�	��&�	����	�I
�	�!����N;�	$f:��K������N;a		X��	�N;a		��&
�N;a	�N;Z
	b�e
�ij��:��
N;AN;!N;���7�aN;����
��B���b�X-��
AN;IN;�!�A��
QN;�
)l�
)l�
)��1l�
y]�9N;9��
Q9n�ػN;%Y���YKW��!����N;�N;�f:�K���N;���������:��f:��K��1�h�)!�����1�D�)f:��K����w�qN;����yO���:��:��:������K������]����
k��
�
��
R�������B�M�
Uq�
-Fw�Y���\����U���d���j�ys]y�n��
�d��ɩ�ak��N;qN;N;�:�N;N;$N;,N;�N;z
��Y�
4:���m�
��m�
,f:�<K�����
��d��C���}�
D:��GO�
L:�<��\f:�TK��T����j,\9:@df:lK��tN;a		��g��|��4w�,:��%��f:�|K�����$���|���f:�K������$OV���v��f:�K���N;��N;��m���m��j	�(e��:��m���iD�N;��N;����AZ�:��{�"��^"��"�Ox"�GOl�:���Ql��m��N;�f:�K���:���OTf:��K����������þ�����N;�!���Ä"�f:�K���f:�K�����������B���B��N;�f:K����X4	lf:�K���\���ij��:���N;df:�K��:���u&��/�5�k;�`kF$:��N;Z�N;f�N;}���,:�	N;	��"N;Ī"4f:<K��Df:LK��$���$9�$���TN;��r�T:�dN;lf:tK��d:�|N;df:��K��{�����P���|:�������)3O��>>�)y��|Ä"|��d!���!���N;�f:�K���:��)�\�!�c�':���Y0��};��v���d�)�B�A|Ui�Lwo�Iu1�d�1R�{9R��9\��)kp�Irr�Q$�Q|UiY:���d��4���s�=�N;�N;�f:�K��)�D�)�RT�����:�)<FZ�����:�q�ln!�t�N;a	�<F�)���)�����}�A���N;a	�KWy΁�I���N;a	�s�ٔ�KW�qP�q����~�y���f:���[����5��%���E���L��w��W���^t�����4������YеlYеq�е��	{���WT���\���d����y�Wl���,����N;��������!v��k���
����	��T���w����qC����R����d���������`���ܕ��M�������t:������$:�4:�Yf��YGA��
J��T��g��T:�\:�d:�l:�,:���[i:$�N;�N;�:�N;|���|:����!T���N;!�N;�N;�����N;�)��N;��X�������
�����������:�:���
�:��Z�ZZ�þ��ƦN;_'��2�9�9��!������l��R�c�:��f:F���a�cf�N;�����-�	�}]	&�	p��!��!���y
��?��!s]!�/�$f:,K��!Z��y���K�):!!IaN;��sY	�qDf:LK��$P�\��TN;��;�IN;�T:��N;�������Y�c�\N;AN;AK�\���A���$
\:�A��A]�b�'9)w-iAw]i�2Wi �d��Rui\>{��:��t�������7����������E���7���@���@��k���#���o�������~������x��i������X��/��q�u]������@����إ���@����6��N;Z
dN;�d�tN;t:�!���!���uw�!�!���!�O�!K�!���!�����!��
	Q���Q��Q�	!Q�d�������l���!:|N;�N;��~�:�|:�|���|�������!4:�!��!���!�[��_x�!��!����B��e��w]��z]!����P�!�7!����s��j]��A�4w]��]�+������!����	����O��s����p�	�����p	�w��N;a	�N;a	ij��N;a	�N;a	������{]!Z��d���iQ��!Q��qQ��yQ���Q��Q���Q��q��X!���!���!���!���!���!���!:�!�����Bk��������N;��R���N�7���!��$��<�I�B1P�N�ak��7�Z�P��f�^��f�����79�U��N;IN;�P��!V�!L	�����YP��Y�{]�2t���ca��Yv&�!
�!b�$�f:��K������U=y;'���| ��H) ���0 ���8 ��U8 ���A �&�A !7��/��n�� �N;�f:����N;�N;��:��H���X���QrX�kc�N;��:�!M(!!��!�lP!9H}V!�Y�^!�t@h!��t!a�{!�m����v�!���7�����
��!�N;!N;!E_�!n�!!f�!!��!!S�!��i�=�!U��!!��!��.�!�e�Z1��N�7�Z!g��
f:��UP�!��!��������!Q�!�@P�Q�2"��2"����������p�YIX5"�=��Y��$�L"�f:��K��������Z����yN;a	��8�	qc!�q�hn"���aN;a	�N;Q=��"���"�ij��:��ij��N;�:�aN;d:��N;!���")N;�"!*e�"
f:��}�X�"1r�f:K��l��R�cdf:�K����!;r�!��1N;7#1N;���Q�=#Q�F#Q��Q�L#Q.��Qt1�Q�hn"QʦU�N;R#Q�Y#Q�3_#�N;e#Q�c�Q�c��6l#��6l#Qr�l#Q��l#Q�l#Q�l#Q�Q���Q��!#l#!El#Q��l#Q��l#Qj��!Q��Q���aN;�#a���$N;af:�aij�a:�,N;$N;,:�,��$���,f:F4K��<l��<R�cy�$�	)�$qR���z1,$�
3��q���N;�������N;�ҥ�/p���-P$�L"����LN;]$TN;]$L���T���L���Lf:FT���Tf:F\K��dR�cdl���N;���!lN;tN;tÄ�$|f:�K���:�lÄ�$�f:�K��l���l���t���t����f:��K������0r��s��%N;1�/�%9�G�%PG�%�N;a		��
&!��6&�	����	��h!B�<&y���N;�N;!9�K&A�$�A.&�f:����������!������&�����f:�K�����X�N;�&�N;�&�N;�&�N;�&�N;�&�f:'1	l���ZU=1	R���N;+'YN;Y:�ݶ2'����N;9'A��L'l�[S'!���!1��Nt�[S'�N;|'�������$|�[S'��[S'�:���kc�f:��K����������N;��T=�f:�K�������N;��������9	N;�N;N;�9	ij�kc��9	:)���()��))_���.�)'�	)�þ��!��)N;{�ij��:�1��\)��d�9g�{)�N;N;N;N;$N;,N;4N;���:�:�i	N;F4����}OFAy*��UA :��D�=*$:���6,:���8 f:�<K��ij�<��$f:�DK��$ij�D��b��*y	N;�*,f:�LK��y	ij�y	:L��y	N;f:�TK��T��4���f:�\K��\��a	<��+Q���	�o�+Y���+�	nT�+�	���Q�����+):�	���+��T=q	o��+�	�{�a	N;�+AN;�	f:'�	��4���4N;Z
a	�F�+�	f:�QR��A���+�N;��	N;,�N;�q+,�/�� �D�1,�	��8,�	I��0rC,4f:�dK��d�����{,!N;�,�.n�,l���lZ�X-�Yش�,l���l��lN;ASM�A���A�}�A;
�A���A���,A���ij�tN;��U�,tþ�t:�|N;��N;��U�,!R��N;�N;���[S'I��3-�	N;"�	N;>-����
Z�	;��!��!!��!iN;Q-!F��!)�0��	U�!�	��$�	���N;�f:�K����i�l��&�����������&!ce
:�!0:�N;a	)
f��-�l�!��{�-9H}�-�Ͷ��	Ä�-)���N;a	q
f:�!��!!5�q�� .�Z��Y���!-���	���!���QO��!�("!>��!���!��a
N;[.aQrn.y�Xz.a!�n.�	N;y�[�.�	��"q
N;�:��ij����.�������.q
����9��!��!���.�
IX�.�
f:')N;9'�f:'��F�.�
�d��
��
/���������
$����KK/�
9:R/�
����
�]�
���d�	��Z/������}]�
N;�N;��N;�/�
���/�N;Z
�7�/�
f��/�9�K&�\�q\��/�N;���������:��
!"�
9���
���
�������B���
B�50�
�;0	7\A0��;0	�sJ0wpS0�OVn0	��x0q\��\���\���[S'��[S'��[S'��[S'�[S'��[S'�[S'�[S'�f:��K�������1�
f:��_��
��X�����N;a		��K1�N;a	�OV������
ő��
���
��X�
��1�
����
�F1N;�Ͼ��H6�1�d6�1����1�Xd�1��y�aN;QN;�q`��1�Z���������{��1�,6�1����1�N;��0��A�"Q���Q���1AR�����1���m��11c@��
/��1!S	�)���z:!ȓ1E21�2�KV��
 ��
ȃ�N;a	�X�%2�I��aZa$��Ed/2�
N;�
B��
/�")N;�Χu2AN;{2a���.a��a�:�A�c�2
���q�e	3�;X3)f:'�GA3�Q�I3�N;
�`3
!�����AOV�3�:�!���N;a	����3a
�e�a
����)ij�)!���Z8�3����3�5q�Q��3�t1����&4!� �1������K4�����������!1�x�q�`44�[S'<�[S'D�[S'�N;�4yN;�4��[S'�[S'L�[S'T�[S'$�[S'\�[S',�[S'd�[S'l�[S'��[S't�[S'|�[S'1�;512�
9��*��!1������U5��	��iJ^5��	1T���NK���K�1Q�1�q�[n5<N;a	�
N;"���5�K�5N;
N;�	N;�N;�c�N;����y�N;��"�N;�N;�*����������"��e��!N;!��!�!*��$P��$P�)
N;�N;�&�
(W�59N;9��69s:6��^*6��^<6�N;�:���=R6��[l:�a	�a	N;�N;�6�
N;�
)l#�
/�������
��
����
��N;���:�������&�2�C7��Kb7�
�����[aN;�4�k7���x7����7)N;+'��[S'�N;a	AN;��[S'��[S'����.q
��.!78f:K��N;a	ij�[���@n8��d�!z��8$N;$f:,K��!�8�
��a�е[9��c9!��s9�Ac�	#-�:[�9��
�F��qB�<&��7�9��hn"�8��Y#A
{��9y�X�9)���9qZ�l#q��l#qi�l#)B�<&4N;I���94:�4���4���)|,"<N;a	��9��$:y��qħ�N;:�N;��d�C�g:N;�]1,����n:�+d�:!�:����
����:DN;���j���:y�.�:1�.1����OU=�Q���:1{��91�g�:9��1�"	W��:Q�:1@S�1+S"1D�q��:Zqʦ�:A��;Q��;A�;LN;a	L�[�IN;V;AB`;IN;f;�d��9�p;�N;�:~;����;����;�N;YN;aN;�N;�;�N;�N;�;�N;�;qN;7#�N;
�o�;y���;
m�;����;
N;
N;
���;
5�
#�;
#�;
��;
��
JTN;�G�.T:�T�]�����!�X�H}2<Q@P<A
@S�A
��"A
+S"\���A
�g�:9�g"A
r�	�`<A
�Ue<yͶ�df:lK��yT��y{?��ڎ�<����\q)�)d���N;"�c!��E��H}]y�}��N;)
Z&�<�B�<tþ�t�������N��N;�9
N;f;�~�=9�=�1��YN;YU���q%=QA�Q���Q^��Q=�Q'��Qo:�QN;,=y�p�QQ�J=Q��S=Q�q�Q���:Q��S=A
D�Qp]=��Xz=�����.�9�t�=9	��=9&��=I
_����=����=y������h4N;�C�|�����0�=|N;Z
��������A�=�4�>|OV��N;�N;tN;|����f:�K���ij�iN�>iIX�>i�w�>��������t����f:�K���þ��þ��OV��OV�����4����������a�
��>�
��>�!g��N;�����OVn0�������������OV��f:4?�K�c����þ����l����N;�:�i
���?i
�_�?��h�)���?����%y�?�,r�?�p��?�
���?�
�x�?�
�}��
/iq���?�
�7�?�
!v��
��?�
ʰ��N;�
N;�
����
>> @�>�-Yg=�
�d��
�d��&@�:��
i9@q����U�P@�
�h��
�e@����N;�N;����	��@	T��@�T��@�
R���:��:���]��]����4����@�*U=	f:	K���):XA�):_A	���lþ�	���	N;�	���	���q	�p�+�)��A�c��@�Q��A�Q�B!Q�B	R���
@�=�T�mBq	���%a	<��BQN;�B$	N;,	f:4	K��$	���$	þ�$	��Y��BQqbC��?,C�6C�[>C�$NCA�VC!��CDq�Y\��C!е�е��
е�� u]iе$QN;�C	N;�b��C����C��C��@h!�{7
Dq�l!��l�$�N;4	�f:�<	K��l��<	����;PDQP�dD9N;�
��
��DQ�z1�D�
N��Da��D�u���H}�=�
�d��Ac�Al��J�����D���DIN;#-�
Q��>	I���D	N;	`�!	��Y��DaH�Da8�DY\��Da/E���Ei��-EqMZ5Ey��;E��l��6��l�BEY!�ÄKE�f:����ZE�
L�`E��[S'�q�sE�N;yE��EL8�E)���E)�)��!��!��)&��Q�C�H}�-�N;�FVA�T`;AFVF���.�|F�
�F����N;N;�T�A3Y�-5"�
;'�Q#VP<Q��F)�Fa)��al�YN;�N;D	f:L	K���N;�N;�F�:�Fq�ZG����yN;��!Gy�����[S'i�XCG��d�y��MGyf:�����Ga��.�f:��N;�F�����}0"���"y:�G������������a��3H��������	'q�H�f:�����HY�=h!a��H�����iN;��d�����H�ec"��}�_�"��=�m'�H�]�=�C�����I�N;q	��%�����I�UPI�N;���FI�f:�:#I��p*IY��Y���&��!N;f;9���9��C�lLIN;0N;N;cIYv���N;jI�N;�N;�IaN;��N;�)rr�IN;h�:��е$���	I��B�I�GJN;J����ٵ��T�!J���N;����������4J�����������JJ�4�QJ�
O5"�^�N;WJ���bJ������������J�
N;�JN;�J	��J	N;��[S'��[S'�-�J)����[S'�ij�D	���D	����X�K��yz�����K���%yN;�&�Ki�d��'q�K1���KYAc�
��[S'�N;2LD	N;�O=kLD	:����L�N;	���L	i�L���	��f:���LT	K�����N;�|��LT	�����\��Lq�+	�g)��)��LdN;A	N;�LA	�MAH�;A~�MA��MI	��M�Y�*
)*!\	N;a		���M	���Md	N;a	l	f:t	K��|	l���	þ��	��L������#N�~�f:��	K���	���f:��	K������kc�	��������������D��Dkc�����Z��M� ����
��jOQ��;������b�Oq	�L�%!�d�i��!i�����)
�%�O1
\��O1
J��OY$P�OrP�P�P�P�PrPQ &Q$1Q(4Q49Qh>QlaQppQt�Qx�Q��Q,R�R�lR�Q�qRpvRt{Rx�R|�R��R��R��R��R��R�S�,S�US�|S��S��S��S��S�T�T�!T�8T�]T�xT��T��T�_U��U�SV�fV�qV��V�vR�{R��R��V,�VvR{R�R �V �VdvRh{R|vR�{RT	vRX	{R\	�R`	�V$
�V�VLvRP{R�vR�{R��R@�VH
�VL
�VP
�VT
"Wt
vRx
{R|
�R�
vR�
{R�
�R�
CW8lW<�WDvRH{RPXTX�*X�aX��X��X�>Y�KY��Y�Y�Y�Y�Y0�Y4Z8Z<�V@ZPZT ZX%Z�vR�{R��R��V�*Z�/Z�@Z�OZ�|Z��Z��ZTvRX{R\�R�vR�{R��R��V�*Z�[�
[�vR�{R��R�vR�{R��R�[�[][f[�[KY�[�[�[%\ x\$�\(],&]0o]4v]8�]<�]@�^D�^H�^L!_tvRx{R|�R��V�*Z�[�
[�|_�Z��_��_��_��_��Z��_��_��_��_��_��_��_��_��_��_��_��_��_��_��_��_��_��_PvRT{R\vR`{R|vR�{R�vR�{R��R��V�*Z�[�
[�|_�Z��_��_��_��_��_�`�`�&`�9`�J`�S`�X`�{`��`��`��`��`��`��`�(vR�(vR�(�`.vR.{R.��.��.#��.+��.+�.+��.�f{R.3��.3П.3��.3��.3i�.3H�.3 �.3	�.3�.3��.3��.3��.3��.3�.3ͫ.3��.3��.3��.3u�.3Y�.3N�.3;�.3�.3��.3��.32�.�)x�.�)��.�)�.�)W�.�)��.�)�.;v�.;��.C{R.K��.S��.[��.c]�.k��.s��.{��.���.���.�ܺ.��.��.�!�.�.�.���.�9�.�g�.����2h{Rc�{RjJ�jV���{R�J��|��J�����J����J��|�Sl�
��
J���{R�'�
��'��-��'��Q��{R
'�
v�*'�*��I+{RJ'�J��i+{Rj'�j��3{R�'��+{R�'���;���C���'��%��+{R�'��A�	+{R)+{RI;8�IC]�i;��iC�΃SǾ�+{R�+{R��{R�+{R�3{R	+{R)3{RI+{Ri;�iCBω;�ωC�ϩ;ЩC6ЪJ��^��K{R�J��z��K{R�J����	K{R
J�
��*J�*�J��J�j'�j	��J��'��k!��J��D��J��`��{R�K{R�J��~�	;��	C��
��
��);��)C�*��*��I;[�IC��J��J�i;��iC��jJ�j��J��+��3{R�J��Q��J��h��K{R	3{R)K{RI3{RiK{R�K{R�J�����+��#5��K{R�K{R	+�	#5��	m��	[���	c{R�	k���	s���	{�	
c)� 
�{R)
K{R@
�{RI
K{R`
�{Ri
3{R�
�{R�
K{R�
3{R�
3{RiK{R�3{R�K{R��{R�K{R	K{R#+�##5�)K{RIK{RiK{R�K{R�K{R
���#
���C
���c
���
+��
#5��
K{R�
K{R�
�{R�
K{R�
�{R�
K{R�{Rc�c[�cc{Rck��cs��c������[�c{R�k���s�������+��K{R�+��+;�	;h�	C��);��)C�I;��IC��c����+�#���c{��c�c[�cc{Rc���c�{R��Ã[�Ãk���s����z�C��C[��Ck��Cs��C�l��k���s��������{R�[����K�Ck!��{R�{�ƃ�ƃ[�ƃk���s���Fǃfǃ��ǩ��������������	��	��	+��	c�	3{Ri��i��iC��i��iK��i+��iS����[����{t��{R�����	��	��	�{R	��)���)���)���c���#k��#s��c{R�r,���c{R�m�����[T�����s��#s��#�Ƀk!��{Rs��
� �{R#s��#��@�{R`�{Rc��cs��#"�#{R#[{RCc�C{RC[{Rc2h{R�2h{R���I��I��I+��I#��I�i��i��i+��ic�i3{R#k!�#S��C���c��ʃ�ˣ�	���������+���?��������+���c��3{Rc �ˡ![{R�![{R�![{R"[{R#"�{RI"a�I"���i"���i"��i"�ө"���"�ש"���"����"���"���"3�	#�	#��	#��	#���	#K��	#S��i#>�i#��i#���#g؉#�Ӊ#�Չ#����#K�Չ#S���#[9ˣ#c�ˣ#k+�${{R#$c��#$���#$[9�#$k+�C$[9�C$c��C$k+�I$��I$��I$;��I$��I$3{Ri$��i$��i$����$�ى$�Ӊ$����$�٩$�ө$����$[{R�$
��$���$C/��$Y��$���$���	%~�	%��	%���)%��)%��)%���C%[{RI%��I%��I%���c%[{Ri%�i%��i%����%���	&���)&���C&[{R�&-۩&�ө&����&[{R�&T��&���&���&����&K���&S��'[{R)'v�)'��)'��)'���)'K��)'S��i'��i'��i'C�۩'�۩'�ө'C�ԩ'�թ'K�թ'S���'���'���'���';��'q��'���'C���'���'K���'S��)(���)(���I(���I(���I(��Ճ([{R�(��(���(���(����(K���(S��	)g�	)��	)��	)���	)K��	)S���)T۩)�ө)�թ)����)K�թ)S���)v��)���)���)����)K���)S��	*��	*��	*��	*C��	*K��	*S��#*[{R)*q�)*��)*��)*C��)*K��)*S��C*[{RI*���I*���I*���c*[{R�*[{R�*���*���*��i+��i+���i+��i+;�݉+�Ӊ+���+k�i,��i,���i,+��i,��i,;�ރ,[{R�,�Ӊ,���,+���,�މ,Kߩ,ߩ,�թ,�ө,S���,+���,#���,[{R�,���,C���,+���,=��,[{R#-[{RC-[{R�-[{R�-[{R�-[{RI.;]߃.[{R�.;���.[{Ri1��i1���i1�Ӄ1[{R�1
�1���1�Ӊ13{R	2%�	2��	2���)2<�)2��)23U�i2���i2���i2��Չ2����2��Չ2�^�2y�2�ө2����2����2K���2���	3���)3����3��3��3C���3���3���3C���3	��3K���3S���3#��3���3C?�)4��)4��)4�{R)4m�I4����4�Ӊ4���4���4��4��4����4��թ4�^��43*��43��4��	5���	5K��	5T�)5���)5y�)5��5[{R)7���)7���i7��i7C��i7S��i7K��i7��i7��7����7��թ7���7���7��7�7����736��7���7?�	8��	8��	8W�i8���i8��Չ8����8��թ8����8���9[{R):��):���):w�i:����:[{R;[{Ri;���i;��i;��;����;�Ӊ;��;����;�ө;���;����;���;
��;���;S���;K���;'��;1��;���	<��	<'�	<V�)<���)<��)<z�I<���I<��I<��i<���i<��i<��<����<�Ӊ<��<���<'�<��<���<S���<K���<'��<"��<����<���<S���<K���<'��<H��<���	=��	='�	=m�)=��)=S��)=K��)='�)=��)=���I=��I='�I=��i=��i=S��i=K��i='�i=��i=����=���='�=��=�թ=S���=K�թ='�=�=����=����=���==��=���='��=p�	>��	>S��	>K��	>'�	>��	>���)>��)>'�)>��I>��I>S��I>K��I>'�I>��I>���B����C����C��ՉC��թC����C�թCK�թC���C%�C{R�C����C����C����C{R�C����C����C���D{R	D���	D���	D��� D{R)D���)D���)D���@D{R`D{R�D{R�D�ӉD����DK�D{R�D����D��թD��թD�{R�D{R�D{R	E���	E���	Er�)E���)E���AE[{RIE��IEC��IE'�IE��IE#��aE[{R�E��E3��E��E����E��թE���E����E���EK���E����E���E����E���EK���E����E#�	F���	F��	FK��	F�C�	Fo�)F���)F���)F��IF���IF���IF��iF���iF���iF��ՉF����F��ՉF��թF��F�өF��F[{R�F���F3���F��F[{R�F����F���FK���F�C��F.�	G���	G��	GK��	G�C�	GS�)G���)G���)G���IG���IG���IGo�iG��iGC��iG��G�{R�G����G�ՉGK�ՉG���G�G1�G�өGF��G����G����Gf��G����G���GK���G�C��Gz�	H���	H��	HK��	H���	H��)H���)H��)HK��)H���)H��IH��IH#��IH�'�H����H��թH��H3��H���H����H���HK���H����H���H����H���	I���	IC�	I���	IK��	I��	I���$I�{RII���II���II��II���I[{R�I�{R�I����I��ՉI��թI����I��թI����I����I[{R�I�{R�I����I����I���)J��)J���)J�'�)J���DJ�{RIJ��IJ���IJ�'�IJ��iJ��iJ���iJ�'�iJ�#�J�{R�K�{R�L�{RM�{R�M�{R�M�{R�M�{RDN�{RdN�{R�N�ͻiS��iS��iSF�iS�{R�S�؉SCq�S��S�{R�S���S���S;��S��S3{R	T��	T��	T�6�	Tc�)T��)T��)T;�)T��)T3{RIT��IT��IT���IT��iT��iT��iTC�iT�iT3{R�T�؉T���T�<�Th�T�ةT���T;�T��T3{R�T���T���T����T���T����T���T�	U���	U��	Ub�)U���)U��)U��IU���IU��IU��iU���iU��iU��U����U�ӉU*�U3]�U�ةUf��U���UCq��U���U���U���U���U�{R	V��	V��	V;�	V��	V3{R)V��)V��)V��)V.�IV��IV��IVR�IV�{RiV��iV��iV��iV�{R�V�؉V���V;�V���V3{R�V�ةV���V���V��V����V���V4��X;��Y[{RZ[{R Z[{R@Z[{R`Z[{R�Z[{R�Z[{R�Z[{R�Z[{R)\���)\���I\��I\r�I\K��i\��i\��i\�{Ri\��\�{R�\����\���\���\K���\����][{R�]����]����^�{R�^��$_�{R)_K��I_K��i_K���`����`����d[{R�d[{R�d[{R�d[{Re[{R e[{R@e[{R`e[{R�e[{R�e[{RAf[{Raf[{R�f[{R�f[{R�f[{R�f[{Rg[{Rah[{R�h[{R�h�{R�h[{Ri[{R!i[{R�i[{R�i[{R�l[{R�l[{Ra|[{RA�[{R��[{R��{R��#x���#���#���#ƽ!�#ڽA�#�a�#����#���##���#3� ��{RA�#ƽa�#D���#U�����������i�C�i�K���C+���K���[{RɛC]��[{R�C{�)�C��I�C�i�C��C]�ɜC��[{R�C@�)�C]�i�Cl���C����C��ɝC��C�	�C��)�C�I�C*�i�C;���;D���[{R��[{R��[{R��[{R��;��[{R �[{R��{Rɭ�{R��{R	��{R)��{RI��{Ri��{R���� ��ɼ�������:���[{R�[{R�[{R �[{R��[{R��[{R��[{R��[{R@�[{R`�[{R��[{R��[{R��{R��{R��{R��[{R��[{R �[{R@�[{R���{R$��{R���{R���{R��{Rd��{R���{R���{R���{R���{R@[{R`[{R [{R@[{R�/{R�/{R0{R 0{R�9�{Rd:�{R�:[{R�:[{R�:[{R�:[{R;[{R ;[{R@;[{R`;[{R�;[{R�;[{R�;[{R�;[{R <[{R@<[{R @[{R@@[{R`@[{R�@[{R�@[{R�@[{RA[{R A[{R@A[{R`A[{R@C[{R`C[{R�C[{R�C[{R F{R@F{R`F{R@H[{R`H[{R�H[{R�O[{R�O[{R�O[{R�O[{R��{R ��{R`��{R���{R���{R���{R��{R���{R���{R���{R �[{R@�[{R�[{R�[{R`��{R��[{R��[{R ��{R@��{R���{R���{R��{R@��{R`��{R���{R�[{R �[{R���{R���{R�s{R �s{R@�s{R`�s{R��s{R��s{R��s{R�s{R �s{R@�s{R ��{R@��{R`��{R���{R ��{R@��{R���{R���{R���{R���{R���{R��{R ��{R@��{R`��{R���{R [{R@[{R��{R��{R �{R@�{R`�{R��{R��{R��{R��{R �{R@�{R`�{R��{R��{R��{R��{R �{R@�{R`�{R��{R��{R��{R��{R �{R@�{R`�{R��{R��{R[{R [{R@[{R`[{R�
�{R�`0�aT�a��aD�a�bu
�b��b��bATc54TcF[�n~�(`��<A^w�DW���	?	M	�	�	�	�	~
�
�
�
�
�
�
�
,��".<b}�����V
�
�"�.i�����6A��F������`��'fv���'4FTa����
#I����BWl���(@c��:� ALY`x��������'/I���)7KRcr}�����>Ix�����1HXm���� K Q � !"!>!G!�!�!�!�!�!�!"""+";"Z"a"t"�"�"#/#s#�#�#�#'$5$H$r$�$G�$%-%M%]%�%�%�%�%B&Q&[&�&�&�&'A'Z'f'�'�'�'�'�'�'�'#(:(D(g(�(�())-)3)>)F)�)�)�)�)�)�)�)�)�)*	*"*4*E*N**�*�*++B+p+�+�+�+,I,c,r,�,�,�,--(-8-E-K-X-o-�-�-�-�-�-�-�-�-..*.9.A.K.P.V.b.�.�.�.�.�.�.,/3/r/|/�/�/�/�/�/00&0^0�0�0�0�0�0�0�0�0�0�0�0181y1�1�1�1�1�152@2F2�2�2�2�2 3;3V3g3p3�3�3�3�3�3�3�3�34
464<4B4U4h4s4~4�4�4�4�4�4�4�4�45555)545B5H5N5h5v5|5�5�5�5�5�5�5�5�5�5�5�56
6L6\6p6�6�6�6�6�67
77J7�7�7�7�7�7�7�7�7�7�788J8P8x8�8�8�8�89+9m9�9�9�9�9�9: :R:w:�:�:�:�: ;x;�;�;< <9<@<I<l<�<�<�<�<�<�<==6=d=i=�=�=�=
>6><>C>s>�>�>�>�>�>?J?�?�?�?�?�?�?,@B@W@l@�@�@�@�@AA1AfAnA�A�A�A�A�A$B6BWBxB�B�B�B�B	CHCcCrC}C�C�C�C�C�CDnD�D�D�D�D�D
EE!EQEfE�E�E�E�E�E�EFF2F;FGFNFXFgF~F�F�FGG2G7GTGzG�G�G�G�G�GH8HBHdHkHqH|H�H�H�H�H
I0I;ITIrI�I�I�I�I�I�I�I�I�IJJ,J;JkJsJ�J�J�J�J�J�J�J�J
KK<KlK�K�K�K�K�KLLL"L,L8LQLqLvL|L�L�L�L�L#M1M;MAMGMMM[MaM)N�NrO�O�OZ_st�������!�-�B�C�D�EFGHI!K"L�8=��=&�=h=ח=�6==�=��=�=T�=�76E�:UI>�IBE�:7�N�=�=�]f�)j�)n�r��v--nq�z.n��~y*n���T(n������)n�r��v--nq�z)�.n��~y*n���T(n���-��-�9(����T9��(��;�T�����r�����)==����=��S.=����\fi8��:��)j�)j�9�?��)��'��/���[��J�o�
.17<=@CGLM_bdfl m!o#p$v%{&|-�2�5�9�>�@�B�C�D�E�F�G�H�I�K�L�M�O�P�Q�R�S�T�U�V�W�Y�Z�\�^�_�`�a�b�c�d�e�f�h�i�j�k�l�mnop
qstGvUw^yhzi{q|v~��������������������������������������������������	�
���e�g�j�m�r�u�v�{�}�����������������������������������������������������������������������������������������������"#$&	./0
169EGITUVch m#t$v%x'}-~D�R�Y�Z�]�_�`�a�b�e�f�g�i�j�o�p�q�r�s�x�y�z��Z���}���0��֭��n ��Э��_�����������@G��CS������pŔZ����*���,��s�������P��_���P��<����w���5˔�PєlA��?@�����������ՔQ���P��h}��(��Y��IP���5��J~����F$������H��(���ީՔ���q���D��}j��&��;
��3�����k(�v2�;
��3�����k(�v2�}h��g <�61��q��z�A��h��1a���D��q���|��l��wG�;
��3�����k(�}h��`�<�IQ�f����vW�;
��k������(���G��Ӗ]�C8A��c�?i���o����^�������D��V|��m�������D��mD��q�����͒u�İ��%��@���X���`���p��}j����{�}j��&���;
��3�����k(��n��;
���n��3�����k(�}h�����iR���wG�0xG����������ŕ��˕��ѕ�ו�0ݕ1@��@�wv��ו�0ݕ1@��@�wv�����$������X������q��K�����yG
�ּ����)A��&����:o��%#�b���u|"�������4�ˡ:�(?@��?F�h?L��@R��2X�����v\�yGb�����
Vh�%#����U_��
�Ŕ���p=���|"�;���ּ��x�n�
S��q���Cx\���������A������t��~�����������2���x1���i��¨�������3���c�����4��������������k�������rt��~��������U������D1��&h�����������3���c�����%#�aI��dI��b���q�������������o�������q������������]U������p���q��9Y������Y���o���K~��K�������X��X��X�y��Hp���L��b������
��q���������M���;
���KȖ0����5ԖK���
Vh�%#����
��;
��Cgږ�g�����������RX���������6F�$+�]��&��ˡ:����q���#��)�������������������zR/��@������&�������ɕ��Y!��� ��!��� ������0���1������
Vh�G��F#5��E;��KA��EL�""R�ATX���^���4�C���
Cd�U�j�4���U_��>���n��R��3��6F�ˡ:�� ��Y!��!���s��E;��EL�%#���4�
Cd�U_���n��R��i��������������Qf��8TX�����q���~��
���3�������G���G�����b���GT��ATX�1���o���x���c���T���o��d?���b���~���Ǘ�o���f���i��kf��}j���������[��������������b��������f�������������������}��˼��?
���o���f��}j��X���b����x��X�
Vh��!�����%#ӗU_��Vٗ�q��I�ߗ�g��'��Dz��
Vh�o���iS�%#��q�}Q���e�����@*��@*��{
��Vٗ�g��/���ߗd���%#ӗz��
j���n��Ej��x�X�T�X��n��Ej����
j����x�X�T�X�e}�Vٗ�g��?	����$��
Vh�P���=6��q"��C���`���u�������U��������K���d7�����3�!�V���� '�q"��C���U_�������-� MX����� '�d7�`������z�4�Y��������V��4����s:�
j��n���X���֯���������u:�ht:�����ku:�A����u:�X���t:������g��Rs:������r:��~�6n��WGX���@�)F��"����X�WGX�)F��"��P�X��L�uR�ku\��uR�=�X�tR��rR�)A��"��=�X�����)F��"����X�P�X�)ob���������OV��M�������F�����
j��n���X���֯����������g������ߗZ6n�x6n���t�ldz��V\��g�����B{������ԫ��Ӆ��…���N�������������o�ߗ͋ߗh�ߗ����������>6n�=��-���y�ߗ�ߗ��t�l�������ߗ���i���ߗ��ߗǑߗ+���k�������V����ߗs�X����z���b���E���&���*��������t�9q���>���>���@������`���J������t���f���̄�����/���o������Z	������JX�2N�����@h������RŘ MX�����#��5�X��������/���)A��"��$�\��X\����$�\��X\�x���/���)A��"��qT���X\������X\�
y˘5�X������������֭�������L��Ğ���V������� ��1�����`�����X�����A������b���/���)A��"���S���X\��V\����$�\��X\��V\�<{���zј�V���V��a���̯��	���T���������������ۮ���f��Dd�����l��'���������zјz����������0{���z������ۮ���f�����`����������`���z�ט
Vh���X��X�Y��������V��4�����������OV��M�������F����s:���u:�V���ht:�ku:��u:�����A��������t:�Ҳ���r:�����Rs:����tR�ku\�uR��uR��rR��L�0�ݘ�L�el����0��M���h�ߗ0�ݘ�XR�x���@*���L�V���3�!����x���@*�����}j���e��t<��}>�}j��t2�����4l�v:�el�t2��ey���?���w�`z%�t2������!+��1�;�7��!7��^7��7���7��-7�A�7�G�7�	o7�!�7�17���7�H�7�~u7�~7��q7�u�7��7�?&7�}�7��17�&{7��(7�\\7��>7�e(7��(7��<7��
7�u�7�,�7�	67�._7��7��J7�X�7�E27��7�<U7��7���7�t7�47��;7��$7�fd7��7���7���7��7��#7�@�7���7��*7��*7��+7��+7�@,7�F+7�a$7�r+7�q�7���7��+7��Z7��97��?7�/7��7�w�7���7���7�27�a_7��7��#7�Ҋ7�v47�(>7��r7��;7�,7�+7��87��*7�J�7��$7��67�M�7�r%7���7�s7���7��17�]g7��.7��r7�W{7��~7��7�H7�c7���7��.7�E7���7��77��7�m7�٤7�5y7��7��l7�؉7�
�7�7��;7�e-7�̳7�"�7��7�^�7�[V7��7�C)7�ϸ7�P�7��i7��,7�ys7��7��7�p7�=�7�'�7���7���7�b�7��t7��-7���7�Dt7��o7�ҹ7�0u7��7��u7���7�A*7�]�7��s7���7�@g7��'7�.s7�#�7�x�7��r7�#7�f~7�7�0<7��7�0/7�L7�)�7��/7��W7�p7�je7��m7�$�7�7���7�F=7��"7��#7���7�
7��7�<7�b7�/7�E#7��7���7���7���7��N7��7�F�7���7�]�7�a�7��7�f�7���7�B�7��!7���7��7�T7�$�7���7�N�7�Î7�8�7�7�č7��%7�H�7�&87�"�7�Đ7��7��7���7�7��h7���7�Bi7�*�7��%7���7�؞7�j�7��7�a�7��7�T�7�n�7�897��(7�_;7��,7�7�7���7��-7�T�7�(7�t�7�)7��7�c�7��7�ܮ7�<.7�޻7��M7���7�v�7��7�Y�7��.7�Z/7��7���7�m#7�07��K7�}7�87�97��;7�=7�0z7��z7��7�e�7���7��7���7��7�f�7�=�7��c7��f7��7�'7��7��
7���7�:�7�u�7���7�P�7�sz7��y7�K�7���7�w�7�ޯ7��z7��z7�;�7��7�Gf7��u7��7��7�[F7�Yu7���7�8�7�@�7�I7�6u7��P7�L7��k7�&7��%7�h7��<7��!7��L7�
�7�d^7�%7�*Q7���7��7�2�7�*�7�>%7��17�G�7�R7���7�b77�X7��Q7���7��E7���7�"7�`R7��7���7���7�z�7��7��7�b7�<C7��!7��%7���7���7���7�=�7���7�M@7��7���7�_�7���7��7�#�7�	7���7�)�7��"7��#7�JE7�%I7��I7��E7��S7�{�7���7�LB7��$7���7�	n7���7�bo7��7��d7��7��7�"�7�y�7�	T7��S7� V7�,p7�p�7�Y7���7�?�7��D7�D�7�j�7�F�7�O7�`&7���7��7���7��<7��#7��97�1�7�ߛ7�V7��]7�
�7�,�7��W7���7�4�7��q7���7�)S7��F7�bq7���7�=Q7�ԇ7��
7��<7�I7�4
7��/7��17�1�7�@�7���7�c'7�N7��N7��M7�gM7��67�1~7���7��7�X�7��z7���7���7�N7�=�7�o87��=7��!+��1�+7��7��h7��&7�B|7�Y�7��O7�O�7��W7�[W7��g7��7���7���7��7�Y7��h7�!�7�9^���]���K;�K���q���K;��!������K;�PvA�,���@����K;��!��1K��dK���K;��!���K;�T���J����BG�q%M�4�S��EY�6F_��Ee��k��K;���q�K�����9^��9^���x�ٍ��y����5Ԗ�~��>���R������|����Q������V���O���Xə@*Ι�e���(�ԙ�>���������o���z����y��������������m���{�/l�el�����}j���C��K��@���,���O3��Pv��F���O�)A����������n���X�������n�������r:�)ob�����r"�q��?'���y��G&��,��m��B���B��9����������$4���k����������j�����2�����=r��P���9����k���k��9�7��������$4���k����������j�����2�����=r��P���%�8��m��[m��������N���-M������M��5=��X����������uM��W��l'��
����m��B�������m��B������z���
����A��p��}j���{������w=��!����.G�	m���KR��IM���V�L�V�� "��"�7 "��G`�Ӗ]�C8A��c�?i���o��D��y�k���X�,����X���������5���Z0��K�w�K�w�K�w�K�w�K�w������������[�����������b����f��h�}���X�ޗ����X�ޗ����X�h�}���X�t�X�t�X�t�X�t�X����vR�,���^���Pv��T�"�J�"�9^��$%&'()	*+
	,
-
z{

|}~����WXYZ[\]^�� � � !!Z"[""###u$v$$%%%�&�&&'''�(�(()))�*�**+++�,�,,---�.�..///�0�0N1�2�2V3�4�4t5u5�6�6v7w7�8�8x9�:�:y;z;�<�<{=�>�>|?}?@	@~AAVBWB�C�CXDYD�EZF[F�G\H]H�I�I^J_J�K�K`LaL�M�MbNcN�OdPeP�Q�QfRgR�ShTiT�U�UjVkV�WlXmX�Y�Z�Z�[�\�\�]�]�^^�_�_``�a�abb�cdd�e�eff�g	h
h�ijj�k
ll�mnn�o�opp�qrr�stt�uvv�wxx�yzz�{�{||�}�~�~������������������t	�u	������	��	������	��	������	��	������
��
�����������`�a������������������������������������������������	�
���
�������!�"�#�$�%�&�'�(�)�*�-�.�/�0�7�8�9�:�;�<�?�@�A�B�C�D�F�G�]�`�a�b�c�d�e�f�g�h�i�j�k�l�o�w�x�y�z�{|}~	��
���������!#	%
%')++,-C/�1�3�5�7�9�;�;�=�=�?�A�A�C�E�G�I�K�K�M�M�O�O�Q�Q�S�S�U�W�Y�[�]�_�a�a�c�c�e�g�ikm
oqs
uwy{}��������� �!�"�#�7�8�9�D�E�F�l�m�n�o�p�q�r�s�t�u�v�w�x�y�����������������������������������������������������������������������������������	��
�
�������������!�#%'')++-//1335779; =!?"?#A$C%E&E'G(G)I*I+K,K-M.M/O0O1Q2Q3S4S5U6U7W8W9Y:[;]<_=a>c?e@gAiBkCkDmEoFqGsHuIwJwKyL{M}N}OP�Q�R�S�T�U�V��������������������������������������������������������������������	�
���
������������!�"�#�$�%�&�'�(�@�A�B�C�D�R�S�T�U�V�W�X�Y�Z�[�\�]�^�_�`�a�b�c�efwxy	z{
|}~��������!�!�#�#�%�'�'�)�+�+�-�-�/�1�3�5�7�9�9�;�=�?�?�A�C�C�E�G�I�I�K�M�O�O�Q�Q�S�S�U�W�Y�Y[[]]__a	ac
ceegiikmmooq's(u)w*y+{,{-}./0�1�2�3�4�5�6�7�?�S�T�U�V�W�X�Y�]�^�_�`�a�b�c�d�q�x����������������������������������������������������������������������������������������������������
�����������!�"�#$%&'(	,-
.
/034567=ABC!D#E%F'G)H+I+J-K-L/M/N1O1P3Q3R5S5T7U7�9�9�;�;�=�=�?�?�A�A�C�C�E�G�I�I�K�K�M�O�Q�S�U�U�W�Y�Y�[�]�]�_�_�a�a�c�c�e�e�g�i�i�k�k�m�m�o�o�q�q�s�s�u�w�w�y�y�{�{�}��������������������������������������������������������� �!�"�#�$�%���������������������������������������������������������������������������������������������������������������������������	�	��
���������������!�!�#�%�'	'	)	)	+	-		/
	1	3	5	7	7	9	9	;	=	?	?	A	A	C	C	E	E	G	G	I	I 	K!	K"	M#	M$	O%	O&	Q'	Q(	S)	S*	U+	U,	W-	W.	Y/	Y<	[=	[>	]?	]@	_A	_B	aC	aD	cE	cF	eG	eH	gI	gJ	iK	iL	kM	kN	mO	m^	o_	q`	sb	uc	wg	yh	{v	}w	}x	y	�	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	�
�
�
�
�
�
�
�	
�

�
�
�
�
�
�
�
�
�
�
�6
�7
�8
�9
�:
�;
�E
�F
�G
�N
�O
�P
�Q
�R
�X
�c
�g
�h
�i
�j
�k
�l
�s
�t
�u
v
w
x
|
}
~

�
	�
�
�

�
�
�
�
�
�
�
�
�
�
!�
#�
%�
'�
)�
+�
-�
/�
1�
3�
5�
7�
9�
;�
=�
?�
A�
C�
E�
G�
I�
K�
M�
O�
Q�
S�
U�
W�
Y�
[�
]�
_�
a�
c�
e�
g�
i�
k�
m�
o�
q�
s�
u�
w�
y�
{�
}�
�
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
	
	

!#%')+-/13579;=?A C!E"G#I$K%M&O'Q(S)U*W+Y,[-]._/a0c1e2g3i4k5m6o7q8s9u:w;y<{=}>?�@�A�B�C�D�E�F�G�H�I�J�K�L�M�N�O�P�Q�R�S�T�U�V�W�X�Y�Z�[�\�]�^�_�`�a�b�c�d�e�f�g�h�i�j�k�l�m�n�o�p�q�r�s�t�u�v�w�x�y�z�{�|�}�~�����	��
����������!�#�%�'�)�+�-�/�1�3�5�7�9�;�=�?�A�C�E�G�I�K�M�O�Q�S�U�W�Y�[�]�_�a�c�e�g�i�k�m�o�q�s�u�w�y�{�}����������������������������������������������������������������������������������������������������������������������������������							
						
			
		!	#	%	'	)	+	-	/	1	3	5	7	9	;	=	?	A	 C	!E	"G	#I	$K	%M	&O	'Q	(S	)U	*W	+Y	,[	-]	._	/a	0c	1e	2g	3i	4k	5m	6o	7q	8s	9u	:w	;y	<{	=}	>	?�	@�	A�	B�	D�	E�	F�	G�	H�	I�	J�	K�	L�	M�	N�	O�	P�	Q�	R�	S�	T�	U�	V�	W�	j�	v�	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	��	
�	
�	
�	
�	
�	
�	
�	
�	)

*

+

,

-

.
	
/
	
9

:

;

@

B

C

D

E

F

G

H

I
!
J
#
K
%
L
'
R
)
S
+
T
-
U
/
Y
1
Z
3
[
5
\
7
]
9
^
;
�
=
�
=
�
?
�
?
�
A
�
C
�
E
�
E
�
G
�
I
�
K
�
M
�
M
�
O
�
O
�
Q
�
Q
�
S
�
S
�
U
�
U
�
W
�
W
�
Y
�
Y
�
[
�
]
�
_
�
a
�
a
�
c
�
e
�
g
�
i
�
k
m
m
o
o
	q

q
s
s
u
 w
!y
"{
#{
$}
%
&�
'�
(�
)�
*�
D�
E�
F�
G�
Q�
R�
^�
_�
{�
|�
}�
~�
�
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
��
�
�
�
�
�
�
�
	�

�
�
�

�
�
�
'�
(�
)�
,�
-�
0�
1�
2�
3�
4�
@�
U�
V�
WXYZ}	�
������	!#%')+--/13!5#7)9+;9=;?AACCQEUGYI]K`MaMbOcOxQySzU|W}Y�[�A�C�E�E�A�C5(]5*_5,a5.c50e52g66w68yFvFxFzF|F~
F�F�G�G�L�L�O� O�"Q�$Q�&Q�(Q*_�,_�._�0_�2_�4_�6_�8_�:_�<_�>_�@_�B_�D_�F_�H_�J_�L_�N_�P_�R_\_^_`_T_V_
X_Z_b_d_f_ho�jo�lsZ	s\	s^	zs`	�sb	�sd	�sf	�sh	�sj	�sl	�sn	�sp	�sr	�st	�sv	�sx	�sz	�s|	�s~	�s�	�s�	t�	t�	t�	|�
�|�
�}�
�}�
��D��Fj�Hl��������������l��j�����������������������
����������f
�h
�j
�l
�n
��	��
��� �"�$�&�(�*�,�.!�0#�2%�4'�6)�8+�:-�</�>1�@3�B5�D7������������,��.��0�2���I��K�M�O'��'��'��D�kD�mD�oD�qD�sR�kR�mR�{R�qR�sR�}R�gf> kf@ mfB �fD qfF sfH �fJ ggN kgP mgR �gT qgV sgX �gZ gin kip mir �it qiv six �iz gj~ kj� mj� �j� qj� sj� �j� gv� v� v� ~!w~!y��hqz������6�������	09BKT]fox�������
%.7@Ibk�����������+8����%4mv~����,	�	�	
D
S
py�������'
0
9
B
N
�
�
�
�
�
7KT]�����dw��GOW`������Q������&.������BK�������8y��.1����7Qolu4Sh*s� � � � � �!""Q"�"##&#�#�#�#$$U$h$�$�$�$�$�$�$$%;%D%~%�%�&�&�&�&�&�&�&�'^(�(�(�)�)�)�)�)�)v*�*�*"+9+[,�,�,--f-�->.//�/�/
1A1o1�1�1�1�5E6<7/888A8�8�8�9�9�:;<W<�<�<�<�=">,>\>a>j>�>�>??*?@?t?@�@�@�@FAOA{A�A�B�B�BID�F�F�L�M�M�MNNN�N�NDE�DGt��Ozj�O#�O��O��O���OB�O���O��O���O���O���O��O���O��O�B�O��OS��Ok��O��O�i�DH
�DxEH)�E <RE�@�E�N$S�HV��Y��\C`�HcW�fk�i�m�`h,V` �p_��7_Xs	�_�
�`�S
R_��
�_p`03�`��4`�
�_�
�_�*
�aȮ�a���`�/"_ؘa���a�`3)aXIvaXS�a���a`a`Ga0B�:VB'()
*+,-./ 0"1"2&3'4'5'6'7'8'9(:(;(<(=(>(?(@(A(B(C(D5E?F?G?H?I?J?K?L?M?N?O?P?Q?R?S?T?UKVKWKXKY^Z^[^\^]n^n_n`nanbncsdsevf�g�h�i�j�k�l�m�n�o�p�q�r�s�t�u�v�w�x�y�z�{�|�}�~����9�:�;�<�=�?�@�A�B�B�C�kjg�j8�lr�g��8�[r=rCrarap�rwt�}H�t�	H�t�'	t�3	H�ArEra'	�
�@
�M
�@
\iFq{}Z}�Z��Z������+���_�r�r�,!�2!�8!�n!v�!�@
|�$X%��%��%�	-&X%X%
q)2	"-2	~-��-��-��.�f/;�0eh1�3�
@
�
3�9;Q9��9
H:@�<��E�oGor��M��M;�M��M��M�@
�`
�
l�`�l�`�`�lunsupportedTypesInFramework30<>9__130_0<StoreOriginalValues>b__130_0<>c__DisplayClass130_0<>9__30_0<ProcessRequest>b__30_0<.ctor>b__11_0<>9__81_0<FindBestMethod>b__81_0<>c__DisplayClass81_0<>9__1_0<.ctor>b__1_0<>c__DisplayClass1_0<>9__92_0<get_DefaultAjaxFrameworkAssembly>b__92_0<>9__3_0<CreateSystemWebExtensionsCache>b__3_0Ldc_I4_0<>c__DisplayClass36_0<>9__76_0<FindIndexer>b__76_0<>c__DisplayClass6_0<MatchOperations>b__7_0<>9__8_0<HttpResponse_Redirecting>b__8_0<>9__19_0<ValidateMapFile>b__19_0<>c__DisplayClass9_0<LoadMapFile>b__0<MatchMessages>b__0<MatchPortTypes>b__0<GenerateProxy>b__0Ldarg_0CreateSHA1<.ctor>b__11_1<>c__DisplayClass81_1<>9__1_1<.ctor>b__1_1Ldc_I4_1<>9__76_1<FindIndexer>b__76_1<>9__19_1<ValidateMapFile>b__19_1<i>5__1<FindBestMethod>b__1<StoreOriginalValues>b__1Ldarg_1Func`1Nullable`1IEnumerable`1IOrderedEnumerable`1IEquatable`1IQueryable`1MatchCollectionItemDelegate`1Expression`1ICollection`1KeyedByTypeCollection`1ReadOnlyCollection`1EventHandler`1IComparer`1IEqualityComparer`1IEnumerator`1HashSet`1IList`1message1name1portType1differentAttribute1attribute1value1path1get_Item1differentItem1attributeCollection1<>7__wrap1XmlSerializer1expr1CS$<>8__locals1element1text1<>m__Finally1<GetScriptDescriptors>d__22get_CombinedHash32UInt32ToInt32<.ctor>b__11_2<>9__1_2<.ctor>b__1_2<>9__19_2<ValidateMapFile>b__19_2<FindBestMethod>b__2Func`2Tuple`2IGrouping`2Action`2KeyValuePair`2SortedList`2IDictionary`2OrderedDictionary`2ConcurrentDictionary`2message2name2portType2differentAttribute2attribute2value2path2get_Item2differentItem2attributeCollection2IContractGeneratorReferenceTypeLoader2IStateFormatter2get_StateFormatter2expr2element2text2<GetScriptReferences>d__23<>9__1_3<.ctor>b__1_3<>9__19_3<ValidateMapFile>b__19_3<FindBestMethod>b__3Func`3Tuple`3Create404Throw404ToUInt64ToInt64Func`4NamespaceUri15FRAMEWORK_VERSION_35TypedDataSetSchemaImporterExtensionFx35Func`5UInt16<GetEnumerator>d__18<GetScriptReferences>d__28<SelfAndBaseClasses>d__78get_UTF8<GetScriptDescriptors>d__29<>9<Module><PrivateImplementationDetails>enumerableAGetCookieFromDBRemoveRolesFromDBStoreHashedPasswordInDBStoreCookieInDBChangeCookieAndStoreInDBPatchOutParametersInVBenumerableBGCSOURCE_ID_NOT_SPECIFIEDid4_IDm_IDget_IDset_IDSystem.Web.UI.WebControls.IDataBoundControl.DataSourceIDSystem.Web.UI.WebControls.IDataBoundControl.get_DataSourceIDSystem.Web.UI.WebControls.IDataBoundControl.set_DataSourceIDget_UniqueIDGetMasterPageUniqueIDget_UpdateProgress_AssociatedUpdatePanelIDget_AssociatedUpdatePanelIDset_AssociatedUpdatePanelID_associatedUpdatePanelIDget_UpdatePanelControlTrigger_ControlIDget_ControlIDset_ControlIDget_DataPager_PagedControlIDget_PagedControlIDset_PagedControlID_focusedControlIDget_UpdatePanelControlTrigger_NoControlIDget_ExtenderControl_TargetControlIDget_TargetControlIDset_TargetControlID_targetControlID_controlIDget_ItemPlaceholderIDset_ItemPlaceholderIDget_ListView_ItemPlaceholderIDget_GroupPlaceholderIDset_GroupPlaceholderIDget_ListView_GroupContainerIDcontainerIDget_AnonymousIDSystem.Web.UI.IHtmlForm.ClientIDSystem.Web.UI.IHtmlForm.get_ClientIDclientIDget_ElementIDget_AsyncPostBackSourceElementID_asyncPostBackSourceElementID_elementID_componentIDVB_LANGUAGE_NAMEDEFAULT_FILE_NAMETOOL_CONFIG_ITEM_NAMEisWCF_SQL_CE_CONN_STRINGget_NamespaceURISystem.Web.UINeedToLoadBeforeUIget_AlwaysLoadBeforeUIset_AlwaysLoadBeforeUI_alwaysLoadBeforeUIget_ScriptManager_LoadScriptsBeforeUIget_LoadScriptsBeforeUIset_LoadScriptsBeforeUI_loadScriptsBeforeUIGetCredsFromUIWSDLGetPropertyValuesFromSQLSetPropertyValuesSQLget_AppService_RequiredSSLenforceSSLget_RequireSSLset_RequireSSL_propRequireSSL_authRequiresSSLJSONDISCOSystem.IOSRFreeBSTRPtrToStringBSTRSecureStringToBSTRensureNSenUSBrtrue_STInternetGetCookieWInternetSetCookieWoperationXfaultXpartXoperationYfaultYpartYvalue__ParseLambdaget_ExpressionParser_ArgsIncompatibleWithLambdalambdaSystem.Xml.Schemam_MetadataXmlSchemaget_MetadataXmlSchemaCreateFromSchemaschemaget_JSON_InvalidArrayExtraCommaget_JSON_InvalidArrayExpectCommasrawraSystem.DataextraDataSystem.Web.DynamicDataEnableDynamicDatadeleteAllRelatedDataWebServiceMethodData_webServiceMethodDataGetMethodDatamethodDataget_WebService_NoWebServiceDataGetWebServiceDatawebServiceDataget_TypeDataGetWebServiceTypeDataProcessTypeData_typeDataInitWebServiceEnumDataget_ExtensionDataset_ExtensionDatafailIfNoDataWebServiceParameterData_parameterDataGetObjectDataGetDataQueryableDataSourceEditData_applicationClientDataGetAppClientDataGetUserClientData_userClientDataSystem.Web.UI.IPostBackDataHandler.LoadPostDataContextDataSourceContextDataid8_Metadataid9_Metadataget_MetadataLoadMetadatam_CachedMetadataget_CachedMetadataMergeMetadataGetProfilePropertiesMetadataGetPropertiesMetadataProfilePropertyMetadataGetPropertyMetadatametadatacbSystem.WebIsFromSystemWebGetPropertyValuesFromWebAtlasWebSetPropertyValuesWebmscorlibpbget_Verbsbtb<>cget_IsNestedPublicget_ReferenceGroup_SharedTypeMustBePublicget_IsPublicSystem.Web.Query.DynamicSystem.Collections.Genericget_JSON_CannotSerializeMemberGenericgenericget_IsDataBindingAutomaticget_LinqDataSourceView_TableCannotBeStaticget_MethodExpression_MethodMustBeStaticget_IsStaticMemberIsStaticLdlocStlocsrcFromFileTimeUtcToFileTimeUtcget_RolesCachedDateUtcset_RolesCachedDateUtcget_LastLoggedInDateUtcset_LastLoggedInDateUtcbubbleExceptionFromSvcget_CurrentManagedThreadId<>l__initialThreadIdid20_SourceIdid18_SourceIdm_SourceIdget_SourceIdset_SourceIdget_ReferenceGroup_InvalidSourceIdsourceIdget_TypeIdResolveTypeIdget_ScriptTypeIdset_ScriptTypeId_typeIdget_ControlId_controlIdTokenIdget_ModuleVersionIdget_DynamicFilterRepeater_DynamicFilterContainerIdHtmlHeadReadget_CurrentThreadOnLoadget_ScriptManager_FrameworkFailedToLoadReloadOnUnloadSystem.Collections.Generic.ICollection<System.Collections.Generic.KeyValuePair<TKey,TValue>>.AddBaseAddGenerateAddTryAdd_resourceLoadedEnsureProfileConfigLoadedEnsureAuthenticationConfigLoadedEnsureSectionLoadeds_sectionLoadedget_ScriptReference_NotifyScriptLoadedget_NotifyScriptLoadedset_NotifyScriptLoaded_notifyScriptLoadedget_JSON_MaxJsonLengthExceededThrowIfMaxJsonDeserializerMembersExceededget_JSON_DepthLimitExceededOccursUnboundedget_ReferenceGroup_DataContractExcludedAndIncludedadd_FieldChangedremove_FieldChangedOnFieldChangedget_LinqDataSourceView_TableNameChangedget_LinqDataSourceView_ContextTypeNameChangedget_LinqDataSourceView_EnableObjectTrackingChangedadd_FieldsChangedremove_FieldsChangedOnFieldsChangedadd_PagePropertiesChangedremove_PagePropertiesChangedget_ListView_OnPagePropertiesChangedEventPagePropertiesChangedadd_ParametersChangedOnParametersChangedOnQueryParametersChangedOnDataSourceViewChangedRaiseViewChangedadd_SelectedIndexChangedremove_SelectedIndexChangedget_ListView_OnSelectedIndexChangedEventSelectedIndexChangedOnDataPropertyChangedGetScriptPathCached_IsOfflineFetchedget_SourceIdSpecifiedset_SourceIdSpecifiedm_WrappedSpecifiedget_WrappedSpecifiedm_GenerateTaskBasedAsynchronousMethodSpecifiedget_GenerateTaskBasedAsynchronousMethodSpecifiedget_DataSourceControlExtender_TargetControlIDMustBeSpecifiedget_MethodExpression_MethodNameMustBeSpecifiedget_RangeExpression_RangeTypeMustBeSpecifiedget_ListView_DataKeyNamesMustBeSpecifiedget_IgnoreSpecifiedset_IgnoreSpecifiedm_UseSerializerForFaultsSpecifiedget_UseSerializerForFaultsSpecifiedget_IsMergeResultSpecifiedset_IsMergeResultSpecifiedget_LinqDataSourceView_TableNameNotSpecifiedget_OfTypeExpression_TypeNameNotSpecifiedget_LinqDataSourceView_ContextTypeNameNotSpecifiedget_LinqDataSourceView_WhereAlreadySpecifiedget_LinqDataSourceView_OrderByAlreadySpecifiedSetLastModified_ajaxFrameworkAssemblyConfigChecked_duplicateScriptAttributesCheckedConvertCheckedInterlockedget_Enabledset_Enabledget_ProfileServiceEnabledEnsureProfileServiceEnabled_profileServiceEnabledget_RoleServiceEnabledEnsureRoleServiceEnabled_roleServiceEnabled_authServiceEnabledget_AuthenticationServiceEnabledEnsureAuthenticationServiceEnabledget_IsViewStateEnabledget_IsServerPagingEnabledget_IsDebuggingEnabledisDebuggingEnabledset_ObjectTrackingEnabledIsCompressionEnabled_propEnabledEnsureProviderEnabledget_IsCustomErrorEnabledget_RoleService_RolesFeatureNotEnabledenabledget_AppService_Disabledget_ScriptManager_CannotSetSupportsPartialRenderingWhenDisabledget_ScriptManager_CannotAddHistoryPointWithHistoryDisabledget_Handledset_Handledget_QueryStringHandledset_QueryStringHandled_queryStringHandledget_ExceptionHandledset_ExceptionHandled_exceptionHandled_eventHandledget_LinqDataSourceView_PagingNotHandledget_LinqDataSourceValidationException_ValidationFailedget_LinqDataSourceView_ValidationFailedget_ListViewPagedDataSource_EnumeratorMoveNextNotCalledget_SqlHelper_SqlEverywhereNotInstalledget_ScriptManager_PageUntitledget_LinqDataSourceView_ParametersMustBeNamedIsDefinedid37_Wrappedm_Wrappedget_Wrappedset_Wrapped_renderedHasTriggered_panelRegistered_isHandlerRegistered_scriptReferencesRegisteredget_DynamicNavigatorDataSource_NoModelsRegisteredget_ScriptManager_UpdatePanelNotRegisteredget_ScriptControlManager_ExtenderControlNotRegisteredget_ScriptControlManager_ScriptControlNotRegisteredget_Expressions_DataFieldRequiredget_ListView_ItemTemplateRequiredget_ListView_InsertTemplateRequiredget_RangeExpression_MinimumValueRequiredget_RangeExpression_MaximumValueRequiredCreateDBIfRequiredget_Common_ScriptManagerRequiredget_SearchExpression_ParameterRequiredget_ReferenceGroup_DuplicatedSchemaItemsIgnored_pagePreRenderRaised_DisposedEnsureClientTypesProcessed_clientTypesProcessedget_Authenticatedset_AuthenticatedEnsureAuthenticatedget_IsAuthenticatedisAuthenticatedget_UserIsNotAuthenticated_authenticatedadd_UserValidatedremove_UserValidatedOnUserValidatedadd_Updatedget_LinqDataSource_Updatedremove_Updatedadd_ItemUpdatedremove_ItemUpdatedget_ListView_OnItemUpdatedEventItemUpdatedOnUpdatedEventUpdatedadd_ItemCreatedremove_ItemCreatedget_ListView_OnItemCreatedEventItemCreatedset_ChildControlsCreated_newPointCreatedadd_LayoutCreatedremove_LayoutCreatedget_ListView_OnLayoutCreatedEventLayoutCreatedadd_ContextCreatedget_LinqDataSource_ContextCreatedremove_ContextCreatedOnContextCreatedEventContextCreatedadd_QueryCreatedremove_QueryCreatedOnDataSourceQueryCreatedOnQueryCreatedEventQueryCreatedpathTranslatedIsAnyTypeGeneratedXmlSchemaAnnotatedadd_Selectedget_LinqDataSource_Selectedremove_SelectedOnSelectedEventSelectedget_IsClientConnectedget_ExpressionParser_CloseParenOrCommaExpectedget_ExpressionParser_CloseBracketOrCommaExpectedget_ExpressionParser_TokenExpectedget_ExpressionParser_OpenParenExpectedget_ExpressionParser_DotOrOpenParenExpectedget_ExpressionParser_ExpressionExpectedget_ExpressionParser_ColonExpectedget_ExpressionParser_IdentifierExpectedget_ExpressionParser_CloseParenOrOperatorExpectedget_ExpressionParser_OpenBracketExpectedget_ExpressionParser_DigitExpectedget_IsRequestBeingRedirectedset_IsRequestBeingRedirectedadd_Deletedget_LinqDataSource_Deletedremove_Deletedadd_ItemDeletedremove_ItemDeletedget_ListView_OnItemDeletedEventItemDeletedOnDeletedEventDeleted_preRenderCompleted_initCompletedIsRootedget_JSON_StringNotQuotedadd_Insertedget_LinqDataSource_Insertedremove_Insertedadd_ItemInsertedremove_ItemInsertedget_ListView_OnItemInsertedEventItemInsertedOnInsertedEventInsertedadd_Sortedremove_Sortedget_ListView_OnSortedEventSortedValidateUpdateSupportedValidateDeleteSupportedValidateEditSupportedget_ListView_StyleNotSupportedget_JSON_ArrayTypeNotSupportedget_JSON_DictionaryTypeNotSupportedget_LinqDataSourceView_UpdateNotSupportedget_LinqDataSourceView_DeleteNotSupportedget_ListView_StylePropertiesNotSupportedget_LinqDataSourceView_InsertNotSupportedValidateInsertSupportedget_IsHostedadd_SettingsSavedremove_SettingsSavedisApprovedget_MethodExpression_ChangingTheReturnTypeIsNotAllowedSystem.Collections.Specializedget_IsJsonSerialized_isJsonSerializedset_Deserializedget_Initialized_asyncPostBackModeInitializedSetRequiresDataBindingIfInitialized_panelsInitialized_initializedget_AttributeNotRecognizedget_IsSynchronized_idget_IsBufferValidSystem.Web.UI.IPage.IsValidSystem.Web.UI.IPage.get_IsValidget_ExtenderControl_TargetControlIDInvalidget_ScriptControlManager_TargetControlTypeInvalidget_UpdateProgress_DisplayAfterInvalidget_ExpressionParser_MethodIsVoidSerializeGuidNewGuidguidget_DynamicControlBase_DataFieldget_DataFieldset_DataFielddataFieldDefineFieldCloneFieldCreateField<Handled>k__BackingField<DataField>k__BackingField<IsBundleVirtualPathMethod>k__BackingField<GetBundleUrlMethod>k__BackingField<GetBundleContentsMethod>k__BackingField<BundleResolverCurrentMethod>k__BackingField<IsBundleReference>k__BackingField<DataSource>k__BackingField<DataItem>k__BackingField<Expression>k__BackingField<LoadSuccessExpression>k__BackingField<IsDirectRegistration>k__BackingField<Direction>k__BackingField<Owner>k__BackingField<ApplyToOverrides>k__BackingField<Values>k__BackingField<Parameters>k__BackingField<WhereParameters>k__BackingField<SelectParameters>k__BackingField<GroupByParameters>k__BackingField<OrderByParameters>k__BackingField<OrderGroupsByParameters>k__BackingField<Arguments>k__BackingField<IsDefiningSys>k__BackingField<EntitySet>k__BackingField<Context>k__BackingField<Query>k__BackingFieldget_DataPager_QueryStringFieldget_QueryStringFieldset_QueryStringFieldAsyncPostFormFieldRegisteredHiddenFieldIsBuiltInHiddenFieldSystem.Web.UI.IScriptManager.RegisterHiddenFieldFindPropertyOrFieldget_ExpressionParser_UnknownPropertyOrFieldAssignToPropertyOrFieldget_PagerFieldDataPagerFieldNumericPagerFieldTemplatePagerFieldNextPreviousPagerField_pagerFieldGetFieldnewField_fieldLdfldStfldAddSingleChildget_FirstChildchildcmdParseLogicalAndReadToEndget_JSON_InvalidArrayEndSetSkipAuthorizationNoDemandDbCommandget_ListView_InvalidCommandHandleCommandCreateCommandExecuteCommandSystem.Web.UI.WebControls.IWizardSideBarListControl.ItemCommandSystem.Web.UI.WebControls.IWizardSideBarListControl.add_ItemCommandSystem.Web.UI.WebControls.IWizardSideBarListControl.remove_ItemCommandget_ListView_OnItemCommandEventItemCommandadd_PagerCommandremove_PagerCommandget_TemplatePagerField_OnPagerCommandEventPagerCommandCreateDataPagersForCommandget_ExpressionParser_IncompatibleOperandCheckAndPromoteOperandDoubleAmphersandAppendDataBindFindDateTimeKindGetNumericTypeKindUriKinddatabindget_SecondEnsureDataBoundSystem.Web.UI.WebControls.IWizardSideBarListControl.ItemDataBoundSystem.Web.UI.WebControls.IWizardSideBarListControl.add_ItemDataBoundSystem.Web.UI.WebControls.IWizardSideBarListControl.remove_ItemDataBoundget_ListView_OnItemDataBoundEventItemDataBoundEventWizardListItemDataBoundget_DynamicNavigatorDataSource_NoAccessibleTablesFoundget_MethodExpression_MethodNotFoundget_LinqDataSourceView_TableNameNotFoundget_LinqDataSourceView_ContextTypeNameNotFoundget_IgnoreIfNotFoundset_IgnoreIfNotFoundget_ServiceUriNotFoundget_UpdatePanelControlTrigger_ControlNotFoundget_RoleService_RoleProviderNotFoundget_DataPager_PageableItemContainerNotFoundget_MethodExpression_ParameterNotFoundget_LinqDataSourceView_OriginalValuesNotFoundSystem.Web.UI.IHtmlForm.MethodSystem.Web.UI.IHtmlForm.get_Methodset_Methodget_WebService_UnknownWebMethodMakeGenericMethodGetStaticMethodGetAddMethodFindMethodInvokeMethodget_ExpressionParser_NoApplicableMethodqueryableMethodDefineMethodget_OfTypeMethodGetOfTypeMethod_ofTypeMethodget_UpdateMethodset_UpdateMethod_updateMethodget_DeleteMethodset_DeleteMethod_deleteMethodResolveMethodget_IsBundleVirtualPathMethodset_IsBundleVirtualPathMethodCallMethodget_GetBundleUrlMethodset_GetBundleUrlMethodget_HttpMethodCodeMemberMethodRenderMethodrenderMethodget_GetBundleContentsMethodset_GetBundleContentsMethodm_GenerateTaskBasedAsynchronousMethodget_GenerateTaskBasedAsynchronousMethodset_GenerateTaskBasedAsynchronousMethodget_SelectMethodGetGetMethodSetGetMethodGetSetMethodSetSetMethodget_BundleResolverCurrentMethodset_BundleResolverCurrentMethodget_InsertMethodset_InsertMethod_insertMethodGetSortMethodGetThenBySortMethodFindBestMethodThenDescendingByMethodOrderDescendingByMethodThenByMethodOrderByMethodqueryMethodmethodget_Passwordset_PasswordoldPasswordEncodePasswordChangePasswordGetPasswordResetPasswordnewPassword_passwordSystem.Web.Compilation.WCFModel.Schema.ServiceMapSchema.xsdSystem.Web.Compilation.WCFModel.Schema.DataServiceMapSchema.xsdget_RememberMeset_RememberMerememberMeAddInterfaceget_IsInterfaceReplaceIsWhiteSpaceAddNonBreakingSpaceCheckScriptTagTweenSpaceget_NamespaceSchemaNamespaceCalculateGeneratedNamespaceGetGeneratedNamespaceReplaceNamespaceCodeNamespaceget_TypeNamespaceGetClientTypeNamespace_typeNamespaceEnsureNamespaceconfigNamespaceoriginalNamespaceconfigurationNamespaceSerializationNamespaceRegisterNamespaceid52_ClrNamespacem_ClrNamespaceget_ClrNamespaceset_ClrNamespaceid46_TargetNamespacem_TargetNamespaceget_TargetNamespaceset_TargetNamespacetargetNamespacereplacementNamespaceproxyNamespaceget_JSON_ExpectedOpenBraceget_StackTraceuseWFCService_UsingWFCServiceget_ScriptManager_ProfileServiceget_ProfileServiceConfigureProfileServiceget_ScriptManager_RoleServiceget_RoleServiceConfigureRoleServiceGetApplicationServiceget_ScriptManager_AuthenticationServiceget_AuthenticationServiceConfigureAuthenticationServiceGetServiceget_PageRequestManager_RegisterDataItemTwiceget_UpdatePanel_SetPartialRenderingModeCalledOnceWsdlContractInheritanceget_InstanceFastCreatePublicInstanceGenerateStaticInstanceCreateInstanceTemplateInstanceget_ObjectInstanceset_ObjectInstanceCreateObjectInstance_objectInstanceGetInstance_instanceget_IsStaticReferenceset_IsStaticReference_isStaticReferenceServiceReferenceget_IsBundleReferenceset_IsBundleReferenceCodeTypeReferenceget_JSON_CircularReference_applicationServicesReferenceObjectReferenceElementReferenceComponentReferenceSystem.Web.UI.IClientScriptManager.GetPostBackEventReferenceEndpointReferenceadd_ResolveCompositeScriptReferenceremove_ResolveCompositeScriptReferenceget_ScriptManager_ResolveCompositeScriptReferenceOnResolveCompositeScriptReferenceadd_ResolveScriptReferenceremove_ResolveScriptReferenceget_ScriptManager_ResolveScriptReferenceOnResolveScriptReferenceTryRegisterNamedClientScriptResourceUsingScriptReferencescriptReferencePolicyReferenceAddAssemblyReferencereferenceXmlSchemaSequenceCheckIfCollectionSequencerootSequenceforceSystem.Web.UI.WebControls.IDataBoundControl.DataSourceget_DataSourceControlExtender_TargetControlMustImplementIDataSourceSystem.Web.UI.WebControls.IDataBoundControl.get_DataSourceSystem.Web.UI.WebControls.IDataBoundControl.set_DataSourceget_MethodExpression_DataSourceMustBeIDynamicDataSourceCreatePagedDataSourceCreateServerPagedDataSourceListViewPagedDataSourceget_QueryExtender_DataSourceMustBeIQueryableDataSourceModelDataSourcemodelDataSourceLinqDataSourceContextDataSource_dataSourceRead10_MetadataSourceWrite10_MetadataSourceRead2_MetadataSourceWrite2_MetadataSourceid7_MetadataSourceid8_MetadataSourceget_CommandSource_commandSourceGetSourceeventSourceget_WebResourceget_WebResourceUtil_SystemWebExtensionsDoesNotContainReleaseWebResourceget_WebResourceUtil_AssemblyDoesNotContainReleaseWebResourceVerifyAssemblyContainsReleaseWebResourceget_WebResourceUtil_AssemblyDoesNotContainDebugWebResourceVerifyAssemblyContainsDebugWebResourceAssemblyContainsWebResourceget_WebResourceUtil_AssemblyDoesNotContainEmbeddedResourceWriteResourcehasDebugResourceApplyFallbackResourceget_ScriptResourceHandler_UnknownResourceThrowUnknownResourceRegisterNamedClientScriptResourceSystem.Web.UI.IScriptManager.RegisterClientScriptResourceUpgradeDividegeneratedCodeGetTypeCodeget_ReferenceGroup_FailedToGenerateCodeSystem.Collections.IEqualityComparer.GetHashCodeGenerateGetHashCodehashCodeOpCodeGetHttpCodehttpCodeget_StatusCodeset_StatusCodeget_SubStatusCodeset_SubStatusCodeget_ProxyHelper_BadStatusCodeHttpStatusCodestatusCodeget_WebServiceErrorEventCode_webServiceErrorEventCodeget_EffectiveClientIDModePersistenceModeFileModeget_UpdatePanel_UpdateModeget_UpdateModeset_UpdateModeUpdatePanelUpdateMode_updateModeget_ScriptManager_AsyncPostBackNotInPartialRenderingMode_debugModeRefreshModeSetAsyncPostBackMode_asyncPostBackModeget_ScriptManager_AjaxFrameworkModeget_AjaxFrameworkModeset_AjaxFrameworkModeget_ScriptManager_CannotChangeAjaxFrameworkMode_ajaxFrameworkModeget_CancelModeListViewCancelMode_cancelModeSystem.Web.UI.IControl.DesignModeSystem.Web.UI.IControl.get_DesignModeCompressionModeget_UpdatePanel_RenderModeget_RenderModeset_RenderModeUpdatePanelRenderMode_renderModeAspNetCompatibilityRequirementsModeget_KeepInEditModeset_KeepInEditMode_keepInEditModeget_ScriptReference_ScriptModeget_ScriptManager_ScriptModeget_ScriptModeset_ScriptModeget_EffectiveScriptMode_scriptModeget_KeepInInsertModeset_KeepInInsertMode_keepInInsertModeInstanceContextModeajaxModeConcurrencyModeXmlNodeUnknownNodeHtmlDecodeget_Unicodeget_EncodeHtmlAttributeEncodefEncodeJavaScriptStringEncodeUrlPathEncodeget_DynamicControlBase_HtmlEncodeUrlEncode_encodemodeSystem.Web.UI.IScriptManager.RegisterClientScriptIncludeSystem.Web.UI.IClientScriptManager.RegisterClientScriptIncludeincludeInControlTreeSetMaxAgeget_IPageget_Pageget_ScriptRegistrationManager_ControlNotOnPageget_CanPageget_LinqDataSource_AutoPageget_AutoPageset_AutoPage_autoPageMasterPageget_EnablePreviousPageget_IsLastPageget_EnableNextPageOutputEmptyPageImage_pageAverageSystem.IO.IsolatedStorageuseIsolatedStorageUsingIsolatedStoragem_Messageget_Messageget_ReferenceGroup_FieldDefinedInOneOfDuplicatedMessageget_ReferenceGroup_FieldDefinedDifferentlyInDuplicatedMessageget_UnhandledExceptionEventLogMessageOperationMessageget_ScriptManager_AsyncPostBackErrorMessageget_AsyncPostBackErrorMessageset_AsyncPostBackErrorMessage_asyncPostBackErrorMessageConvertToBuildProviderErrorMessageerrorMessagemessageAddRangeMetadataExchangeCompareExchangeGetCookiesFromIECacheget_Cache_assemblyContainsWebResourceCacheTargetControlTypeCache_targetControlTypeCache_cultureCachePrepareResponseCache_ajaxAssemblyAttributeCache_scriptPathCachecultureScriptBlockCacheDisableKernelCache_urlCache_versionCacheAppLevelCompilationSectionCacheDeploymentSectionCachePrepareResponseNoCache_assemblyInfoCacheCreateSystemWebExtensionsCache_systemWebExtensionsCacheResetCache_docCommentCache_scriptCacheget_GlobalAssemblyCache_assemblyCacheAppendCookieStoreCookieadd_CreatingCookieremove_CreatingCookieOnCreatingCookie_creatingCookieSetAuthCookieLockCookieHttpCookieGetCookieSetCookiesetCookiecreatePersistentCookiecookieTakeEndInvokeBeginInvokeMethodInfoInvokeITableMetaTableCreateContextAndTableget_NameTableXmlNameTableHtmlTableknownItemTableFastStringLookupTableGetTableIsApplicableapplicableget_DataPager_ControlIsntPageableIsTypeShareableSystem.Web.UI.WebControls.IPageableItemContainer.TotalRowCountAvailableSystem.Web.UI.WebControls.IPageableItemContainer.add_TotalRowCountAvailableSystem.Web.UI.WebControls.IPageableItemContainer.remove_TotalRowCountAvailableOnTotalRowCountAvailableEventTotalRowCountAvailableisNullableget_Timer_TimerEnableIEnumerableSerializeEnumerableenumerableIDisposableSystem.Web.IHttpHandler.IsReusableSystem.Web.IHttpHandler.get_IsReusable_table_KnownTypesHashtableget_ScriptControlDescriptor_IDNotSettableIQueryableIDynamicQueryabledynamicQueryableAsQueryableGetQueryableCreateSortQueryable_queryableISerializableset_GenerateSerializableget_IsSerializableget_DataPagerField_Visibleget_Visibleset_Visibleget_ExpressionParser_MethodsAreInaccessibleIsArrayListCompatibleIConvertibleDoubleget_ParticleXmlSchemaParticlefileHandleRuntimeTypeHandleGetTypeFromHandleSingleid10_MetadataFileRead13_MetadataFileWrite13_MetadataFileRead5_MetadataFileWrite5_MetadataFileid9_MetadataFilem_MetadataFileget_MetadataFileReadMetadataFileLoadMetadataFileWriteMetadataFilemetadataFileCreateCodeFileIsolatedStorageFileWriteFilem_IsExistingFileget_IsExistingFileset_IsExistingFileExternalFileVirtualFilewsdlFileid11_ExtensionFileid12_ExtensionFileRead14_ExtensionFileWrite14_ExtensionFileRead6_ExtensionFileWrite6_ExtensionFileReadExtensionFileLoadExtensionFileWriteExtensionFileextensionFileDataSvcMapFilesvcMapFileReadMapFileLoadMapFileGenerateCodeFromDataServiceMapFileGenerateCodeFromServiceMapFileValidateMapFileSaveMapFilemapFileGetFileTransmitFileSystem.Web.Profileget_ProfileGetProfileSetProfileprofileIsVolatilethrowOnPopulatedRoleCreateRoleDeleteRoleIsUserInRoleIsCurrentUserInRoleIsInRoleFindUsersInRoleGetUsersInRoleroleTupleSystem.Web.UI.IPage.TitleSystem.Web.UI.IPage.get_TitleSystem.Web.UI.IPage.set_TitleSetPageTitletitleDefineDynamicModuleIHttpModuleScriptModuleget_ManifestModulemoduleCreateControlStyleget_BorderStyleset_BorderStyleHtmlTextWriterStyleid14_Nameget_ScriptReference_Namem_Nameget_Nameset_NameGetEraNameeraNameget_QualifiedNametypeQualifiedNameXmlQualifiedNameannotationQualifiedNameget_AssemblyQualifiedNameServerTypeFieldNamehiddenFieldNameget_LinqDataSourceView_InvalidOrderByFieldNameget_CommandNameset_CommandNamecommandNameget_MethodNameset_MethodNameWCFProxyMethodName_methodNameget_ResourceNameset_ResourceName_displayNameResourceNamereleaseResourceNameget_EffectiveResourceNameget_StringResourceName_stringResourceNamedebugResourceName_descriptionResourceNameGetResourceNameget_ScriptResourceName_scriptResourceNamerawResourceName_resourceNameDecodeNameget_MessageNamecookieNameget_LinqDataSource_TableNameget_FilterRepeater_TableNameget_TableNameset_TableNameGetPartialDBFileNameGetFullDBFileNameid13_FileNameid16_FileNamem_FileNameget_FileNameset_FileNameget_ReferenceGroup_InvalidFileName_profileServiceFileName_roleServiceFileName_authenticationServiceFileNameIsLocalFileNameget_MapFileNameGetFileNameGetDefaultFileNamefileNameroleNameget_ReferenceGroup_TwoExternalFilesWithSameNameid47_TypeNamem_TypeNameget_TypeNameset_TypeNameGetSchemaTypeNameget_BaseTypeNameitemTypeName_GetCredentialsTypeNameGetTypeNamedefaultTypeNameget_StringResourceClientTypeName_stringResourceClientTypeNameGetClientTypeNameget_LinqDataSource_ContextTypeNameget_ContextTypeNameset_ContextTypeName_contextTypeNameget_EntityTypeNameset_EntityTypeName_entityTypeNameWCFProxyTypeNameGetProxyTypeName_typeNameget_CultureNameAddCultureNamereleaseNameget_SiteNameget_AttributeNameattributeNametagNameGetDebugNameFrameworkNameget_LocalNameActualTypeLocalNameEnumerationValueLocalNameStringLocalNamelocalNameget_FullName_paramNameGetSchemaItemNameGetUrlFromNameget_ApplicationNameset_ApplicationNamem_ConfigurationNameget_ConfigurationNameset_ConfigurationNamePatchConfigurationNameconfigurationNameget_ActualTypeAnnotationNameactualTypeAnnotationNameget_EnumerationValueAnnotationNameenumerationValueAnnotationName_propNamepathOrNameget_JSON_InvalidMemberNameDeserializeMemberNamememberNameget_ProviderNameset_ProviderName_providerNameget_UserNameset_UserNameget_LastLoggedInUserNameset_LastLoggedInUserName_curUserNameGetUserName_userNameget_ParameterNameget_LinqDataSourceView_InvalidParameterNameValidateParameterNameGetJsonpCallbackParameterNameget_ScriptReference_AssemblyRequiresNameGetNameSystem.Web.DynamicData.IDynamicDataSource.EntitySetNameSystem.Web.DynamicData.IDynamicDataSource.get_EntitySetNameSystem.Web.DynamicData.IDynamicDataSource.set_EntitySetName_entitySetNameget_ElementNameget_AsyncPostBackTrigger_EventNameget_EventNameset_EventName_eventNameget_ScriptNameget_ScriptReference_InvalidReleaseScriptName_scriptNameportNameGetListNameget_LinqDataSource_InvalidViewNameDefaultViewNameviewNameGetDataObjectTypeByNameFindUsersByNameget_LinqDataSource_DisplayNameget_DisplayNamereferenceDisplayNamearrayNameid49_AssemblyNamem_AssemblyNameget_AssemblyNameset_AssemblyNameassemblyNameWebRefDirectoryNameGetDirectoryNameget_PropertyNameset_PropertyNamefullPropertyName_propertyName_namefilenameusernameGetAssemblyModifiedTimeget_UtcDateTimeSerializeDateTimeDeserializeStringIntoDateTimeIsNextElementDateTimeGetLastWriteTimeupdateSaveTimeToUniversalTime_firstTimedatetimeHttpRuntimeget_Common_GreaterThanOrEqualToZeroAndLessThanOrEqualToOneExactlyOneAppendLineWriteLineget_NewLineCombineget_IsOfflineset_IsOfflineStoreIsOfflineFetchIsOfflineInlineuserIsOnlineGetNumberOfUsersOnlineNoneCloneget_JSON_BadEscapeget_ExpressionParser_NoItInScopeIDTypeget_Typeset_TypeXmlSchemaTypeRead12_MetadataTypeWrite12_MetadataTypeRead4_MetadataTypeWrite4_MetadataTypeid15_MetadataTypeid17_MetadataTypem_MetadataTypeGetMetaTypeIsNumericTypeFindGenericTypeMakeGenericType_enumerableGenericTypeget_IsGenericType_listGenericType_dictionaryGenericType_idictionaryGenericTypeGetFuncTypeSystem.Web.Compilation.WCFModel.IContractGeneratorReferenceTypeLoader.LoadTypeRead2_ReferencedTypeWrite2_ReferencedTypeid48_ReferencedTypeid26_ExcludedTypeneedTypeGetCompiledTypeIsPredefinedTypeget_ReflectedTypeget_ProxyGenerator_UnsupportedTypeget_PagerFieldCollection_InvalidTypeget_Common_ArgumentInvalidTypeget_FieldTypeget_OfTypeExpression_CannotFindTypeGetSqlCeTypeIsWCFServiceTypeIsWebServiceType_authenticationServiceTypeserviceTypeget_NodeTypeXmlNodeTypeIsPageTypeRangeTyperangeTypeValidateTableTypeGetNonNullableTypeUnwrapNullableTypeIsNullableTypeFindGenericEnumerableTypeIsClientInstantiatableTypeget_FileTypeset_FileTypeDetermineFileTypefileTypeXmlSchemaSimpleTypesimpleTypeDefineTypeget_BaseTypeCreateTypeget_AttributeTypeIsNonNullableValueTypeget_IsValueTypeResolveTypeIsInstanceOfTypeget_DeclaringTypeGetUnderlyingTypeget_SearchTypeset_SearchTypeWriteXsiTypeGetXsiTypecheckTypeIsSignedIntegralTypeIsUnsignedIntegralTypeImportActualType_actualTypeset_ImportXmlTypeextenderControlTypeget_TargetControlTypeVerifyTargetControlType_targetControlType_SqlCeParamType_paramTypeget_ItemTypeSchemaTopLevelItemTypeListItemTypeListViewItemType_itemTypeGetAssemblyFromTypeget_JSON_InvalidEnumTypeIsEnumTypeget_MinTypeset_MinTypeextensionTypeExpressionTypeget_AuthenticationTypeauthenticationTypeset_ValidationTypedestinationTypeid50_ReferencedCollectionTypeRead5_ReferencedCollectionTypeWrite5_ReferencedCollectionType_SqlCeConnectionTypeget_ComparisonTypeset_ComparisonTypeget_NumericPagerField_ButtonTypeget_NextPreviousPagerField_ButtonTypeget_ButtonTypeset_ButtonTypeget_ReturnTypeget_WebService_InvalidXmlReturnTypereturnTypeCreateKnownTypeget_ConvertersCollection_UnknownType_nameToTypeget_JSON_CannotConvertObjectToTypeTryConvertObjectToTypeConvertToType_propTypeget_MemberTypeget_EventHandlerTypeget_ParameterTypeGetClientTypeFromServerTypeRead6_ProxySerializerTypeWrite6_ProxySerializerTypeConverterExistsForType_GetCredentialsTypeaddressTypem_ContractTypeget_ContractTypeset_ContractTypeid42_ReferencedDataContractTypeGeneratedContractTypeGenerateServiceContractTypecontractTypeGetDataObjectTypedataObjectTypeget_MethodExpression_FirstParamterMustBeCorrectTypeGetTypeget_EntitySetTypeGetEntitySetType_entitySetTypetargetTypeitTyperesultTypeProcessClientTypeget_ElementTypeGetElementTypeelementTypeget_ContentTypeset_ContentType_contentTypeget_ScriptTypeRegisteredScriptTypeget_WebService_InvalidGenerateScriptType_scriptTypeget_LinqDataSourceView_CannotConvertTypeget_PortTyperequestTypeget_JSON_CannotCreateListTypeSystem.Web.DynamicData.IDynamicDataSource.ContextTypeSystem.Web.DynamicData.IDynamicDataSource.get_ContextTypeSystem.Web.DynamicData.IDynamicDataSource.set_ContextTypeget_LinqDataSourceView_InvalidContextTypeValidateContextType_contextTypeget_MaxTypeset_MaxTypeXmlSchemaComplexTypeXmlSeverityTypeget_EntityType_entityTypeget_PropertyTypeget_LinqDataSourceView_InvalidTablePropertyType<>3__typeGeneratePrototypeCompareget_LinqDataSource_Whereget_Whereset_Where_whereSystem.CoreGetPropertyValuesFromWebCoreSetPropertyValuesWebCoreValidateUserCoreGetRolesForUserCoreGetPropertyValuesCoreSetPropertyValuesCoreid16_Ignoreid18_Ignorem_Ignoreget_Ignoreset_IgnoreuseIsolatedStore_UsingIsolatedStoreGetLastUserNameFromOffileStoreStoreLastUserNameInOffileStoreValidateUserWithOfflineStore_UsingFileSystemStoreLogWebResourceFailureensureSignatureget_CurrentUICultureset_CurrentUICultureget_Cultureset_CultureresourceCultureDetermineNearestAvailableCultureDetermineCultureGetAssemblyNeutralCultureget_InvariantCultureget_CurrentCulturecultureCaptureobjectsInUseMethodBaseScriptReferenceBaseget_CodeBaseVirtualFileBaseProfileBaseHttpResponseBaseHttpResponseInternalBaseurlBaseNameObjectCollectionBaseXmlSchemaGroupBaseProviderBaseConfigurationValidatorBaseHttpCapabilitiesBaseHttpBrowserCapabilitiesBaseApplicationSettingsBaseHttpRequestBaseHttpContextBaseHttpCachePolicyBaseHttpServerUtilityBaseFilterNameIgnoreCaseget_OrdinalIgnoreCaseget_DatabaseReleaseRaiseOrElseSystem.Web.UI.IPage.ResponseSystem.Web.UI.IPage.get_ResponseHttpWebResponseendResponseget_UseXmlResponseGetCookiesFromResponseget_ClientService_BadJsonResponseHttpResponse_httpResponseCreateWebRequestAndGetResponseresponsePurposeSystem.IDisposable.DisposeSystem.Web.IHttpModule.DisposeSystem.Web.UI.IScriptManager.RegisterDisposeget_RegisterDisposeset_RegisterDispose_registerDisposeTryParseget_LinqDataSource_AutoGenerateWhereClauseget_AutoGenerateWhereClauseset_AutoGenerateWhereClause_autoGenerateWhereClauseGetWhereClauseget_ExpressionParser_MissingAsClauseget_LinqDataSource_AutoGenerateOrderByClauseget_AutoGenerateOrderByClauseset_AutoGenerateOrderByClause_autoGenerateOrderByClauseGetOrderByClauseget_JsonDeserializerLimitedDate_CacheExpiryDateget_UpdatePanel_UpdateTooLateget_ScriptControlManager_RegisterExtenderControlTooLateget_ScriptControlManager_RegisterScriptControlTooLatepredicateSystem.Web.UI.IPage.ValidateOnValidateMembershipValidateget_ListView_InvalidUpdateget_LinqDataSource_EnableUpdateget_EnableUpdateset_EnableUpdate_enableUpdateHandleUpdate_updatePanelsRequireUpdateExecuteUpdateget_CanUpdateget_RequiresUpdate_updatePanelRequiresUpdate_explicitUpdateContextCreateTryCreateNegateSystem.Web.UI.IPage.SetRenderMethodDelegateSystem.Web.UI.IHtmlForm.SetRenderMethodDelegateMakeDelegateCreateDelegateIsBundleVirtualPathDelegateGetBundleUrlDelegateSystem.Web.UI.IPage.SetPostFormRenderDelegateGetBundleContentsDelegateBundleResolverCurrentDelegateMulticastDelegateget_ExpressionParser_NoApplicableAggregateParseAggregateadd_Navigateremove_Navigateget_ScriptManager_NavigateRaiseNavigateITemplateget_EmptyDataTemplateset_EmptyDataTemplateget_ListView_EmptyDataTemplate_instantiatedEmptyDataTemplateInstantiateEmptyDataTemplate_emptyDataTemplateIBindableTemplateget_ItemTemplateset_ItemTemplateget_ListView_ItemTemplateget_SelectedItemTemplateset_SelectedItemTemplateget_ListView_SelectedItemTemplate_selectedItemTemplateInstantiateItemTemplateget_AlternatingItemTemplateset_AlternatingItemTemplateget_ListView_AlternatingItemTemplate_alternatingItemTemplateget_EditItemTemplateset_EditItemTemplateget_ListView_EditItemTemplate_editItemTemplateget_InsertItemTemplateset_InsertItemTemplateget_ListView_InsertItemTemplateInstantiateInsertItemTemplate_insertItemTemplateget_EmptyItemTemplateset_EmptyItemTemplateget_ListView_EmptyItemTemplateInstantiateEmptyItemTemplate_emptyItemTemplate_itemTemplateget_GroupTemplateset_GroupTemplateget_ListView_GroupTemplateInstantiateGroupTemplateget_ListView_GroupItemCountNoGroupTemplate_groupTemplateget_TemplatePagerField_PagerTemplateget_PagerTemplateset_PagerTemplate_pagerTemplateget_ItemSeparatorTemplateset_ItemSeparatorTemplateget_ListView_ItemSeparatorTemplateInstantiateItemSeparatorTemplate_itemSeparatorTemplateget_GroupSeparatorTemplateset_GroupSeparatorTemplateget_ListView_GroupSeparatorTemplateInstantiateGroupSeparatorTemplate_groupSeparatorTemplateget_UpdateProgress_ProgressTemplateget_ProgressTemplateset_ProgressTemplate_progressTemplateget_ContentTemplateset_ContentTemplateget_UpdatePanel_CannotSetContentTemplate_contentTemplateget_LayoutTemplateset_LayoutTemplateget_ListView_LayoutTemplateEnsureLayoutTemplateCreateLayoutTemplate_layoutTemplateget_StatesavedStateEditorBrowsableState_initialStateget_ModelStateLoadControlStateSaveControlStateRegisterRequiresControlStateSystem.Web.SessionStateIRequiresSessionStateGetJsonStateserverStatem_ErrorGeneratorStateget_ErrorGeneratorStategeneratorStateLoadDataKeysStateSaveDataKeysStateLoadClientIDRowSuffixDataKeysStateSaveClientIDRowSuffixDataKeysStateadd_PostAcquireRequestStateOnPostAcquireRequestStateget_ViewStateSystem.Web.UI.IStateManager.LoadViewStateClearChildViewStateSystem.Web.UI.IStateManager.SaveViewStateSystem.Web.UI.IStateManager.IsTrackingViewStateSystem.Web.UI.IStateManager.get_IsTrackingViewStateSystem.Web.UI.IStateManager.TrackViewState_trackViewStateget_LinqDataSource_StoreOriginalValuesInViewStateget_StoreOriginalValuesInViewStateset_StoreOriginalValuesInViewState_storeOriginalValuesInViewState_viewStateWebForms_ScriptManager_HistoryStateLoadHistoryStateget_ScriptManager_EnableSecureHistoryStateget_EnableSecureHistoryStateset_EnableSecureHistoryState_enableSecureHistoryStateGetOriginalEntityState<>1__stateget_ListView_InvalidDeleteget_LinqDataSource_EnableDeleteget_EnableDeleteset_EnableDelete_enableDeleteHandleDeleteExecuteDeleteget_CanDeleteSystem.Web.UI.IPage.LoadCompleteSystem.Web.UI.IPage.add_LoadCompleteSystem.Web.UI.IPage.remove_LoadCompleteOnPageLoadCompleteOnRemoveCompleteOnClearCompleteSystem.Web.UI.IPage.PreRenderCompleteSystem.Web.UI.IPage.add_PreRenderCompleteSystem.Web.UI.IPage.remove_PreRenderCompleteOnPagePreRenderCompleteget_AuthenticationIsCompleteset_AuthenticationIsComplete_authenticationIsCompleteSystem.Web.UI.IPage.InitCompleteSystem.Web.UI.IPage.add_InitCompleteSystem.Web.UI.IPage.remove_InitCompleteOnPageInitCompleteOnInsertCompletearrToWriteBinaryWriteQuoteXmlSchemaAttributeAddAttributeCompilerGeneratedAttributeWebMethodAttribute_webMethodAttributeScriptMethodAttribute_scriptMethodAttributeActualTypeNamespaceAttributeget_WebService_NoScriptServiceAttributeTemplateInstanceAttributeWebResourceAttributeScriptResourceAttributeGeneratedCodeAttributeDebuggerNonUserCodeAttributePersistenceModeAttributeAttributeUsageAttributeNeutralResourcesLanguageAttributeThemeableAttributeDebuggableAttributeEditorBrowsableAttributeLocalizableAttributeComVisibleAttributeAssemblyKeyFileAttributeAssemblyTitleAttributeAddStyleAttributeActualTypeNameAttributeResourceDisplayNameAttributeIteratorStateMachineAttributeTargetControlTypeAttributeServiceKnownTypeAttributeGenerateScriptTypeAttributeXmlIgnoreAttributeCheckScriptIgnoreAttributeObsoleteAttributeWriteAttributeXmlAttributeAttributeXmlAnyAttributeAttributeResourceDefaultValueAttributeSecuritySafeCriticalAttributeSecurityCriticalAttributeXmlAttributeNonVisualControlAttributeToolboxItemAttributeXmlArrayItemAttributeGetCustomAttributeXmlEnumAttributeDebuggerHiddenAttributeParseChildrenAttributePersistChildrenAttributeAssemblyDelaySignAttributeExtensionAttributeAssemblyFileVersionAttributeAssemblyInformationalVersionAttributeSatelliteContractVersionAttributeFileIOPermissionAttributeConfigurationPermissionAttributeSecurityPermissionAttributeSupportsEventValidationAttributeConfigurationCollectionAttributeResourceDescriptionAttributeWebSysDescriptionAttributeAssemblyDescriptionAttributeInternalsVisibleToAttributeRegisteredExpandoAttributeSystem.Web.UI.IScriptManager.RegisterExpandoAttributeToolboxBitmapAttributeDataMemberAttributeDefaultMemberAttributeDesignerAttributeTemplateContainerAttributeHtmlTextWriterAttributeTypeConverterAttributeServiceBehaviorAttributeStringValidatorAttributeEditorAttributeAssemblyDefaultAliasAttributeSecurityRulesAttributeDefaultDllImportSearchPathsAttributeIsXmlnsAttributeCompilationRelaxationsAttributeAllowPartiallyTrustedCallersAttributeAspNetCompatibilityRequirementsAttributeDataContractAttributePatchConfigurationNameInServiceContractAttributeOperationContractAttributeAssemblyProductAttributeSystem.Web.UI.IAttributeAccessor.GetAttributeSystem.Web.UI.IAttributeAccessor.SetAttributePermissionSetAttributeAssemblyCopyrightAttributeCLSCompliantAttributeXmlElementAttributeXmlAnyElementAttributeDefaultEventAttributeXmlRootAttributeget_OutAttributeoutAttributeMoveToNextAttributeXmlTextAttributeTagPrefixAttributeXmlArrayAttributeParamArrayAttributeDependencyAttributeBitmapSuffixInSatelliteAssemblyAttributeSafeGetAjaxFrameworkAssemblyAttributeAssemblyCompanyAttributeWebCategoryAttributeResourceCategoryAttributeDesignerSerializationVisibilityAttributeRuntimeCompatibilityAttributeIDReferencePropertyAttributeMergablePropertyAttributeControlValuePropertyAttributeUrlPropertyAttributeConfigurationPropertyAttributeCssClassPropertyAttributeDefaultPropertyAttributeNotifyParentPropertyAttributeDataKeyPropertyAttributeCanExecuteToAbsoluteget_ExpiresAbsoluteset_ExpiresAbsoluteget_MinuteSByteTValueid15_Valuem_Valueget_Valueset_ValueAddValueget_SelectedValueget_SerializedValueset_SerializedValuehiddenFieldValueAppendValuecookieValueset_DisplayNameValueSetStateValueWriteValueattributeValueSerializeValueGetTagValueSetTagValuetagValueget_QueryStringValueget_InitialValuehiddenFieldInitialValue_initialValueoriginalValueparamValueset_DescriptionValueget_HasValueContainsValueBuildObjectValueFieldInfoGetValueTryGetValueSetValueget_DefaultValueset_DefaultValue_defaultValueget_ExpressionParser_CannotConvertValuenewValuearrayValueSerializeDictionaryKeyValueget_PropertyValueset_PropertyValueSettingsPropertyValueGetPropertyValuepropertyValue_valueSaveInclusiveExclusiveParseMultiplicativeMakeRelativeEnsureAbsoluteOrAppRelativeIsControlRegistrationActivepageAlwaysActiveParseAdditiveget_JSON_IllegalPrimitiveget_IsPrimitiveSystem.Collections.Generic.ICollection<System.Collections.Generic.KeyValuePair<TKey,TValue>>.RemoveBaseRemoveTryRemoveget_DataPager_PageSizeget_PageSizeset_PageSizepageSizedwSizeCanSerializeobjectToSerializeBasicDeserializeCanDeserializeInitializeSuppressFinalizesizeIsSubclassOfLimitedIndexOfLastIndexOfscriptRefget_IsByRefkeywordIifParseIifStateBag_stateBag_SQL_CE_Tag_SQL_FILES_Tag_Isolated_Storage_TagRenderEndTagget_ScriptRegistrationManager_NoCloseTagWriteBeginTagRenderBeginTagHtmlTextWriterTagset_WrappedFlagRuntimeConfigGetToolConfigGetDebugFromConfigGetRetailFromConfigGetAppConfigconfig_propEnableForReadingSystem.Threadingm_ErrorInLoadingget_ErrorInLoadingset_ErrorInLoadingAscendingOrderByDescendingget_Bindingid24_EnableDataBindingm_EnableDataBindingget_EnableDataBindingset_EnableDataBindingPerformDataBindingOnDataBindingget_RequiresDataBindingset_RequiresDataBindingget_ListView_DataSourceMustBeCollectionWhenNotDataBindingdataBindingGenerateBindingget_WsdlBindingwsdlBindingSystem.Web.ModelBindingHttpBindingMemberBindingSoap12AddressBindingSoapAddressBindingUTF8EncodingexpectedEncodingget_HeaderEncodingset_HeaderEncodingget_CurrentEncodingget_ContentEncodingset_ContentEncodingencodingExecutePagingget_AllowServerPagingset_AllowServerPaging_allowServerPagingget_ListView_DataSourceDoesntSupportPagingadd_PagePropertiesChangingremove_PagePropertiesChangingget_ListView_OnPagePropertiesChangingEventPagePropertiesChangingadd_SelectedIndexChangingremove_SelectedIndexChangingget_ListView_OnSelectedIndexChangingEventSelectedIndexChangingSystem.Web.Cachingget_EnableCachingset_EnableCaching_propEnableCachings_enableCachingSetNoServerCaching_isTrackingget_LinqDataSource_EnableObjectTrackingget_EnableObjectTrackingset_EnableObjectTracking_enableObjectTracking_trackingget_NextSiblingget_UseLegacyClientServicesJsonHandlingadd_ItemCancelingremove_ItemCancelingget_ListView_OnItemCancelingEventItemCancelingSystem.Runtime.Versioningm_IsWarningget_IsWarningisWarningSystem.Data.Linq.Mappingget_Mappingid31_NamespaceMappingRead3_NamespaceMappingWrite3_NamespaceMappingIScriptResourceMappingget_ScriptResourceMapping_scriptResourceMappingid33_CollectionMappingid45_ContractMappingRead8_ContractMappingWrite8_ContractMappingid44_ServiceContractMappingVirtualDirectoryMappingget_ScriptManager_EnablePartialRenderingget_EnablePartialRenderingset_EnablePartialRenderingget_ScriptManager_CannotChangeEnablePartialRendering_enablePartialRenderingget_IsInPartialRenderingget_SupportsPartialRenderingset_SupportsPartialRenderingget_ScriptManager_CannotChangeSupportsPartialRendering_supportsPartialRenderingget_EnableLegacyRenderingDynamicOrderingParseOrderingorderingFromBase64StringToBase64Stringget_JSON_UnterminatedStringdecryptedStringGetLocalizedStringEncodeStringGetStringFromSecureStringGetResponseStringValidateStringGetStateStringget_XmlSerializeStringset_XmlSerializeString_xmlSerializeStringDeserializeStringGetDebugStringget_CombinedHashStringIsWellFormedUriStringMakeValidTypeNameFromStringGetSecureStringFromStringConvertFromStringget_ConnectionStringIsSpecialConnectionStringGetConnectionStringGetDefaultConnectionStringconnectionStringWriteExceptionJsonStringXmlSerializeObjectToStringReadContentAsStringget_MaxOccursStringget_DynamicControlBase_DataFormatStringGetStringConvertFromInvariantStringConvertToInvariantStringReadElementStringWriteElementStringIsNextElementStringJavaScriptStringDecryptStringEncryptStringget_QueryStringParseQueryStringGetStartRowIndexFromQueryStringCreateDataPagersForQueryStringSubstringadd_ContextDisposingget_LinqDataSource_ContextDisposingremove_ContextDisposingOnContextDisposingEventContextDisposingdisposingWSAddressingadd_Authenticatingremove_AuthenticatingOnAuthenticating_authenticatingadd_Updatingget_LinqDataSource_Updatingremove_Updatingadd_ItemUpdatingremove_ItemUpdatingget_ListView_OnItemUpdatingEventItemUpdatingOnUpdatingEventUpdatingadd_ContextCreatingget_LinqDataSource_ContextCreatingremove_ContextCreatingOnContextCreatingEventContextCreatingget_IsNavigating_isNavigatingadd_Selectingget_LinqDataSource_Selectingremove_SelectingOnSelectingEventSelectingselectingadd_RedirectingHttpResponse_Redirectingadd_Deletingget_LinqDataSource_Deletingremove_Deletingadd_ItemDeletingremove_ItemDeletingget_ListView_OnItemDeletingEventItemDeletingOnDeletingEventDeletingadd_ItemEditingremove_ItemEditingget_ListView_OnItemEditingEventItemEditing_propEnableForWritingget_Scriptingadd_Insertingget_LinqDataSource_Insertingremove_Insertingadd_ItemInsertingremove_ItemInsertingget_ListView_OnItemInsertingEventItemInsertingOnInsertingEventInsertingadd_Sortingremove_Sortingget_Category_SortingExecuteSortingget_ListView_OnSortingEventSortingSystem.Web.HostingSystem.Drawingadd_Queryingremove_QueryingOnQuerying_queryingget_IsULongisULongget_ScriptResourceHandler_ResourceUrlTooLongAppendToLogget_WebService_MissingArgmsgget_Debugget_IsDebug_isDebug_debugAttachusernameToMatchemailToMatchIsMatchget_ReferenceGroup_ServiceContractMappingMissMatchget_ScriptResourceHandler_TypeNameMismatchget_ExpressionParser_ExpressionTypeMismatchget_JSON_DeserializerTypeMismatchEnsureObjectGraphget_PasswordHashset_PasswordHash_SavePasswordHashGetFileHashComputeHashComputeStringHashAppendTrailingSlashRemoveTrailingSlashGetIsCacheMoreFreshSetIsCacheMoreFreshget_SettingsCacheIsMoreFreshset_SettingsCacheIsMoreFreshcacheIsMoreFresh_childUpdatePanelsToRefresh_updatePanelsToRefreshFlushMathget_ServiceReference_Pathget_ScriptReference_Pathget_ApplicationServiceManager_Pathget_Pathset_Pathget_UserAppDataPathget_ScriptResourceDefinition_InvalidPathget_FilePathget_AppRelativeCurrentExecutionFilePath_mapFilePathCombinePathunsecurePathreleasePathvalidatePathget_ScriptResourceAbsolutePath_scriptResourceAbsolutePathIsAppRelativePathappRelativePathget_EffectivePathGetEffectivePathget_DebugPathset_DebugPathpredeterminedDebugPathget_CdnDebugPathset_CdnDebugPath_cdnDebugPathGetDebugPath_debugPathDllImportSearchPathfallbackPathget_ApplicationPhysicalPathget_LocalPathget_VirtualPathIsBundleVirtualPathget_WebService_InvalidInlineVirtualPathSystem.Web.UI.IPage.AppRelativeVirtualPathSystem.Web.UI.IPage.get_AppRelativeVirtualPathCreateInstanceFromVirtualPathget_AppDomainAppVirtualPathGetAppDomainAppVirtualPathwebReferencesRootVirtualPathGetWebRefDirectoryVirtualPathvirtualPathUrlPathGetUrlFromPathget_CdnPathset_CdnPathGetSecureCdnPathuseCdnPath_cdnPathMapPathGetPathget_RoleServiceManager_LoadRolesWithNonDefaultPathget_ProfileServiceManager_LoadProperitesWithNonDefaultPathget_ScriptManager_ScriptPathget_ScriptPathset_ScriptPathget_ScriptReference_IgnoreScriptPathget_IgnoreScriptPathset_IgnoreScriptPath_ignoreScriptPathget_ScriptReference_InvalidReleaseScriptPathGetScriptPath_scriptPathGetProxyPath_pathget_Widthset_Widthget_BorderWidthset_BorderWidthget_Lengthget_MinRequiredPasswordLength_maximumResourceUrlLengthget_MaxJsonLengthset_MaxJsonLengthget_JSON_InvalidMaxJsonLength_propMaxJsonLengthDefaultMaxJsonLength_maxJsonLengthset_ContentLengthget_UpdatePanelMaxScriptLengthDateTimeMaxLengthDateTimePrefixLengthDateTimeSuffixLengthlengthIsCompatibleWithEndsWithStartsWithget_MonthBothdepthNamespaceUriget_ServiceUriset_ServiceUriGetServiceUriserviceUriget_SourceUriset_SourceUriSerializeUriserverUriIsAsmxUriuriobjget_ScriptManager_CannotAddHistoryPointOutsideOfAsyncPostBackget_IsInAsyncPostBack_isInAsyncPostBackSystem.Web.UI.IPage.IsPostBackSystem.Web.UI.IPage.get_IsPostBackAsyncCallbackHandleCommandCallbackRenderPageCallbackHandleUpdateCallbackHandleDeleteCallbackRenderFormCallbackDataSourceViewOperationCallbackHttpResponseSubstitutionCallbackget_SupportsCallbackDataSourceViewSelectCallbackHandleInsertCallbackget_ScriptManager_EnableCdnFallbackget_EnableCdnFallbackset_EnableCdnFallbackget_ScriptManager_CannotChangeEnableCdnFallback_enableCdnFallbackcallbackRollbackstackAddFrameworkLoadedCheckget_UpdateCheckadd_Tickremove_TickOnTickget_Timer_TimerTick_getMethodLockAcquireReaderLockReleaseReaderLock_creatingCookieEventHandlerLock_authenticatingEventHandlerLock_selectingProviderEventHandlerLock_validatingPropertiesEventHandlerLockDowngradeFromWriterLockUpgradeToWriterLockReaderWriterLockrwLockGetClientCultureScriptBlockRegisterGlobalizationScriptBlockSystem.Web.UI.IScriptManager.RegisterClientScriptBlockSystem.Web.UI.IClientScriptManager.RegisterClientScriptBlock_lockget_CanSeekGetArrayRankCreateNumericLinkCreateLinkHyperLinkCreateNextPrevLinkget_TargetFrameworkAsteriskpropValDeclareLocalMarshalget_CustomCredential_customCredentialDecimalget_Ordinalget_UpdatePanel_UpdateConditionalGenerateConditionalget_ElementIDInternal_elementIDInternalGetScriptFromWebResourceInternalRegisterClientScriptIncludeInternalConvertObjectToTypeInternalset_GenerateInternalSerializeValueInternalSerializeInternalDeserializeInternalRegisterClientScriptBlockInternalGetWebResourceUrlInternalGetUrlInternalLoginInternalget_SortExpressionInternalset_SortExpressionInternalget_SortDirectionInternalset_SortDirectionInternalGetAssemblyInfoInternalClearInternalIScriptManagerInternalget_DataKeyNamesInternalGetTargetControlTypesInternalSystem.Web.UI.IScriptManager.SetFocusInternalRegisterStartupScriptInternalProcessRequestInternalget_ClientIDRowSuffixInternalget_AssemblyInternalSystem.Security.PrincipalIPrincipalClientRolePrincipalWindowsPrincipalget_CurrentPrincipalset_CurrentPrincipalfalseLiteralCreateLiteraltrueLiteralWriteNullTagLiteralget_ExpressionParser_UnterminatedStringLiteralParseStringLiteralget_ExpressionParser_InvalidRealLiteralParseRealLiteralnullLiteralget_ExpressionParser_InvalidIntegerLiteralParseIntegerLiteralget_ExpressionParser_InvalidCharacterLiteralDoubleEqualGenerateEqualGenerateGreaterThanEqualGenerateLessThanEqualExclamationEqualop_GreaterThanOrEqualop_LessThanOrEqualGenerateNotEqualget_EnablePasswordRetrievalget_Intervalset_Intervalget_Timer_TimerIntervalWsdlDefineLabelMarkLabelget_Cancelget_ListView_InvalidCancelHandleCancelSystem.Web.Compilation.WCFModelImportWCFModelget_ModelMetaModelSystem.ServiceModelSystem.Collections.ObjectModelSystem.ComponentModelget_ContentModelXmlSchemaContentModelIUpdatePanelFindUpdatePanelget_UpdateProgress_NoUpdatePanelSystem.Web.UI.IScriptManagerInternal.RegisterUpdatePanelSystem.Web.UI.IScriptManagerInternal.UnregisterUpdatePanelget_ParentUpdatePanel_parentUpdatePanelget_ExtenderControl_TargetControlDifferentUpdatePanelupdatePanelRegisterPanelPartialTrustVisibilityLevelget_RequiresUniqueEmailGetUserNameByEmailFindUsersByEmailemailget_Retailget_DeploymentSectionRetail_retailSystem.Web.UtilWebResourceUtilControlUtilAssemblyUtilAllGenerateStaticMethodCallget_IsRestMethodCall_isRestMethodCallget_WebService_InvalidWebServiceCallExecuteWebServiceCallEmitCallSystem.Web.Extensions.dllwininet.dllHtmlTableCellListViewTableCellAddToCollretCollIsDBNullReadNullget_Common_PageCannotBeNullget_JSON_ValueTypeCannotBeNullget_ArgumentMustBeNullget_DynamicControlBase_ConvertEmptyStringToNullget_ConvertEmptyStringToNullset_ConvertEmptyStringToNullget_ListView_ConvertEmptyStringToNullSystem.XmlGetSchemaPropertyNameInXmlAddSymbolid21_Protocolid23_Protocolm_Protocolget_Protocolset_Protocolget_ReferenceGroup_EmptyProtocolprotocolget_ExpressionParser_FirstExprMustBeBoolAutoIDControlIControlget_ControlWebControl_focusedControl_associatedControlFindControlIDataBoundControlBaseDataBoundControlDataSourceControlpageControlget_CacheControlset_CacheControlCreateControlget_TemplateControlget_ContainingControlset_ContainingControl_containingControlRegisterAsyncPostBackControlSystem.Web.UI.IScriptManager.RegisterPostBackControlLiteralControlIButtonControlSystem.Web.UI.IHtmlForm.RenderControlIExtenderControlTExtenderControlRegisterExtenderControlAddScriptReferenceForExtenderControlextenderControlscriptManagerControlcontainerControlContainsControlIDataKeysControlFindTargetControltargetControlIScriptControlTScriptControlRegisterScriptControlAddScriptReferenceForScriptControlscriptControlIDataBoundListControlIWizardSideBarListControl_controlget_Implid3_SvcMapFileImplRead15_SvcMapFileImplWrite15_SvcMapFileImplid3_DataSvcMapFileImplRead8_DataSvcMapFileImplWrite8_DataSvcMapFileImplXmlSerializationReaderDataSvcMapFileImplXmlSerializationWriterDataSvcMapFileImplXmlSerializationReaderSvcMapFileImplXmlSerializationWriterSvcMapFileImplmapFileImplGetScriptResourceUrlImpl_implILinqToSql_linqToSqlget_UrlGetServiceUrlserviceUrlid21_SourceUrlid19_SourceUrlm_SourceUrlget_SourceUrlset_SourceUrlGetMetadataSourceUrlSystem.Web.UI.IClientScriptManager.GetWebResourceUrlScriptResourceHandler_ScriptResourceUrlEnsureAbsoluteScriptResourceUrl_absoluteScriptResourceUrlSystem.Web.Handlers.IScriptResourceHandler.GetScriptResourceUrl_scriptResourceUrlget_ScriptManager_EmptyPageUrlget_EmptyPageUrlset_EmptyPageUrlSystem.Web.Handlers.IScriptResourceHandler.GetEmptyPageUrlset_ImageUrlget_NumericPagerField_PreviousPageImageUrlget_NextPreviousPagerField_PreviousPageImageUrlget_PreviousPageImageUrlset_PreviousPageImageUrlget_NextPreviousPagerField_LastPageImageUrlget_LastPageImageUrlset_LastPageImageUrlget_NextPreviousPagerField_FirstPageImageUrlget_FirstPageImageUrlset_FirstPageImageUrlget_NumericPagerField_NextPageImageUrlget_NextPreviousPagerField_NextPageImageUrlget_NextPageImageUrlset_NextPageImageUrlimageUrlGetBundleUrlset_NavigateUrlGetQueryStringNavigateUrl_queryStringNavigateUrlIsRelativeUrlrelativeUrlResolveUrlexistingUrlget_RetrievalUrlset_RetrievalUrlFormatCdnUrlGetUrlSystem.Web.UI.IClientUrlResolver.ResolveClientUrlGetProxyUrl_urlGetManifestResourceStreamIsolatedStorageFileStreamGetResponseStreamGZipStreamGetRequestStreamget_InputStreamget_OutputStreamMemoryStream_paramSystem.Data.Metadata.Edmid2_Itemid23_Itemid5_Itemget_Itemset_Itemget_DataItemset_DataItemCreateDataItemRegisterDataItemScriptDataItemListViewDataItemCreateEmptyDataItem_dataItemmetadataItemGetNamedItemDataPagerFieldItemDocumentableItemUpdateItemCreateItemDeleteItemRemoveItemoriginalItemWizardSideBarListControlItemisItemSelectItemSetItemget_EditItemget_ListView_EditItemSetEditItemget_InsertItemget_ListView_InsertItemCreateInsertItemget_ListView_NoInsertItem_insertItemLastItemFirstItemInsertNewItemListViewItemCreateEmptyItem_itemSystemHashAlgorithmTrimSystem.CodeDomIsAssignableFromCanConvertFromSystem.Web.UI.IPage.FormSystem.Web.UI.IPage.get_Formget_ExpressionParser_TypeHasNoNullableForm_writingFormIHtmlFormSystem.Web.UI.IPage.VerifyRenderingInServerForm_formSumParseEnumCheckIfEnumrealEnumcollectionEnumClientDateStoreOrderEnumget_IsEnumImportEnumValidateByCallingIsLoggedInInstantiateInresourceManSerializeBooleanToBooleanop_GreaterThanGenerateGreaterThanIsBetterThanop_LessThanGenerateLessThanTimeSpanget_ScriptManager_EnableCdnget_EnableCdnset_EnableCdnget_ScriptManager_CannotChangeEnableCdn_enableCdnGetUrlForCdntextLenHiddenFieldTokenPageTitleTokenScriptDisposeTokenValidateTokenDeserializePrimitiveTokenUpdatePanelsToRefreshTokenScriptStartupBlockTokenScriptBlockTokenUpdatePanelTokenDataItemTokenUpdatePanelVersionTokenArrayDeclarationTokenFormActionTokenDataItemJsonTokenExpandoTokenErrorTokenChildUpdatePanelIDsTokenAsyncPostBackControlIDsTokenFocusTokenPageRedirectTokenOnSubmitTokenAsyncPostBackTimeoutTokenNextTokenGetPublicKeyTokenSetPublicKeyTokentokenOpenCloseParenOpenParenDataBindChildrenRenderChildrenSystem.Web.UI.DesignSystem.Data.DesignSystem.Drawing.DesignSystem.DesignSystem.Data.Services.DesignMinConvertObjectToTypeMainAppDomainget_CurrentDomainValidateUserByCallingLoginJoinopenConnconnReplaceExtensionget_FileExtensionRemoveExtensionContainsHttpBindingExtensionGetLanguageFromExtensionDataSvcMapExtensionAsmxEndpointPickerExtensiontypedDataSetSchemaImporterExtensionGetExtensionGetDefaultExtensionIWsdlImportExtensionIPolicyImportExtensionextensionget_Versionset_VersionFocusMinimumEcmaVersionGetAssemblyFileVersiontargetFrameworkVersionInformationalVersionget_W3CDomVersionMinimumW3CDomVersionget_ScriptManager_MustHaveGreaterVersionget_MajorVersionget_IsVersionGetPreviousVersionGetVersionget_JScriptVersionFocusMinimumJScriptVersionget_EcmaScriptVersionMinimumEcmaScriptVersionGenerateConversionget_EnableSessionRestHandlerWithSessionAsyncHandlerWrapperWithSessionget_RequiresSessionSystem.IO.Compressionget_EnableCompressionset_EnableCompression_propEnableCompressions_enableCompressionget_Expressionset_ExpressionLambdaExpressionDynamicExpressionMethodExpressionParameterDataSourceExpressionCodeExpressionGetMinRangeExpressionGetMaxRangeExpressionOfTypeExpressionCreateWhereExpressionParseExpressionPromoteExpressionCodePrimitiveExpressionSearchExpressionfallbackExpressionConditionalExpressionMethodCallExpressionCreateCallExpressionCustomExpressionParseParenExpressionminExpressionInvocationExpressionCodeParameterDeclarationExpressionget_PasswordStrengthRegularExpressionMemberExpressionParameterExpressionparameterExpressionget_LoadSuccessExpressionset_LoadSuccessExpression_loadSuccessExpressionMemberInitExpressionConstantExpressionScriptExpressionget_SortExpressionset_SortExpressionget_ListView_SortExpression_sortExpressionNewExpressionmaxExpressionCreateOrderByExpressionUnaryExpressionBinaryExpressionQueryExpressionCreatePropertyExpressionpropertyExpressionexpressionHttpApplicationFormsAuthenticationget_LocationaddLocationget_RedirectLocationset_RedirectLocationdifferentLocationlocationParseLambdaInvocationget_ExpressionParser_AmbiguousMethodInvocationget_ExpressionParser_AmbiguousIndexerInvocationget_ExpressionParser_AmbiguousConstructorInvocationget_EnableModelValidationset_EnableModelValidationget_ListView_EnableModelValidationget_CausesValidationset_CausesValidationcausesValidationSystem.Web.UI.IPage.EnableEventValidationSystem.Web.UI.IPage.get_EnableEventValidationSystem.Web.Compilationget_CompilationExclamationIWcfReferenceReceiveContextInformationProvideImportExtensionsWithContextInformationReceiveImportContextInformationdestinationCodeTypeDeclarationGenerateTypeDeclarationPatchTypeDeclarationAppendClientTypeDeclarationCodeAttributeDeclarationRegisteredArrayDeclarationSystem.Web.UI.IScriptManager.RegisterArrayDeclarationget_OperationDynamicDataSourceOperationReportUniqueOperation_operationSetSlidingExpirationactiveRegistrationget_ScriptManager_InvalidControlRegistrationget_IsDirectRegistrationset_IsDirectRegistrationget_ScriptRegistrationProcessScriptRegistration_scriptRegistrationget_CacheDurationSystem.Web.ConfigurationSystem.ServiceModel.ConfigurationSystem.Configurationget_ConfigurationOpenMappedWebConfigurationGenerateCodeAndConfigurationtoolConfigurationget_TargetConfigurationtargetConfigurationXmlSerializerImplementationget_StringRepresentationGetTypeStringRepresentation_stringRepresentationget_AnnotationXmlSchemaAnnotationImportAnnotationannotationSystem.ServiceModel.ActivationSystem.Web.GlobalizationSystem.Globalizationget_ScriptManager_EnableScriptGlobalizationget_EnableScriptGlobalizationset_EnableScriptGlobalizationget_ScriptManager_CannotChangeEnableScriptGlobalization_enableScriptGlobalizationget_ScriptManager_EnableScriptLocalizationget_EnableScriptLocalizationset_EnableScriptLocalization_enableScriptLocalizationSystem.Runtime.SerializationSystem.Xml.SerializationSystem.Web.Script.Serializationget_JsonSerializationget_SkipAuthorizationShouldSkipAuthorizationlogActionget_FormAction_formActionSecurityActionset_TransactionDbTransactionBeginTransactionCreateMetadataSectionScriptingProfileServiceSectionScriptingRoleServiceSectionScriptingAuthenticationServiceSectionGetWebApplicationSectionICompilationSectionget_CompilationSection_useCompilationSectionget_AppLevelCompilationSection_appLevelCompilationSection_compilationSectionGetConfigurationSectionScriptingJsonSerializationSectionScriptingScriptResourceHandlerSectionICustomErrorsSectionget_CustomErrorsSection_customErrorsSectionGetSectionClientSectionIDeploymentSectionget_DeploymentSection_deploymentSectionSystem.Web.UI.WebControls.IDataBoundListControl.EnablePersistedSelectionSystem.Web.UI.WebControls.IDataBoundListControl.get_EnablePersistedSelectionSystem.Web.UI.WebControls.IDataBoundListControl.set_EnablePersistedSelectionget_ListView_EnablePersistedSelectionSystem.ReflectionEnumeratorOnICollectionmetadataCollectionStateManagedCollectionDataPagerFieldCollectionCodeNamespaceCollectionServiceCollectionServiceReferenceCollectionScriptReferenceCollectionOperationMessageCollectionHttpCookieCollectionPortTypeCollectionCaptureCollectionIsDefinedInCodeAttributeCollectionemptyXmlAttributeCollectionattributeCollectionNameValueCollectionSettingsPropertyValueCollectionpropertyValueCollectionCheckIfCollectionget_BindingCollectionbindingCollectionVirtualDirectoryMappingCollectionStringCollectionMatchCollectionoriginalCollectionSingleChildControlCollectionCreateControlCollectionget_UpdatePanel_CannotModifyControlCollectionScriptDataItemCollectionServiceDescriptionFormatExtensionCollectionDataSourceExpressionCollectionCodeParameterDeclarationExpressionCollectionCodeTypeDeclarationCollectionCodeAttributeDeclarationCollectionOperationCollectionConfigurationSectionCollectionServiceDescriptionCollectionConfigurationSectionGroupCollectionCodeTypeMemberCollectionWebHeaderCollectionRoleProviderCollectionMembershipProviderCollectionUpdatePanelTriggerCollectionMembershipUserCollectionDbParameterCollectionCustomErrorCollectionPropertyDescriptorCollectionConnectionStringSettingsCollectionConvertersCollectionKeysCollectionget_ContractCollectioncontractCollectionXmlSchemaObjectCollectionOperationFaultCollectionConfigurationElementCollectionCodeAttributeArgumentCollectionget_EndpointCollectionServiceEndpointCollectionMessagePartCollectionPortCollectionpostCollectionnewCollectionKeyCollectionAssemblyCollectionemptyCollectionConfigurationPropertyCollectionSettingsPropertyCollectionpropertyCollectioncollectionDbConnectionGetSqlCeConnectionCreateNewSqlCeConnectionSystem.Web.UI.IScriptResourceDefinition.CdnDebugPathSecureConnectionSystem.Web.UI.IScriptResourceDefinition.get_CdnDebugPathSecureConnection_cdnDebugPathSecureConnectionSystem.Web.UI.IScriptResourceDefinition.CdnPathSecureConnectionSystem.Web.UI.IScriptResourceDefinition.get_CdnPathSecureConnection_cdnPathSecureConnectionSystem.Web.UI.IScriptManager.IsSecureConnectionSystem.Web.UI.IScriptManager.get_IsSecureConnection_isSecureConnectionget_CdnSupportsSecureConnectionset_CdnSupportsSecureConnection_cdnSupportsSecureConnectionSqlConnectionGetConnectionget_Directionset_DirectionFieldDirectionBindingDirectionget_SortDirectionset_SortDirectionget_ListView_SortDirection_sortDirectiondirectionXmlSchemaSimpleTypeRestrictionsimpleTypeRestrictionCheckIfEnumRestrictionrestrictionop_AdditionConditionAddDefinitionIScriptResourceDefinitionget_IsGenericTypeDefinitionGetGenericTypeDefinitionRemoveDefinitionReferenceMatchesDefinitionSystem.Web.UI.IScriptResourceMapping.GetDefinitiondefinitionget_Positionset_Positionm_LinePositionget_LinePositionget_ReferenceGroup_AppendLinePositionget_InsertItemPositionset_InsertItemPositionget_ListView_InsertItemPositioninsertPositionpositionLanguageOptionSystem.Web.DynamicData.IDynamicDataSource.ExceptionSystem.Web.DynamicData.IDynamicDataSource.add_ExceptionSystem.Web.DynamicData.IDynamicDataSource.remove_Exceptionget_ExceptionXmlSchemaExceptionWebExceptionCryptographicExceptionFileLoadExceptionTypeLoadExceptionObjectDisposedExceptionNotImplementedExceptionNotSupportedExceptionFileNotFoundExceptionSettingsPropertyNotFoundExceptionMissingMethodExceptionMissingManifestResourceExceptionCreateUnknownNodeExceptionArgumentOutOfRangeExceptionSettingsPropertyWrongTypeExceptionCreateUnknownTypeExceptionParseExceptionCreateInvalidEnumValueExceptionPathTooLongExceptionLogExceptionPageIsValidAfterModelExceptionArgumentNullExceptionXmlExceptionOnExceptionTargetInvocationExceptionLinqDataSourceValidationExceptionInvalidOperationExceptionGetControlRegistrationExceptionConfigurationExceptionHttpExceptionProviderExceptionget_InnerExceptioninnerExceptionGetHttpCodeForExceptionerrorExceptionIDynamicValidatorExceptionUnauthorizedAccessExceptionBadImageFormatExceptionCreateUnknownConstantExceptionArgumentExceptionEventExceptionSecurityException_exceptionSystem.ServiceModel.DescriptionSystem.Web.Services.Descriptionget_LinqDataSource_Descriptionget_Descriptionget_ServiceDescriptionm_MetadataServiceDescriptionget_MetadataServiceDescriptionCreateFromServiceDescriptionserviceDescriptionget_StatusDescriptionset_StatusDescriptionGetStatusDescriptionContractDescriptionSystem.Web.UI.IPage.RegisterRequiresViewStateEncryptionnewPasswordQuestionpasswordQuestion_bypassVirtualPathResolutionWriteSubstitutionCopyScriptToStringBuilderWithSubstitutionget_PerformSubstitution_performSubstitutionColonSystem.Data.CommonJsonParseComparisonStringComparisonCreateNumericButtonget_NextPreviousPagerField_ShowPreviousPageButtonget_ShowPreviousPageButtonset_ShowPreviousPageButtonget_NextPreviousPagerField_ShowLastPageButtonget_ShowLastPageButtonset_ShowLastPageButtonget_NextPreviousPagerField_ShowFirstPageButtonget_ShowFirstPageButtonset_ShowFirstPageButtonget_NextPreviousPagerField_ShowNextPageButtonget_ShowNextPageButtonset_ShowNextPageButtonImageButtonLinkButtonCreateNextPrevButtonIdentifierPatternUnknownConvertToSystem.Collections.Generic.ICollection<System.Collections.Generic.KeyValuePair<TKey,TValue>>.CopyToDiscoFieldInfoget_MethodInfo_methodInforeleaseResourceInfoScriptResourceInforesourceInfoget_CultureInfoset_CultureInfoBuildSerializeableCultureInfoGetCultureInfoClientCultureInfoclientCultureInfocultureInfoScriptEffectiveInfoget_PathInfoClientDebugProxyRequestPathInfoClientProxyRequestPathInfopathInfoSerializationInfoXmlSchemaAppInfoGetTableMemberInfomemberInfoGetPreparedContainerInfoget_ParameterInfoConstructorInfoDateTimeFormatInfoNumberFormatInfoget_InvariantInfoEventInfoFontInfoget_ScriptInfo_scriptInfoGetAssemblyInfoassemblyInfoPropertyInfopropertyInfoinfoModuloget_Timer_IntervalMustBeGreaterThanZeroget_Common_GreaterThanOrEqualToZeroAndAlsoAutoXmlNamedNodeMapWebConfigurationFileMapserviceEndpointToChannelEndpointElementMapget_EndpointMapWrapUnwrapget_ToolTipset_ToolTipget_Zipset_ZipMembershipSkip_zipSystem.Web.UI.WebControls.LinqDataSource.bmpSystem.Web.Resources.UpdatePanel.bmpSystem.Web.UI.WebControls.QueryExtender.bmpSystem.Web.UI.WebControls.DataPager.bmpSystem.Web.Resources.ScriptManager.bmpSystem.Web.Resources.Timer.bmpSystem.Web.Resources.UpdateProgress.bmpSystem.Web.UI.WebControls.ListView.bmpSystem.Web.Resources.ScriptManagerProxy.bmpGetSupportsJsonpappget_MarkupXmlSchemaGroupid1_ReferenceGroupRead16_ReferenceGroupWrite16_ReferenceGroupRead9_ReferenceGroupWrite9_ReferenceGroupXmlSchemaAttributeGroupget_DynamicControlBase_ValidationGroupget_ValidationGroupResetModelValidationGroup_modelValidationGroupvalidationGroupScriptingSectionGroupServiceModelSectionGroupConfigurationSectionGroupScriptingWebServicesSectionGroupSystemWebExtensionsSectionGroupGetSectionGroupexpSystem.Data.LinqSystem.LinqParseLogicalOrDoubleBarget_CalendarUmAlQuraCalendarJapaneseCalendarHijriCalendarKoreanCalendarGregorianCalendarTaiwanCalendarThaiBuddhistCalendarget_YearBaseClear_allowClearAppendCharCheckQuoteCharVolumeSeparatorCharAltDirectorySeparatorCharNextCharGetNextNonEmptyCharExecuteScalarSetOmitVaryStarget_MemberSystem.Web.UI.WebControls.IDataBoundControl.DataMemberSystem.Web.UI.WebControls.IDataBoundControl.get_DataMemberSystem.Web.UI.WebControls.IDataBoundControl.set_DataMemberMetaDataMemberInvokeMemberCodeTypeMemberGetEntitySetMembercurrentMembermembereraNumberDailyBuildNumberpageNumberm_LineNumberget_LineNumberParseNumberUpdatePanelVersionNumberSystem.Web.UI.IPage.HeaderSystem.Web.UI.IPage.get_HeaderAddHeaderAppendHeadercookieHeaderacceptEncodingHeaderget_ReaderDbDataReaderVirtualFileReaderGetMapFileReaderfileReaderCreateReaderExecuteReaderStringReaderXmlReaderxmlReaderStreamReaderXmlSerializationReadercontentReaderXmlTextReaderLoadContentFromTextReaderreaderAssemblyResourceLoaderDataSvcMapFileLoaderIContractGeneratorReferenceTypeLoadertypeLoaderSystem.Configuration.Providerget_ProviderWCFBuildProviderIServiceProviderImportExtensionServiceProviderRNGCryptoServiceProviderserviceProviderset_CodeProviderGetRoleProviderClientRoleProviderCreateProviderICustomAttributeProviderattributeProvider_ConnectionStringProviderconnectionStringProvideradd_SelectingProviderremove_SelectingProviderOnSelectingProvider_selectingProviderget_VirtualPathProvidersqlProviderIsVBCodeDomProvidercodeDomProviderClientFormsAuthenticationMembershipProviderClientWindowsAuthenticationMembershipProviderKnownTypesProviderIApplicationSettingsProviderClientSettingsProviderIClientFormsAuthenticationCredentialsProviderIFormatProviderIQueryProviderproviderFieldBuilderMethodBuilderModuleBuilderTypeBuilderCustomAttributeBuilderWriteResourceToStringBuilderLocalBuilderAppendCharToBuilderAssemblyBuilderassemblyBuilderPropertyBuilder_builderPlaceHolderFindPlaceholderget_ListView_NoItemPlaceholderget_ListView_NoGroupPlaceholderSystem.Web.UI.IPage.PreRenderSystem.Web.UI.IPage.add_PreRenderSystem.Web.UI.IPage.remove_PreRenderOnPagePreRenderOnPreRenderSystem.Web.UI.IPage.HiddenFieldsToRenderSystem.Web.UI.IPage.get_HiddenFieldsToRender_hiddenFieldsToRenderAddAttributesToRendersenderQueryExtenderDataBinderEmbeddedResourceFinderget_Bufferset_Bufferm_ContentBufferget_ContentBufferset_ContentBufferbufferget_Pagerget_DataPagerFindDataPagerSetDataPager_dataPagerClientDataManagerBuildManagerget_HasProfileServiceManager_profileServiceManagerget_HasRoleServiceManager_roleServiceManagerApplicationServiceManagerget_HasAuthenticationServiceManager_authenticationServiceManagerget_ResourceManagerreleaseResourceManagerGetResourceManagerresourceManagerIStateManagerget_ListView_EnableDataBoundControlManagerget_ScriptControlManager_scriptControlManagerScriptRegistrationManagerWebConfigurationManagerIScriptManagerget_ScriptManagerget_ScriptManager_OnlyOneScriptManagerRegisterWithScriptManagerIClientScriptManagerRegisterResourceWithClientScriptManager_clientScriptManager_scriptManagerget_PageRequestManager_pageRequestManager_pagerAsyncPostBackTriggerUpdatePanelTriggerUpdatePanelControlTriggerSchemaMergerget_ExpressionParser_NeitherTypeConvertsToOtherget_ExpressionParser_BothTypesConvertToOtherotherApplyAppPathModifierParameterModifierParseIdentifierget_ExpressionParser_DuplicateIdentifierget_ExpressionParser_UnknownIdentifierGetIdentifierMemoryBarrierget_HandlerIPostBackDataHandlerIHttpAsyncHandlerAddHandlerIScriptResourceHandlerget_ScriptResourceHandlerRuntimeScriptResourceHandlerGetScriptResourceHandlerSetScriptResourceHandler_scriptResourceHandlerReleaseHandlerCreateHandlerget_ScriptManager_ClientNavigateHandlerget_ClientNavigateHandlerset_ClientNavigateHandler_clientNavigateHandlerRemoveHandler_originalHandlerIHttpHandlerGetHandlerget_EventHandlerAddEventHandlerCommandEventHandlerIPostBackEventHandleradd_ValidationEventHandlerremove_ValidationEventHandler_eventHandlerRestHandlerEndRequestHandlerAuthenticateRequestHandlerRestClientProxyHandlerhandlerSystem.CodeDom.CompilerTimerset_CookieContainerConstructCookieContainer_progressTemplateContainerget_ContentTemplateContainerAddContentTemplateContainerCreateContentTemplateContainer_contentTemplateContainerINonBindingContainerINamingContainerget_NamingContainerget_DataPager_NoNamingContainerget_DataBoundControlHelper_NoNamingContainerIDataItemContainerIPageableItemContainerFindPageableItemContainerget_DataPager_NoPageableItemContainer_pageableItemContainer_noGroupsOriginalIndexOfItemPlaceholderInContainer_groupsOriginalIndexOfGroupPlaceholderInContainerAddControlToContainer_noGroupsItemPlaceholderContainer_groupsGroupPlaceholderContainerouterContainerListViewContainercontainerHashCodeCombinerget_Ownerset_OwnerSetOwner_ownerApplicationServiceHelperQueryableDataSourceHelperLinqDataSourceHelperOrderedDictionaryStateHelperGetSchemaPropertyNameInXmlHelperDataBoundControlHelperSqlHelperExpressionHelperget_BundleReflectionHelperset_BundleReflectionHelper_bundleReflectionHelperProxyHelperPageWrapperDynamicQueryableWrapperHttpResponseInternalWrapperLinqToSqlWrapperHtmlFormWrapperCustomErrorsSectionWrapperClientScriptManagerWrapperAsyncHandlerWrapperClientUrlResolverWrapperHttpRequestWrapperHttpContextWrapperHttpCachePolicyWrapperHttpServerUtilityWrapperIComparerReferenceComparerAttributeComparerStringComparerOperationComparerOperationFaultComparerMessagePartComparerIEqualityComparerListEqualityComparerget_UserValidateUserRevalidateUserUpdateUserCreateUserDeleteUserUnlockUsertryToUseLastLoggedInUserMembershipUserGetRolesFromDBForUserGetRolesForUserGetUser_CurrentUserget_ArgumentMustBeCurrentUserGetProfileForCurrentUserGetAllPropertiesForCurrentUserGetPropertiesForCurrentUserSetPropertiesForCurrentUserStoreRolesForCurrentUserGetRolesForCurrentUserGetCurrentUser_supportsPartialRenderingSetByUserExpressionParserHexParser_userget_BrowserIsBrowserLessGreaterget_ExpressionParser_InvalidCharacterid13_ParameterRead7_ParameterWrite7_ParameterDbParameterAddParameterAddSqlCeParameterSqlParameterValidateOrderByParameterget_UpdateProgress_DisplayAfterget_DisplayAfterset_DisplayAfter_displayAfterLengthEncodeDelimiterget_WriterGetMapFileWriterCreateWriterStringWriterSwitchWriter_updatePanelWriterXmlWriterStreamWriterXmlSerializationWriterget_InnerWriterXmlTextWriterParserHtmlTextWriterwriterget_Filterset_FilterMemberFilterEnter_uniqueScriptCounterTypeConverterWhiteSpaceTrimStringConverter_whiteSpaceTrimStringConverterEmptyStringExpandableObjectConverterGetConverterget_ConvertersCollection_NotJavaScriptConverterStringArrayConverterconverterMetadataImporterCreateWsdlImporterwsdlImporterXsdDataContractImporterCreateDataContractImporterXmlSerializerMessageContractImporterDataContractSerializerMessageContractImporterimporterXsdDataContractExporterget_MasterRegisterPageStatePersisterget_BundleResolverset_BundleResolverbundleResolverget_TypeResolverSimpleTypeResolverJavaScriptTypeResolverDictionaryTypeResolver_typeResolverIClientUrlResolverget_ClientUrlResolverset_ClientUrlResolver_clientUrlResolver_resolverSystem.Web.UI.IPage.ServerSystem.Web.UI.IPage.get_ServerChangePasswordQuestionAndAnswerget_RequiresQuestionAndAnswernewPasswordAnswerpasswordAnsweranswerFindIndexerget_ExpressionParser_NoApplicableIndexerid35_Serializerm_Serializerget_Serializerset_SerializerGetMapFileSerializer_mapFileSerializerSystem.Web.Compilation.WCFModel.SvcMapFileXmlSerializerSystem.Web.Compilation.WCFModel.DataSvcMapFileXmlSerializerDataSvcMapFileImplSerializerDataContractSerializerGetSerializerget_JavaScriptSerializer_javaScriptSerializer_serializerJavaScriptObjectDeserializer_IsolatedDirPairXorget_Majorget_ForeColorset_ForeColorget_BackColorset_BackColorget_BorderColorset_BorderColorSystem.Web.UI.IPage.ErrorSystem.Web.UI.IPage.add_Errorget_WebService_ErrorSystem.Web.UI.IPage.remove_ErrorEdmSchemaErrorBuildWebServiceErrorOnPageErrorParseErroradd_AsyncPostBackErrorremove_AsyncPostBackErrorget_ScriptManager_AsyncPostBackErrorOnAsyncPostBackErrorCustomErrorthrowOnErrorMetadataConversionErrorConvertMetadataErrorToProxyGenerationErrorgenerationErrorClearErrorIncompatibleOperandsErrorm_MetadataFormatErrorget_MetadataFormatErrormetadataFormatErrorget_WebService_RedirectErrorGetLastErrorget_ExpressionParser_SyntaxErrorIAttributeAccessorICompositeControlDesignerAccessorUtf16StringValidator_nonEmptyStringValidatorIntegerValidatorEnumeratorOnIEnumeratorXmlSchemaObjectEnumeratorSystem.Collections.Generic.IEnumerable<System.Web.UI.ScriptReference>.GetEnumeratorSystem.Collections.Generic.IEnumerable<System.Type>.GetEnumeratorSystem.Collections.Generic.IEnumerable<System.Web.UI.ScriptDescriptor>.GetEnumeratorSystem.Collections.IEnumerable.GetEnumeratorIDictionaryEnumeratorGetILGeneratorRandomNumberGeneratorEntityClassGeneratorVSWCFServiceContractGeneratorCreateContractGeneratorcontractGeneratorWebServiceClientProxyGeneratorPageClientProxyGeneratorActivator.ctor.cctorIPersistedSelectorelementSelectorkeySelectorselectorWsdlInspectorGenerateConstructorget_ExpressionParser_NoMatchingConstructorget_JSON_NoConstructorGetConstructorUITypeEditorImageUrlEditorMonitorTypeDescriptorScriptControlDescriptorMemberDescriptorRegisterDisposeForDescriptorScriptBehaviorDescriptorScriptComponentDescriptorScriptDescriptorPropertyDescriptorexprIntPtrBuildRevisionStrDailyBuildNumberStrsubstrattrget_Hourget_SettingsStoredAsset_SettingsStoredAsstoredAsget_SerializeAsset_SerializeAsSettingsSerializeAs_serializeAsGetChildUpdatePanelIDsGetRefreshingUpdatePanelIDsGetAllUpdatePanelIDsGetAsyncPostBackControlIDsGetPostBackControlIDsInitIDsPolicyURIsTokenIdentifierIs_sDefaultAliasget_Schemasset_SchemasduplicatedSchemasMergeSchemasXmlSchemasxmlSchemasget_Eraserasget_MethodDatasget_ParameterDatasPicsSystem.Diagnosticsget_DataPager_Fieldsget_Fieldsget_DataFieldsset_DataFieldsCloneFieldsGenerateFieldsGetRegisteredHiddenFieldsRenderActiveHiddenFieldsget_ScriptHiddenFields_hiddenFieldsCreatePagerFields_creatingPagerFieldsGetFields_fieldsget_ExpressionParser_IncompatibleOperandsCheckAndPromoteOperandsAddSecondsindexBoundsGenerateStaticMethodsget_ReadMethodsreadMethodsget_ScriptManager_EnablePageMethodsget_EnablePageMethodsset_EnablePageMethods_enablePageMethods_pageMethodsEnsureMethodsGenerateMethodsget_WriteMethodswriteMethodsUnsafeNativeMethodsid22_GenerateAsynchronousMethodsm_GenerateAsynchronousMethodsget_GenerateAsynchronousMethodsset_GenerateAsynchronousMethodsGetMethods_methodstotalRecordsCreateKeywordskeywordsGetInterfacesencodeSpacesget_Namespaces_registeredNamespacesXmlSerializerNamespacesSystem.Web.ServicesSystem.Web.Script.Servicesget_ScriptManager_Servicesget_ServicesDataServicesget_WebServicesSystem.Web.ApplicationServicesSystem.Runtime.InteropServicesSystem.Runtime.CompilerServicesRegisterServicesSystem.Web.ClientServices_servicesProcessBundleReferencesget_ScriptManager_CannotRegisterScriptInMultipleCompositeReferencesAddScriptReferencesSystem.Web.UI.IExtenderControl.GetScriptReferencesSystem.Web.UI.IScriptControl.GetScriptReferencesscriptReferencesid6_MetadataSourcesid7_MetadataSourcesSystem.Web.ResourcesSystem.ResourcesAddResourcesCombineResourcesWriteResourcesget_ScriptResourceHandler_DuplicateScriptResourcesSystem.Web.Resources.AtlasWeb.resourcesSystem.Web.Resources.ScriptLibrary.WebForms.Res.debug.resourcesSystem.Web.Resources.ScriptLibrary.Res.debug.resourcesSystem.Web.Resources.ScriptLibrary.WebForms.Res.resourcesSystem.Web.Resources.ScriptLibrary.Res.resourcesSystem.Web.Resources.WCFModelStrings.resourcesget_ApplyToOverridesset_ApplyToOverridesOpCodesDebuggingModesget_ChildNodesget_MessagescollectedMessagesMatchMessagesMatchOperationMessagesCollectErrorMessagesmessagesSubmitChangesOriginalValueMatchesAddFileDependenciesAddCacheItemDependenciesdependenciesget_CookiesDeleteAllCookiesget_AuthenticationCookiesauthenticationCookiescookiesget_Assembliesid39_ReferencedAssembliesget_ReferencedAssembliesGetReferencedAssemblies_referencedAssembliesloadedAssembliesLoadReferenedAssembliesSystem.Web.Compilation.WCFModel.IContractGeneratorReferenceTypeLoader.LoadAllAssembliesid38_ReferenceAllAssembliesm_ReferenceAllAssembliesget_ReferenceAllAssembliesset_ReferenceAllAssembliesMergeDictionariesget_VirtualDirectoriesHttpBrowserCapabilitiesServicesUtilitiesget_Propertiesget_ProfileServiceManager_LoadPropertiesget_LoadPropertiesset_LoadPropertiesget_HasLoadProperties_loadPropertiesloadedPropertiesget_FailedProperties_failedPropertiesBuildPropertiesUpdateModelDataSourcePropertiesSystem.Web.UI.WebControls.IPageableItemContainer.SetPageProperties_setPagePropertiesMergePropertiesRenderProfilePropertiesUpdatePropertiesGeneratePropertiesadd_ValidatingPropertiesremove_ValidatingPropertiesOnValidatingProperties_validatingPropertiesexistingPropertiesGetItemPropertiesget_ReadAccessPropertiesset_ReadAccessPropertiesget_WriteAccessPropertiesset_WriteAccessPropertiesSetDataObjectPropertiesGetPropertiesnewPropertiesCopyProperties_propertiesget_ProxiesGenerateEnumTypeProxiesGenerateClientTypeProxies_proxiesUpdateParameterValesget_FilesLoadExternalFilesSaveExternalFileswsdlFilesCreateDictionaryOfCopiedExtensionFilesget_ScriptResourceAllowNonJsFilesget_Rolesset_Rolesget_RoleServiceManager_LoadRolesget_LoadRolesset_LoadRoles_loadRolesGetAllRolesRemoveUsersFromRolesAddUsersToRolesNumberStylesget_NamesMatchXmlQualifiedNamesget_CookieNamesset_CookieNamesroleNames_StoredValueNamesparamNamesCombineTwoNamesget_SettingsNamesset_SettingsNamesget_ListView_PersistedSelectionRequiresDataKeysNamesGetNamesGetViewNames_viewNamesSystem.Web.UI.WebControls.IDataBoundControl.DataKeyNamesSystem.Web.UI.WebControls.IDataBoundControl.get_DataKeyNamesSystem.Web.UI.WebControls.IDataBoundControl.set_DataKeyNamesget_ListView_DataKeyNames_dataKeyNamesGetDirectoryNamesfilenamesusernamesget_TypesfuncTypesget_ReferencedTypesid25_ExcludedTypespredefinedTypesClearProcessedTypes_processedTypesget_SupportedTypesGetUnsupportedTypesLoadExportedTypesGetExportedTypesid34_GenerateSerializableTypesm_GenerateSerializableTypesget_GenerateSerializableTypesset_GenerateSerializableTypesSelfAndBaseTypesid28_GenerateInternalTypesm_GenerateInternalTypesget_GenerateInternalTypesset_GenerateInternalTypesid27_ImportXmlTypesm_ImportXmlTypesget_ImportXmlTypesset_ImportXmlTypesget_ScriptControlManager_NoTargetControlTypesGetTargetControlTypesschemaTopLevelItemTypesget_EnumTypesenumTypesget_ReferencedCollectionTypesLoadSharedCollectionTypesStoreKnownTypesProcessKnownTypesGetKnownTypesInitKnownTypesknownTypesMemberTypesid41_ReferencedDataContractTypesLoadSharedDataContractTypesget_ProxyGeneratedContractTypesproxyGeneratedContractTypesget_ClientTypesProcessClientTypesget_PortTypesMatchPortTypesportTypesEmptyTypesignorablePropertyTypestypesget_Expiresset_ExpiresSetValidUntilExpiresSetExpiresIArithmeticSignaturesIAddSignaturesIEnumerableSignaturesILogicalSignaturesIRelationalSignaturesINegationSignaturesISubtractSignaturesINotSignaturesIEqualitySignaturessignaturesget_ScriptReference_ResourceUICulturesget_ResourceUICulturesset_ResourceUICultures_resourceUICulturesget_Capturesget_ScriptDisposesRenderActiveScriptDisposes_scriptDisposesSelfAndBaseClassesclassesbaseAddressesRemoveDuplicatesincludeQuotesget_AttributesAddAttributesFieldAttributesMethodAttributesProcessIncludeAttributesTypeAttributesCompareXmlAttributesget_CustomAttributesGetCustomAttributesxmlSerializationAttributesGetRegisteredExpandoAttributesget_HasAttributesPropertyAttributespropertyAttributes_attributesAddMinutesReadAllBytestokenBytesGetBytesget_Valuesset_ValuesCompareSchemaValues_StoredValues_NumStoredValuesget_OldValues_updateOldValuesSetOldValuesget_BoundFieldValues_boundFieldValues_oldValuesreferenceValuesget_CookieValuesset_CookieValuesUpdateValues_deleteValuesStoreOriginalValues_storeOriginalValuesClearOriginalValuesGetOriginalValues_originalValuesparamValuesExtractItemValuesitemValuesparameterValuesget_LinqDataSourceView_InsertRequiresValuesget_SettingsValuesset_SettingsValuesProcessValuesExtractValuesGetValuesSetValues_insertValuesget_NewValues_updateNewValuesSetNewValuesnewValuesget_PropertyValuesCompareSchemaPropertyValuesGetPropertyValuesSetPropertyValues_valuesWriteScriptWithTagsget_ScriptRegistrationManager_NoTagsget_AddScriptTags_addScriptTagsMethodFlagsBindingFlagsset_ValidationFlagsXmlSchemaValidationFlagsget_BindingsImportAllBindingsContainsHttpBindingsid30_NamespaceMappingsget_NamespaceMappingsid32_CollectionMappingsid43_ServiceContractMappingsWCFModelStringsXmlStringsget_ConnectionStringsstringsConnectionStringSettingstopLevelSettingsApplicationSettingsget_AppSettingsXmlReaderSettingsgenericArgsget_ExpressionParser_IifRequiresThreeArgstypeArgsoriginalArgsUserValidatedEventArgsListViewUpdatedEventArgsQueryCreatedEventArgsListViewDeletedEventArgsListViewInsertedEventArgsSettingsSavedEventArgsDataPagerFieldCommandEventArgsDataPagerCommandEventArgsListViewCommandEventArgsCompositeScriptReferenceEventArgsPageEventArgsCreatingCookieEventArgsLinqDataSourceDisposeEventArgsLinqDataSourceUpdateEventArgsListViewUpdateEventArgsLinqDataSourceDeleteEventArgsListViewDeleteEventArgsPagePropertiesChangingEventArgsAuthenticatingEventArgsListViewCancelEventArgsWizardSideBarListControlItemEventArgsListViewItemEventArgsCustomExpressionEventArgsValidationEventArgsSelectingProviderEventArgsAsyncPostBackErrorEventArgsDynamicValidatorEventArgsValidatingPropertiesEventArgsLinqDataSourceStatusEventArgsLinqDataSourceSelectEventArgsListViewSelectEventArgsListViewEditEventArgsLinqDataSourceInsertEventArgsListViewInsertEventArgsListViewSortEventArgsLinqDataSourceContextEventArgsHistoryEventArgseventArgsargsget_AppService_MultiplePathsget_VirtualPaths<>4__thisMicrosoftAjaxCore.jsMicrosoftAjaxCore.debug.jsMicrosoftAjaxNetwork.debug.jsMicrosoftAjaxComponentModel.debug.jsMicrosoftAjaxGlobalization.debug.jsMicrosoftAjaxSerialization.debug.jsDate.UmAlQuraCalendar.debug.jsDate.HijriCalendar.debug.jsMicrosoftAjaxTimer.debug.jsMicrosoftAjaxWebServices.debug.jsMicrosoftAjaxApplicationServices.debug.jsMicrosoftAjaxWebForms.debug.jsMicrosoftAjax.debug.jsMicrosoftAjaxHistory.debug.jsMicrosoftAjaxNetwork.jsMicrosoftAjaxComponentModel.jsMicrosoftAjaxGlobalization.jsMicrosoftAjaxSerialization.jsDate.UmAlQuraCalendar.jsDate.HijriCalendar.jsMicrosoftAjaxTimer.jsMicrosoftAjaxWebServices.jsMicrosoftAjaxApplicationServices.jsMicrosoftAjaxWebForms.jsMicrosoftAjax.jsMicrosoftAjaxHistory.jsget_ScriptManager_CannotRegisterBothPostBacksInitCallbacksRegisterFallbackScriptForAjaxPostbacksget_TicksDatetimeMinTimeTicksget_ScriptStartupBlocksget_ScriptBlocksRenderActiveScriptBlocks_startupScriptBlocksGetRegisteredClientScriptBlocks_clientScriptBlocks_typeResolverSpecialsClientFormsAuthenticationCredentialsGetCredentialsset_UseDefaultCredentialsexternalsliteralsSystem.Collections.IEqualityComparer.EqualsGenerateEqualsEnumerableContentEqualsget_NextPreviousPagerField_RenderDisabledButtonsAsLabelsget_RenderDisabledButtonsAsLabelsset_RenderDisabledButtonsAsLabelsget_DynamicNavigatorDataSource_NoTablesInModelsupdatingUpdatePanels_allUpdatePanelsProcessUpdatePanelsupdatePanelsSystem.ServiceModel.ChannelsSecurityUtilssymbolsSystem.Web.Services.Protocolsget_ControlsSystem.Web.UI.WebControlsget_ChildControlsEnsureChildControlsCreateChildControlsSystem.Web.UI.WebControls.ICompositeControlDesignerAccessor.RecreateChildControlsExtractValuesFromBindableControls_asyncPostBackControls_postBackControlsSystem.Web.UI.HtmlControlsget_NumericPagerField_RenderNonBreakingSpacesBetweenControlsget_NextPreviousPagerField_RenderNonBreakingSpacesBetweenControlsget_RenderNonBreakingSpacesBetweenControlsset_RenderNonBreakingSpacesBetweenControlsget_ExtenderControlsAddScriptReferencesForExtenderControls_extenderControlsget_ScriptControlsAddScriptReferencesForScriptControls_scriptControlsMergeServiceUrlsset_IgnoreParamsCallMethodFromRawParamsGetRawParamsrawParamsget_VaryByParamsHttpCacheVaryByParamsSystem.Web.UI.IPage.ItemsSystem.Web.UI.WebControls.IWizardSideBarListControl.ItemsSystem.Web.UI.IPage.get_ItemsSystem.Web.UI.WebControls.IWizardSideBarListControl.get_Itemsget_ListView_Itemsget_ReferenceGroup_DuplicatedSchemaItemsRemoveDuplicatedSchemaItemsRenderDataItemsget_ListView_ItemsNotDataItems_scriptDataItemsFindDuplicatedItemsduplicatedItemscompareItemsRemoveItemsCheckDuplicatedWsdlItemsClearItemsCryptoAlgorithmsSystem.Security.ClaimsSystem.Windows.FormsSystem.Collections.Generic.ICollection<System.Collections.Generic.KeyValuePair<TKey,TValue>>.ContainscolumnsSystem.Web.Extensionsid10_Extensionsid11_Extensionsget_ExtensionsIsFromSystemWebExtensionsget_SchemaImporterExtensionsget_WsdlImportExtensionsLoadWsdlImportExtensionswsdlImportExtensionsserviceProviderForImportExtensionsLoadPolicyImportExtensionspolicyImportExtensionsCompareConversionsSystem.Linq.ExpressionsSystem.Web.UI.WebControls.Expressionsget_QueryExtender_Expressionsget_ExpressionsSystem.Text.RegularExpressionsget_ThenByExpressions_thenByExpressionsExecuteQueryExpressions_expressionsSystem.Security.PermissionsGetRegisteredArrayDeclarationsRenderActiveArrayDeclarationsget_OperationsMatchOperationsscriptRegistrationsget_SectionsSystem.CollectionsCompareSchemaCollectionsCompareXmlAttributeCollectionsMatchCollectionsAddScriptCollections_definitionsget_Optionsset_OptionsWrappedOptionsset_WebReferenceOptionsPostBackOptionsget_CodeGenerationOptionsset_CodeGenerationOptionsServiceContractGenerationOptionsStringSplitOptionsid6_ClientOptionsRead9_ClientOptionsWrite9_ClientOptionsget_ClientOptionsset_ClientOptions_clientOptionsCreateXmlSerializerImportOptionsFaultImportOptionsRegexOptionsConfigurationPropertyOptionsproxyOptionsget_InnerExceptions_innerExceptionsCheckServiceDescriptionsoptionserrorPosSetTextPostextPosRenderActiveExpandosget_ScriptExpandos_expandosposget_GroupsprofileGroupsCreateItemsInGroupsget_SectionGroupsCreateItemsWithoutGroupsAddYearsget_Charsget_ScriptRegistrationManager_InvalidCharsGetInvalidFileNameCharsget_Membersget_DataMembersGetTableMetaDataMembersFindMembersget_MaxJsonDeserializerMembersGetDefaultMembersget_HeaderscookieHeadersClearHeadersSystem.Web.ClientServices.Providersget_Providersget_IsUsingModelBindersCreateDataPagersget_UpdatePanel_Triggersget_Triggersget_UpdatePanel_ChildrenAsTriggersget_ChildrenAsTriggersset_ChildrenAsTriggers_childrenAsTriggers_triggersSystem.Web.HandlerssearchNamingContainersRuntimeHelpersGetAllUsersget_MinRequiredNonAlphanumericCharactersid12_Parametersget_Parametersset_ParametersGetSerializedParametersStrongTypeParametersget_LinqDataSource_WhereParametersget_WhereParametersset_WhereParameters_whereParametersEnsureParametersget_LinqDataSource_UpdateParametersget_UpdateParameters_updateParametersget_LinqDataSource_DeleteParametersget_DeleteParameters_deleteParametersProcessParametersget_LinqDataSource_SelectParametersget_SelectParametersset_SelectParameters_selectParametersGetParametersget_LinqDataSource_InsertParametersget_InsertParameters_insertParametersinputParametersget_SelectNewParameters_selectNewParametersget_LinqDataSource_GroupByParametersget_GroupByParametersset_GroupByParameters_groupByParametersget_LinqDataSource_OrderByParametersget_OrderByParametersset_OrderByParameters_orderByParametersget_LinqDataSource_OrderGroupsByParametersget_OrderGroupsByParametersset_OrderGroupsByParameters_orderGroupsByParameters_parametersget_ConvertersCreateConverters_propConvertersRegisterConverters_converterstypeGettersget_TypedSerializerstypedSerializersSystem.Web.UI.ICustomErrorsSection.ErrorsSystem.Web.UI.ICustomErrorsSection.get_Errorsget_LoadErrorsset_LoadErrorsSetMapFileLoadErrors_loadErrorsVerifyGeneratedCodeAndHandleErrorsloadingErrorsget_TrySkipIisCustomErrorsset_TrySkipIisCustomErrorsHandleValidationErrorsvalidationErrorsget_ProxyGenerationErrorsHandleProxyGenerationErrorsproxyGenerationErrorsgenerationErrorsgeneratorErrorsget_ImportErrorsimportErrorserrorslistAccessorsGetConstructorsRegisterScriptDescriptorsRegisterScriptsForScriptDescriptorsSystem.Web.UI.IExtenderControl.GetScriptDescriptorsSystem.Web.UI.IScriptControl.GetScriptDescriptorsscriptDescriptorsget_MaxOccurssecurePassCreateDynamicClassGetDynamicClasscodeClass_SettingsBaseClassCreateClassgenClassGenerateRegisterClassget_CssClassset_CssClassget_NumericPagerField_CurrentPageLabelCssClassget_CurrentPageLabelCssClassset_CurrentPageLabelCssClassget_NextPreviousPagerField_ButtonCssClassget_ButtonCssClassset_ButtonCssClassget_NumericPagerField_NumericButtonCssClassget_NumericButtonCssClassset_NumericButtonCssClassget_NumericPagerField_NextPreviousButtonCssClassget_NextPreviousButtonCssClassset_NextPreviousButtonCssClassstaticAccessFileAccessParseTypeAccessParseMemberAccessAssemblyBuilderAccessget_AllowAnonymousAccessset_AllowAnonymousAccess_allowAnonymousAccessParseElementAccessget_Successid20_Addressid22_Addressm_Addressget_Addressset_Addressget_ReferenceGroup_EmptyAddressaddressUpdateProgressSystem.Web.UI.IClientScriptManager.RegisteredResourcesToSuppressSystem.Web.UI.IClientScriptManager.get_RegisteredResourcesToSuppressgeneratedContractsid29_GenerateMessageContractsm_GenerateMessageContractsget_GenerateMessageContractsset_GenerateMessageContractshttpBindingContractsImportAllContractsget_KnownContractsBuildUpdateObjectsget_FacetsAttributeTargetsget_Faultsid36_UseSerializerForFaultsm_UseSerializerForFaultsget_UseSerializerForFaultsset_UseSerializerForFaultsresultsCompareXmlElementsRenderActiveSubmitStatementsGetRegisteredOnSubmitStatementsget_ScriptSubmitStatements_submitStatementsget_SegmentsdocCommentsDebugXmlCommentsCollectMetadataDocumentsget_WsdlDocumentswsdlDocumentsget_Argumentsset_ArgumentsGetGenericArgumentsParseArgumentsget_SelectArgumentsCreateDataSourceSelectArguments_argumentsUriComponentsGetComponentsGetBundleContentsserviceReferenceExtensionFileContentsCreateContentsRenderContentsget_EventsConnectToEvents_eventsImportAllEndpointsendpointsget_CompositeScriptReference_Scriptsget_ScriptManager_Scriptsget_ScriptsGetRegisteredDisposeScriptsRegisterUniqueScriptsuniqueScriptsRenderActiveScriptsget_FallbackScripts_fallbackScriptsAddFrameworkScriptsget_SplitFrameworkScriptsGetRegisteredStartupScriptsRegisterScriptsCollectScripts_scriptsget_MaxInvalidPasswordAttemptsget_PartsMatchMessageParts_ensuredObjectPartsget_PortsassemblyResourceListsRemoveFromListsFileExistsRoleExistsensureExistsCompareXmlTextsReleaseSelectContexts_selectContextsProcessFocusget_ClientSupportsFocusSystem.Web.UI.IPage.SetFocusPlusMinusget_IsAnonymousget_Statusset_StatusMembershipCreateStatusConnectivityStatusstatusget_AffectedRows_affectedRowsSystem.Web.UI.WebControls.IPageableItemContainer.MaximumRowsSystem.Web.UI.WebControls.IPageableItemContainer.get_MaximumRowsset_MaximumRowsget_NewMaximumRowsset_NewMaximumRows_newMaximumRows_maximumRowsget_IsDefiningSysset_IsDefiningSys_scriptPathsDefiningSysFromDaysCompareStringArraysget_ScriptArrays_scriptArraysget_UpdatePanel_ChildrenTriggersAndUpdateAlwaysget_KeysSystem.Web.UI.WebControls.IDataBoundListControl.DataKeysSystem.Web.UI.WebControls.IDataBoundListControl.get_DataKeysget_ListView_DataKeysClearDataKeysSystem.Web.UI.IDataKeysControl.ClientIDRowSuffixDataKeysSystem.Web.UI.IDataKeysControl.get_ClientIDRowSuffixDataKeyscacheKeys_updateKeys_deleteKeysget_AllKeysToEscapedParameterKeysSetKeys_keysAddAtBaseRemoveAtkeywordItParseItGenerateStringConcatget_PasswordFormatMembershipPasswordFormatset_UseMessageFormatget_DateTimeFormatdateTimeFormatget_ResponseFormatset_ResponseFormat_responseFormatUriFormatSerializationFormatserializationFormatget_ParseException_ParseExceptionFormatget_NumberFormatnumberFormatformatGenerateSubtractget_Contractset_Contractget_ReferenceGroup_OperationDefinedInOneOfDuplicatedServiceContractIsHttpBindingContractXmlSerializerContractGetContractSystem.ServiceModel.Description.IWsdlImportExtension.ImportContractcontractget_IsAbstractexactXmlSchemaObjectBuildDataObjectoldDataObjectIExtensibleDataObjectUpdateDataObjectDeleteDataObjectget_OriginalDataObjectset_OriginalDataObject_originalDataObjectExtensionDataObject_extensionDataObjectResetDataObjectInsertDataObjectget_NewDataObjectset_NewDataObject_newDataObjectdataObjectAddObjectconvertedObjectget_JSON_InvalidObjectSystem.Web.UI.WebControls.IDataBoundControl.DataSourceObjectSystem.Web.UI.WebControls.IDataBoundControl.get_DataSourceObjectUpdateObjectBuildDeleteObjectDeserializePrimitiveObjectDeserializeObjectget_OriginalObject_originalObjectSerializeCustomObjectConvertListToObjectConvertDictionaryToObjectGetObjectIsNextElementObjectBuildInsertObjectget_NewObject_newObjectSetDirtyObjectobjectget_Dialectget_XmlSchemaDialectget_ServiceDescriptionDialectget_LinqDataSource_Selectget_Selectset_Selectget_ListView_InvalidSelectHandleSelectExecuteSelect_performingSelectPerformSelectCreateContextAndTableForSelectset_AllowAutoRedirectCustomErrorsSectionHasRedirectget_ScriptManager_AllowCustomErrorsRedirectget_AllowCustomErrorsRedirectset_AllowCustomErrorsRedirect_allowCustomErrorsRedirectSystem.Web.UI.ICustomErrorsSection.DefaultRedirectSystem.Web.UI.ICustomErrorsSection.get_DefaultRedirectargsDictget_ProfileAllowedGet_profileAllowedGetget_UseGetBaseGetget_UseHttpGetset_UseHttpGet_useHttpGetSystem.NetRetGetMapFileSchemaSet_mapFileSchemaSetXmlSchemaSetIsDataSetMetadataSetget_ProfileAllowedSet_profileAllowedSetget_DataPager_PagePropertiesCannotBeSetGetResourceSetSecurityRuleSetfSetreleaseNeutralSetneutralSetget_NamedPermissionSet_zipSetget_CookieIsSetset_CookieIsSet_cookieIsSetGetCachedBuildDependencySetget_EntitySetset_EntitySetXmlSchemaFacetXmlSchemaEnumerationFacetknownTypeAttributeTargettargetCloseBracketOpenBracketSystem.Collections.IEnumerator.Resetget_SettingsNeedResetset_SettingsNeedResetget_EnablePasswordReset_NeedToDoResetGetNeedToResetSetNeedToResetDateTimeOffseteraYearOffsetoffsetget_Charsetset_Charsetleftget_Heightset_HeightCopyrightExplicitget_ListView_InvalidEditHandleEditCancelingEditget_LinqDataSourceView_SelectNewNotSupportedOnEditget_LinqDataSourceView_GroupByNotSupportedOnEditCreateContextAndTableForEditValidateDigitIsLetterOrDigitIsDigitSplitSystem.Reflection.EmitDeleteOnSubmitInsertOnSubmit_depthLimitget_RecursionLimitset_RecursionLimitget_JSON_InvalidRecursionLimitDefaultRecursionLimit_recursionLimit_recusionLimitget_MaxJsonLimit_maxJsonLimit_propRecursionLimitLimitCommitSystem.Web.IHttpModule.InitOnInitMemberInitproxyCodeUnitAddCodeCompileUnitcodeCompileUnitget_TargetCompileUnittargetCompileUnitcompileUnitInheritExitget_PasswordSaltset_PasswordSaltsaltOperationFaultSetRemainingValuesToDefaultGetValueOrDefaultAsyncPostBackTimeoutDefaultget_Resultset_ResultIAsyncResultid17_IsMergeResultid19_IsMergeResultm_IsMergeResultget_IsMergeResultset_IsMergeResult_selectResult_resultrememberMeIntConstantPercentSystem.Data.Services.Clientget_ClientSystem.Data.SqlClientAreSchemaObjectsEquivalentSystem.Web.Managementget_ElementXmlSchemaElementMetadataElementReadEndElementWriteEndElementTopLevelElementXmlElementxmlElementConfigurationElementMoveToElementget_DocumentElementChannelEndpointElementReadStartElementWriteStartElementIsStartElementCreateNewElementget_IsEmptyElementelementSystem.Web.UI.IScriptManager.RegisterOnSubmitStatementMemberAssignmentHostingEnvironmentget_HijriAdjustment_adjustmentm_MetadataXmlDocumentget_MetadataXmlDocumentWriteStartDocumentm_MetadataDiscoveryDocumentget_MetadataDiscoveryDocumentdiscoveryDocumentdocumentget_CommandArgumentset_CommandArgumentcommandArgumentCodeAttributeArgumenteventArgumentComponentget_ParentSystem.Collections.Generic.IEnumerator<System.Collections.Generic.KeyValuePair<TKey,TValue>>.CurrentSystem.Collections.Generic.IEnumerator<System.Web.UI.ScriptReference>.CurrentSystem.Collections.Generic.IEnumerator<System.Type>.CurrentSystem.Collections.Generic.IEnumerator<System.Web.UI.ScriptDescriptor>.CurrentSystem.Collections.IEnumerator.CurrentSystem.Collections.Generic.IEnumerator<System.Collections.Generic.KeyValuePair<TKey,TValue>>.get_CurrentSystem.Collections.Generic.IEnumerator<System.Web.UI.ScriptReference>.get_CurrentSystem.Collections.Generic.IEnumerator<System.Type>.get_CurrentSystem.Collections.Generic.IEnumerator<System.Web.UI.ScriptDescriptor>.get_CurrentSystem.Collections.IEnumerator.get_CurrentCallBundleResolverCurrentGetCurrent<>2__currentSystem.Collections.Concurrentget_ContentLoadMetadataContentLoadContentXmlSchemaSimpleTypeContentbyteContentMoveToContentCleanUpContentClearContentget_SuppressContentset_SuppressContentm_BinaryContentget_BinaryContentcontentget_IsPersistent_isPersistentAddEventSystem.Web.UI.IPostBackDataHandler.RaisePostDataChangedEventget_TemplatePagerField_UnhandledEventget_ListView_UnhandledEventget_AsyncPostBackTrigger_InvalidEventget_AsyncPostBackTrigger_CannotFindEventResolveCompositeScriptReferenceEventResolveScriptReferenceEventRaiseBubbleEventOnBubbleEventHandleEventWebBaseEventraiseEventget_NavigateEvent_navigateEventSystem.Web.UI.IPostBackEventHandler.RaisePostBackEventOnEventRegisterForValidateUserEventWebServiceErrorEventAsyncPostBackErrorEventWebRequestErrorEventGetEventget_DynamicControlBase_UIHintLoadHintAddHistoryPointPrepareNewHistoryPointGenerateServiceEndpointserviceEndpointSystem.ServiceModel.Description.IWsdlImportExtension.ImportEndpointendpointget_Fontget_Count_noGroupsItemCreatedCount_groupsItemCreatedCountget_DataSourceCountget_ListView_Missing_VirtualItemCountget_GroupItemCountset_GroupItemCountget_ListView_GroupItemCount_groupItemCountget_NumericPagerField_ButtonCountget_ButtonCountset_ButtonCountget_ReaderCountCheckReaderCountclassCountget_ListViewPagedDataSource_CannotGetCountpromptCountget_TotalRowCountset_TotalRowCountget_RetrieveTotalRowCountset_RetrieveTotalRowCountget_CanRetrieveTotalRowCountget_ListView_NeedICollectionOrTotalRowCount_totalRowCountcountDotNotget_SyncRootSystem.Web.Scriptget_ScriptJavaScriptRegisteredScriptget_ServiceReference_InlineScriptget_InlineScriptset_InlineScriptget_WebService_NoWebServiceDataInlineScript_inlineScriptRegisteredDisposeScriptdisposeScriptWriteScriptget_ScriptManager_CompositeScriptget_CompositeScript_compositeScriptShouldUseDebugScriptRegisterFallbackScriptAddFrameworkScript_splitFrameworkScriptIsAjaxFrameworkScriptframeworkScriptGenerateInitializationScriptGetApplicationServicesInitializationScript_appServicesInitializationScriptSystem.Web.UI.IScriptManager.RegisterStartupScriptSystem.Web.UI.IClientScriptManager.RegisterStartupScriptClientStartupScriptRenderPageRequestManagerScriptAppendReferencesScriptAppendPropertiesScriptAppendEventsScript_requireFocusScriptRegisterFocusScriptGetScriptSystem.Web.UI.IPage.ClientScriptSystem.Web.UI.IPage.get_ClientScript_convertScriptGetProxyScriptGetInlineClientProxyScriptGetClientProxyScript_scriptnamespacePartReportUniqueMessagePartIsIdentifierPartparteraStartIsIdentifierStartget_JSON_InvalidArrayStartParsePrimaryStartstartget_ListView_InvalidInsertget_LinqDataSource_EnableInsertget_EnableInsertset_EnableInsert_enableInsertHandleInsertExecuteInsertCancelingInsertget_CanInsertGetCustomErrorsSectionWithAssertXmlConvertCallvirtIsSoapAsmxPortHandleSortget_CanSortget_LinqDataSource_AutoSortget_AutoSortset_AutoSort_autoSortSystem.ServiceModel.Description.IWsdlImportExtension.BeforeImportExportCasttestSystem.Web.UI.IPage.RequestSystem.Web.UI.IPage.get_RequestHttpWebRequestget_WebService_InvalidVerbRequestget_PageRequestManager_RegisterDataItemInNonAsyncRequestget_ScriptResourceHandler_InvalidRequestadd_EndRequestEnsureScriptResourceRequestIsScriptResourceRequestadd_AuthenticateRequestCompleteRequestIsClientProxyDebugRequestIsAsyncPostBackRequestHttpRequestHttpWorkerRequestSystem.Web.IHttpHandler.ProcessRequestEndProcessRequestBeginProcessRequestGetRawParamsFromGetRequestIsRestRequestGetRawParamsFromPostRequestIsClientProxyRequestrequestEnumeratorOnIListschemaListget_MetadataList_metadataListITypedListconvertedListoldListget_MetadataSourceList_metadataSourceListXmlNodeList_extensionFileListm_ExcludedTypeListget_ExcludedTypeListXmlSchemaSimpleTypeListm_ReferencedDataContractTypeListget_ReferencedDataContractTypeListDeserializeListm_NamespaceMappingListget_NamespaceMappingListm_CollectionMappingListget_CollectionMappingListm_ServiceContractMappingListget_ServiceContractMappingList_itemListRenderUpdatePanelIDsFromListGetUpdatePanelIDsFromListGetControlIDsFromListAddItemToListEventHandlerListget_FailedSettingsList_failedSettingsListParseArgumentListserviceEndpointListIsEncodingInAcceptListnewListget_DataKeysArrayList_dataKeysArrayListCreateSuffixArrayListget_ClientIDRowSuffixArrayList_clientIDRowSuffixArrayListm_ReferencedAssemblyListget_ReferencedAssemblyListParseProfilePropertyListlistDoAnyCookiesExistIsinstget_HostCreateServiceHostFirstSignOutget_IsOut_CacheTimeoutget_ScriptManager_AsyncPostBackTimeoutget_AsyncPostBackTimeoutset_AsyncPostBackTimeout_asyncPostBackTimeoutLogoutget_UpdateProgress_DynamicLayoutget_DynamicLayoutset_DynamicLayout_dynamicLayoutget_InputOperationInputinputget_OutputOperationOutputget_BufferOutputset_BufferOutputoutputMoveNextSystem.Textset_Textset_CommandTextget_NumericPagerField_PreviousPageTextget_NextPreviousPagerField_PreviousPageTextget_PreviousPageTextset_PreviousPageTextget_NumericPagerField_DefaultPreviousPageTextget_NextPrevPagerField_DefaultPreviousPageTextget_NextPreviousPagerField_LastPageTextget_LastPageTextset_LastPageTextget_NextPrevPagerField_DefaultLastPageTextget_NextPreviousPagerField_FirstPageTextget_FirstPageTextset_FirstPageTextget_NextPrevPagerField_DefaultFirstPageTextget_NumericPagerField_NextPageTextget_NextPreviousPagerField_NextPageTextget_NextPageTextset_NextPageTextget_NumericPagerField_DefaultNextPageTextget_NextPrevPagerField_DefaultNextPageTextset_AlternateTextXmlTextOpenTextbuttonTextget_InnerTextGetInnerTextget_DynamicControlBase_NullDisplayTextSystem.Web.UI.IControl.ContextSystem.Web.UI.IControl.get_Contextset_ContextDataContextdataContextDataServiceContextDisposeContextCreateContextStreamingContextget_ContractConversionContextWsdlContractConversionContextWsdlEndpointConversionContextHttpContextITypeDescriptorContextSettingsContext_reuseSelectContextSetContext_isNewContextCreateQueryContext_contextWsuMovePrevWriteElementStringRawkeywordNewParseNewget_SelectNewset_SelectNew_selectNewget_ViewQueryableDataSourceViewLinqDataSourceViewContextDataSourceViewCreateQueryableViewCreateViewget_ListView_NullViewGetViewSetViewListView_viewget_Nowget_UtcNowHtmlTableRowListViewTableRowget_PasswordAttemptWindowrow_webResourceRegExMaxwebFormsWithoutAjax_autoIDIndexget_Indexget_TabIndexset_TabIndexSystem.Web.UI.WebControls.IDataBoundListControl.SelectedIndexSystem.Web.UI.WebControls.IDataBoundListControl.get_SelectedIndexSystem.Web.UI.WebControls.IDataBoundListControl.set_SelectedIndexget_ListView_SelectedIndexResetPersistedSelectedIndexget_NewSelectedIndexset_NewSelectedIndex_newSelectedIndex_selectedIndexget_ExpressionParser_InvalidIndexfieldIndexpageIndexget_PagerFieldCollection_InvalidTypeIndexget_ItemIndexget_DataItemIndex_dataItemIndex_deletedItemIndexTryGetItemIndex_itemIndexplaceholderIndexget_EditIndexset_EditIndexget_ListView_EditIndexget_NewEditIndex_newEditIndex_editIndexSystem.Web.UI.WebControls.IPageableItemContainer.StartRowIndexSystem.Web.UI.WebControls.IPageableItemContainer.get_StartRowIndexset_StartRowIndexget_NewStartRowIndexset_NewStartRowIndex_newStartRowIndex_startRowIndexrowIndexget_DisplayIndex_displayIndexArrayIndexarrayIndex_indexScriptTagRegexIdentifierRegexAutoGenerateOrderByRegex_automaticIDPrefixMakePeriodTerminatedNamespacePrefixDateTimePrefixincludeChildrenAsTriggersPrefixDateTimeSuffixSystem.Web.UI.WebControls.IDataBoundListControl.ClientIDRowSuffixSystem.Web.UI.WebControls.IDataBoundListControl.get_ClientIDRowSuffixSystem.Web.UI.WebControls.IDataBoundListControl.set_ClientIDRowSuffix_clientIDRowSuffixEdmxisThenByget_LinqDataSource_GroupByget_GroupByset_GroupByget_LinqDataSourceView_OrderGroupsByRequiresGroupBy_groupByget_LinqDataSource_OrderByget_OrderByset_OrderBy_orderByget_LinqDataSource_OrderGroupsByget_OrderGroupsByset_OrderGroupsBy_orderGroupsByget_Days_emptyTypeArrayGetSortedAttributeArrayToByteArrayReadStringArrayWriteStringArrayget_ExpressionParser_CannotIndexMultipleDimensionalArrayEnumeratorOnArrayexpressionArrayToArrayToCharArrayget_IsArray_KnownTypesArrayIsNextElementArray_clientIDRowSuffixArraysuffixArrayDataKeyArray_dataKeyArraykeyArrayarrayWSPolicyInitializeCachePolicyHttpCachePolicyCreateFromPolicypolicyAddCacheDependencyGetCacheDependencyAddFileDependencyAddCacheItemDependencyget_BodyCreateRangeExpressionBodybodyTKeyget_KeySystem.Web.UI.WebControls.IPersistedSelector.DataKeySystem.Web.UI.WebControls.IPersistedSelector.get_DataKeySystem.Web.UI.WebControls.IPersistedSelector.set_DataKeySystem.Web.UI.WebControls.IDataBoundListControl.SelectedDataKeySystem.Web.UI.WebControls.IDataBoundListControl.get_SelectedDataKeyget_SelectedPersistedDataKeyset_SelectedPersistedDataKeySetPersistedDataKey_persistedDataKeypostDataKeyAsyncPostBackErrorHttpCodeKeyAsyncPostBackErrorMessageKeyGetCacheKeycacheKeyItemCountViewStateKeyget_TagKeyAsyncPostBackRedirectLocationKeyproviderUserKeyAsyncPostBackErrorKeyContainsKeyget_AccessKeyset_AccessKeyGetKeyGetElementKeycurrentKeyTickEventKeyCreateUniqueScriptKey_contextKeyincludePrimaryKeyget_IsPrimaryKey_keySystem.Web.Security.CryptographySystem.Security.CryptographyFXAssemblyget_ScriptReference_Assemblyget_Assemblyset_AssemblyDefineDynamicAssemblySystem.Web.Compilation.WCFModel.IContractGeneratorReferenceTypeLoader.LoadAssemblyget_ReferenceGroup_FailedToLoadAssemblyid40_ReferencedAssemblyRead7_ReferencedAssemblyWrite7_ReferencedAssemblyDetermineResourceNameAndAssemblyget_ResourceAssemblyset_ResourceAssembly_resourceAssemblyget_EffectiveAssemblyNormalizeAssemblyget_ScriptManager_AjaxFrameworkAssemblyget_AjaxFrameworkAssemblyIsAjaxFrameworkAssemblyget_DefaultAjaxFrameworkAssemblyset_DefaultAjaxFrameworkAssemblyGetDefaultAjaxFrameworkAssembly_defaultAjaxFrameworkAssembly_ajaxFrameworkAssemblyGetUserStoreForAssemblyThisAssemblyGetAssemblycurrentAssemblyget_ScriptReference_ResourceRequiresAjaxAssemblycurrentAjaxAssembly_assemblyMakeReadOnlyAsReadOnlySystem.Collections.Generic.ICollection<System.Collections.Generic.KeyValuePair<TKey,TValue>>.IsReadOnlySystem.Collections.Generic.ICollection<System.Collections.Generic.KeyValuePair<TKey,TValue>>.get_IsReadOnlyset_IsReadOnly_isReadOnlyauthenticatedUserOnlyPermitOnlyMultiplyget_ScriptControlManager_RegisterExtenderControlTooEarlyget_ScriptControlManager_RegisterScriptControlTooEarlyReportMessageDefinedDifferentlyget_ReferenceGroup_OperationDefinedDifferentlyReportOperationDefinedDifferentlyLastIndexOfAnySelectManydestinationCopyParsePrimaryParseUnaryIDictionaryget_ParameterDataDictionaryIsGenericDictionaryIOrderedDictionaryHybridDictionaryget_ClientTypeNameDictionary_clientTypeNameDictionaryget_EnumTypeDictionaryset_EnumTypeDictionaryget_ClientTypeDictionaryset_ClientTypeDictionaryModelStateDictionarySettingsAttributeDictionaryToCaseInsensitiveDictionarySerializeDictionaryDeserializeDictionaryToDictionary_enumTypesDictionary_clientTypesDictionaryBuildArgsDictionaryListDictionary_dictionaryget_Queryset_QueryBuildQueryCreateQueryExecuteQueryExecuteNonQuery_querySystem.Web.Services.Discovery_HonorCookieExpiryid51_Categorym_Categoryget_Categoryset_CategoryGetUnicodeCategoryRead4_CollectionCategoryWrite4_CollectionCategorycategoryreadIntoMemory_originalFactoryWebServiceHandlerFactory_webServiceHandlerFactoryIHttpHandlerFactoryScriptHandlerFactoryRestHandlerFactory_restHandlerFactoryClassFactoryServiceHostFactoryApplicationServicesHostFactorySystem.Web.UI.IClientUrlResolver.AppRelativeTemplateSourceDirectorySystem.Web.UI.IClientUrlResolver.get_AppRelativeTemplateSourceDirectoryCreateDirectoryGetVirtualDirectoryGetDirectoryget_ScriptManager_EnableHistoryget_EnableHistoryset_EnableHistoryget_ScriptManager_CannotChangeEnableHistory_enableHistoryDictionaryEntryentryset_CapacityStringBuilderCapacitycapacityop_Equalityop_InequalityHttpCacheabilitySetCacheabilityDesignerSerializationVisibilityVirtualPathUtilityHttpUtilityHeaderUtilityHttpServerUtilityget_SeveritySystem.Web.SecuritySystem.SecuritySystem.Data.EntityoldEntitynewEntityIIdentityget_IdentityClaimsIdentityClientFormsIdentityWindowsIdentityidentityget_ExtenderControl_TargetControlIDEmptyget_ListView_ContainerNameMustNotBeEmptyget_ServiceReference_PathCannotBeEmptyget_ScriptReference_NameAndPathCannotBeEmptyget_ScriptResourceDefinition_NameAndPathCannotBeEmptyget_Common_NullOrEmptyIsNullOrEmptyget_IsEmptyget_PropertyShouldIgnoreSchemaPropertyDynamicPropertyAddPropertyIsPersistedPropertyget_AppService_UnknownProfilePropertyDefinePropertyConfigurationPropertyGetSettingsPropertyGetPropertyAddElementPropertyAddComponentPropertys_lookedForCurrentPropertyAddScriptPropertyproperty_stateDirtyget_IsDirtyset_IsDirtySetDirtyGenerateWebMethodProxyGenerateProxyScriptManagerProxySystem.Web.UI.IScriptManagerInternal.RegisterProxyproxyAllowAnonymous+Date.HijriCalendar.js1Date.UmAlQuraCalendar.js)var __cultureInfo = ;m

__cultureInfo.dateTimeFormat.Calendar._adjustment = 	namenumberFormatdateTimeFormat	eras.svcmap.datasvcmap{0}: {1}c#'{0}': {1}!'{0}' ({1}): {2})'{0}' ({1},{2}): {3}.%App_WebReferences\typeName___!Reference.config/wsdlDocuments.asmxvalue?Schema.DataServiceMapSchema.xsdfileNameGET	POSTcontentbyteContentdefinitionsAhttp://schemas.xmlsoap.org/wsdl/
schemaAhttp://www.w3.org/2001/XMLSchema
PolicyYhttp://schemas.xmlsoap.org/ws/2004/09/policy=http://www.w3.org/ns/ws-policydiscoveryChttp://schemas.xmlsoap.org/disco/	Edmx[http://schemas.microsoft.com/ado/2007/06/edmxdisco	wsdlxsdxml	edmx	dataservicecontentReaderprotocoladdressassemblyNameschemaListimportErrors@	item	Name|!{0}[@name='{1}']Constraints	typeelementattributegroupattributeGroup7Schema.ServiceMapSchema.xsd#targetCompileUnit#bindingCollection%contractCollection'serviceEndpointListUserviceEndpointToChannelEndpointElementMap7proxyGeneratedContractTypes+proxyGenerationErrorssvcMapFilecodeDomProviderGtypedDataSetSchemaImporterExtension*typeLoader#ConfigurationNamevbReferenceGroupWurn:schemas-microsoft-com:xml-wcfservicemapSvcMapFileImplIDClientOptionsMetadataSourcesMetadataSourceMetadataMetadataFileExtensionsExtensionFileFileNameMetadataType
IgnoreIsMergeResultSourceIdSourceUrlUnknownDisco	Wsdl
SchemaXmlsSystem.Web.Compilation.WCFModel.MetadataFile.MetadataTypeAddressProtocol7GenerateAsynchronousMethodsGGenerateTaskBasedAsynchronousMethod#EnableDataBindingExcludedTypesExcludedTypeImportXmlTypes+GenerateInternalTypes1GenerateMessageContracts#NamespaceMappings!NamespaceMapping%CollectionMappings#CollectionMapping3GenerateSerializableTypesSerializer-UseSerializerForFaultsWrapped-ReferenceAllAssemblies)ReferencedAssemblies%ReferencedAssembly7ReferencedDataContractTypes5ReferencedDataContractType/ServiceContractMappings-ServiceContractMappingContractMappingTargetNamespaceTypeNameReferencedTypeAssemblyName	Auto-DataContractSerializerXmlSerializer��System.Web.Compilation.WCFModel.ClientOptions.ProxySerializerType1ReferencedCollectionTypeCategory	ListDictionary��System.Web.Compilation.WCFModel.ReferencedCollectionType.CollectionCategoryClrNamespaceuurn:schemas-microsoft-com:xml-wcfservicemap:ReferenceGroup:IDuurn:schemas-microsoft-com:xml-wcfservicemap:MetadataSourcequrn:schemas-microsoft-com:xml-wcfservicemap:MetadataFilesurn:schemas-microsoft-com:xml-wcfservicemap:ExtensionFile!:FileName, :Name��:FileName, :MetadataType, :ID, :Ignore, :IsMergeResult, :SourceId, :SourceUrl=:Address, :Protocol, :SourceIdqurn:schemas-microsoft-com:xml-wcfservicemap:ExcludedTypeyurn:schemas-microsoft-com:xml-wcfservicemap:NamespaceMapping{urn:schemas-microsoft-com:xml-wcfservicemap:CollectionMapping}urn:schemas-microsoft-com:xml-wcfservicemap:ReferencedAssembly��urn:schemas-microsoft-com:xml-wcfservicemap:ReferencedDataContractType��urn:schemas-microsoft-com:xml-wcfservicemap:ServiceContractMapping��urn:schemas-microsoft-com:xml-wcfservicemap:GenerateAsynchronousMethods, urn:schemas-microsoft-com:xml-wcfservicemap:GenerateTaskBasedAsynchronousMethod, urn:schemas-microsoft-com:xml-wcfservicemap:EnableDataBinding, urn:schemas-microsoft-com:xml-wcfservicemap:ExcludedTypes, urn:schemas-microsoft-com:xml-wcfservicemap:ImportXmlTypes, urn:schemas-microsoft-com:xml-wcfservicemap:GenerateInternalTypes, urn:schemas-microsoft-com:xml-wcfservicemap:GenerateMessageContracts, urn:schemas-microsoft-com:xml-wcfservicemap:NamespaceMappings, urn:schemas-microsoft-com:xml-wcfservicemap:CollectionMappings, urn:schemas-microsoft-com:xml-wcfservicemap:GenerateSerializableTypes, urn:schemas-microsoft-com:xml-wcfservicemap:Serializer, urn:schemas-microsoft-com:xml-wcfservicemap:UseSerializerForFaults, urn:schemas-microsoft-com:xml-wcfservicemap:Wrapped, urn:schemas-microsoft-com:xml-wcfservicemap:ReferenceAllAssemblies, urn:schemas-microsoft-com:xml-wcfservicemap:ReferencedAssemblies, urn:schemas-microsoft-com:xml-wcfservicemap:ReferencedDataContractTypes, urn:schemas-microsoft-com:xml-wcfservicemap:ServiceContractMappingsE:Name, :TargetNamespace, :TypeName:TypeName:AssemblyName):TypeName, :Category?:TargetNamespace, :ClrNamespace��System.Web.Compilation.WCFModel.SvcMapFileImpl:urn:schemas-microsoft-com:xml-wcfservicemap:ReferenceGroup:True:+Read16_ReferenceGroup-Write16_ReferenceGroupYurn:schemas-microsoft-com:xml-dataservicemap%DataSvcMapFileImplParametersParameterValuewurn:schemas-microsoft-com:xml-dataservicemap:ReferenceGroupwurn:schemas-microsoft-com:xml-dataservicemap:MetadataSourcesurn:schemas-microsoft-com:xml-dataservicemap:MetadataFileuurn:schemas-microsoft-com:xml-dataservicemap:ExtensionFilemurn:schemas-microsoft-com:xml-dataservicemap:Parameter:Name, :Value��System.Web.Compilation.WCFModel.DataSvcMapFileImpl:urn:schemas-microsoft-com:xml-dataservicemap:ReferenceGroup:True:)Read9_ReferenceGroup+Write9_ReferenceGroupx2
sourcepredicateWhereselector
SelectorderingOrderBy#OrderByDescending
ThenBy!ThenByDescending	Take	SkipkeySelectorelementSelectorGroupByAnyCount{, =}DynamicClasses
ModuleDynamicClass	get_	set_
Equalsget_DefaultGetHashCodeexpressionascascending	descdescendingorandmodnot-	nullas
InvokeMinMax?FCompare
Concat	truefalseitiifnew-system.web/compilationexceptionOnEvent$AsyncPostBackAsyncPostBack: I~/Authentication_JSON_AppService.axd{Sys.Services._AuthenticationService.DefaultWebServicePath = '';
[Sys.Services.AuthenticationService.set_path('	');
ySys.Services.AuthenticationService._setAuthenticated(true);
.jsMicrosoftAjax.compositeScript__VIEWSTATE#__EVENTVALIDATION__LASTFOCUS#__SCROLLPOSITIONX#__SCROLLPOSITIONY__EVENTTARGET__EVENTARGUMENT__PREVIOUSPAGE'IsBundleVirtualPath#GetBundleContentsGetBundleUrlMSystem.Web.Optimization.BundleResolverCurrent+system.web/deployment,'','controlX-MicrosoftAjaxDelta=true__ASYNCPOSTgSystem.Web.UI.PageRequestManager:AsyncPostBackErroruSystem.Web.UI.PageRequestManager:AsyncPostBackErrorMessagewSystem.Web.UI.PageRequestManager:AsyncPostBackErrorHttpCodeFocus.jsscriptBlockScriptPathfocustext/plain#4hiddenField/asyncPostBackControlIDs%postBackControlIDsupdatePanelIDs'childUpdatePanelIDs%panelsToRefreshIDs)asyncPostBackTimeoutformActionpageTitledataItemdataItemJson��<script type="text/javascript">

//<![CDATA[

Sys.WebForms.PageRequestManager._initialize('	', '	', [	], [], , '');%//]]>

</script>

'',''updatePanel1.43.0PostBackPostBack: ;~/Profile_JSON_AppService.axdmSys.Services._ProfileService.DefaultWebServicePath = 'MSys.Services.ProfileService.set_path('%// loadProperties
SSys.Services.ProfileService.properties = ;
OSys.Services.ProfileService.properties.C = new Sys.Services.ProfileGroup();
Category_5~/Role_JSON_AppService.axdgSys.Services._RoleService.DefaultWebServicePath = 'GSys.Services.RoleService.set_path('// loadRoles
ESys.Services.RoleService._roles = elementIDcomponentIDhandler
script,id$create(
$get(""));$find('').dispose();extenderControltargetControlscriptControlKSys.Application.add_init(function() {	    });EmptyPageUrl=MicrosoftAjaxComponentModel.jsIMicrosoftAjaxComponentModel.debug.js)MicrosoftAjaxCore.js5MicrosoftAjaxCore.debug.js;MicrosoftAjaxGlobalization.jsGMicrosoftAjaxGlobalization.debug.js/MicrosoftAjaxHistory.js;MicrosoftAjaxHistory.debug.js/MicrosoftAjaxNetwork.js;MicrosoftAjaxNetwork.debug.js;MicrosoftAjaxSerialization.jsGMicrosoftAjaxSerialization.debug.js7MicrosoftAjaxWebServices.jsCMicrosoftAjaxWebServices.debug.jsAccept-encoding	gzip)FrameworkLoadedCheck��

<script type="text/javascript">

//<![CDATA[

if (typeof(Sys) === 'undefined') throw new Error('/');

//]]>

</script>

GMicrosoftAjaxApplicationServices.js1MicrosoftAjaxWebForms.js!MicrosoftAjax.js%MicrosoftAjaxCore.UniqueScript_	page/system.web/customErrors��Type._checkDependency('MicrosoftAjaxGlobalization.js', 'ScriptManager.EnableScriptGlobalization');

-CultureInfoScriptCheckCultureInfo

<script src="E" type="text/javascript"></script>#AppServicesConfig��({0})||document.write('<script type="text/javascript" src="{1}"><\/script>');CMicrosoftAjaxApplicationServices.
hiddena

<script type="text/javascript">

//<![CDATA[

��Type._checkDependency('MicrosoftAjaxHistory.js', 'ScriptManager.EnableHistory');9Sys.Application.setServerId(ASys.Application.setServerState('aSys.Application._enableHistoryInScriptManager();;Sys.Application.add_navigate(HistoryNavigateIE?title=&title=__historyFrame	nonedebug.jsresourceNamedisposeScript��Sys.WebForms.PageRequestManager.getInstance()._registerDisposeScript(!arrayDeclaration3document.getElementById('	')['']"expando'ScriptContentNoTagsfallbackScriptscriptDispose%scriptStartupBlockonSubmitempty</script>	textattrnameattrval+ScriptContentWithTags��<script(\s+(?<attrname>\w[-\w:]*)(\s*=\s*"(?<attrval>[^"]*)"|\s*=\s*'(?<attrval>[^']*)'))*\s*(?<empty>/)?>scriptNameresourceTypeScriptResource.resources.debug.js1Type.registerNamespace('":"={};!// Name:        !// Assembly:    !// Version:     !// FileVersion: ��<%\s*=\s*(?<resourceType>WebResource|ScriptResource)\("(?<resourceName>[^"]*)"\)\s*%>http://httpsdefinitionscriptReference/js/jsdebug#targetControlTypeEnabledInterval[]ownerblockDefaultViewUEntitySet Type must be a field or propertyPagedControlID!QueryStringFieldcontainer&VisibleNullable<{0}>InnerExceptions1ConvertEmptyStringToNull+EnableModelValidation1EnablePersistedSelection%GroupPlaceholderID!groupPlaceholder%InsertItemPosition#ItemPlaceholderIDitemPlaceholder	ctrl_!ItemCount DESCitemValues	Sort	Edit
Cancel
Update
Delete
InsertItemCancelingItemDeletingItemEditingItemInsertingItemUpdating+SelectedIndexChangingSortingmaximumRowsstartRowIndexButtonCssClassButtonType#FirstPageImageUrlFirstPageText!LastPageImageUrlLastPageText!NextPageImageUrlNextPageText)PreviousPageImageUrl!PreviousPageTextMRenderNonBreakingSpacesBetweenControls;RenderDisabledButtonsAsLabels'ShowFirstPageButton%ShowLastPageButton%ShowNextPageButton-ShowPreviousPageButton
&nbsp;	Prev	NextFirst	LastButtonCount1CurrentPageLabelCssClass5NextPreviousButtonCssClass+NumericButtonCssClassviewName
ToList@p AND 	 == ��^\s*[\p{Lu}\p{Ll}\p{Lt}\p{Lm}\p{Lo}\p{Nl}_][\p{Lu}\p{Ll}\p{Lt}\p{Lm}\p{Lo}\p{Nl}\p{Nd}\p{Pc}\p{Mn}\p{Mc}\p{Cf}_]*	\s*$S(\s+(asc|ascending|desc|descending))?\s*$argumentsPagerCommandcontextdataSourceindexMethodName!IgnoreIfNotFound{0}
OfTypeDataFieldDirectionMinTypeMaxTypeDataFieldsSearchTypeComparisonType;System.Web.Resources.AtlasWeb=ApplicationServiceManager_Path'AppService_Disabled1AppService_MultiplePaths-AppService_RequiredSSLCAppService_UnknownProfileProperty3ArgumentMustBeCurrentUser%ArgumentMustBeNullIAsyncPostBackTrigger_CannotFindEvent=AsyncPostBackTrigger_EventNameCAsyncPostBackTrigger_InvalidEvent-AttributeNotRecognized!Category_Sorting;ClientService_BadJsonResponse5Common_ArgumentInvalidType?Common_GreaterThanOrEqualToZeromCommon_GreaterThanOrEqualToZeroAndLessThanOrEqualToOne%Common_NullOrEmpty/Common_PageCannotBeNull9Common_ScriptManagerRequiredACompositeScriptReference_ScriptsWConvertersCollection_NotJavaScriptConverterAConvertersCollection_UnknownTypeQDataBoundControlHelper_NoNamingContainer;DataPager_ControlIsntPageable!DataPager_Fields7DataPager_NoNamingContainerCDataPager_NoPageableItemContainerODataPager_PageableItemContainerNotFound1DataPager_PagedControlIDGDataPager_PagePropertiesCannotBeSet%DataPager_PageSize5DataPager_QueryStringField-DataPagerField_VisibleqDataSourceControlExtender_TargetControlIDMustBeSpecifiedDataSourceControlExtender_TargetControlMustImplementIDataSourceWDynamicControlBase_ConvertEmptyStringToNull9DynamicControlBase_DataFieldGDynamicControlBase_DataFormatString;DynamicControlBase_HtmlEncodeEDynamicControlBase_NullDisplayText3DynamicControlBase_UIHintEDynamicControlBase_ValidationGroup]DynamicFilterRepeater_DynamicFilterContainerIdeDynamicNavigatorDataSource_NoAccessibleTablesFound[DynamicNavigatorDataSource_NoModelsRegisteredWDynamicNavigatorDataSource_NoTablesInModels_ExpressionParser_AmbiguousConstructorInvocationWExpressionParser_AmbiguousIndexerInvocationUExpressionParser_AmbiguousMethodInvocationWExpressionParser_ArgsIncompatibleWithLambdaQExpressionParser_BothTypesConvertToOtherGExpressionParser_CannotConvertValueiExpressionParser_CannotIndexMultipleDimensionalArrayYExpressionParser_CloseBracketOrCommaExpectedUExpressionParser_CloseParenOrCommaExpected[ExpressionParser_CloseParenOrOperatorExpected=ExpressionParser_ColonExpected=ExpressionParser_DigitExpectedOExpressionParser_DotOrOpenParenExpectedIExpressionParser_DuplicateIdentifierGExpressionParser_ExpressionExpectedOExpressionParser_ExpressionTypeMismatchIExpressionParser_FirstExprMustBeBoolGExpressionParser_IdentifierExpectedKExpressionParser_IifRequiresThreeArgsIExpressionParser_IncompatibleOperandKExpressionParser_IncompatibleOperandsCExpressionParser_InvalidCharacterQExpressionParser_InvalidCharacterLiteral;ExpressionParser_InvalidIndexMExpressionParser_InvalidIntegerLiteralGExpressionParser_InvalidRealLiteral;ExpressionParser_MethodIsVoidOExpressionParser_MethodsAreInaccessibleAExpressionParser_MissingAsClauseWExpressionParser_NeitherTypeConvertsToOtherMExpressionParser_NoApplicableAggregateIExpressionParser_NoApplicableIndexerGExpressionParser_NoApplicableMethod9ExpressionParser_NoItInScopeMExpressionParser_NoMatchingConstructorIExpressionParser_OpenBracketExpectedEExpressionParser_OpenParenExpected9ExpressionParser_SyntaxError=ExpressionParser_TokenExpectedMExpressionParser_TypeHasNoNullableFormEExpressionParser_UnknownIdentifierOExpressionParser_UnknownPropertyOrFieldUExpressionParser_UnterminatedStringLiteral;Expressions_DataFieldRequiredcExtenderControl_TargetControlDifferentUpdatePanel?ExtenderControl_TargetControlIDIExtenderControl_TargetControlIDEmptyMExtenderControl_TargetControlIDInvalid1FilterRepeater_TableName5JSON_ArrayTypeNotSupportedJSON_BadEscape=JSON_CannotConvertObjectToType3JSON_CannotCreateListTypeCJSON_CannotSerializeMemberGeneric-JSON_CircularReference/JSON_DepthLimitExceeded;JSON_DeserializerTypeMismatch?JSON_DictionaryTypeNotSupported-JSON_ExpectedOpenBrace+JSON_IllegalPrimitive)JSON_InvalidArrayEnd9JSON_InvalidArrayExpectComma7JSON_InvalidArrayExtraComma-JSON_InvalidArrayStart)JSON_InvalidEnumType3JSON_InvalidMaxJsonLength-JSON_InvalidMemberName%JSON_InvalidObject5JSON_InvalidRecursionLimit5JSON_MaxJsonLengthExceeded%JSON_NoConstructor)JSON_StringNotQuoted/JSON_UnterminatedString5JSON_ValueTypeCannotBeNullQLinqDataSource_AutoGenerateOrderByClauseMLinqDataSource_AutoGenerateWhereClause/LinqDataSource_AutoPage/LinqDataSource_AutoSort;LinqDataSource_ContextCreated=LinqDataSource_ContextCreating?LinqDataSource_ContextDisposing=LinqDataSource_ContextTypeName-LinqDataSource_Deleted?LinqDataSource_DeleteParameters/LinqDataSource_Deleting5LinqDataSource_Description5LinqDataSource_DisplayName7LinqDataSource_EnableDelete7LinqDataSource_EnableInsertGLinqDataSource_EnableObjectTracking7LinqDataSource_EnableUpdate-LinqDataSource_GroupByALinqDataSource_GroupByParameters/LinqDataSource_Inserted1LinqDataSource_Inserting?LinqDataSource_InsertParameters=LinqDataSource_InvalidViewName-LinqDataSource_OrderByALinqDataSource_OrderByParameters9LinqDataSource_OrderGroupsByMLinqDataSource_OrderGroupsByParameters+LinqDataSource_Select/LinqDataSource_Selected1LinqDataSource_Selecting?LinqDataSource_SelectParameters[LinqDataSource_StoreOriginalValuesInViewState1LinqDataSource_TableName-LinqDataSource_Updated?LinqDataSource_UpdateParameters/LinqDataSource_Updating)LinqDataSource_Where=LinqDataSource_WhereParameterseLinqDataSourceValidationException_ValidationFailedILinqDataSourceView_CannotConvertTypeSLinqDataSourceView_ContextTypeNameChangedULinqDataSourceView_ContextTypeNameNotFound]LinqDataSourceView_ContextTypeNameNotSpecifiedKLinqDataSourceView_DeleteNotSupported]LinqDataSourceView_EnableObjectTrackingChangedYLinqDataSourceView_GroupByNotSupportedOnEditKLinqDataSourceView_InsertNotSupportedOLinqDataSourceView_InsertRequiresValuesKLinqDataSourceView_InvalidContextTypeULinqDataSourceView_InvalidOrderByFieldNameOLinqDataSourceView_InvalidParameterNameWLinqDataSourceView_InvalidTablePropertyTypeULinqDataSourceView_OrderByAlreadySpecified_LinqDataSourceView_OrderGroupsByRequiresGroupBySLinqDataSourceView_OriginalValuesNotFoundGLinqDataSourceView_PagingNotHandledQLinqDataSourceView_ParametersMustBeNamed]LinqDataSourceView_SelectNewNotSupportedOnEditMLinqDataSourceView_TableCannotBeStaticGLinqDataSourceView_TableNameChangedILinqDataSourceView_TableNameNotFoundQLinqDataSourceView_TableNameNotSpecifiedKLinqDataSourceView_UpdateNotSupportedGLinqDataSourceView_ValidationFailedQLinqDataSourceView_WhereAlreadySpecifiedAListView_AlternatingItemTemplateIListView_ContainerNameMustNotBeEmptyCListView_ConvertEmptyStringToNull+ListView_DataKeyNamesIListView_DataKeyNamesMustBeSpecified#ListView_DataKeysMListView_DataSourceDoesntSupportPagingkListView_DataSourceMustBeCollectionWhenNotDataBinding%ListView_EditIndex#ListView_EditItem3ListView_EditItemTemplate5ListView_EmptyDataTemplate5ListView_EmptyItemTemplateMListView_EnableDataBoundControlManager=ListView_EnableModelValidationCListView_EnablePersistedSelection3ListView_GroupContainerID/ListView_GroupItemCountMListView_GroupItemCountNoGroupTemplate?ListView_GroupSeparatorTemplate-ListView_GroupTemplate'ListView_InsertItem7ListView_InsertItemPosition7ListView_InsertItemTemplate?ListView_InsertTemplateRequired-ListView_InvalidCancel/ListView_InvalidCommand-ListView_InvalidDelete)ListView_InvalidEdit-ListView_InvalidInsert-ListView_InvalidSelect-ListView_InvalidUpdate5ListView_ItemPlaceholderIDListView_Items=ListView_ItemSeparatorTemplate5ListView_ItemsNotDataItems+ListView_ItemTemplate;ListView_ItemTemplateRequired/ListView_LayoutTemplateCListView_Missing_VirtualItemCountOListView_NeedICollectionOrTotalRowCount7ListView_NoGroupPlaceholder+ListView_NoInsertItem5ListView_NoItemPlaceholder#ListView_NullView1ListView_OnItemCanceling-ListView_OnItemCommand-ListView_OnItemCreated1ListView_OnItemDataBound-ListView_OnItemDeleted/ListView_OnItemDeleting-ListView_OnItemEditing/ListView_OnItemInserted1ListView_OnItemInserting-ListView_OnItemUpdated/ListView_OnItemUpdating1ListView_OnLayoutCreatedAListView_OnPagePropertiesChangedCListView_OnPagePropertiesChanging?ListView_OnSelectedIndexChangedAListView_OnSelectedIndexChanging#ListView_OnSorted%ListView_OnSortingaListView_PersistedSelectionRequiresDataKeysNames-ListView_SelectedIndex;ListView_SelectedItemTemplate-ListView_SortDirection/ListView_SortExpression5ListView_StyleNotSupportedIListView_StylePropertiesNotSupported/ListView_UnhandledEventMListViewPagedDataSource_CannotGetCountgListViewPagedDataSource_EnumeratorMoveNextNotCalledeMethodExpression_ChangingTheReturnTypeIsNotAllowedgMethodExpression_DataSourceMustBeIDynamicDataSource_MethodExpression_FirstParamterMustBeCorrectTypeGMethodExpression_MethodMustBeStaticUMethodExpression_MethodNameMustBeSpecified?MethodExpression_MethodNotFoundEMethodExpression_ParameterNotFoundKNextPreviousPagerField_ButtonCssClassCNextPreviousPagerField_ButtonTypeQNextPreviousPagerField_FirstPageImageUrlINextPreviousPagerField_FirstPageTextONextPreviousPagerField_LastPageImageUrlGNextPreviousPagerField_LastPageTextONextPreviousPagerField_NextPageImageUrlGNextPreviousPagerField_NextPageTextWNextPreviousPagerField_PreviousPageImageUrlONextPreviousPagerField_PreviousPageTextiNextPreviousPagerField_RenderDisabledButtonsAsLabels{NextPreviousPagerField_RenderNonBreakingSpacesBetweenControlsUNextPreviousPagerField_ShowFirstPageButtonSNextPreviousPagerField_ShowLastPageButtonSNextPreviousPagerField_ShowNextPageButton[NextPreviousPagerField_ShowPreviousPageButtonONextPrevPagerField_DefaultFirstPageTextMNextPrevPagerField_DefaultLastPageTextMNextPrevPagerField_DefaultNextPageTextUNextPrevPagerField_DefaultPreviousPageText;NumericPagerField_ButtonCount9NumericPagerField_ButtonTypeUNumericPagerField_CurrentPageLabelCssClassKNumericPagerField_DefaultNextPageTextSNumericPagerField_DefaultPreviousPageTextENumericPagerField_NextPageImageUrl=NumericPagerField_NextPageTextYNumericPagerField_NextPreviousButtonCssClassONumericPagerField_NumericButtonCssClassMNumericPagerField_PreviousPageImageUrlENumericPagerField_PreviousPageTextqNumericPagerField_RenderNonBreakingSpacesBetweenControls?OfTypeExpression_CannotFindTypeKOfTypeExpression_TypeNameNotSpecifiediPageRequestManager_RegisterDataItemInNonAsyncRequestQPageRequestManager_RegisterDataItemTwiceAPagerFieldCollection_InvalidTypeKPagerFieldCollection_InvalidTypeIndexGParseException_ParseExceptionFormatmProfileServiceManager_LoadProperitesWithNonDefaultPathIProfileServiceManager_LoadProperties=ProxyGenerator_UnsupportedType3ProxyHelper_BadStatusCodeeQueryExtender_DataSourceMustBeIQueryableDataSource3QueryExtender_ExpressionsIRangeExpression_MaximumValueRequiredIRangeExpression_MinimumValueRequiredQRangeExpression_RangeTypeMustBeSpecifiedARoleService_RoleProviderNotFoundERoleService_RolesFeatureNotEnabled9RoleServiceManager_LoadRoles]RoleServiceManager_LoadRolesWithNonDefaultPathKScriptControlDescriptor_IDNotSettablecScriptControlManager_ExtenderControlNotRegisteredSScriptControlManager_NoTargetControlTypesiScriptControlManager_RegisterExtenderControlTooEarlygScriptControlManager_RegisterExtenderControlTooLateeScriptControlManager_RegisterScriptControlTooEarlycScriptControlManager_RegisterScriptControlTooLate_ScriptControlManager_ScriptControlNotRegistered[ScriptControlManager_TargetControlTypeInvalidGScriptManager_AjaxFrameworkAssembly?ScriptManager_AjaxFrameworkModeOScriptManager_AllowCustomErrorsRedirectAScriptManager_AsyncPostBackErrorOScriptManager_AsyncPostBackErrorMessageiScriptManager_AsyncPostBackNotInPartialRenderingModeEScriptManager_AsyncPostBackTimeoutGScriptManager_AuthenticationServicesScriptManager_CannotAddHistoryPointOutsideOfAsyncPostBackmScriptManager_CannotAddHistoryPointWithHistoryDisabledWScriptManager_CannotChangeAjaxFrameworkModeGScriptManager_CannotChangeEnableCdnWScriptManager_CannotChangeEnableCdnFallbackOScriptManager_CannotChangeEnableHistoryaScriptManager_CannotChangeEnablePartialRenderinggScriptManager_CannotChangeEnableScriptGlobalizationeScriptManager_CannotChangeSupportsPartialRenderingSScriptManager_CannotRegisterBothPostBacksScriptManager_CannotRegisterScriptInMultipleCompositeReferenceswScriptManager_CannotSetSupportsPartialRenderingWhenDisabledGScriptManager_ClientNavigateHandler;ScriptManager_CompositeScript5ScriptManager_EmptyPageUrl/ScriptManager_EnableCdn?ScriptManager_EnableCdnFallback7ScriptManager_EnableHistory?ScriptManager_EnablePageMethodsIScriptManager_EnablePartialRenderingOScriptManager_EnableScriptGlobalizationMScriptManager_EnableScriptLocalizationMScriptManager_EnableSecureHistoryStateGScriptManager_FrameworkFailedToLoadQScriptManager_InvalidControlRegistrationCScriptManager_LoadScriptsBeforeUIIScriptManager_MustHaveGreaterVersion-ScriptManager_NavigateEScriptManager_OnlyOneScriptManager5ScriptManager_PageUntitled9ScriptManager_ProfileService[ScriptManager_ResolveCompositeScriptReferenceIScriptManager_ResolveScriptReference3ScriptManager_RoleService1ScriptManager_ScriptMode1ScriptManager_ScriptPath+ScriptManager_Scripts-ScriptManager_ServicesMScriptManager_UpdatePanelNotRegistered1ScriptReference_AssemblyIScriptReference_AssemblyRequiresNameAScriptReference_IgnoreScriptPathQScriptReference_InvalidReleaseScriptNameQScriptReference_InvalidReleaseScriptPath)ScriptReference_NameQScriptReference_NameAndPathCannotBeEmptyEScriptReference_NotifyScriptLoaded)ScriptReference_PathYScriptReference_ResourceRequiresAjaxAssemblyEScriptReference_ResourceUICultures5ScriptReference_ScriptModeUScriptRegistrationManager_ControlNotOnPageMScriptRegistrationManager_InvalidCharsIScriptRegistrationManager_NoCloseTagAScriptRegistrationManager_NoTagsIScriptResourceDefinition_InvalidPathcScriptResourceDefinition_NameAndPathCannotBeEmpty]ScriptResourceHandler_DuplicateScriptResourcesIScriptResourceHandler_InvalidRequestQScriptResourceHandler_ResourceUrlTooLongMScriptResourceHandler_TypeNameMismatchKScriptResourceHandler_UnknownResourceESearchExpression_ParameterRequired;ServiceReference_InlineScript+ServiceReference_PathEServiceReference_PathCannotBeEmpty%ServiceUriNotFoundGSqlHelper_SqlEverywhereNotInstalledCTemplatePagerField_OnPagerCommandATemplatePagerField_PagerTemplateCTemplatePagerField_UnhandledEventGTimer_IntervalMustBeGreaterThanZero#Timer_TimerEnable'Timer_TimerIntervalTimer_TimerTickCUnhandledExceptionEventLogMessageSUpdatePanel_CannotModifyControlCollectionIUpdatePanel_CannotSetContentTemplate=UpdatePanel_ChildrenAsTriggersWUpdatePanel_ChildrenTriggersAndUpdateAlways-UpdatePanel_RenderMode[UpdatePanel_SetPartialRenderingModeCalledOnce)UpdatePanel_Triggers;UpdatePanel_UpdateConditional-UpdatePanel_UpdateMode3UpdatePanel_UpdateTooLateGUpdatePanelControlTrigger_ControlIDSUpdatePanelControlTrigger_ControlNotFoundKUpdatePanelControlTrigger_NoControlIDMUpdateProgress_AssociatedUpdatePanelID7UpdateProgress_DisplayAfterEUpdateProgress_DisplayAfterInvalid9UpdateProgress_DynamicLayout9UpdateProgress_NoUpdatePanel?UpdateProgress_ProgressTemplate-UserIsNotAuthenticatedmWebResourceUtil_AssemblyDoesNotContainDebugWebResourcemWebResourceUtil_AssemblyDoesNotContainEmbeddedResourceqWebResourceUtil_AssemblyDoesNotContainReleaseWebResource��WebResourceUtil_SystemWebExtensionsDoesNotContainReleaseWebResource!WebService_ErrorIWebService_InvalidGenerateScriptTypeGWebService_InvalidInlineVirtualPath;WebService_InvalidVerbRequestAWebService_InvalidWebServiceCall?WebService_InvalidXmlReturnType+WebService_MissingArgGWebService_NoScriptServiceAttribute7WebService_NoWebServiceDataOWebService_NoWebServiceDataInlineScript1WebService_RedirectError7WebService_UnknownWebMethodISystem.Web.Resources.WCFModelStringsCReferenceGroup_AppendLinePosition]ReferenceGroup_DataContractExcludedAndIncludedIReferenceGroup_DuplicatedSchemaItemsWReferenceGroup_DuplicatedSchemaItemsIgnored7ReferenceGroup_EmptyAddress9ReferenceGroup_EmptyProtocolGReferenceGroup_FailedToGenerateCodeGReferenceGroup_FailedToLoadAssemblysReferenceGroup_FieldDefinedDifferentlyInDuplicatedMessagegReferenceGroup_FieldDefinedInOneOfDuplicatedMessage=ReferenceGroup_InvalidFileName=ReferenceGroup_InvalidSourceIdUReferenceGroup_OperationDefinedDifferentlyReferenceGroup_OperationDefinedInOneOfDuplicatedServiceContract]ReferenceGroup_ServiceContractMappingMissMatchKReferenceGroup_SharedTypeMustBePublicWReferenceGroup_TwoExternalFilesWithSameName	role	.axderror}System.Web.UI.PageRequestManager:AsyncPostBackRedirectLocation pageRedirect)~/ScriptResource.axd�<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"><head><script type="text/javascript">parent.Sys.Application._onIFrameLoad();</script><title>G</title></head><body></body></html>dtext/javascript!Content-encoding��system.web.extensions/scripting/webServices/authenticationServiceenabledrequireSSLconvertersrecursionLimitmaxJsonLengthusystem.web.extensions/scripting/webServices/profileService)readAccessProperties+writeAccessPropertiesosystem.web.extensions/scripting/webServices/roleServiceenableCaching#enableCompressionwebServices+scriptResourceHandler#jsonSerializationprofileService+authenticationServiceroleServicescripting1PageMethods.prototype = %var PageMethods = PageMethods	path��System.ServiceModel.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35}System.ServiceModel.Description.WCFServiceClientProxyGenerator)GetClientProxyScript1application/x-javascripttext/xml{"d":!application/jsonMessageStackTraceExceptionTypejsonerror#application/json;
StringBoolean
Number	Date
ObjectArray#If-Modified-Since7Profile_JSON_AppService.axdEAuthentication_JSON_AppService.axd1Role_JSON_AppService.axdUSystem.Web.Script.Services.WebServiceData:_AppService.axdmethodName	byteunsignedByteshortunsignedShortintunsignedInt	longunsignedLong{0}:{1}ActualTypeghttp://schemas.microsoft.com/2003/10/Serialization/!EnumerationValueunbounded
stringNamespace!.registerClass(';',Sys.Net.WebServiceProxy);

function() {

1.initializeBase(this);

}

{

��_get_path:function() {

 var p = this.get_path();

 if (p) return p;

 else return A._staticInstance.get_path();},

,

)this._timeout = 0;

7this._userContext = null;

3this._succeeded = null;

-this._failed = null;

= function(=onSuccess,onFailed,userContext) {

#._staticInstance.
); }

/._staticInstance = new ();

?.set_path = function(value) {

K._staticInstance.set_path(value); }

��.get_path = function() { 

/// <value type="String" mayBeNull="true">The service url.</value>

return ?._staticInstance.get_path();}

E.set_timeout = function(value) {

Q._staticInstance.set_timeout(value); }

��.get_timeout = function() { 

/// <value type="Number">The service timeout.</value>

return G._staticInstance.get_timeout(); }

].set_defaultUserContext = function(value) { 

g._staticInstance.set_defaultUserContext(value); }

��.get_defaultUserContext = function() { 

/// <value mayBeNull="true">The service default user context.</value>

return ]._staticInstance.get_defaultUserContext(); }

k.set_defaultSucceededCallback = function(value) { 

 s._staticInstance.set_defaultSucceededCallback(value); }

�'.get_defaultSucceededCallback = function() { 

/// <value type="Function" mayBeNull="true">The service default succeeded callback.</value>

return i._staticInstance.get_defaultSucceededCallback(); }

c.set_defaultFailedCallback = function(value) { 

m._staticInstance.set_defaultFailedCallback(value); }

�.get_defaultFailedCallback = function() { 

/// <value type="Function" mayBeNull="true">The service default failed callback.</value>

return c._staticInstance.get_defaultFailedCallback(); }

K.set_enableJsonp = function(value) { Y._staticInstance.set_enableJsonp(value); }

�'.get_enableJsonp = function() { 

/// <value type="Boolean">Specifies whether the service supports JSONP for cross domain calling.</value>

return O._staticInstance.get_enableJsonp(); }

a.set_jsonpCallbackParameter = function(value) { o._staticInstance.set_jsonpCallbackParameter(value); }

�c.get_jsonpCallbackParameter = function() { 

/// <value type="String">Specifies the parameter name that contains the callback function name for a JSONP request.</value>

return e._staticInstance.get_jsonpCallbackParameter(); }

=.set_path = function(value) { A.get_path = function() { return A._staticInstance.get_path(); }

C.set_timeout = function(value) { G.get_timeout = function() { return Y.set_defaultUserContext = function(value) { ].get_defaultUserContext = function() { return e.set_defaultSucceededCallback = function(value) { i.get_defaultSucceededCallback = function() { return _.set_defaultFailedCallback = function(value) { c.get_defaultFailedCallback = function() { return O.get_enableJsonp = function() { return e.get_jsonpCallbackParameter = function() { return https://://.set_path("");

3.set_enableJsonp(true);

callback9.set_jsonpCallbackParameter(	);

#/// <param name=" type="></param>

]succeededCallback, failedCallback, userContextfunction() {

Mreturn this._invoke(this._get_path(), c,succeededCallback,failedCallback,userContext); }}var gtc = Sys.Net.WebServiceProxy._generateTypedConstructor;

if (typeof(-) === 'undefined') {

gtc("');

}

	var g = function() { throw Error.invalidOperation(); }

.prototype = {: .registerEnum(', true);

}

.prototype');

3) === "undefined") {

    = {};

}

�	/// <param name="succeededCallback" type="Function" optional="true" mayBeNull="true"></param>

/// <param name="failedCallback" type="Function" optional="true" mayBeNull="true"></param>

/// <param name="userContext" optional="true" mayBeNull="true"></param>


__typeiCollectionCountExceeded_JavaScriptObjectDeserializere\/"��^"\\/Date\((?<ticks>-?[0-9]+)(?:[a-zA-Z]|(?:\+|-)[0-9]{4})?\)\\/"ticks"\/Date(input	)\/"new Date()rD (): uAppIsOffline	.svcClientForms
/LoginuserNamepassword-createPersistentCookie
config'credentialsProvider)connectionStringNameserviceUri/savePasswordHashLocallydescription/Logout��SELECT PropertyValue FROM ApplicationProperties WHERE PropertyName = N'LastLoggedInUserName'��DELETE FROM ApplicationProperties WHERE PropertyName = N'LastLoggedInUserName'��INSERT INTO ApplicationProperties(PropertyName, PropertyValue) VALUES (N'LastLoggedInUserName', @UserName)@UserName��INSERT INTO ApplicationProperties(PropertyName, PropertyValue) VALUES (N'LastLoggedInDate', @Date)@Date��DELETE FROM UserProperties WHERE PropertyName = @PasswordHashName#@PasswordHashNamePasswordHash_��DELETE FROM UserProperties WHERE PropertyName = @PasswordSaltName#@PasswordSaltNamePasswordSalt_��INSERT INTO UserProperties(PropertyName, PropertyValue) VALUES (@PasswordHashName, @PasswordHashValue)%@PasswordHashValue��INSERT INTO UserProperties(PropertyName, PropertyValue) VALUES (@PasswordSaltName, @PasswordSaltValue)%@PasswordSaltValue/IsLoggedIn��SELECT PropertyValue FROM UserProperties WHERE PropertyName = @PasswordHashName��SELECT PropertyValue FROM UserProperties WHERE PropertyName = @PasswordSaltNamecacheTimeout#honorCookieExpiryusername//GetRolesForCurrentUserYDELETE FROM Roles WHERE UserName = @UserName��DELETE FROM UserProperties WHERE PropertyName = @RolesCachedDate!@RolesCachedDate!RolesCachedDate_��INSERT INTO Roles(UserName, RoleName) VALUES(@UserName, @RoleName)@RoleName��INSERT INTO UserProperties (PropertyName, PropertyValue) VALUES(@RolesCachedDate, @Date)��SELECT PropertyValue FROM UserProperties WHERE PropertyName = @RolesCachedDate��SELECT RoleName FROM Roles WHERE UserName = @UserName ORDER BY RoleName-/GetPropertiesMetadataCClientSettingsProvider.ServiceUriWClientSettingsProvider.ConnectionStringNameQClientSettingsProvider.HonorCookieExpiry#SettingsClassTypeDefaultproperties+authenticatedUserOnly9/GetPropertiesForCurrentUser
values9/SetPropertiesForCurrentUser��SELECT PropertyName, PropertyStoredAs, PropertyValue FROM SettingsSBNgDELETE FROM Settings WHERE PropertyName = @PropName@PropName��INSERT INTO Settings (PropertyName, PropertyStoredAs, PropertyValue) VALUES (@PropName, 'N', '')��INSERT INTO Settings (PropertyName, PropertyStoredAs, PropertyValue) VALUES (@PropName, 'S', @PropVal)@PropVal��INSERT INTO Settings (PropertyName, PropertyStoredAs, PropertyValue) VALUES (@PropName, 'B', @PropVal)NeeedToDoReset10!IsCacheMoreFresh��SELECT PropertyValue FROM Settings WHERE PropertyName = @PropName AND PropertyStoredAs='I'��DELETE FROM Settings WHERE PropertyName = @PropName AND PropertyStoredAs='I'��INSERT INTO Settings (PropertyName, PropertyStoredAs, PropertyValue) VALUES  (@PropName, 'I', @PropValue)@PropValueUserValidatedOnUserValidated?application/json; charset=utf-8Set-CookieparamValues:Q = HttpOnly|FILES||SQL/CE|.SqlServerCe%|Isolated_Storage|��SELECT PropertyValue FROM UserProperties WHERE PropertyName = @PropNameCookieName_��DELETE FROM UserProperties WHERE PropertyName LIKE N'CookieName_%' AND PropertyValue LIKE @PropValue=%��INSERT INTO UserProperties (PropertyName, PropertyValue) VALUES (@PropName, @PropValue)��DELETE FROM UserProperties WHERE PropertyName LIKE N'CookieName_%'_DB.spfSqlCeEngineCreateDatabase��CREATE TABLE ApplicationProperties (PropertyName nvarchar(256), PropertyValue nvarchar(256))��CREATE TABLE UserProperties (PropertyName nvarchar(256), PropertyValue nvarchar(256))��CREATE TABLE Roles (UserName nvarchar(256), RoleName nvarchar(256))��CREATE TABLE Settings (PropertyName nvarchar(256), PropertyStoredAs nvarchar(1), PropertyValue nvarchar(2048))1System.Data.SqlServerCe.3, System.Data.SqlServerCe��, System.Data.SqlServerCe, Version=3.5.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91��, System.Data.SqlServerCe, Version=3.0.3600.0, Culture=neutral, PublicKeyToken=3be235df1c8d2ad3SqlCeConnectionSqlCeParameterApplicationUser_ClientData_System.Web.Extensions.ClientServices.ClientDataXaSystem.Web.Extensions.ClientServices.ClientData\.clientdata)LastLoggedInUserName'LastLoggedInDateUtcPasswordHashPasswordSaltRoles%RolesCachedDateUtcSettingsNames!SettingsStoredAsSettingsValues#SettingsNeedReset1SettingsCacheIsMoreFreshCookieNamesCookieValues+AuthenticationServiceProfileServiceRoleService	form
actionSys.UI._TimerintervaluniqueID+MicrosoftAjaxTimer.js-Sys.UI._UpdateProgress/associatedUpdatePanelIddynamicLayoutdisplayAfterUZR&t=|#|?d=/~/ScriptResource.axd?d=T{system.web.extensions/scripting/webServices/jsonSerializationksystem.web.extensions/scripting/scriptResourceHandler,z���I���I���4        = y ��	 �y�}	 �y�� �������� ���Q�1�Q���Q���Q������     �1	������ ������    �����������	 �� �� �! �)�a�h �i �� �� �� ���� ����
 ���� ��
 �� ��������@���$����	 ���� ����  ��	 ���i������������������������  �	�����������������t���|���x��������������� �� �� ��    �i �I �� �����������������������������������������������������������	 ���� ���@���( �9 �����`���X���p���x�������� �� �� �� �� �� �� �� �� �� �� �� �� �� ��   ���� 

  

 �������� �=)������������ ������ �� ���� ����  ����.
�������������������������������A �� �M  ��  ��	 ��
�
�� � �	 �
  ����	������������$ ����� �
 �������-�1�5�9�= �)	 �!�9�! ��D<�A���� �i �i�ah  �) ���!���� �5�1����	�
 ��	�����E���9���E
�1x�= �M�M�a8�1�Q�= �= �E�] �- �M  �M�Y�]�eHH�aH	 �e�eH�)  �Y �]
�U�Y-�1���1�����a���1���=�e���� �a �e �� �� �9	�9�9�a�� �m�e�� ���� �y ��	���}���a���ap�a���a|�����al�at��	 ��������� ��� �1�=���� �� �} ��	��x
��
x�ax
 ���� ��`����������  �� �� �������� ����
`������ �� ��	 ���ehh�eHH�eh���������	h�����	
h�	�����	
�	H
H��
 �����������  �!�% �)�� ���)������������������� �����
�����
���
� ��	�
�� C�a����9�=�����a�=���9�=�e�=�=�a����9�=�������a�=�e�= �� �=�A�=�9�=�= �A �= ��x	���E�E�E �E 
�1�1�1 ���1�1
�1�1�1�1�1�=�Q
�1�1�1 �� ��	���E �E	�E�E 
��������
����������I�ax�ax�9�y�i�a�Y���U�������Y�]�aP�����a�Y�a�U�a�����Y�]�aP#	�i�e88�����9���epp	 �9�U	 ���� �� ���e8����
 ���9�����9��
 �������������ep;T�������mP�e�Y�Y�]���U�U���-�-
 ���u���u0
T��������	�	�Y���	
�Y �m�� �U�e�Y �m�Y�]���U���U
 �U ��
 ���-���-���-�q�u �9 �� �� �u  �u �E7
�y�}���������������������epp	 ����
 �������� �}e���������i���i�i\�������������e���������e�����������������������i���i ���e��  ����PP���]�]��P��P���]���]7
�a�i�������i���������e||�i���a�i���������e|	�i�i�a���e���������a���e��)�a�
�y�����������u�������U �� ��
 ���u
 �������u ���
 ���������u ��	 ����$�����u�u(������(���u���u�����������eHH���a�
��hh�
���a�
��h��h
x����K����
����e�
�
��e�
�
���1��=�����
������
�e�
 �� �� ��a�����
�
���a�����
���
+�u�1���1���1���Y���=���-�- �� �� �Y��
 ���U
 ����"�1�Q�1���1�a�1�����= �� �m �� ���1�Q�1���=�1�����1���= �� � � �a�1�a�=���
�
���1���1���=���9�����9����)�������1���9���=�1���9���������� �	 �

������ � ��
������
���� � � � �! ��
������
������ �% ��
������ �� �� ���1�1�� ���al�ah�aH ��
 �)  ��
 ��8
���a���ap�a���a|�a���a8 �� �1 >�9���al�ah�aH�al�ah�aH ���9  �9H�9h		 �����9lr�94�a���ap�a���a|�a���a8�a���ap�a���a|�a���a8�98
�9���9|
�9���9p �5��%	���al�ah�aH�atM�9@�al�ah�aH�at�al�ah�aH�at�9t
�9�
�M �
	��	��
���a�a�a�a	 �� 	�
�� 	�� ����	���� ���1�=��	 �= ��E��I����� ��!�
�������������	�
�����������U�	�	 �
�E�M	 �E�q �M����	���	����
	 ����
������
��
�����������a�%�)�%�m�-�a�%	 �)�� �)�Y �-�m�]���% ������������1�� �1 �1
�5�9�� �5�e��	�9���=�A�E�I�E�I �=���i �A�m������ �E�q���� �I�y �y	 �y�9 �E	�E�I�M�Q�9�9���� �M�� �Q	 �y��	 �y�M	 �y�Q �Q �e
 �y�e��
 �e���E�I�9�9����	���
�
�
����a����a������������������E����������� 



�U	��	�
�������"	�a���a����Y��]�a���a� �i���i����������Y
��a������a �)���)�	��a�����e�i�I��e�	�i�i�]��9�]��E
�������
�
��a���
�a� ���a
�������m�m��	��a�q�������i�i�� �i���q���q�������i
���I
�a�������i���a �i
�E�	�E�a
�E�a	�	�a
�a��	�L�@�	�a�@
�a�@	�	�@
�@
��u�
�U���m	�U���m	

�y	�y�i�����m�m����������}���� ����	�����i �i�i�����i�� ������	�e�e�� �����e�u��	 ���q	���� �u�����e ����e�����a���e�� ���i�� �� �� ��	 ���LY�a��i�a����i�a����������i�i��� ��a��i�a����i�a���a��	������������ �� ��	����
�T
�X
�\�����E��	 �E�q �e
�`
�����e ����
 �������� ����
�< � �1�Q �Q�1�U�= 
�M���a�� ���Y�] �]
�M��a�	 �e�� �e��Q���E �E�5���� �5	 	�h�e������1���=�� �� �'���d�d�������� ������������
�e�h�h�e�h� �� �� �A �= �� �� �� �=�����e���� �q"�a�a�a���1�=�a
�a
�a�a$�������a���a�����a
���a ��M�����e�����a
 �Q	�a�t�����������t���t�����t	���t
�����`�a��	���l
���l�l	 �����l���l��������������a��
���`�`���`���`
�a��
 ���a���e���������e���������M���������������������i�����i�i���q
�i �
���	�����i�����	��
���i �� ���� �!	�1�=$
���i����� �������� �t������������������������������
 �5�������������������M�����= �����@�������=�1 ���� ��
��� �� �i�h�����@�e���� 	��
���$
��������
�����6���a���e���������e�����e��#�a���a���e������� 	�t�e����	�����������e�����������i�������i��T���a���������e����� ��������i�e����� ����i	��i
���Q �
 �) �
������
�������
��i���i��m��	
�i��i�i	���i����a���a���a���a���a��	�������������������i�����i����������M���� ����'�a�����e�������e�����e��)
�a�����e�������e�����e��*	�a�������e�������e���� �%�e��.�a�������e���������e�����e��
�e�����e��-
�a�������e���������e������������� �� �- �� �� �) �) �1
�����=	��	���1�����Y�= ���i�� �i
��������������M�a �
 ��� �M�����������=��m �� �� �m����i���}��	�i���i.��i������!��!���� ��	��i����	��
�
�������� ����� �

�����������
�(��i!
�i��
!�	!
! ���i ���i���4�4�=	���1 �q�1�D�P�=���h���h	�����M�I	�L�P �1�=�=�=������
�=�D ���H�1�D�= �� �L �E�����������=�E�����=��	�����I�1�I�=�� 	�����������M	�U�����Y���=�U �Y��
����	����
�1�1	 �y�} ��	���� �����4�t���i�9�E������	�9�9�4�a�a�4�x�����|
�������]���������a������ �a �� ���� ����
 �������x����	 ����
���������9�E�e
����
���t
���|
���x
���
����
����
����
�e�4�4�e�4 �I�q�����U�1�Y���=����	�	�������	
��	�	�Y���������� �e �� �� �������5�� ���a���� ���� ���� ��
�������q���q�q �� �q	 �q�M ��
�q����.�a�����1��������=���� �E ��G���a�������1������������=������������	�1��=��
����������=����	�E�� �E��
�1���<�<�=�1���<���
�9�
	���� �����������������= �E �E�E�Y�����������������=
 �E�E�Y	����	 �E�Y�� �]��������	�����������=���� �E�E�E�Y����	�E��
�����%
����
����
���������������� �i�� �e
����
����
����
����
����
����
�����=
���
����
����
���� �I�<���E	 � �1���1 	 �U�Y���y�
�	����	���y�	�
���	��	 �����
��I�������a�1�=�����I�a�e	 �e���������=�������������M�������M������ �i!���E������	������(
�a���������=�������a 	�U�1�Y���1�=�U�� �E�E�E	 �E�E �E����E�E�A����E����E�E�E�A�����
����I�I�P�L�@
���@�(�1�,�=�	�]�������������%��� �e� �%���%����	 �e�q	�e���u�u� ���������`�
���`�`���`��	��
4
���a��
����������
��E�
����%
���a��
���	
���
	 ���\�I���������9 �9�� ���=�����a���a�� ���	

���9�=���� �A ��'
���i���������������	
�i��m�i�E�I�M ���i�m��m	��m	�m�� �� ���� �������� ����
���������U�� �� �I������	�Q��5�M�i�i���Y�Y�!���%	 ������	 ���� �m �i �i �i ���M�e�� �� ���� �� �� �� �y �a �a �a �a�a��1�����=�a����������i���e ���������� ��
������ ����������������������	
��	�����������%	�A�� �A�� 	�������!��� �y 
�����m����	 ������������	���� ���������� ������	���� ���I�� ��������	����*���a���������q�e�e�e	 �e�q��������	����	������������������������������
������
�����������������5������������������ �
 
�
�������u�u	����	����������	���� ��	����)�����������������9���9 �� ���=�� �= �y�y	�y�y������ �� ���A���=�9�� ��)�a�����q�1��A�=�������=�a�� �� �������9 �9��
������ ��
������ ��#�9���a�a
�A����
�=�a�a
��

�
�����������������M������ �)���������M�M�M������������
�������� �M �M
���}�}�}�� ���}�}�}�}�}$���}�}�}�}�}
�y
�9�

�9�
�y�9�

�M�}�} �M�}�}�}�}�}�}�}
�9�
�}�}�}��
��
���� 
�������� ��������������������	 ��	�� 
"���9�E�9�9�E�E�e	 �9�q�9	�e� �����i�������=
�1�=
���������
�����E�I�	���� �
�}	�}	 �)�1�=�E���E�9�e	 �9�q1����a�����E���e�)�e�e �)�q����	�)�)�����M�����M
 ����M �������������� ������)����� �����1�= ���= �A�) �E�<�� �����<��] �]���`���`���`

���`�
�
�� � � ��d�
����
�8�d�
��� � �d��
��@���@	����d�
��	��d�
���
�d���
��
���1��
 �1����A���������������������I�M 	���5�I�M ���1�=��
���= �q����	 �Q�= �U���X���X���X

���X���1�U�=�� �����1���=���46����1���=���������U �U���4#
��������1�U�=
�d�
���1 	���U!
�d�1�U�=�
��1�U��d�d
�
�	�
��1�	���e�u���=�] ��
�����1���U�=�]%�a���e������Y�e�i�i � �m �i�1�m�= �q �m �u
�M������M ���  	�M	�M�M �a�
�
�q �}	�
����
���
���
�
�
�q�=�
� �� 	��


�9�
�u �y�}���y�y�}
 ���}�y����
�d�}������������
 �����d�d���� �� ������
���p
���x ���p�x�� ���1���=
����#�����������U��/	�������������U��2
�����������������U���������������U �=
������	���-�-�� �-���-��
���-��
������	������ �����������1�����= �I	�q�m���i�i�i	�m�m �� �����e�e
��	�a�a�H�P �e�h�h �� �� �� �� �i
���i��	���������
�(�����"��������	�����	

!������	�	��
���������	���� ����	�e��i�a����i�a���a�e��i�a����i�a���e�����e��i�a���e�����M����i�a���e��i�a����i�a����m�m�e�������i������] �I�]�5��� �5���� �A ������ ���z\V4��?_�
:1�8V�6N5��$��$RSA1����g�w:�މ8���e� `Y>�Ēe���?�?�1��3��`!g-��1���
�/%�}�o��Y���5�L9�EC��;�&=����o��GP�\d��E��k*+G��e+��]�4.0.0.02System.Web.Extensions.dll\� Microsoft Corporation.  All rights reserved.4.8.4770.0
303190ov��"App_WebReferences.svcmap.datasvcmap Reference.configXurn:schemas-microsoft-com:xml-dataservicemapserviceVurn:schemas-microsoft-com:xml-wcfservicemapvb�#4pageRedirecthiddenField.asyncPostBackControlIDs$postBackControlIDsupdatePanelIDs(asyncPostBackTimeout&childUpdatePanelIDs$panelsToRefreshIDsformActiondataItemdataItemJson arrayDeclarationexpandoonSubmitscriptBlock$scriptStartupBlockscriptDispose
errorfSystem.Web.UI.PageRequestManager:AsyncPostBackErrortSystem.Web.UI.PageRequestManager:AsyncPostBackErrorMessagevSystem.Web.UI.PageRequestManager:AsyncPostBackErrorHttpCode|System.Web.UI.PageRequestManager:AsyncPostBackRedirectLocationpageTitle
focus__ASYNCPOST|ZupdatePanelDefaultView_!ItemCountctrlOrderByThenBy"OrderByDescending ThenByDescending(~/ScriptResource.axd|System.ServiceModel.Description.WCFServiceClientProxyGenerator(GetClientProxyScript/js/jsdebug6Profile_JSON_AppService.axdDAuthentication_JSON_AppService.axd0Role_JSON_AppService.axdfhttp://schemas.microsoft.com/2003/10/Serialization/string@http://www.w3.org/2001/XMLSchemaActualTypeNameNamespace EnumerationValueunbounded"\/Date(\/"$__typed |SQL/CE||FILES|,Data Source = |SQL/CE|$|Isolated_Storage|
^System.Web.Extensions.ClientServices.ClientData
discoBhttp://schemas.xmlsoap.org/disco/wsdl@http://schemas.xmlsoap.org/wsdl/xsdHurn:schemas-microsoft-com:xml-msdatawsx&WS-MetadataExchangeRhttp://schemas.xmlsoap.org/ws/2004/09/mexwsdl-ex��http://schemas.microsoft.com/ws/2005/01/WSDL/Extensions/ContractInheritancexmlHhttp://www.w3.org/XML/1998/namespacewsa`http://schemas.xmlsoap.org/ws/2004/08/addressingwsu��http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsdwspXhttp://schemas.xmlsoap.org/ws/2004/09/policy<http://www.w3.org/ns/ws-policyZhttp://schemas.microsoft.com/ado/2007/06/edmx	
discoverydefinitionsschemaIsDataSetMetadatabaseid"EndpointReferenceIdPolicyURIsPolicyReferenceAllExactlyOnePolicyEdmx��.��System.Security.Permissions.SecurityPermissionAttribute, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089T	Execution��.System.Security.Permissions.PermissionSetAttribute, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089TName	FullTrust��.System.Security.Permissions.PermissionSetAttribute, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089TUnrestricted��.��System.Configuration.ConfigurationPermissionAttribute, System.Configuration, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aTUnrestricted��.��System.Security.Permissions.FileIOPermissionAttribute, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089TUnrestricted���������		�a���ap	�a�����a|�a8@�al�ah�aH�at������	�����ax�����������1��4	���U	����	�a�Y���Y�]�aP�9�U��x�5x�a���9�����9�������������������!����
����
���}�i�����i���p���e����� �T�X�\�`���4�h���5�t����	�a�	�a���l�������a
�a�t���`�a��
���l�T�P�\�X���	�a���������x��������,���L����
����	�a��	�a��	�a��	�a��	�a������i���E�������$�� ���8�H�h�D�P���<�=�d������q�E
�������p	�a�4�`��	�5����������������I����A��\��L�l�!	���(�q
�%��	���`�0�T�\���|�M�e�i�m��������
����
����
����
����
����
�������u���9���M�������
�(�����		���`���=�A�E	���X�d	���p	���x��	����	���������id��	�	h�		�	H���������������a�u��D�	�E�a
�	�a�	�a�@�@���@�L�p�x���	�����i����(��	�	!
������
�	���1�q�����	������}�A����0�	�	�� ����������������
 �� ����
 ���� ���� ��	 ����$ ��� �) �) �9�I	�I�Mx���9�I�I�9	 �U��	 ����
 �a��	 �ap
 �a�� �� ��	 �a|	 �a8 @ @	 �al	 �ah	 �aH	 �at ` ` �� ��  ���� �� �i ���i����
 �����i	 ��x
 ��x ` ` h H `�� `��x �� �� �� � � � ���� ���� �����) �
  �-
 ���� ����
 ����
 ���� ���� �� �� ������5x���$������9�=�a�=�5x�=�=
�E�I�I	�1�1�q�q�1�1	�1�q����	�I�I�=�E�E �� �� 4 4
 ���U	 ��P
 ����
 ���Y
 ���Y�] �9�aA 	�ax�9�U���U�����a�Y���Y�]�aP��x
�����U�E�U�X���i4�y�9�UX�5xA�y�i�9�������U�a�Y�5x���Y�]�aP�q4�9�E���y4�9�EX�5x����4X�5x������P���]�9�����i4X�5x����4X�5x"
�y���U�9�E�X�5x��������u���������u
�����a�
��h�5x	xh���a�
�5x�5�
�5x+�y�9�5x�a�Y���U�����9�9��	�����E���
��
 �5x�����5x ����	 ����	 ����	 ����	 ����	 ����	 �9�9 ������	 ���� ������0��	 ����
 ��	 H	 h ��	 l	 4	 8
 ��	 | ��
 �� ��	 p �� H h �� l 4 8 �� | �� �� �� p �� �� �� �� �� �� ����	 @	 t @ t �� �� ������	����������	�����	�
����		����
������	���� ���� ��
 ������	 ����
 �9�5��
 �5�9
 �
 �
  ���
 ���� � ���� ��	 ���� ����������
 ���� � ������ ��� ����
 ����
 �i�� ����a ����a
�������a���� ���a��a
 �@� ����
��@�@������ ��� �e�� ��� � � ��	 ��	����������i�i���i���� �p�e �p�M�����a���M���� �� �� �� �� �  � 
���� �T �T �X �X �\ �\�`�`	 ��	�e ���4	 �p�h �h���
 ������
 ���� �� �5 �9 �H �d  �M
 ����	0�� ��0 �` �l � ��	�� �a�����������a��p�I ��	 �����a��M������
�������a�a�a�M�a�a�a
 ��� � ������ ���M����	 �a �a�t �� �t �M	 ���� ���`�a�� ���l �a���a���l�a���` �� ������	�� �T�h�P�\�X�i �P � �, �,�� �T �X�i�i �\ �t �t �x ��
 �a�� �� �� �� �� �� ��� ��� ���@ ���$ ���� �� �����a�� �a�����������X
 ����
 ����
 ����
 ����
 ���� �i	 ���t � �@ �$ ����������������������
����
����������
���� �a���a�� ��
�H�i �a���a���t�H��
 ���@
 �L�� �� ���
 ���i ��� �i��	 ��	 �i�i�i�
�i� �� ���i ���T �� �i�i �L �L �� ��
 �a��
 �a��
 �a��
 �a��
 �a�� ����	�� �a������� �a�� �a���a��
��������������������i�M	���i
�i��M�M��
�M�����������������M�M��������	�i�������������M ��
 �i�� ��	 ���i �����i�i !���i	���i	 ���� ��	 ����	���� �� ���� �� �� �� � � �  �$ �$ �� �� ��i��
�i�i�i �h �8 �8
 ���
 ����\ �i�� ���� �4� � �H �) �h �h �� �� 
 �D�1�P �P �D �< �D
 �P �< �D �H�< �D �D �D �D
 �P�1	 �D�<�A�A���A�������E�E�E�A�E�E�����A�E�E�E���������E���� ��	 �� �� � �] �]
 �a�e �a ���� ��� �� �� �A ���� ���t ���| ���x ���� ���� ���� � ��� � � �� ��	�I�I% �q���E������	 ��
 ���� ����
 �p�� �p���\�` �4  �����]�� ������i �� �t �| �x � �� �� ��
 ���� ��   ��	 �E�E �E �E�E�E �� �� �� �� �� �d �d
 �5�� �� ��  ���� ���� ���� ���� ���� ���� ���� ���� ���� ���� ��� ���� ����
 ���� �I ���� �� �5�����d�� ��	 ���� �� ��
 �E��	 ���� �<�� ��	 �� ���� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� �� � �� �� ��  �� �� ��
 ���1 �� �E �� �� �� �Y �	 �	 �P
 ��	 � �P �� �	 �� � ����������E����������E��\�����\����
���� ��q ��q ��� �E�E ���	�Y ��E�E���� ��E���� ��E�E�E���� �
 �� �q% �����E�����q � � �l �l �0 �L � ���@ �@ ���( �� �(
 ��� �����l �, �, �, �, �,����	�����	��������	��
�������l�e��
 ���`���
���� �T �T���T��� �\ �\ �) �)	 ����� ����������i���m�i��i�|�i��a��i�a�������9���Q��
�����|�� �i� �a��i�a���m �m�� ������ �� �� �� �� �� �� �� �� �� �� �a � �i�i �h
���h �� �������Y�A��	�A��	������������������������������	����	����
�����= �� ��	���������i����	������������ �� ������ �����e ��
 ���� �� �� �� ��
 ���� ���� ���� ����
 ���� ���� ���� ��  ��
 

 ��
 �� ���� 
 
	 �� ���e���� ������ �� ����
 ���� �� ���� �u �� �u ���9������
������	�9���a�����������9���9�9�����9���9���� �� ���M�M�M �� ���� �� �� ��
 �� �}�M	 �}	�}���� � �
 ����� ��� ���
 ���00 �� �� �M
 �M���M	���M	���M���M�� �M���� �i �E�M���� �M���� �I�M�����M �M�����i �} ��������
��������
����
������������	��������
 ���� ������
 ����	 ���( �( �� � �	
 �	����  ���`	 	  � � �!�%   �! �! �! 	 �)
 �)  �A
���A �=�Q�A �= �Q	 �Q�A �U�Q�� ���X	�����=�A ���= �` �8���
�e��e	�

�M	 �� ���
�
��
�
����y �y�d�d���p���x �p �x  �p  �� ������ �� ��	�U�������� �-�� �� �� ����������
��������	
 ���i � h H � �� �	 �1�1 �Y	 ����	 ����	 ����
 ���� �� �}�} 		 

   

	 �y�y �}�} �}	�}	 �}
�}
 �}�} �}�} �}
�}
 �}�y�}�y 	 ����	 ����	 ���� �}�} �}���}�� �}���}�� �}���}��	 ���� �}���}��	 ����	 ���� �}���}�� �}���}��  
 �y	 �}	 �}
	 �}	 �}
 �}�y	 �} �a�E �a �@�a
 ���� �@
 ���� ���� ��	 ���� �� �x	 ���M
 ���i�� ��
 ����
 ���� ! �Y �� �1 �q ��  �� ������
 ����	 �A�� ��(��((��(��((��(��((��(����
(�a��	(�ap
(�a��(��	(�a|	(�a8(@	(�al	(�ah	(�aH	(�at((��	(��x(��(��(�(��(�(�(��(��(��(4
(���U	(��P
(����
(���Y
(���Y�](�U(�9�a(��(��(��	(��(	(��(������e(�p(���i��(��(� (�T(�X(�\�`((���4(�h(�9	(��(�H(�d(�A(�E(�I((�M((��(�(��	(�a(�a�t(��(���`�a��(���l(�i(�P(�(�,��(�T(�X�i(�\(�t(�x(��
(�a��(��(��(��(��(���
(���@(��(�L(��
(�a��
(�a��
(�a��
(�a��
(�a��(����(��(��(��(�(�(� (�$(��(�8(�H(�)(�P(�D(��(�<(�D(��(�A(�(��(�q	(��(�E(����(��(��(��(��(��(��(��(�d
(�5��(��(��((�i(�I(��(��(�	(�(�(�l(�0(�L(�!(��(�,(�e
(���`(�T(�\(�)���(�m(��(��(��(��(��(��(��(��(��(��(��
(����
(����(����(����
(����(����(
(��(����
(����(�u�9(�
(�����
(����(�((��(�(�	(�(��(��(��(��	��
(���i(��(�x(��(�System.Web,�l�fSystem.Web.Extensions.Test, PublicKey=002400000480000094000000060200000024000052534131000400000100010007d1fa57c4aed9f0a32e84aa0faefd0de9e8fd6aec8f87fb03766c834c99921eb23be79ad9d5dcc1dd9ad236132102900b723cf980957fc4e177108fc607774f29e8320e92ea05ece4e821c0a5efe8f1645c4c0c93c1ab99285d622caa652c1dfad63d745d6f2de5f17e5eaf0fc4963d261c8a12436518206dc093344d5ad293�n�hSystem.Web.Extensions.Design, PublicKey=0024000004800000940000000602000000240000525341310004000001000100b5fc90e7027f67871e773a8fde8938c81dd402ba65b9201d60593e96c492651e889cc13f1415ebb53fac1131ae0bd333c5ee6021672d9718ea31a8aebd0da0072f25d87dba6fc90ffd598ed4da35e44c398c454307e8e33b8426143daec9f596836f97c8f74750e5975c64e2189f45def46b2a2b1247adc3652bf5c308055da9�i�cSystem.ServiceModel.Web, PublicKey=0024000004800000940000000602000000240000525341310004000001000100b5fc90e7027f67871e773a8fde8938c81dd402ba65b9201d60593e96c492651e889cc13f1415ebb53fac1131ae0bd333c5ee6021672d9718ea31a8aebd0da0072f25d87dba6fc90ffd598ed4da35e44c398c454307e8e33b8426143daec9f596836f97c8f74750e5975c64e2189f45def46b2a2b1247adc3652bf5c308055da9��MicrosoftAjax.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPath5http://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjax.jsTLoadSuccessExpression.window.Sys && Sys._Application && Sys.Observer��#MicrosoftAjaxApplicationServices.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPathHhttp://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxApplicationServices.jsTLoadSuccessExpressionwindow.Sys && Sys.Services��MicrosoftAjaxComponentModel.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPathChttp://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxComponentModel.jsTLoadSuccessExpression"window.Sys && Sys.CommandEventArgs��MicrosoftAjaxCore.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPath9http://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxCore.jsTLoadSuccessExpressionwindow.Type && Sys.Observer��MicrosoftAjaxGlobalization.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPathBhttp://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxGlobalization.jsTLoadSuccessExpressionwindow.Sys && Sys.CultureInfo��MicrosoftAjaxHistory.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPath<http://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxHistory.jsTLoadSuccessExpression"window.Sys && Sys.HistoryEventArgs��MicrosoftAjaxNetwork.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPath<http://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxNetwork.jsTLoadSuccessExpression3window.Sys && Sys.Net && Sys.Net.WebRequestExecutor��MicrosoftAjaxSerialization.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPathBhttp://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxSerialization.jsTLoadSuccessExpressionwindow.Sys && Sys.Serialization��MicrosoftAjaxTimer.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPath:http://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxTimer.jsTLoadSuccessExpression%window.Sys && Sys.UI && Sys.UI._Timer��MicrosoftAjaxWebForms.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPath=http://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxWebForms.jsTLoadSuccessExpressionwindow.Sys && Sys.WebForms��MicrosoftAjaxWebServices.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPath@http://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxWebServices.jsTLoadSuccessExpression0window.Sys && Sys.Net && Sys.Net.WebServiceProxy�.Date.HijriCalendar.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPath:http://ajax.aspnetcdn.com/ajax/4.6/1/Date.HijriCalendar.jsTLoadSuccessExpression~window.Type && Type._registerScript && Type._registerScript._scripts && Type._registerScript._scripts['Date.HijriCalendar.js']�8Date.UmAlQuraCalendar.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPath=http://ajax.aspnetcdn.com/ajax/4.6/1/Date.UmAlQuraCalendar.jsTLoadSuccessExpression��window.Type && Type._registerScript && Type._registerScript._scripts && Type._registerScript._scripts['Date.UmAlQuraCalendar.js']��MicrosoftAjax.debug.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPath;http://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjax.debug.jsTLoadSuccessExpression.window.Sys && Sys._Application && Sys.Observer��)MicrosoftAjaxApplicationServices.debug.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPathNhttp://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxApplicationServices.debug.jsTLoadSuccessExpressionwindow.Sys && Sys.Services��$MicrosoftAjaxComponentModel.debug.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPathIhttp://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxComponentModel.debug.jsTLoadSuccessExpression"window.Sys && Sys.CommandEventArgs��MicrosoftAjaxCore.debug.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPath?http://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxCore.debug.jsTLoadSuccessExpressionwindow.Type && Sys.Observer��#MicrosoftAjaxGlobalization.debug.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPathHhttp://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxGlobalization.debug.jsTLoadSuccessExpressionwindow.Sys && Sys.CultureInfo��MicrosoftAjaxHistory.debug.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPathBhttp://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxHistory.debug.jsTLoadSuccessExpression"window.Sys && Sys.HistoryEventArgs��MicrosoftAjaxNetwork.debug.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPathBhttp://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxNetwork.debug.jsTLoadSuccessExpression3window.Sys && Sys.Net && Sys.Net.WebRequestExecutor��#MicrosoftAjaxSerialization.debug.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPathHhttp://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxSerialization.debug.jsTLoadSuccessExpressionwindow.Sys && Sys.Serialization��MicrosoftAjaxTimer.debug.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPath@http://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxTimer.debug.jsTLoadSuccessExpression%window.Sys && Sys.UI && Sys.UI._Timer��MicrosoftAjaxWebForms.debug.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPathChttp://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxWebForms.debug.jsTLoadSuccessExpressionwindow.Sys && Sys.WebForms��!MicrosoftAjaxWebServices.debug.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPathFhttp://ajax.aspnetcdn.com/ajax/4.6/1/MicrosoftAjaxWebServices.debug.jsTLoadSuccessExpression0window.Sys && Sys.Net && Sys.Net.WebServiceProxy�:Date.HijriCalendar.debug.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPath@http://ajax.aspnetcdn.com/ajax/4.6/1/Date.HijriCalendar.debug.jsTLoadSuccessExpression~window.Type && Type._registerScript && Type._registerScript._scripts && Type._registerScript._scripts['Date.HijriCalendar.js']�DDate.UmAlQuraCalendar.debug.jsapplication/x-javascriptTCdnSupportsSecureConnectionTCdnPathChttp://ajax.aspnetcdn.com/ajax/4.6/1/Date.UmAlQuraCalendar.debug.jsTLoadSuccessExpression��window.Type && Type._registerScript && Type._registerScript._scripts && Type._registerScript._scripts['Date.UmAlQuraCalendar.js']DMicrosoftAjax.js&System.Web.Resources.ScriptLibrary.ResSys.ResPMicrosoftAjax.debug.js,System.Web.Resources.ScriptLibrary.Res.debugSys.ResHMicrosoftAjaxCore.js&System.Web.Resources.ScriptLibrary.ResSys.ResTMicrosoftAjaxCore.debug.js,System.Web.Resources.ScriptLibrary.Res.debugSys.Res^MicrosoftAjaxWebForms.js/System.Web.Resources.ScriptLibrary.WebForms.ResSys.WebForms.ResjMicrosoftAjaxWebForms.debug.js5System.Web.Resources.ScriptLibrary.WebForms.Res.debugSys.WebForms.Res
System.Web.UIasp"System.Web.UI.WebControlsasp��TUxSystem.Security.PartialTrustVisibilityLevel, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089PartialTrustVisibilityLevel$TSkipVerificationInFullTrustSystem.Web.Extensions.dllMicrosoft CorporationMicrosoft® .NET Framework4/© Microsoft Corporation.  All rights reserved.
4.8.4770.04.0.0.0
en-US-(f:\dd\tools\devdiv\35MSSharedLib1024.snkTWrapNonExceptionThrows=8System.Web.Util.OrderedDictionary`2+<GetEnumerator>d__18HCSystem.Web.Query.Dynamic.ExpressionParser+<SelfAndBaseClasses>d__78-(Use IsAjaxFrameworkScript(ScriptManager)OJThis method is obsolete. Use IsAjaxFrameworkScript(ScriptManager) instead.4/System.Web.UI.Timer+<GetScriptDescriptors>d__223.System.Web.UI.Timer+<GetScriptReferences>d__23<7System.Web.UI.UpdateProgress+<GetScriptReferences>d__28=8System.Web.UI.UpdateProgress+<GetScriptDescriptors>d__29TNameAuto"TNameDataContractSerializerTName
XmlSerializerTNameUnknownTNameDiscoTNameWsdlTNameSchemaTNamePolicyTNameXmlTNameEdmxTNameListTName
DictionaryZT	Namespace,urn:schemas-microsoft-com:xml-dataservicemapTElementNameReferenceGroupYT	Namespace+urn:schemas-microsoft-com:xml-wcfservicemapTElementNameReferenceGroup	Item	Path72System.Web.UI.EmptyStringExpandableObjectConverterTargetControlID����System.Web.UI.Design.ExtenderControlDesigner, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35����System.Web.UI.Design.ExtenderControlToolboxItem, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35�&�T	InheritedT
AllowMultiple&T	InheritedT
AllowMultipleScripts����System.Web.UI.Design.ScriptManagerDesigner, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35BEmbeddedResourceFinder&System.Web.Resources.ScriptManager.bmp����System.Web.UI.Design.ScriptManagerProxyDesigner, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35GEmbeddedResourceFinder+System.Web.Resources.ScriptManagerProxy.bmpT
AllowMultipleT
AllowMultiple	Tick
Interval����System.Web.UI.Design.TimerDesigner, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35:EmbeddedResourceFinderSystem.Web.Resources.Timer.bmp
Triggers����System.Web.UI.Design.UpdatePanelDesigner, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35@EmbeddedResourceFinder$System.Web.Resources.UpdatePanel.bmpAssociatedUpdatePanelID����System.Web.UI.Design.UpdateProgressDesigner, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35CEmbeddedResourceFinder'System.Web.Resources.UpdateProgress.bmp����System.Web.UI.Design.WebControls.DataPagerDesigner, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e356#System.Web.UI.WebControls.DataPager
DataPager.bmp	SelectingContextTypeName����System.Web.UI.Design.WebControls.LinqDataSourceDesigner, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35LinqDataSource_DescriptionLinqDataSource_DisplayName@(System.Web.UI.WebControls.LinqDataSourceLinqDataSource.bmp
SelectedValue����System.Web.UI.Design.WebControls.ListViewDesigner, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35SelectedIndexChanged4"System.Web.UI.WebControls.ListViewListView.bmpSelectedPersistedDataKey3.System.Web.UI.WebControls.IQueryableDataSource>'System.Web.UI.WebControls.QueryExtenderQueryExtender.bmp����System.Web.UI.Design.QueryExtenderDesigner, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35Expressions
ParametersThenByExpressions@3System.Resources.Tools.StronglyTypedResourceBuilder4.0.0.0@3System.Resources.Tools.StronglyTypedResourceBuilder2.0.0.0'"System.Web.Configuration.ConverterT
AllowMultipleDT
AllowMultiple@&�T
AllowMultipleT	Inherited��TU��System.ServiceModel.Activation.AspNetCompatibilityRequirementsMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089RequirementsMode8T	Namespace'http://asp.net/ApplicationServices/v200�dT	Namespace'http://asp.net/ApplicationServices/v200TUSystem.ServiceModel.InstanceContextMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089InstanceContextModeTU{System.ServiceModel.ConcurrencyMode, System.ServiceModel, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089ConcurrencyModeD
GetKnownTypes1System.Web.ApplicationServices.KnownTypesProvider TElementName
ExcludedTypes@ExcludedType.System.Web.Compilation.WCFModel.ReferencedType$TElementNameNamespaceMappingsFNamespaceMapping0System.Web.Compilation.WCFModel.NamespaceMapping%TElementNameCollectionMappingsOCollectionMapping8System.Web.Compilation.WCFModel.ReferencedCollectionType'TElementNameReferencedAssembliesJReferencedAssembly2System.Web.Compilation.WCFModel.ReferencedAssembly.TElementNameReferencedDataContractTypesNReferencedDataContractType.System.Web.Compilation.WCFModel.ReferencedType*TElementNameServiceContractMappingsKServiceContractMapping/System.Web.Compilation.WCFModel.ContractMapping.TElementNameMetadataSourcesTOrderBMetadataSource.System.Web.Compilation.WCFModel.MetadataSource'TElementNameMetadataTOrder>MetadataFile,System.Web.Compilation.WCFModel.MetadataFile)TElementName
ExtensionsTOrder@
ExtensionFile-System.Web.Compilation.WCFModel.ExtensionFile)TElementName
ParametersTOrder8	Parameter)System.Web.Compilation.WCFModel.ParameterMetadataType,TElementName
ClientOptionsTOrder.TElementNameMetadataSourcesTOrder'TElementNameMetadataTOrder)TElementName
ExtensionsTOrder����System.Web.UI.Design.AsyncPostBackTriggerControlIDConverter, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35
Behavior#AsyncPostBackTrigger_EventName����System.Web.UI.Design.AsyncPostBackTriggerEventNameConverter, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35#ApplicationServiceManager_Path% CompositeScriptReference_Scripts���System.Web.UI.Design.CollectionEditorBase, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35uSystem.Drawing.Design.UITypeEditor, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a�$ExtenderControl_TargetControlID����System.Web.UI.Design.PostBackTriggerControlIDConverter, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35��}System.Web.UI.WebControls.StringArrayConverter, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a)$ProfileServiceManager_LoadProperties!RoleServiceManager_LoadRoles(#ScriptManager_AjaxFrameworkAssembly,'ScriptManager_AllowCustomErrorsRedirect,'ScriptManager_AsyncPostBackErrorMessage'"ScriptManager_AsyncPostBackTimeoutZ(#ScriptManager_AuthenticationService(#ScriptManager_ClientNavigateHandler"ScriptManager_CompositeScriptScriptManager_EmptyPageUrl
Appearance��pSystem.Web.UI.Design.UrlEditor, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3auSystem.Drawing.Design.UITypeEditor, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aScriptManager_EnableCdn$ScriptManager_EnableCdnFallback ScriptManager_EnableHistory$ScriptManager_AjaxFrameworkMode)USystem.Web.UI.AjaxFrameworkMode$ScriptManager_EnablePageMethods)$ScriptManager_EnablePartialRendering,'ScriptManager_EnableScriptGlobalization+&ScriptManager_EnableScriptLocalization+&ScriptManager_EnableSecureHistoryState&!ScriptManager_LoadScriptsBeforeUI!ScriptManager_ProfileServiceScriptManager_RoleServiceScriptManager_ScriptMode"USystem.Web.UI.ScriptModeScriptManager_ScriptsScriptManager_ScriptPatha\This property is obsolete. Set the Path property on each individual ScriptReference instead.ScriptManager_Services���System.Web.UI.Design.ServiceReferenceCollectionEditor, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35uSystem.Drawing.Design.UITypeEditor, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aScriptReference_Assembly% ScriptReference_IgnoreScriptPath��This property is obsolete. Instead of using ScriptManager.ScriptPath, set the Path property on each individual ScriptReference.ScriptReference_Name'"ScriptReference_NotifyScriptLoadedC>NotifyScriptLoaded is no longer required in script references.ScriptReference_Path	*.js'"ScriptReference_ResourceUICulturesScriptReference_ScriptMode?:This property is obsolete. Use StringResourceName instead.IDThis property is obsolete. Use StringResourceClientTypeName instead."ServiceReference_InlineScriptServiceReference_PathTimer_TimerEnableTimer_TimerInterval`�WebControl_Attributes#UpdatePanel_ChildrenAsTriggersUpdatePanel_RenderModeLayout-U#System.Web.UI.UpdatePanelRenderMode���System.Web.UI.Design.UpdatePanelTriggerCollectionEditor, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35uSystem.Drawing.Design.UITypeEditor, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aUpdatePanel_TriggersUpdatePanel_UpdateMode-U#System.Web.UI.UpdatePanelUpdateMode(#UpdatePanelControlTrigger_ControlIDSystem.Web.UI.UpdatePanel+&UpdateProgress_AssociatedUpdatePanelIDHCSystem.Web.UI.Design.UpdateProgressAssociatedUpdatePanelIDConverter� UpdateProgress_DisplayAfter$UpdateProgress_ProgressTemplate!UpdateProgress_DynamicLayout���System.Web.UI.Design.WebControls.DataPagerFieldTypeEditor, System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35uSystem.Drawing.Design.UITypeEditor, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aDefaultDataPager_Fields50System.Web.UI.WebControls.IPageableItemContainerPagingDataPager_PagedControlID
DataPager_PageSizeDataPager_QueryStringFieldDataPagerField_Visible-(LinqDataSource_AutoGenerateOrderByClause+&LinqDataSource_AutoGenerateWhereClauseLinqDataSource_AutoPageLinqDataSource_AutoSort	Data$LinqDataSource_DeleteParameters#LinqDataSource_ContextTypeName LinqDataSource_EnableDelete LinqDataSource_EnableInsert(#LinqDataSource_EnableObjectTracking LinqDataSource_EnableUpdateLinqDataSource_GroupBy% LinqDataSource_GroupByParameters$LinqDataSource_InsertParametersLinqDataSource_OrderBy% LinqDataSource_OrderByParameters!LinqDataSource_OrderGroupsBy+&LinqDataSource_OrderGroupsByParametersLinqDataSource_Select$LinqDataSource_SelectParameters2-LinqDataSource_StoreOriginalValuesInViewStateLinqDataSource_TableName$LinqDataSource_UpdateParametersLinqDataSource_Where#LinqDataSource_WhereParameters3*System.Web.UI.WebControls.ListViewDataItem% ListView_AlternatingItemTemplate&!ListView_ConvertEmptyStringToNullListView_DataKeys����System.Web.UI.Design.WebControls.DataFieldEditor, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3auSystem.Drawing.Design.UITypeEditor, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aListView_DataKeyNames����ListView_EditIndexListView_EditItemListView_EditItemTemplate'"System.Web.UI.WebControls.ListViewListView_EmptyDataTemplate+&System.Web.UI.WebControls.ListViewItemListView_EmptyItemTemplate#ListView_EnableModelValidation&!ListView_EnablePersistedSelectiongroupPlaceholder ListView_GroupPlaceholderIDListView_GroupItemCount$ListView_GroupSeparatorTemplateListView_GroupTemplateListView_InsertItem6U,System.Web.UI.WebControls.InsertItemPosition ListView_InsertItemPosition/&System.Web.UI.WebControls.ListViewItem ListView_InsertItemTemplateitemPlaceholderListView_ItemPlaceholderIDListView_Items#ListView_ItemSeparatorTemplateListView_ItemTemplateListView_LayoutTemplateListView_SelectedIndex"ListView_SelectedItemTemplate��UvSystem.Web.UI.WebControls.SortDirection, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3aListView_SortDirectionSortingListView_SortExpression"DataBoundControl_UpdateMethod"DataBoundControl_DeleteMethod"DataBoundControl_InsertMethod*%NextPreviousPagerField_ButtonCssClass}UsSystem.Web.UI.WebControls.ButtonType, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a&!NextPreviousPagerField_ButtonType��uSystem.Web.UI.Design.ImageUrlEditor, System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3auSystem.Drawing.Design.UITypeEditor, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a-(NextPreviousPagerField_FirstPageImageUrl,'NextPrevPagerField_DefaultFirstPageText)$NextPreviousPagerField_FirstPageText,'NextPreviousPagerField_LastPageImageUrl+&NextPrevPagerField_DefaultLastPageText(#NextPreviousPagerField_LastPageText,'NextPreviousPagerField_NextPageImageUrl+&NextPrevPagerField_DefaultNextPageText(#NextPreviousPagerField_NextPageText0+NextPreviousPagerField_PreviousPageImageUrl/*NextPrevPagerField_DefaultPreviousPageText,'NextPreviousPagerField_PreviousPageTextB=NextPreviousPagerField_RenderNonBreakingSpacesBetweenControls94NextPreviousPagerField_RenderDisabledButtonsAsLabels/*NextPreviousPagerField_ShowFirstPageButton.)NextPreviousPagerField_ShowLastPageButton.)NextPreviousPagerField_ShowNextPageButton2-NextPreviousPagerField_ShowPreviousPageButton"NumericPagerField_ButtonCount!NumericPagerField_ButtonType/*NumericPagerField_CurrentPageLabelCssClass'"NumericPagerField_NextPageImageUrl*%NumericPagerField_DefaultNextPageText#NumericPagerField_NextPageText1,NumericPagerField_NextPreviousButtonCssClass,'NumericPagerField_NumericButtonCssClass+&NumericPagerField_PreviousPageImageUrl.)NumericPagerField_DefaultPreviousPageText'"NumericPagerField_PreviousPageText=8NumericPagerField_RenderNonBreakingSpacesBetweenControlsQueryExtender_Expressions% TemplatePagerField_PagerTemplate5,System.Web.UI.WebControls.DataPagerFieldItem(typeT
IsRequiredTQDefaultValueT	MinLength1nameT
IsRequiredTIsKeyTQDefaultValueenabledTQDefaultValue 
requireSSLTQDefaultValue)
convertersTIsKeyTQDefaultValue'recursionLimitTQDefaultValued&
maxJsonLengthTQDefaultValue�*readAccessPropertiesTQDefaultValue�+writeAccessPropertiesTQDefaultValue�#
enableCachingTQDefaultValue'enableCompressionTQDefaultValuewebServicesscriptResourceHandlerjsonSerializationprofileServiceauthenticationServiceroleService	scriptingAction% ScriptManager_AsyncPostBackErrorScriptManager_Navigate2-ScriptManager_ResolveCompositeScriptReference)$ScriptManager_ResolveScriptReferenceTimer_TimerTick"LinqDataSource_ContextCreated#LinqDataSource_ContextCreating$LinqDataSource_ContextDisposingLinqDataSource_DeletedLinqDataSource_DeletingLinqDataSource_InsertedLinqDataSource_InsertingLinqDataSource_SelectedLinqDataSource_SelectingLinqDataSource_UpdatedLinqDataSource_UpdatingListView_OnItemDeletedListView_OnItemInsertedListView_OnItemUpdatedListView_OnItemCancelingListView_OnItemCommandListView_OnItemCreatedListView_OnItemDataBoundListView_OnItemDeletingListView_OnItemEditingListView_OnItemInsertingListView_OnItemUpdatingListView_OnLayoutCreated% ListView_OnPagePropertiesChanged&!ListView_OnPagePropertiesChanging$ListView_OnSelectedIndexChanged% ListView_OnSelectedIndexChangingListView_OnSortedListView_OnSorting&!TemplatePagerField_OnPagerCommandD
����lSystem.Resources.ResourceReader, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089#System.Resources.RuntimeResourceSet�PADPADPZ|̀�Ԁ�Q���4)�@aT�L���B��o��=�/��Q���{�f)��/ƃホ��8�z�=Dž�ׇ�G��������0�V��O舥mH��6��+���1襉
2F����^J��*h������܎^���h���!��0�a�m����@6ɒ�ʒL�ӒP$3�@S��Gi�-8�����oYV��n�1Ӹ��ΗEM�R��W`�Dy����7ɓ��߶���C��EK�!"��L�֜a�c��E�|��Hj۟��"��𛠌6�-�̡����T�����`6��Τ� c�� �HP���%Ԋ��Ѧ5
F���c���x���(�/R���i��+ҩi~�v�.����&�.�- ���↯]lүnl��$u��Fٱv㱸�l�B���/�w���m�������C��P���K���������O������Fo�pX�X���]�����5��a^��}��#i��¿�^=�ޮ��.�3��X�6�\�H2��wY��K|���@ęL�t���Ԉ�~C��;y��x7��$��n�ʢ����z��&f��f����l��#���A͵DF��2Jͦ/f��Q�I�?ι~_Ͼd��b-��7��нP��?|�������y�H��T���CN1���K��J���=�����:�M�;�W��ֈe��T~ذq��n%��eD�ڢ��ڶ������uHۨa��Gdz�P��ٔ�{`Z�;ex��n����N�Z��Ț�m����2���9H�����p�*=�9fd��h��z��� ���6�5��5v���7H�댧�s%'��~��%��!���1�M����*��chF�ďR� ��CR�v����Zp��\�\=b�j�U��*B��ަ'�r���/k�!l��k,{�'�|�"��c#��\��c�KM���M��e%��Fj�ԛo���Kn<�؀D[>�J��������6��m�:7Q�K�	�c�	��7�U&���� 
�ZJ
l�a
G�
aK�:��y3�2��b��G���X��N$�֑Gz�A���|�XS����q\�Ϧ���V���S���@_/��������QY��nJ�><ڊ�� _� �� Y�3!�A�!\��!��	"�g"���"`��%/j&�)f'�}�(y��(�/,a��,���,�T8-sF.n�/߂o0d~�0�"�0j7�0�e1��1���1��2ݢ�2�k�2�s�5�K�6,�6�u8(۔8v��8���8�
V9��9f�):�/,:�$�;�B�<q.�<_�<�i=v=L>4
Y>+&?��?~��@��@A�A��SB� CC�X�Cw��Cv}ZD ��D��D�aSF-X�K�LZ2+L�5L��PL�O���P�Q#,�R���Sf`�S-�S�=#T�VZU*JV�kW"o�W=5YX|�Y6�"Z
�J[�IV]�9�]
Rax�b�v�c
9d�Gd�]PdvJe�O`f��f ;fg��g�i
h"Uh��jh�N�h��h��0i�41i��]i�9j��j�k�|l��l$�l�E�lT�lj�mښxn�$�n��o�w�p��2q��Oq��or���rQt�l�t��ta��t��u�\u\�buu�u��v��<w�w��w�G�x`<yӢHy�Vy�fyb�z��zF��zҌ{i5|��h}�[�}.�}`�~c��(Q���UH*o,�V'T�5�E(7�
�z�E:4�y��,�p~Z�-�l5n�u0VHis�>N, g+�%�]+K�:��<�D�3�I#+�^#vA�\�=i&�g�f�O�)fuyV_k��?J�&�?�O
vxda3i4hC=R�5�ku.��es m[Ax�;CE"0�zP�9sF�v�7�|�-� �!�4f+�,�]�K�-fM!=�B@!m8�!���2�BjB�U[1�9�1�1*q�'hM�Y�>�T��^�Y�8�gFS?ae�d.Y;�bi[f{@t�A��	�r'y��"��m��W�;�,i^T�N�tD:qq�;j'`�+�LQ""Fd2��8�(	'�6�p{�N6-�h�:�X�m�\\w�vw�.u:�g*p�B2Q;�Gj\��l�q^k�0VNN�*'6`�Z$6�{�St|
M1r8pz�Y-�c�n�o�bNBAllO$;ZyP=����c�)]6.5GO/�?c� Qf� .�0	�<D:��r�yW@5C�I�S^�Rs	�wso�T�_��<*8lG�D�|B�P�uMU�5-d/W&Aaep*=*?|��J_�$2LL<TQaikiUPOhB	*b�j�id�?9�/#�Sb�2���Q�
tNV�U
�t^vD?�qf<��9Sp�,��/+m
R]�a�-��@�/V%�L�59u4a�H�2M�{R
Nt$�^X�4.�FI�B)�K�(�M�9�P�fKB�
�hQ0�R�&8c�
�`�7{�j��k�w�3(�i%z�#�3�@�=	
Wo74gig�x��e�mb>UN�7y?MA�W�H�0�s�o�=�$FOQ xrG>6�n|>72�C�+t�6S(�Q�*v_�.�a�,2.��[�FS�&AppService_Disabled0AppService_MultiplePaths,AppService_RequiredSSL=BAppService_UnknownProfilePropertyb<ApplicationServiceManager_Path�2ArgumentMustBeCurrentUser�$ArgumentMustBeNull�HAsyncPostBackTrigger_CannotFindEvent<AsyncPostBackTrigger_EventNamenBAsyncPostBackTrigger_InvalidEventE,AttributeNotRecognized� Category_Sorting:ClientService_BadJsonResponse4Common_ArgumentInvalidTypeA>Common_GreaterThanOrEqualToZero_lCommon_GreaterThanOrEqualToZeroAndLessThanOrEqualToOne�$Common_NullOrEmpty�.Common_PageCannotBeNull�8Common_ScriptManagerRequiredb@CompositeScriptReference_Scripts�VConvertersCollection_NotJavaScriptConverterD@ConvertersCollection_UnknownType}PDataBoundControlHelper_NoNamingContainer�,DataPagerField_Visible:DataPager_ControlIsntPageableE DataPager_Fields6DataPager_NoNamingContainer�BDataPager_NoPageableItemContainer,FDataPager_PagePropertiesCannotBeSet�$DataPager_PageSize2NDataPager_PageableItemContainerNotFounds0DataPager_PagedControlID�4DataPager_QueryStringField�pDataSourceControlExtender_TargetControlIDMustBeSpecifiedN	~DataSourceControlExtender_TargetControlMustImplementIDataSourcer	VDynamicControlBase_ConvertEmptyStringToNull�	8DynamicControlBase_DataField�	FDynamicControlBase_DataFormatString<
:DynamicControlBase_HtmlEncodeo
DDynamicControlBase_NullDisplayText�
2DynamicControlBase_UIHint�
DDynamicControlBase_ValidationGroup>\DynamicFilterRepeater_DynamicFilterContainerId�dDynamicNavigatorDataSource_NoAccessibleTablesFound�ZDynamicNavigatorDataSource_NoModelsRegisteredRVDynamicNavigatorDataSource_NoTablesInModelsx^ExpressionParser_AmbiguousConstructorInvocation�VExpressionParser_AmbiguousIndexerInvocation�TExpressionParser_AmbiguousMethodInvocation
VExpressionParser_ArgsIncompatibleWithLambdaB
PExpressionParser_BothTypesConvertToOtheru
FExpressionParser_CannotConvertValue�
hExpressionParser_CannotIndexMultipleDimensionalArray�
XExpressionParser_CloseBracketOrCommaExpected TExpressionParser_CloseParenOrCommaExpected5ZExpressionParser_CloseParenOrOperatorExpectedJ<ExpressionParser_ColonExpectedd<ExpressionParser_DigitExpectedrNExpressionParser_DotOrOpenParenExpected�HExpressionParser_DuplicateIdentifier�FExpressionParser_ExpressionExpected�NExpressionParser_ExpressionTypeMismatch�HExpressionParser_FirstExprMustBeBoolFExpressionParser_IdentifierExpected0JExpressionParser_IifRequiresThreeArgsEHExpressionParser_IncompatibleOperandrJExpressionParser_IncompatibleOperands�BExpressionParser_InvalidCharacter�PExpressionParser_InvalidCharacterLiteral�:ExpressionParser_InvalidIndex1LExpressionParser_InvalidIntegerLiteral\FExpressionParser_InvalidRealLiteral{:ExpressionParser_MethodIsVoid�NExpressionParser_MethodsAreInaccessible�@ExpressionParser_MissingAsClause�VExpressionParser_NeitherTypeConvertsToOtherLExpressionParser_NoApplicableAggregateWHExpressionParser_NoApplicableIndexer�FExpressionParser_NoApplicableMethod�8ExpressionParser_NoItInScope�LExpressionParser_NoMatchingConstructor�HExpressionParser_OpenBracketExpectedDExpressionParser_OpenParenExpected+8ExpressionParser_SyntaxError9<ExpressionParser_TokenExpectedGLExpressionParser_TypeHasNoNullableFormUDExpressionParser_UnknownIdentifiervNExpressionParser_UnknownPropertyOrField�TExpressionParser_UnterminatedStringLiteral�:Expressions_DataFieldRequired�bExtenderControl_TargetControlDifferentUpdatePanel�>ExtenderControl_TargetControlIDJHExtenderControl_TargetControlIDEmptymLExtenderControl_TargetControlIDInvalid�0FilterRepeater_TableName4JSON_ArrayTypeNotSupported�JSON_BadEscape�<JSON_CannotConvertObjectToType�2JSON_CannotCreateListTypeBJSON_CannotSerializeMemberGeneric>,JSON_CircularReferencel.JSON_DepthLimitExceeded�:JSON_DeserializerTypeMismatch�>JSON_DictionaryTypeNotSupported	,JSON_ExpectedOpenBracez*JSON_IllegalPrimitive�(JSON_InvalidArrayEnd�8JSON_InvalidArrayExpectComma�6JSON_InvalidArrayExtraComma,JSON_InvalidArrayStart?(JSON_InvalidEnumTypeg2JSON_InvalidMaxJsonLength�,JSON_InvalidMemberName$JSON_InvalidObjectA4JSON_InvalidRecursionLimitq4JSON_MaxJsonLengthExceeded�$JSON_NoConstructor@(JSON_StringNotQuotedy.JSON_UnterminatedString�4JSON_ValueTypeCannotBeNull�dLinqDataSourceValidationException_ValidationFailed�HLinqDataSourceView_CannotConvertType�RLinqDataSourceView_ContextTypeNameChanged�TLinqDataSourceView_ContextTypeNameNotFound5\LinqDataSourceView_ContextTypeNameNotSpecified�JLinqDataSourceView_DeleteNotSupported�\LinqDataSourceView_EnableObjectTrackingChangedBXLinqDataSourceView_GroupByNotSupportedOnEdit�JLinqDataSourceView_InsertNotSupported.NLinqDataSourceView_InsertRequiresValues�JLinqDataSourceView_InvalidContextType�TLinqDataSourceView_InvalidOrderByFieldNamekNLinqDataSourceView_InvalidParameterName�VLinqDataSourceView_InvalidTablePropertyType	TLinqDataSourceView_OrderByAlreadySpecified�^LinqDataSourceView_OrderGroupsByRequiresGroupBy RLinqDataSourceView_OriginalValuesNotFound� FLinqDataSourceView_PagingNotHandledj!PLinqDataSourceView_ParametersMustBeNamed-"\LinqDataSourceView_SelectNewNotSupportedOnEdit�"LLinqDataSourceView_TableCannotBeStatic#FLinqDataSourceView_TableNameChanged�#HLinqDataSourceView_TableNameNotFound$PLinqDataSourceView_TableNameNotSpecifiedu$JLinqDataSourceView_UpdateNotSupported�$FLinqDataSourceView_ValidationFailed?%PLinqDataSourceView_WhereAlreadySpecifiedw%PLinqDataSource_AutoGenerateOrderByClause�%LLinqDataSource_AutoGenerateWhereClause3&.LinqDataSource_AutoPage�&.LinqDataSource_AutoSort�&:LinqDataSource_ContextCreated�&<LinqDataSource_ContextCreatingV'>LinqDataSource_ContextDisposing�'<LinqDataSource_ContextTypeName�'>LinqDataSource_DeleteParameters((,LinqDataSource_Deleted�(.LinqDataSource_Deleting�(4LinqDataSource_Description$)4LinqDataSource_DisplayName�)6LinqDataSource_EnableDelete�)6LinqDataSource_EnableInsert�)FLinqDataSource_EnableObjectTracking�)6LinqDataSource_EnableUpdateU*,LinqDataSource_GroupBy�*@LinqDataSource_GroupByParameters�*>LinqDataSource_InsertParameters"+.LinqDataSource_Inserted�+0LinqDataSource_Inserting�+<LinqDataSource_InvalidViewName,,LinqDataSource_OrderBy�,@LinqDataSource_OrderByParameters�,8LinqDataSource_OrderGroupsByA-LLinqDataSource_OrderGroupsByParameters�-*LinqDataSource_Select.>LinqDataSource_SelectParametersa..LinqDataSource_Selected�.0LinqDataSource_Selecting�.ZLinqDataSource_StoreOriginalValuesInViewState/0LinqDataSource_TableName�/>LinqDataSource_UpdateParameters�/,LinqDataSource_Updatedo0.LinqDataSource_Updating�0(LinqDataSource_Where�0<LinqDataSource_WhereParameters#1LListViewPagedDataSource_CannotGetCountr1fListViewPagedDataSource_EnumeratorMoveNextNotCalled�1@ListView_AlternatingItemTemplate
2HListView_ContainerNameMustNotBeEmpty72BListView_ConvertEmptyStringToNull\2*ListView_DataKeyNames�2HListView_DataKeyNamesMustBeSpecified�2"ListView_DataKeys�3LListView_DataSourceDoesntSupportPaging�3jListView_DataSourceMustBeCollectionWhenNotDataBinding4$ListView_EditIndexo4"ListView_EditItem�42ListView_EditItemTemplate�44ListView_EmptyDataTemplate�44ListView_EmptyItemTemplaten5LListView_EnableDataBoundControlManager�5<ListView_EnableModelValidationC6BListView_EnablePersistedSelection�62ListView_GroupContainerID�6.ListView_GroupItemCount+7LListView_GroupItemCountNoGroupTemplatel7>ListView_GroupSeparatorTemplate�7,ListView_GroupTemplate78&ListView_InsertItem[86ListView_InsertItemPosition�86ListView_InsertItemTemplate�8>ListView_InsertTemplateRequired�8,ListView_InvalidCancelb9.ListView_InvalidCommand�9,ListView_InvalidDelete�9(ListView_InvalidEdit:,ListView_InvalidInsertK:,ListView_InvalidSelect�:,ListView_InvalidUpdate�:4ListView_ItemPlaceholderID ;<ListView_ItemSeparatorTemplatex;*ListView_ItemTemplate�;:ListView_ItemTemplateRequired�;ListView_Items�;4ListView_ItemsNotDataItems<.ListView_LayoutTemplate]<BListView_Missing_VirtualItemCount�<NListView_NeedICollectionOrTotalRowCount=6ListView_NoGroupPlaceholder�=*ListView_NoInsertItem�>4ListView_NoItemPlaceholder�>"ListView_NullViewj?0ListView_OnItemCanceling�?,ListView_OnItemCommand�?,ListView_OnItemCreated"@0ListView_OnItemDataBoundB@,ListView_OnItemDeletedl@.ListView_OnItemDeleting�@,ListView_OnItemEditing�@.ListView_OnItemInserted%A0ListView_OnItemInsertingdA,ListView_OnItemUpdated�A.ListView_OnItemUpdating�A0ListView_OnLayoutCreated#B@ListView_OnPagePropertiesChangedQBBListView_OnPagePropertiesChanging�B>ListView_OnSelectedIndexChanged�B@ListView_OnSelectedIndexChangingC"ListView_OnSortedgC$ListView_OnSorting�C`ListView_PersistedSelectionRequiresDataKeysNames�C,ListView_SelectedIndex:D:ListView_SelectedItemTemplateeD,ListView_SortDirection�D.ListView_SortExpression�D4ListView_StyleNotSupportedEHListView_StylePropertiesNotSupportedEE.ListView_UnhandledEvent�EdMethodExpression_ChangingTheReturnTypeIsNotAllowed�EfMethodExpression_DataSourceMustBeIDynamicDataSource}F^MethodExpression_FirstParamterMustBeCorrectType�FFMethodExpression_MethodMustBeStaticGTMethodExpression_MethodNameMustBeSpecified"G>MethodExpression_MethodNotFoundCGDMethodExpression_ParameterNotFound`GNNextPrevPagerField_DefaultFirstPageText�GLNextPrevPagerField_DefaultLastPageText�GLNextPrevPagerField_DefaultNextPageText�GTNextPrevPagerField_DefaultPreviousPageText�GJNextPreviousPagerField_ButtonCssClass�GBNextPreviousPagerField_ButtonType�GPNextPreviousPagerField_FirstPageImageUrl(HHNextPreviousPagerField_FirstPageTextsHNNextPreviousPagerField_LastPageImageUrl�HFNextPreviousPagerField_LastPageText�HNNextPreviousPagerField_NextPageImageUrlIFNextPreviousPagerField_NextPageTextNIVNextPreviousPagerField_PreviousPageImageUrlqINNextPreviousPagerField_PreviousPageText�IhNextPreviousPagerField_RenderDisabledButtonsAsLabels�IzNextPreviousPagerField_RenderNonBreakingSpacesBetweenControls6JTNextPreviousPagerField_ShowFirstPageButton~JRNextPreviousPagerField_ShowLastPageButton�JRNextPreviousPagerField_ShowNextPageButton�JZNextPreviousPagerField_ShowPreviousPageButton9K:NumericPagerField_ButtonCount{K8NumericPagerField_ButtonType�KTNumericPagerField_CurrentPageLabelCssClassLJNumericPagerField_DefaultNextPageTextNLRNumericPagerField_DefaultPreviousPageTextSLDNumericPagerField_NextPageImageUrlXL<NumericPagerField_NextPageText�LXNumericPagerField_NextPreviousButtonCssClass�LNNumericPagerField_NumericButtonCssClass�LLNumericPagerField_PreviousPageImageUrl3MDNumericPagerField_PreviousPageText�MpNumericPagerField_RenderNonBreakingSpacesBetweenControls�M>OfTypeExpression_CannotFindType�MJOfTypeExpression_TypeNameNotSpecifiedYNhPageRequestManager_RegisterDataItemInNonAsyncRequest�NPPageRequestManager_RegisterDataItemTwice�N@PagerFieldCollection_InvalidType&OJPagerFieldCollection_InvalidTypeIndexGOFParseException_ParseExceptionFormateOlProfileServiceManager_LoadProperitesWithNonDefaultPathyOHProfileServiceManager_LoadProperties�O<ProxyGenerator_UnsupportedTypeP2ProxyHelper_BadStatusCode9PdQueryExtender_DataSourceMustBeIQueryableDataSource�P2QueryExtender_Expressions�PHRangeExpression_MaximumValueRequiredQHRangeExpression_MinimumValueRequired/QPRangeExpression_RangeTypeMustBeSpecifiedSQ8RoleServiceManager_LoadRoles�Q\RoleServiceManager_LoadRolesWithNonDefaultPath�Q@RoleService_RoleProviderNotFoundRRDRoleService_RolesFeatureNotEnableduRJScriptControlDescriptor_IDNotSettable�RbScriptControlManager_ExtenderControlNotRegistered*SRScriptControlManager_NoTargetControlTypes�ShScriptControlManager_RegisterExtenderControlTooEarlykTfScriptControlManager_RegisterExtenderControlTooLate�TdScriptControlManager_RegisterScriptControlTooEarly�TbScriptControlManager_RegisterScriptControlTooLateU^ScriptControlManager_ScriptControlNotRegisteredQUZScriptControlManager_TargetControlTypeInvalid�UFScriptManager_AjaxFrameworkAssemblylV>ScriptManager_AjaxFrameworkMode�VNScriptManager_AllowCustomErrorsRedirectW@ScriptManager_AsyncPostBackError[WNScriptManager_AsyncPostBackErrorMessage�WhScriptManager_AsyncPostBackNotInPartialRenderingMode�XDScriptManager_AsyncPostBackTimeout�YFScriptManager_AuthenticationService�YrScriptManager_CannotAddHistoryPointOutsideOfAsyncPostBack(ZlScriptManager_CannotAddHistoryPointWithHistoryDisablednZVScriptManager_CannotChangeAjaxFrameworkMode�ZFScriptManager_CannotChangeEnableCdn�ZVScriptManager_CannotChangeEnableCdnFallback>[NScriptManager_CannotChangeEnableHistory�[`ScriptManager_CannotChangeEnablePartialRendering�[fScriptManager_CannotChangeEnableScriptGlobalization\dScriptManager_CannotChangeSupportsPartialRendering�\RScriptManager_CannotRegisterBothPostBacks�\~ScriptManager_CannotRegisterScriptInMultipleCompositeReferences�]vScriptManager_CannotSetSupportsPartialRenderingWhenDisabled�]FScriptManager_ClientNavigateHandlerO^:ScriptManager_CompositeScript�^4ScriptManager_EmptyPageUrl_.ScriptManager_EnableCdn�_>ScriptManager_EnableCdnFallback`6ScriptManager_EnableHistorym`>ScriptManager_EnablePageMethods�`HScriptManager_EnablePartialRendering�`NScriptManager_EnableScriptGlobalization�aLScriptManager_EnableScriptLocalization�aLScriptManager_EnableSecureHistoryStateKbFScriptManager_FrameworkFailedToLoad(cPScriptManager_InvalidControlRegistration\cBScriptManager_LoadScriptsBeforeUIdHScriptManager_MustHaveGreaterVersionzd,ScriptManager_Navigate?eDScriptManager_OnlyOneScriptManager�e4ScriptManager_PageUntitled�e8ScriptManager_ProfileService�eZScriptManager_ResolveCompositeScriptReference)fHScriptManager_ResolveScriptReference�f2ScriptManager_RoleService�f0ScriptManager_ScriptMode-g0ScriptManager_ScriptPathzg*ScriptManager_Scripts�g,ScriptManager_Services�hLScriptManager_UpdatePanelNotRegisteredRi0ScriptReference_Assembly)jHScriptReference_AssemblyRequiresNamecj@ScriptReference_IgnoreScriptPath�jPScriptReference_InvalidReleaseScriptName�jPScriptReference_InvalidReleaseScriptPath+k(ScriptReference_NamekkPScriptReference_NameAndPathCannotBeEmpty�kDScriptReference_NotifyScriptLoaded�k(ScriptReference_PathlXScriptReference_ResourceRequiresAjaxAssembly5lDScriptReference_ResourceUICultures�l4ScriptReference_ScriptModeRmTScriptRegistrationManager_ControlNotOnPage�mLScriptRegistrationManager_InvalidChars�mHScriptRegistrationManager_NoCloseTag{n@ScriptRegistrationManager_NoTags�nHScriptResourceDefinition_InvalidPath4obScriptResourceDefinition_NameAndPathCannotBeEmpty�o\ScriptResourceHandler_DuplicateScriptResources�oHScriptResourceHandler_InvalidRequest5pPScriptResourceHandler_ResourceUrlTooLongbpLScriptResourceHandler_TypeNameMismatchNqJScriptResourceHandler_UnknownResource�qDSearchExpression_ParameterRequired�q:ServiceReference_InlineScript�q*ServiceReference_PathFrDServiceReference_PathCannotBeEmptyqr$ServiceUriNotFound�rFSqlHelper_SqlEverywhereNotInstalled�rBTemplatePagerField_OnPagerCommandxs@TemplatePagerField_PagerTemplate�sBTemplatePagerField_UnhandledEvent�sFTimer_IntervalMustBeGreaterThanZerot"Timer_TimerEnableAt&Timer_TimerIntervalbtTimer_TimerTick�tBUnhandledExceptionEventLogMessage�tFUpdatePanelControlTrigger_ControlID�tRUpdatePanelControlTrigger_ControlNotFounduJUpdatePanelControlTrigger_NoControlIDeuRUpdatePanel_CannotModifyControlCollection�uHUpdatePanel_CannotSetContentTemplatenv<UpdatePanel_ChildrenAsTriggers�vVUpdatePanel_ChildrenTriggersAndUpdateAlwaysCw,UpdatePanel_RenderMode�wZUpdatePanel_SetPartialRenderingModeCalledOncex(UpdatePanel_Triggers:x:UpdatePanel_UpdateConditional�x,UpdatePanel_UpdateMode�x2UpdatePanel_UpdateTooLate�yLUpdateProgress_AssociatedUpdatePanelID�y6UpdateProgress_DisplayAfterzDUpdateProgress_DisplayAfterInvalidWz8UpdateProgress_DynamicLayout�z8UpdateProgress_NoUpdatePanel�z>UpdateProgress_ProgressTemplate{,UserIsNotAuthenticated>{lWebResourceUtil_AssemblyDoesNotContainDebugWebResourced{lWebResourceUtil_AssemblyDoesNotContainEmbeddedResource*|pWebResourceUtil_AssemblyDoesNotContainReleaseWebResource�|�WebResourceUtil_SystemWebExtensionsDoesNotContainReleaseWebResource�| WebService_Errord}HWebService_InvalidGenerateScriptType�}FWebService_InvalidInlineVirtualPath�~:WebService_InvalidVerbRequestN@WebService_InvalidWebServiceCall�>WebService_InvalidXmlReturnType�*WebService_MissingArgN�FWebService_NoScriptServiceAttribute��6WebService_NoWebServiceData�NWebService_NoWebServiceDataInlineScript�0WebService_RedirectError��6WebService_UnknownWebMethod؁{0} is disabled.)Cannot specify more than one unique path.#SSL is required for this operation.Unknown profile property '{0}'.&Specifies the path to the web service.9Argument must be null, empty or same as the current user.Argument must be null or empty.eCould not find an event named '{0}' on associated control '{1}' for the trigger in UpdatePanel '{2}'.�The event that the trigger will hook up to determine whether to refresh the UpdatePanel. If the property is not set then the UpdatePanel will be refreshed only if the postback was initiated by the target control.�The '{0}' event on associated control '{1}' for the trigger in UpdatePanel '{2}' does not match the standard event handler signature.?The following configuration attribute was not recognized: '{0}'Sorting(The server method returned invalid data.Value must be of type '{0}'.)Value must be greater than or equal to 0.EValue must be greater than or equal to 0 and less than or equal to 1.Value cannot be null or empty.oPage cannot be null. Please ensure that this operation is being performed in the context of an ASP.NET request.The control with ID '{0}' requires a ScriptManager on the page. The ScriptManager must appear before any controls that need it._A collection of script references that the CompositeScriptReference should include in the page.7Type: '{0}' does not inherits from JavaScriptConverter.Type: '{0}' cannot be found.~The {0} control '{1}' does not have a naming container.  Ensure that the control is added to the page before calling DataBind.(Whether the data pager field is visible.8Control '{0}' does not implement IPageableItemContainer."The collection of DataPagerFields.�The DataPager control '{0}' does not have a naming container.  Ensure that the DataPager is added to the page before calling DataBind.�No IPageableItemContainer was found. Verify that either the DataPager is inside an IPageableItemContainer or PagedControlID is set to the control ID of an IPageableItemContainer.OPage properties cannot be set because no IPageableItemContainer has been found.?The number of records displayed in a page by the paged control.'IPageableItemContainer '{0}' not found.1The ID of the control this DataPager should page.}The name of the query string field for the current page index. The pager will use the query string when this property is set."TargetControlID must be specified./TargetControl '{0}' must implement IDataSource.JSpecifies whether the field value should be converted to a null reference.KSpecifies the name of the data field to which the DynamicControl will bind.1Specifies the display format for the field value.ISpecifies whether the field value is HTML-encoded before it is displayed.=Specifies the caption displayed when the field value is null.CSpecifies the user control with which the field should be rendered.eSpecifies the name of the validation group to which validation controls in the DynamicControl belong.DThe ID of the DynamicFilter control that exists in the ItemTemplate.eNo accessible tables found. Make sure scaffolds are enabled or custom templates exist for your model.$No data models have been registered.:There are no tables defined in the registered data models.)Ambiguous invocation of '{0}' constructor-Ambiguous invocation of indexer in type '{0}'2Ambiguous invocation of method '{0}' in type '{1}'1Argument list incompatible with lambda expression6Both of the types '{0}' and '{1}' convert to the other7A value of type '{0}' cannot be converted to type '{1}'8Indexing of multiple-dimensional arrays is not supported']' or ',' expected')' or ',' expected')' or operator expected':' expectedDigit expected'.' or '(' expected/The identifier '{0}' was defined more than onceExpression expected!Expression of type '{0}' expected.The first expression must be of type 'Boolean'Identifier expected+The 'iif' function requires three arguments3Operator '{0}' incompatible with operand type '{1}'>Operator '{0}' incompatible with operand types '{1}' and '{2}'Syntax error '{0}'4Character literal must contain exactly one character)Array index must be an integer expressionInvalid integer literal '{0}'Invalid real literal '{0}'2Method '{0}' in type '{1}' does not return a value(Methods on type '{0}' are not accessible$Expression is missing an 'as' clause:Neither of the types '{0}' and '{1}' converts to the other+No applicable aggregate method '{0}' exists*No applicable indexer exists in type '{0}'/No applicable method '{0}' exists in type '{1}'No 'it' is in scope%No matching constructor in type '{0}''[' expected'(' expectedSyntax error{0} expectedType '{0}' has no nullable formUnknown identifier '{0}'/No property or field '{0}' exists in type '{1}'Unterminated string literalDataField must be specified.LAn extender can't be in a different UpdatePanel than the control it extends.!Identifies the control to extend.MThe TargetControlID of '{0}' is not valid. The value cannot be null or empty.VThe TargetControlID of '{0}' is not valid. A control with ID '{1}' could not be found.xSpecifies an override for the table name used by the FilterRepeater. By default the table is inferred from the page URL.<Type '{0}' is not supported for deserialization of an array.Unrecognized escape sequence.1Cannot convert object of type '{0}' to type '{1}'Cannot create instance of {0}.,Cannot serialize member '{0}' on type '{1}'.LA circular reference was detected while serializing an object of type '{0}'.RecursionLimit exceeded.3Cannot deserialize object graph into type of '{0}'.oType '{0}' is not supported for serialization/deserialization of a dictionary, keys must be strings or objects.'Invalid object passed in, '{' expected.Invalid JSON primitive: {0}.&Invalid array passed in, ']' expected.&Invalid array passed in, ',' expected.,Invalid array passed in, extra trailing ','.&Invalid array passed in, '[' expected.�Enums based on System.Int64 or System.UInt64 are not JSON-serializable because JavaScript does not support the necessary precision.!Value must be a positive integer./Invalid object passed in, member name expected..Invalid object passed in, ':' or '}' expected.*RecursionLimit must be a positive integer.�Error during serialization or deserialization using the JSON JavaScriptSerializer. The length of the string exceeds the value set on the maxJsonLength property.7No parameterless constructor defined for type of '{0}'.(Invalid string passed in, '\"' expected.Unterminated string passed in.$Cannot convert null to a value type.�Failed to set one or more properties on the data object.  Ensure that the input values are valid and can be converted to the corresponding property types.<Cannot convert value of parameter '{0}' from '{1}' to '{2}'.oThe ContextTypeName property of LinqDataSource '{0}' cannot be changed after the data context has been created.ZCould not find the type specified in the ContextTypeName property of LinqDataSource '{0}'.VThe ContextTypeName property of LinqDataSource '{0}' must specify a data context type.WLinqDataSource '{0}' does not support the Delete operation unless EnableDelete is true.tThe EnableObjectTracking property of LinqDataSource '{0}' cannot be changed after the data context has been created.tLinqDataSource '{0}' does not support the GroupBy property when the Delete, Insert or Update operations are enabled.WLinqDataSource '{0}' does not support the Insert operation unless EnableInsert is true.aLinqDataSource '{0}' has no values to insert. Check that the 'values' dictionary contains values.The data context used by LinqDataSource '{0}' must extend DataContext when the Delete, Insert or Update operations are enabled.FThe value '{0}' for parameter '{1}' is not a valid OrderBy field name.TThe name for parameter '{0}' on LinqDataSource '{1}' is not a valid identifier name.�The table property used by LinqDataSource '{0}' must be a generic type with one parameter that extends ITable, when the Delete, Insert or Update operations are enabled.bLinqDataSource '{0}' does not support the OrderBy property when AutoGenerateOrderByClause is true.mLinqDataSource '{0}' does not support the OrderGroupsBy property when the GroupsBy property has not been set.�Could not find a row that matches the given keys in the original values stored in ViewState.  Ensure that the 'keys' dictionary contains unique key values that correspond to a row returned from the previous Select operation.�AutoPage is disabled on LinqDataSource {0} but paging has not been handled.  Ensure you have set the LinqDataSourceSelectArguments.Arguments.TotalRowCount property to the total number of rows.\Parameters for LinqDataSource '{0}' that are not used for AutoGenerateOrderBy must be named.sLinqDataSource '{0}' does not support the Select property when the Delete, Insert or Update operations are enabled.�Member '{0}' on the data context type '{1}' of LinqDataSource '{2}' is not a valid table. For Insert, Update and Delete the table must not be a static member.iThe TableName property of LinqDataSource '{0}' cannot be changed after the data context has been created.gCould not find a property or field called '{0}' on the data context type '{1}' of LinqDataSource '{2}'.oThe TableName property of LinqDataSource '{0}' must specify a table property or field on the data context type.WLinqDataSource '{0}' does not support the Update operation unless EnableUpdate is true.6Failed to set one or more properties on type {0}.  {1}^LinqDataSource '{0}' does not support the Where property when AutoGenerateWhereClause is true.ZSpecifies whether to automatically generate the OrderBy clause from the OrderByParameters.VSpecifies whether to automatically generate the Where clause from the WhereParameters..Specifies whether data is automatically paged./Specifies whether data is automatically sorted.hEvent raised after the context is created unless a query result is specified during the Selecting event.iEvent raised before the context is created unless a query result is specified during the Selecting event.,Event raised before the context is disposed.7The data context type that contains the table property.�Collection of parameters used during the Delete operation. These parameters are merged with the parameters provided by data-bound controls.5Event raised after the Delete operation is completed.5Event raised before the Delete operation is executed.dUse LINQ to connect to a DataContext or object in the Bin or App_Code directory for the application.LINQ2Specifies whether the Delete operation is enabled.2Specifies whether the Insert operation is enabled.[Specifies whether ObjectTracking should be disabled on read-only Linq to SQL data contexts.2Specifies whether the Update operation is enabled.FThe expression passed to the GroupBy operator during the Select query.OCollection of parameters used for the GroupBy operator during the Select query.�Collection of parameters used during the Insert operation. These parameters are merged with the parameters provided by data-bound controls.5Event raised after the Insert operation is completed.5Event raised before the Insert operation is executed.�LinqDataSource '{0}' only supports a single view named '{1}'. You may also leave the view name empty for the default view to be chosen.FThe expression passed to the OrderBy operator during the Select query.OCollection of parameters used for the OrderBy operator during the Select query.�The expression passed to the OrderBy operator used for ordering groups after a GroupBy has been performed during the Select query.UCollection of parameters used for the OrderGroupsBy operator during the Select query.BThe expression defining a projection used during the Select query.HCollection of parameters used in the projection during the Select query.5Event raised after the Select operation is completed.5Event raised before the Select operation is executed.�Specifies whether to store original data values in ViewState.  This property is used for conflict detection during Update and Delete operations.3The name of the table property on the data context.�Collection of parameters used during the Update operation. These parameters are merged with the parameters provided by data-bound controls.5Event raised after the Update operation is completed.5Event raised before the Update operation is executed.DThe expression passed to the Where operator during the Select query.MCollection of parameters used for the Where operator during the Select query.KCannot compute Count for a data source that does not implement ICollection.LYou must call MoveNext on IEnumerator before accessing the Current property.(The template used for alternating items.#The value of {0} must not be empty.\Whether the ListView treats empty strings as null when the value is extracted from the item.8A comma-separated list of key fields in the data source.�Data keys must be specified on ListView '{0}' before the selected data keys can be retrieved.  Use the DataKeyNames property to specify data keys.(The collection of data key field values.YThe data source '{0}' does not support server-side paging and it returned non-ICollection_Data source must implement ICollection when calling CreateChildControls with dataBinding=false.)The index of the item shown in edit mode.0The ListViewItem that is currently being edited.)The template used for items in edit mode.uThe template used when no data is returned from the data source. This template replaces the LayoutTemplate when used.oThe template used in the GroupTemplate when the number of remaining data items is less than the GroupItemCount.bWhether the data bound control will register itself with a data bound control manager on the page.PWhether page validation will be performed after validation is done in the model.;Whether selection should be based on DataKeys or row index.WThe ID of the server control that will be replaced with instances of the GroupTemplate.?The number of items that are rendered inside the GroupTemplate.�ListView '{0}' has a GroupItemCount specified on it but no GroupTemplate. A GroupTemplate must be present for ListView to render groups.>The template used for group separators between GroupTemplates."The template used for item groups.2The ListViewItem that is currently being inserted.4The position of the insert item within the ListView.+The template used for items in insert mode.nAn InsertItemTemplate must be defined on ListView '{0}' if InsertItemPosition is set to FirstItem or LastItem.MCancel can only be called from the currently-edited record or an insert item.8Custom commands can only be called on a valid data item./Delete can only be called on a valid data item.-Edit can only be called on a valid data item.qInsert can only be called on an insert item. Ensure only the InsertTemplate has a button with CommandName=Insert./Select can only be called on a valid data item./Update can only be called on a valid data item.VThe ID of the server control that will be replaced with instances of the ItemTemplate.&The template used for separator items.The template used for items.2An ItemTemplate must be defined on ListView '{0}'. The collection of visible items.GListViewItems that have type DataItem must be of type ListViewDataItem.*The template used for the ListView layout.�ListView with id '{0}' must have a data source that either implements ICollection or can perform data source paging if AllowPaging is true.�If a data source does not return ICollection and cannot return the total row count, it cannot be used by the {0} to implement server-side paging.�A group placeholder must be specified on ListView '{0}' when the GroupTemplate is defined. Specify a group placeholder by setting its ID property to "{1}". The group placeholder control must also specify runat="server".An insert item wasn't found.�An item placeholder must be specified on ListView '{0}'. Specify an item placeholder by setting a control's ID property to "{1}". The item placeholder control must also specify runat="server".BThe data source retrieved by '{0}' returned a null DataSourceView.;Fires when a Cancel event is generated within the ListView.5Fires when an event is generated within the ListView.Fires when an item is created.(Fires after an item has been data-bound.<Fires after a Delete Command is executed on the data source.=Fires before a Delete Command is executed on the data source.:Fires when an Edit event is generated within the ListView.=Fires after an Insert Command is executed on the data source.>Fires before an Insert Command is executed on the data source.=Fires after an Update Command is executed on the data source.>Fires before an Update Command is executed on the data source.,Fires when the ListView's layout is created.9Fires when the ListView's paging properties have changed.9Fires when the ListView's paging properties are changing.PFires when an item is selected in the ListView, after the selection is complete.LFires when an item is selected in the ListView, before the item is selected.IFires when a field is sorted in the ListView, after the sort is complete.EFires when a field is sorted in the ListView, before the sort occurs.?DataKeyNames must be specified for persisted selection to work.)The index of the currently selected item.2The template used for the currently selected item.)The direction in which to sort the field.NSort expression used to sort the data source to which the ListView is binding./Style properties are not supported on ListView.zStyle properties are not supported on ListView.  Apply styling or CSS classes to the elements inside ListView's templates.9The ListView '{0}' raised event {1} which wasn't handled.Changing the result type of a query in a MethodExpression is not supported. Expected a return value of type 'IEnumerable<{0}>'.PThe DataSource must implement IDynamicDataSource for a format string to be used.3The first parameter of '{0}' must be of type '{1}'.Method '{0}' must be static.A MethodName must be specified.Method '{0}' was not found.:'{0}' has a parameter named '{1}' which was not specified.FirstLastNextPrevious7The CSS class applied to the next and previous buttons.4The type of button contained within the pager field.IThe URL of the image of the first page button if the ButtonType is Image."The text of the first page button.HThe URL of the image of the last page button if the ButtonType is Image.!The text of the last page button.HThe URL of the image of the next page button if the ButtonType is Image.!The text of the next page button.LThe URL of the image of the previous page button if the ButtonType is Image.%The text of the previous page button.NWhether disabled pager links should be rendered as labels rather than buttons.FWhether non-breaking spaces should be rendered between pager controls.=Whether the pager field should display the first page button.<Whether the pager field should display the last page button.<Whether the pager field should display the next page button.@Whether the pager field should display the previous page button.SThe maximum number of page number buttons that can be displayed by the pager field.4The type of button contained within the pager field.FThe CSS class applied to the label containing the current page number.......HThe URL of the image of the next page button if the ButtonType is Image.!The text of the next page button.7The CSS class applied to the next and previous buttons.3The CSS class applied to the numeric pager buttons.LThe URL of the image of the previous page button if the ButtonType is Image.%The text of the previous page button.FWhether non-breaking spaces should be rendered between pager controls.gCould not find the type '{0}' specified by the TypeName property of OfTypeExpression declared on '{1}'.UThe TypeName property of OfTypeExpression declared on '{0}' must specify a type name.=RegisterDataItem can only be called during an async postback.5The control '{0}' already has a data item registered.Object is not a DataPagerField.Type index is out of bounds.{0} (at index {1})VThe attribute 'LoadProperties' can only be used when using the default ProfileService.JSpecifies profile properties that should be rendered inline with the page.Type {0} is not supported.SError status code returned by the Web Service: {0}. Error details from service: {1}5DataSource '{0}' must implement IQueryableDataSource.DA collection of expressions that can be used with the QueryExtender."A maximum value must be specified."A minimum value must be specified.2A minimum and maximum RangeType must be specified.?Indicates whether user roles are rendered inline with the page.�For RoleService, 'loadRoles' property must be set to false when the 'path' property is set to a value different from the default value.!Role Provider could not be found..The Role Manager feature has not been enabled.�The 'ID' property on ScriptControlDescriptor is not settable. The client ID of a script control is always equal to its element ID.�Extender control '{0}' is not a registered extender control. Extender controls must be registered using RegisterExtenderControl() before calling RegisterScriptDescriptors().�Extender control type '{0}' does not have any attributes of type '{1}'. Extender control types must have at least one attribute of type '{1}'.9Extender controls may not be registered before PreRender.8Extender controls may not be registered after PreRender.7Script controls may not be registered before PreRender.6Script controls may not be registered after PreRender.�Script control '{0}' is not a registered script control. Script controls must be registered using RegisterScriptControl() before calling RegisterScriptDescriptors().qExtender control '{0}' cannot extend '{1}'. Extender controls of type '{2}' cannot extend controls of type '{3}'.NThe assembly the Microsoft ASP.NET AJAX Framework scripts are embedded within.NIndicates how Microsoft Ajax Framework scripts should be included on the page.MIndicates whether custom error redirects will occur during an async postback.mThis event is raised to allow customization of the error message sent to the client during an async postback.�The error message to be sent to the client when an unhandled exception occurs on the server. The property can be set declaratively in the page markup or during the ScriptManager's AsyncPostBackError event. If the value is empty the exception's message will be used.�The page is performing an async postback but the ScriptManager.SupportsPartialRendering property is set to false. Ensure that the property is set to true during an async postback.XThe timeout period in seconds for async postbacks. A value of zero indicates no timeout.@Contains preferences for the client side authentication service.DA history point can only be created during an asynchronous postback.BA history point can only be added if EnableHistory is set to true.ETheAjaxFrameworkMode property cannot be changed after the Init event.CThe EnableCdn property cannot be changed after the PreRender event.KThe EnableCdnFallback property cannot be changed after the PreRender event.BThe EnableHistory property cannot be changed after the Init event.KThe EnablePartialRendering property cannot be changed after the Init event.hThe EnableScriptGlobalization property cannot be changed during async postbacks or after the Init event.MThe SupportsPartialRendering property cannot be changed after the Init event.�Control with ID '{0}' cannot be registered through both RegisterAsyncPostBackControl and RegisterPostBackControl. This can happen if you have conflicting triggers associated with the target control.TA script reference cannot be included multiple times in composite script references.YThe SupportsPartialRendering property cannot be set when EnablePartialRendering is false.BSpecifies a client-side event handler name for the navigate event.rEnables the composition of individual script references into one to minimize the number of requests to the server.�The URL of an empty page that will be used to manage history on Internet Explorer. The script manager uses a built-in, resource-based page if this property is unspecified.UEnables ScriptManager to load scripts from a content delivery network when available._Enables ScriptManager to load scripts locally when the content delivery network is unavailable.FEnables ScriptManager to manage browser history on supported browsers.Enables page methods.�Enables asynchronous postbacks for the UpdatePanel control on supported browsers. To override the default browser support detection you can set the SupportsPartialRendering property.gEnables ScriptManager to add client-side globalization information to the page for the current culture.[Enables ScriptManager to generate localized versions of script files if they are available.�When true, the server-side history state is hashed using the same settings as ViewState. When false, the server history state is a clear-text string dictionary that can be modified by the end user by modifying the url.2ASP.NET Ajax client-side framework failed to load.�Control with ID '{0}' being registered through RegisterAsyncPostBackControl or RegisterPostBackControl must implement either INamingContainer, IPostBackDataHandler, or IPostBackEventHandler.[Specifies that script references should be loaded before the UI is rendered in the browser.�The assembly '{0}' is not a supported version of an ASP.NET AJAX Framework assembly. Make sure that the application references a version greater than '{1}' of an ASP.NET AJAX Framework assembly.^This event is raised during asynchronous postbacks when the server-side history state changes.>Only one instance of a ScriptManager can be added to the page.
Untitled Page9Contains preferences for the client side profile service.dThis event is raised to allow modifications to composite script references before they are rendered.ZThis event is raised to allow modifications to script references before they are rendered.@Contains preferences for the client side authentication service.KIndicates the type of scripts to load when more than one type is available.^Specifies that scripts should be loaded from this path instead of from assembly web resources.�A collection of script references that the ScriptManager should include in the page. The Scripts collections on the ScriptManager and ScriptManagerProxy controls are merged at runtime.�A collection of service references that the ScriptManager should include in the page. The Services collections on the ScriptManager and ScriptManagerProxy controls are merged at runtime.�Cannot unregister UpdatePanel with ID '{0}' since it was not registered with the ScriptManager. This might occur if the UpdatePanel was removed from the control tree and later added again, which is not supported.8The assembly that contains the script as a web resource.(Assembly cannot be defined without Name.\Indicates whether this script reference should ignore the ScriptManager.ScriptPath property.>'{0}' is not a valid script name.  The name must end in '.js'.>'{0}' is not a valid script path.  The path must end in '.js'.The name of the web resource.#Name and Path cannot both be empty.kSpecifies if the script resource loader should automatically append a script loaded notification statement.The path to the script.�The requested script resource '{0}' requires version '{1}' of the ASP.NET AJAX Framework. To use this resource, make sure that the application references version '{1}'.pA comma-delimited string of valid UI cultures supported by the path. ResourceUICultures is only valid with Path.KSpecifies the algorithm for choosing between the debug and release scripts.2The control must be in the control tree of a page.�The script tag registered for type '{0}' and key '{1}' has invalid characters outside of the script tags: {2}. Only properly formatted script tags can be registered.WThe script tag registered for type '{0}' and key '{1}' is missing a matching close tag.^The script tag registered for type '{0}' and key '{1}' does not contain any valid script tags.�Invalid path mapping '{0}'. A path in a ScriptResourceDefinition must be a non-relative virtual path or an encoded absolute URI.+ResourceName and Path cannot both be empty.OMore than one ScriptResourceAttribute points to script '{0}' in assembly '{1}'.+This is an invalid script resource request.�The resource URL cannot be longer than {0} characters. If using a CompositeScriptReference, reduce the number of ScriptReferences it contains, or combine them into a single static file and set the Path property to the location of it.NThe type names for the debug and release versions of resource {0} don't match.!Web resource '{0}' was not found.A search parameter is required.bIndicates whether this service reference should have its proxy script rendered inline in the page.)The path to the service being referenced.Path cannot be empty.3The serviceUri configuration setting was not found.�Unable to connect to the Microsoft SQL Everywhere Service using the specified connection string. Make sure that Microsoft SQL Server Everywhere is correctly installed on this computer.8Fires when an event is generated within the pager field.%The template used in the pager field.=The TemplatePagerField raised event {0} which wasn't handled.'The interval must be greater than zero.Enables raising of Tick events.1The duration between Tick events in milliseconds.4Occurs whenever the specified interval time elapses.$An unhandled exception has occurred. The trigger's target control ID.PA control with ID '{0}' could not be found for the trigger in UpdatePanel '{1}'.GThe ControlID property must be set on the trigger in UpdatePanel '{0}'.�The Controls property of UpdatePanel with ID '{0}' cannot be modified directly. To change the contents of the UpdatePanel modify the child controls of the ContentTemplateContainer property.bThe ContentTemplate of UpdatePanel with ID '{0}' cannot be changed after it has been instantiated.oIndicates whether postbacks coming from the UpdatePanel's child controls will cause the UpdatePanel to refresh.`ChildrenAsTriggers cannot be set to false when UpdateMode is set to Always on UpdatePanel '{0}'.aIndicates whether the UpdatePanel should render as a block tag (<div>) or an inline tag (<span>).0SetPartialRenderingMode can only be called once.FA collection of triggers that can cause the UpdatePanel to be updated.hThe Update method can only be called on UpdatePanel with ID '{0}' when UpdateMode is set to Conditional.�Indicates whether the UpdatePanel will refresh on every asynchronous postback or only as the result of a specific action, such as a call to UpdatePanel.Update().PThe Update method can only be called on UpdatePanel with ID '{0}' before Render.8UpdatePanel that this UpdateProgress is associated with.9Time in ms after which the ProgressTemplate is displayed.,DisplayAfter must be a non negative integer.ADetermines whether the progress template is dynamically rendered.7No UpdatePanel found for AssociatedUpdatePanelID '{0}'.;ProgressTemplate which is displayed during async postbacks.$You must log on to call this method.�Assembly '{0}' does not contain a Web resource with name '{1}'.  Setting the ScriptReference.ScriptMode property to ScriptMode.Auto or ScriptMode.Release will cause the release script to be used.rAssembly '{0}' contains a Web resource with name '{1}', but does not contain an embedded resource with name '{1}'.?Assembly '{0}' does not contain a Web resource with name '{1}'.�The assembly '{0}' does not contain a Web resource that has the name '{1}'. Make sure that the resource name is spelled correctly.*There was an error processing the request.�Using the GenerateScriptTypes attribute is not supported for types in the following categories: primitive types; DateTime; generic types taking more than one parameter; types implementing IEnumerable or IDictionary; interfaces; Abstract classes; classes without a public default constructor.�The path "{0}" is not supported. When InlineScript=true, the path should be a relative path pointing to the same web application as the current page.WAn attempt was made to call the method '{0}' using a {1} request, which is not allowed.=Invalid web service call, expected path info of /js/<Method>.fThe method '{0}' returns a value of type '{1}', which cannot be serialized as Xml. Original error: {2}=Invalid web service call, missing value for parameter: '{0}'.eOnly Web services with a [ScriptService] attribute on the class definition can be called from script.No web service found at: {0}.�No web service found at: {0}. This error can occur if a ServiceReference to a WCF service has InlineScript set to 'true'. For WCF services InlineScript should be 'false'.Authentication failed.Unknown web method {0}.*����lSystem.Resources.ResourceReader, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089#System.Resources.RuntimeResourceSetPADPADPg��(�V���/VM�f�8
q3{X��.PRM_CannotRegisterTwice PRM_MissingPanel>PRM_ParserError�PRM_ServerError� PRM_TimeoutErrorl<The PageRequestManager cannot be initialized more than once.xCould not find UpdatePanel with ID '{0}'. If it is being updated dynamically then it must be inside another UpdatePanel.9The message received from the server could not be parsed.wAn unknown error occurred while processing the request on the server. The status code returned from the server was: {0}The server request timed out.�����lSystem.Resources.ResourceReader, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089#System.Resources.RuntimeResourceSet5PADPADPI>�J�ɗ�]G��͎�9X���[�'��=��fh�ɂc�m���u�I�%F��N�̨�8�p��5����e�š�3E�J3������'1]��!"~%�~6(�t�(��!)�"/z�/��2މ�5\��;��>
vM@5��A��1L-ViL�+�O�� T�^�\u�]�UD`��dq��d�6�e;�^m�en��qPzKte��u�L�w��k%�H��Y�@��2�%����kuBP���J=�������J��l�\A��c�m8addHandlerCantBeUsedForError*appDuplicateComponentlargumentDomNode� argumentTypeName�&arrayParseBadFormatbadTypeNamewbaseNotAClass�*behaviorDuplicateName�boolTrueOrFalseN2cantAddNonFunctionhandlerp cantAddWithoutId�0cantBeCalledAfterDispose�cantSetId�(cantSetNameAfterInit&circularParentChain`BcomponentCantSetIdAfterAddedToApp�.componentCantSetIdTwice�*controlAlreadyDefined9(createComponentOnDomlcreateNoDom�$createNotComponent�elementNotFound(enumInvalidValueName> enumReservedNamel&enumValueNotInteger�&eventHandlerInvalid�.eventHandlerNotFunction2&expectedElementOrIdO^historyCannotAddHistoryPointWithHistoryDisabled4historyCannotEnableHistory�&historyMissingFrame� invalidNameSpace,methodNotFoundX,namespaceContainsClassz4namespaceContainsNonObject�notATypeName�notAnInterface	notObservable(	$observableConflictU	$propertyNotAnArray�	&propertyNotWritable�	.propertyNullOrUndefined�	"propertyUndefined
"referenceNotFoundE
*scriptLoadFailedDebuge
,scriptLoadFailedNoHead*stateFieldNameInvalidJ6stateMustBeStringDictionary�2stringFormatBraceMismatch�&stringFormatInvalid�&typeRegisteredTwiceundefinedEvent�urlTooLong
jCan't add a handler for the error event using this method. Please set the window.onerror property instead.HTwo components with the same id '{0}' can't be added to the application.+Value must be a DOM element or a text node.*Value is not the name of an existing type.fValue must be a valid string representation for an array. It must start with a '[' and end with a ']'.RValue is not the name of the type being registered or the name is a reserved word.Value is not a class.jA behavior with name '{0}' already exists or it is the name of an existing property on the target element. Value must be 'true' or 'false'.+Can't add a handler that is not a function..Can't add a component that doesn't have an id.Can't be called after dispose.,The id property can't be set on this object.CThe name property can't be set on this object after initialization.<The chain of control parents can't have circular references.\The id property of a component can't be set after it's been added to the Application object.;The id property of a component can't be set more than once.1A control is already associated with the element.EValue must be null for Components that are not Controls or Behaviors.2Value must not be null for Controls and Behaviors.'{0} does not derive from Sys.Component.,An element with id '{0}' could not be found.,'{0}' is not a valid name for an enum value.B'{0}' is a reserved name that can't be used as an enum value name.:An enumeration definition can only contain integer values.DHandler was not added through the Sys.UI.DomEvent.addHandler method.Handler must be a function..Value must be a DOM element or DOM element Id.BA history point can only be added if enableHistory is set to true..Cannot set enableHistory after initialization.�For the history feature to work in IE, the page must have an iFrame element with id '__historyFrame' pointed to a page that gets its title from the 'title' query string parameter and calls Sys.Application._onIFrameLoad() on the parent window. This can be done by setting EnableHistory to true on ScriptManager.*Value is not a valid namespace identifier. No method found with name '{0}'.9Object {0} already exists as a class, enum, or interface./Object {0} already exists and is not an object.Value is not a valid type name.Value is not a valid interface.+Instances of type '{0}' cannot be observed.5Object already contains a member with the name '{0}'.'{0}' is not an Array property.!'{0}' is not a writable property.DCannot set the properties of '{0}' because it returned a null value.-'{0}' is not a property or an existing field.Component '{0}' was not found.�The script '{0}' failed to load. Check for:
 Inaccessible path.
 Script errors. (IE) Enable 'Display a notification about every script error' under advanced settings.8ScriptLoader requires pages to contain a <head> element.6State field names must not contain any '=' characters.6The state object can only have null and string fields.AThe format string contains an unmatched opening or closing brace.The format string is invalid.�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.'{0}' is not an event.VThe history state must be small enough to not make the url larger than {0} characters.�����lSystem.Resources.ResourceReader, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089#System.Resources.RuntimeResourceSet0PADPADPpQD�����+���΢m���v�k�2��ٍ����2��s4��n����ƿ$�9� 5���,y��{�/A���A��b�*�o� �ؼ�vB�������ߡ��šl�L&Ky	�K:GC��tm�n�o�(1tMd:<?�@�4�K�/O&3�P��qRnv�T��\��]d'�a�mfG�pY�|%P�'0|$����Q������7V��Y{����X�zR��75���	actualValueargument$argumentDomElementGargumentIntegereargumentNull�$argumentOutOfRange�argumentType�*argumentTypeWithTypes"argumentUndefined<assertFailedX$assertFailedCallerobadBaseUrl1�badBaseUrl2�badBaseUrl3�"breakIntoDebugger�,cannotAbortBeforeStart0cannotCallBeforeResponse?*cannotCallOnceStartedq0cannotCallOutsideHandler�8cannotDeserializeEmptyString�8cannotDeserializeInvalidJson�>cannotSerializeNonFiniteNumbers*<cannotSerializeObjectWithCycleP enumInvalidValue�&eventHandlerInvalid�format0formatBadFormatSpecifier?&formatInvalidString^&invalidExecutorType�invalidHttpVerb� invalidOperation�invalidTimeout="invokeCalledTwiceknotImplemented�&nullReferenceInPath�nullWebRequest�paramName#parameterCount8DrequiredScriptReferenceNotIncludedS&scriptAlreadyLoaded�0scriptDependencyNotFoundE scriptLoadFailed�"servicePathNotSet�,setExecutorAfterActive� webServiceFailed*webServiceFailedNoMsgT6webServiceInvalidReturnTypeu$webServiceTimedOut�Actual value was {0}..Value does not fall within the expected range.Value must be a DOM element.Value must be an integer.Value cannot be null.8Specified argument was out of the range of valid values.0Object cannot be converted to the required type.7Object of type '{0}' cannot be converted to type '{1}'.Value cannot be undefined.Assertion Failed: {0}Assertion Failed: {0}
at {1}Base URL does not contain ://.$Base URL does not contain another /.Cannot find last / in base URL.{0}

Break into debugger?+Cannot abort when executor has not started.0Cannot call {0} when responseAvailable is false.Cannot call {0} once started.5Cannot call {0} outside of a completed event handler. Cannot deserialize empty string.?Cannot deserialize. The data does not correspond to valid JSON.$Cannot serialize non finite numbers.FCannot serialize object with cyclic reference within child properties.('{0}' is not a valid value for enum {1}.DHandler was not added through the Sys.UI.DomEvent.addHandler method.5One of the identified items was in an invalid format.Format specifier was invalid.)Input string was not in a correct format.>Could not create a valid Sys.Net.WebRequestExecutor from: {0}.2httpVerb cannot be set to an empty or null string.>Operation is not valid due to the current state of the object.,Value must be greater than or equal to zero."Cannot call invoke more than once.+The method or operation is not implemented.1Null reference while evaluating data path: '{0}'.2Cannot call executeRequest with a null webRequest.Parameter name: {0}Parameter count mismatch.B'{0}' requires that you have included a script reference to '{1}'.�The script '{0}' has been referenced multiple times. If referencing Microsoft AJAX scripts explicitly, set the MicrosoftAjaxMode property of the ScriptManager to Explicit.HThe script '{0}' failed to load because it is dependent on script '{1}'.%The script '{0}' could not be loaded.-The path to the web service has not been set./Cannot set executor after it has become active.<The server method '{0}' failed with the following error: {1}The server method '{0}' failed.DThe server method '{0}' returned an invalid type. Expected type: {1}"The server method '{0}' timed out.i����lSystem.Resources.ResourceReader, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089#System.Resources.RuntimeResourceSetPADPADP��x�g��(�V���/VM�f�w�g�8
q�3�X�{.PRM_CannotRegisterTwice PRM_MissingPanel>PRM_ParserError�,PRM_ParserErrorDetails�PRM_ServerError� PRM_TimeoutError. PRM_UnknownTokenM<The PageRequestManager cannot be initialized more than once.xCould not find UpdatePanel with ID '{0}'. If it is being updated dynamically then it must be inside another UpdatePanel.�The message received from the server could not be parsed. Common causes for this error are when the response is modified by calls to Response.Write(), response filters, HttpModules, or server trace is enabled.
Details: {0}Error parsing near '{0}'.wAn unknown error occurred while processing the request on the server. The status code returned from the server was: {0}The server request timed out.Unknown token: '{0}'.2����lSystem.Resources.ResourceReader, mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089#System.Resources.RuntimeResourceSetPADPADPn&C��ƍ�"����v��	�Սq��U^��L2�F���ѕޟS �k|4�;�J��U0$�aN�co�f��Mj����$��{�[H�.NK�{FDataService_MoreThanOneMetadataFile6DataService_NoMetadataFilesuBReferenceGroup_AppendLinePosition�\ReferenceGroup_DataContractExcludedAndIncluded�HReferenceGroup_DuplicatedSchemaItemsKVReferenceGroup_DuplicatedSchemaItemsIgnored�6ReferenceGroup_EmptyAddress8ReferenceGroup_EmptyProtocol8FReferenceGroup_FailedToGenerateCodeUFReferenceGroup_FailedToLoadAssembly�rReferenceGroup_FieldDefinedDifferentlyInDuplicatedMessagefReferenceGroup_FieldDefinedInOneOfDuplicatedMessagem<ReferenceGroup_InvalidFileName�<ReferenceGroup_InvalidSourceId!TReferenceGroup_OperationDefinedDifferently^~ReferenceGroup_OperationDefinedInOneOfDuplicatedServiceContract�\ReferenceGroup_ServiceContractMappingMissMatch_JReferenceGroup_SharedTypeMustBePublicVReferenceGroup_TwoExternalFilesWithSameName]sThe specified .datasvcmap file at '{0}' has more than one metadata file in it. That is not supported by the system.FNo metadata files found or failed to load them for data service '{0}'.{0} Line {1}, position {2}.oThe type '{0}' is listed as a shared data contract type, but is also listed in the type sharing exclusion list.]The global {0} ('{1}') has been defined in both '{2}' and '{3}'. They are different at '{4}'.pThe global {0} ('{1}') has been defined in both '{2}' and '{3}'. The difference between them ('{4}') is ignored.Address must be specified.Protocol must be specified.=Failed to generate code for the service reference '{0}'.
{1}�Shared assembly '{0}' could not be loaded. If this is a referenced project, please make sure that you have built the project first.QThe message part '{0}' in message contract '{1}' is different in '{2}' and '{3}'.hThe message contract '{0}' is defined in both '{1}' and '{2}', but only one contains message part '{3}'.H'{0}' is invalid file name.  Absolute or relative path is not supported.;SourceId of a metadata source should be a positive integer.�The operation '{0}' in service contract '{1}' is different in '{2}' and '{3}'. Check the input, output and fault messages of the operation.qThe service contract '{0}' is defined in both '{1}' and '{2}', but only one of them contains the operation '{3}'.�The type '{0}' in the service contract mapping has different TargetNamespace('{1}') and Name('{2}') than the TargetNamespace('{3}') and Name('{4}') in the service reference file.GThe type '{0}' cannot be used in type sharing because it is not public.XTwo metadata items or extension items in the .svcmap file have the same file name '{0}'.8BM86( �����������������C�����if܁LK��a^ܥ����������C���������������������C�����ed��kk��vw������}|��qo��[Z��[Z����C���������������C���Κhg�����Ӷ�����������د�������ll��fe����C���������ĩ���gg������������������������������ll��vs����������c�rr��uv������������������������������[\�Ⱥ�c���ѹ���cb�Ǯ�������������������������������د���rq��������Ƥ�܇QP����������������������������������������~~��b`���Ú��zDC�����������������������������������������PO����ͫ�܂LK���������������������������������������xx��lk�����§�a`��������������������������������Ӹ���nn�����������c�~��ec�����������������������������hh���c��������°�gg��|{��������������������������ll���������������hh�i.-��hh��ec�������������ȯ���xw��kk�i.-�i.-�����������ih�ϧ��i.-��~��aa��ML�|EE��SS��ff��vv�i.-�ϧ��i.-�������������V�ih��hh����c��§ϭ��i.-�Ȧ��Ҽ�����c�}~��}����&�������������������������NL�i.-�i.-����������������������8BM86(����������������������������������������������j��j��t��t��y��i��Dj����������cI5cI5cI5cI5cI5j����������钵�W��Hk�����������������������»����j��g��]��^����Hk����������������������䍧�j�����������Hk������������������������j�����������Hk�\J=������������������������j���������Hk����o�������������������������j�����������������Hk�o���������������������������j��j��j��j��j��P|�����î��������������������������������cI5����Ȳ���������������������������������cI5����̶����������������������������������cI5����ꪋꪋꪋ饄�z�n�b�V�}J�v@�r9�r9�r9�b/����ꪋ�¢��������������������}��w��q��j�e�e1����ꪋꪋꪋꪋꦆ��v�l�b�X�N�{F�v>�r9����������������������������������8BM86(����������������������������������������������j��j��t��t��y��i��Dj����������cI5cI5cI5cI5cI5j����������钵�W��Hk�����������������������»����j��g��]��^����Hk������������D!��������䍧�j�����������Hk�����������G#�D!��������j�����������Hk�\J=������y�]/�f;�T-�F#������j���������Hk����o�����oD��`�P�a6�F#���j�����������������Hk�o���i�����vG��`�yJ�Ų�����j��j��j��j��j��P|����_�j>�Ǻ�|M܇[��������������������cI5��ڈaȒt����q�������������������������cI5��ڈaŨ����������������������������������cI5��ӛ�ߞ~ꪋꪋ饄�z�n�b�V�}J�v@�r9�r9�r9�b/����ϋj�¢��������������������}��w��q��j�e�e1����ꪋꪋꪋꪋꦆ��v�l�b�X�N�{F�v>�r9����������������������������������8BM86(���������������������������������������������������������������������������������������������������������������?|?�������������������������������������A�AB�B�����������������������������t�t=x=@~@C�CG�GU�UD�D�����������������������~�~�װ�ō���t�tf�fZ�ZG�G������������������������È�۸�Ѥ�Ȓ�È|�|n�nZ�ZI�I������������������ǐ��޽�֭�ө�̚z�zI�I������������������������ɕ�ō���v�v����˘I�I��������������������������������Ǒb�b�����������������������������������������ɕ����������������������������������������������������������������������������������������������������������������������������������������������������������������������������8BM86(����������������������������������hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh������hhh����������������������������������hhh����hhh���D�AD�A���D�AD�A������������������hhh���hhh���8�58�5���8�58�5������������������hhh������hhh���P�MP�N���P�MP�N������������������hhh���hhh�����������������������������������hhh��������hhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhhh����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������8BM86(�����������������������������������������������������������������������������������������������������������������������������������������������������������������������D!��kkkkkkkkkkkkkkk���f,�������������k0�D!��kkkkkk���������wB�D!���������k0�vC�D!����kkkkkk�������yD�vC�D!�����k0�v�l�[6������kkkkkk�����}G�l�g�D!�����u@����kD��������kkkkkk���~J����u@���������wA�kD��kkkkkk��kkkkkk���M�wA�������������vN����kkkkkkkkk�����O����������������������������������������������������������������������������������������������������������������������������������������8BM86(��������������������d�l�'�
�I�I�����cI5cI5cI5cI5cI5cI5cI5cI5.r$"�Z�@�ܐ�ކ�E�E������������¹ϼ�ʶ�ư�«�'�NH�x?�`�ݠ�����������������������������!�Rb�z������f�tׄ�$�����������`�O�x=�p6�f06�HbɃ������P�q&�Q�A��������������������Ճ�s�ٜyӜfЏG�|1�r_�j���������`݇O�x?�o6�f0�`)��un�wD�g$�Hk�t�������������������������������̸�cI5��������������O%������y��I�������O%�����cI5����î�����O%������1��r���B|������R%��cI5����Ȳ��������O%���:��r�
��G�����Q%������cI5����̶�������������:��v���D�������������dJ6����ѻ�������������i�؏�i�h��������dJ6dJ6dJ6����տ����������������ɘ����������źcI5�������²������������������������������cI5���������²�²�²�²�²�²�²�²Ծ�Ϲ�ɳ�����������8BM86(���������������������������������������������������������������������cI5cI5cI5cI5cI5cI5cI5cI5cI5cI5cI5cI5cI5�����������������������Ȼ�óۿ�ۻ�ۻ�ۻ�ϴ�cI5����������cI5�óۿ�ۻ���������������ϴ�cI5��������������������������������ϴ�cI5����������cI5�óۿ�ۻ��������������ϴ�cI5����������������������������������й�cI5����������cI5�óۿ�ۻ����cI5�óۿ�ۻ������cI5����î��������������������������������cI5����Ȳ����cI5�óۿ�ۻ����cI5�óۿ�ۻ������cI5����̶����������������������������������cI5����ꪋꪋꪋ饄�z�n�b�V�}J�v@�r9�r9�r9�b/����ꪋ�¢��������������������}��w��q��j�e�e1����ꪋꪋꪋꪋꦆ��v�l�b�X�N�{F�v>�r9����������������������������������6BM66(���������������������������������������������������������P*����������������������������~B&�h>�_7�������cI5cI5cI5cI5cI5cI5cI5������~B&�h>�wH�M�l@���������������������Ȼ�����~B&~B&�G#�T�sE�xH�}L������í���������㱘�ʹ��������G#��a�M��������������������������������G#��s�V����������İ���������󳛌�����}����������������������������������������������K%�����_����������Ʋ�ï������������������������������î�����������������������������~L��]��t����Ȳ����İ�����������������������������������̶�����������������������������������cI5����ꪋꪋꪋ饄�z�n�b�V�}J�v@�r9�r9�r9�b/����ꪋ�¢��������������������}��w��q��j�e�e1����ꪋꪋꪋꪋꦆ��v�l�b�X�N�{F�v>�r9����\�//-----------------------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------
// MicrosoftAjax.js
// Microsoft AJAX Framework.
 
Function.__typeName = 'Function';
Function.__class = true;
Function.createCallback = function Function$createCallback(method, context) {
    /// <summary locid="M:J#Function.createCallback" />
    /// <param name="method" type="Function"></param>
    /// <param name="context" mayBeNull="true"></param>
    /// <returns type="Function"></returns>
    var e = Function._validateParams(arguments, [
        {name: "method", type: Function},
        {name: "context", mayBeNull: true}
    ]);
    if (e) throw e;
    return function() {
        var l = arguments.length;
        if (l > 0) {
            var args = [];
            for (var i = 0; i < l; i++) {
                args[i] = arguments[i];
            }
            args[l] = context;
            return method.apply(this, args);
        }
        return method.call(this, context);
    }
}
Function.createDelegate = function Function$createDelegate(instance, method) {
    /// <summary locid="M:J#Function.createDelegate" />
    /// <param name="instance" mayBeNull="true"></param>
    /// <param name="method" type="Function"></param>
    /// <returns type="Function"></returns>
    var e = Function._validateParams(arguments, [
        {name: "instance", mayBeNull: true},
        {name: "method", type: Function}
    ]);
    if (e) throw e;
    return function() {
        return method.apply(instance, arguments);
    }
}
Function.emptyFunction = Function.emptyMethod = function Function$emptyMethod() {
    /// <summary locid="M:J#Function.emptyMethod" />
}
Function.validateParameters = function Function$validateParameters(parameters, expectedParameters, validateParameterCount) {
    /// <summary locid="M:J#Function.validateParameters" />
    /// <param name="parameters"></param>
    /// <param name="expectedParameters"></param>
    /// <param name="validateParameterCount" type="Boolean" optional="true"></param>
    /// <returns type="Error" mayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "parameters"},
        {name: "expectedParameters"},
        {name: "validateParameterCount", type: Boolean, optional: true}
    ]);
    if (e) throw e;
    return Function._validateParams(parameters, expectedParameters, validateParameterCount);
}
Function._validateParams = function Function$_validateParams(params, expectedParams, validateParameterCount) {
    var e, expectedLength = expectedParams.length;
    validateParameterCount = validateParameterCount || (typeof(validateParameterCount) === "undefined");
    e = Function._validateParameterCount(params, expectedParams, validateParameterCount);
    if (e) {
        e.popStackFrame();
        return e;
    }
    for (var i = 0, l = params.length; i < l; i++) {
        var expectedParam = expectedParams[Math.min(i, expectedLength - 1)],
            paramName = expectedParam.name;
        if (expectedParam.parameterArray) {
            paramName += "[" + (i - expectedLength + 1) + "]";
        }
        else if (!validateParameterCount && (i >= expectedLength)) {
            break;
        }
        e = Function._validateParameter(params[i], expectedParam, paramName);
        if (e) {
            e.popStackFrame();
            return e;
        }
    }
    return null;
}
Function._validateParameterCount = function Function$_validateParameterCount(params, expectedParams, validateParameterCount) {
    var i, error,
        expectedLen = expectedParams.length,
        actualLen = params.length;
    if (actualLen < expectedLen) {
        var minParams = expectedLen;
        for (i = 0; i < expectedLen; i++) {
            var param = expectedParams[i];
            if (param.optional || param.parameterArray) {
                minParams--;
            }
        }        
        if (actualLen < minParams) {
            error = true;
        }
    }
    else if (validateParameterCount && (actualLen > expectedLen)) {
        error = true;      
        for (i = 0; i < expectedLen; i++) {
            if (expectedParams[i].parameterArray) {
                error = false; 
                break;
            }
        }  
    }
    if (error) {
        var e = Error.parameterCount();
        e.popStackFrame();
        return e;
    }
    return null;
}
Function._validateParameter = function Function$_validateParameter(param, expectedParam, paramName) {
    var e,
        expectedType = expectedParam.type,
        expectedInteger = !!expectedParam.integer,
        expectedDomElement = !!expectedParam.domElement,
        mayBeNull = !!expectedParam.mayBeNull;
    e = Function._validateParameterType(param, expectedType, expectedInteger, expectedDomElement, mayBeNull, paramName);
    if (e) {
        e.popStackFrame();
        return e;
    }
    var expectedElementType = expectedParam.elementType,
        elementMayBeNull = !!expectedParam.elementMayBeNull;
    if (expectedType === Array && typeof(param) !== "undefined" && param !== null &&
        (expectedElementType || !elementMayBeNull)) {
        var expectedElementInteger = !!expectedParam.elementInteger,
            expectedElementDomElement = !!expectedParam.elementDomElement;
        for (var i=0; i < param.length; i++) {
            var elem = param[i];
            e = Function._validateParameterType(elem, expectedElementType,
                expectedElementInteger, expectedElementDomElement, elementMayBeNull,
                paramName + "[" + i + "]");
            if (e) {
                e.popStackFrame();
                return e;
            }
        }
    }
    return null;
}
Function._validateParameterType = function Function$_validateParameterType(param, expectedType, expectedInteger, expectedDomElement, mayBeNull, paramName) {
    var e, i;
    if (typeof(param) === "undefined") {
        if (mayBeNull) {
            return null;
        }
        else {
            e = Error.argumentUndefined(paramName);
            e.popStackFrame();
            return e;
        }
    }
    if (param === null) {
        if (mayBeNull) {
            return null;
        }
        else {
            e = Error.argumentNull(paramName);
            e.popStackFrame();
            return e;
        }
    }
    if (expectedType && expectedType.__enum) {
        if (typeof(param) !== 'number') {
            e = Error.argumentType(paramName, Object.getType(param), expectedType);
            e.popStackFrame();
            return e;
        }
        if ((param % 1) === 0) {
            var values = expectedType.prototype;
            if (!expectedType.__flags || (param === 0)) {
                for (i in values) {
                    if (values[i] === param) return null;
                }
            }
            else {
                var v = param;
                for (i in values) {
                    var vali = values[i];
                    if (vali === 0) continue;
                    if ((vali & param) === vali) {
                        v -= vali;
                    }
                    if (v === 0) return null;
                }
            }
        }
        e = Error.argumentOutOfRange(paramName, param, String.format(Sys.Res.enumInvalidValue, param, expectedType.getName()));
        e.popStackFrame();
        return e;
    }
    if (expectedDomElement && (!Sys._isDomElement(param) || (param.nodeType === 3))) {
        e = Error.argument(paramName, Sys.Res.argumentDomElement);
        e.popStackFrame();
        return e;
    }
    if (expectedType && !Sys._isInstanceOfType(expectedType, param)) {
        e = Error.argumentType(paramName, Object.getType(param), expectedType);
        e.popStackFrame();
        return e;
    }
    if (expectedType === Number && expectedInteger) {
        if ((param % 1) !== 0) {
            e = Error.argumentOutOfRange(paramName, param, Sys.Res.argumentInteger);
            e.popStackFrame();
            return e;
        }
    }
    return null;
}
 
Error.__typeName = 'Error';
Error.__class = true;
Error.create = function Error$create(message, errorInfo) {
    /// <summary locid="M:J#Error.create" />
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <param name="errorInfo" optional="true" mayBeNull="true"></param>
    /// <returns type="Error"></returns>
    var e = Function._validateParams(arguments, [
        {name: "message", type: String, mayBeNull: true, optional: true},
        {name: "errorInfo", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var err = new Error(message);
    err.message = message;
    if (errorInfo) {
        for (var v in errorInfo) {
            err[v] = errorInfo[v];
        }
    }
    err.popStackFrame();
    return err;
}
Error.argument = function Error$argument(paramName, message) {
    /// <summary locid="M:J#Error.argument" />
    /// <param name="paramName" type="String" optional="true" mayBeNull="true"></param>
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "paramName", type: String, mayBeNull: true, optional: true},
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.ArgumentException: " + (message ? message : Sys.Res.argument);
    if (paramName) {
        displayMessage += "\n" + String.format(Sys.Res.paramName, paramName);
    }
    var err = Error.create(displayMessage, { name: "Sys.ArgumentException", paramName: paramName });
    err.popStackFrame();
    return err;
}
Error.argumentNull = function Error$argumentNull(paramName, message) {
    /// <summary locid="M:J#Error.argumentNull" />
    /// <param name="paramName" type="String" optional="true" mayBeNull="true"></param>
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "paramName", type: String, mayBeNull: true, optional: true},
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.ArgumentNullException: " + (message ? message : Sys.Res.argumentNull);
    if (paramName) {
        displayMessage += "\n" + String.format(Sys.Res.paramName, paramName);
    }
    var err = Error.create(displayMessage, { name: "Sys.ArgumentNullException", paramName: paramName });
    err.popStackFrame();
    return err;
}
Error.argumentOutOfRange = function Error$argumentOutOfRange(paramName, actualValue, message) {
    /// <summary locid="M:J#Error.argumentOutOfRange" />
    /// <param name="paramName" type="String" optional="true" mayBeNull="true"></param>
    /// <param name="actualValue" optional="true" mayBeNull="true"></param>
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "paramName", type: String, mayBeNull: true, optional: true},
        {name: "actualValue", mayBeNull: true, optional: true},
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.ArgumentOutOfRangeException: " + (message ? message : Sys.Res.argumentOutOfRange);
    if (paramName) {
        displayMessage += "\n" + String.format(Sys.Res.paramName, paramName);
    }
    if (typeof(actualValue) !== "undefined" && actualValue !== null) {
        displayMessage += "\n" + String.format(Sys.Res.actualValue, actualValue);
    }
    var err = Error.create(displayMessage, {
        name: "Sys.ArgumentOutOfRangeException",
        paramName: paramName,
        actualValue: actualValue
    });
    err.popStackFrame();
    return err;
}
Error.argumentType = function Error$argumentType(paramName, actualType, expectedType, message) {
    /// <summary locid="M:J#Error.argumentType" />
    /// <param name="paramName" type="String" optional="true" mayBeNull="true"></param>
    /// <param name="actualType" type="Type" optional="true" mayBeNull="true"></param>
    /// <param name="expectedType" type="Type" optional="true" mayBeNull="true"></param>
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "paramName", type: String, mayBeNull: true, optional: true},
        {name: "actualType", type: Type, mayBeNull: true, optional: true},
        {name: "expectedType", type: Type, mayBeNull: true, optional: true},
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.ArgumentTypeException: ";
    if (message) {
        displayMessage += message;
    }
    else if (actualType && expectedType) {
        displayMessage +=
            String.format(Sys.Res.argumentTypeWithTypes, actualType.getName(), expectedType.getName());
    }
    else {
        displayMessage += Sys.Res.argumentType;
    }
    if (paramName) {
        displayMessage += "\n" + String.format(Sys.Res.paramName, paramName);
    }
    var err = Error.create(displayMessage, {
        name: "Sys.ArgumentTypeException",
        paramName: paramName,
        actualType: actualType,
        expectedType: expectedType
    });
    err.popStackFrame();
    return err;
}
Error.argumentUndefined = function Error$argumentUndefined(paramName, message) {
    /// <summary locid="M:J#Error.argumentUndefined" />
    /// <param name="paramName" type="String" optional="true" mayBeNull="true"></param>
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "paramName", type: String, mayBeNull: true, optional: true},
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.ArgumentUndefinedException: " + (message ? message : Sys.Res.argumentUndefined);
    if (paramName) {
        displayMessage += "\n" + String.format(Sys.Res.paramName, paramName);
    }
    var err = Error.create(displayMessage, { name: "Sys.ArgumentUndefinedException", paramName: paramName });
    err.popStackFrame();
    return err;
}
Error.format = function Error$format(message) {
    /// <summary locid="M:J#Error.format" />
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.FormatException: " + (message ? message : Sys.Res.format);
    var err = Error.create(displayMessage, {name: 'Sys.FormatException'});
    err.popStackFrame();
    return err;
}
Error.invalidOperation = function Error$invalidOperation(message) {
    /// <summary locid="M:J#Error.invalidOperation" />
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.InvalidOperationException: " + (message ? message : Sys.Res.invalidOperation);
    var err = Error.create(displayMessage, {name: 'Sys.InvalidOperationException'});
    err.popStackFrame();
    return err;
}
Error.notImplemented = function Error$notImplemented(message) {
    /// <summary locid="M:J#Error.notImplemented" />
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.NotImplementedException: " + (message ? message : Sys.Res.notImplemented);
    var err = Error.create(displayMessage, {name: 'Sys.NotImplementedException'});
    err.popStackFrame();
    return err;
}
Error.parameterCount = function Error$parameterCount(message) {
    /// <summary locid="M:J#Error.parameterCount" />
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.ParameterCountException: " + (message ? message : Sys.Res.parameterCount);
    var err = Error.create(displayMessage, {name: 'Sys.ParameterCountException'});
    err.popStackFrame();
    return err;
}
Error.prototype.popStackFrame = function Error$popStackFrame() {
    /// <summary locid="M:J#checkParam" />
    if (arguments.length !== 0) throw Error.parameterCount();
    if (typeof(this.stack) === "undefined" || this.stack === null ||
        typeof(this.fileName) === "undefined" || this.fileName === null ||
        typeof(this.lineNumber) === "undefined" || this.lineNumber === null) {
        return;
    }
    var stackFrames = this.stack.split("\n");
    var currentFrame = stackFrames[0];
    var pattern = this.fileName + ":" + this.lineNumber;
    while(typeof(currentFrame) !== "undefined" &&
          currentFrame !== null &&
          currentFrame.indexOf(pattern) === -1) {
        stackFrames.shift();
        currentFrame = stackFrames[0];
    }
    var nextFrame = stackFrames[1];
    if (typeof(nextFrame) === "undefined" || nextFrame === null) {
        return;
    }
    var nextFrameParts = nextFrame.match(/@(.*):(\d+)$/);
    if (typeof(nextFrameParts) === "undefined" || nextFrameParts === null) {
        return;
    }
    this.fileName = nextFrameParts[1];
    this.lineNumber = parseInt(nextFrameParts[2]);
    stackFrames.shift();
    this.stack = stackFrames.join("\n");
}
 
Object.__typeName = 'Object';
Object.__class = true;
Object.getType = function Object$getType(instance) {
    /// <summary locid="M:J#Object.getType" />
    /// <param name="instance"></param>
    /// <returns type="Type"></returns>
    var e = Function._validateParams(arguments, [
        {name: "instance"}
    ]);
    if (e) throw e;
    var ctor = instance.constructor;
    if (!ctor || (typeof(ctor) !== "function") || !ctor.__typeName || (ctor.__typeName === 'Object')) {
        return Object;
    }
    return ctor;
}
Object.getTypeName = function Object$getTypeName(instance) {
    /// <summary locid="M:J#Object.getTypeName" />
    /// <param name="instance"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "instance"}
    ]);
    if (e) throw e;
    return Object.getType(instance).getName();
}
 
String.__typeName = 'String';
String.__class = true;
String.prototype.endsWith = function String$endsWith(suffix) {
    /// <summary locid="M:J#String.endsWith" />
    /// <param name="suffix" type="String"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "suffix", type: String}
    ]);
    if (e) throw e;
    return (this.substr(this.length - suffix.length) === suffix);
}
String.prototype.startsWith = function String$startsWith(prefix) {
    /// <summary locid="M:J#String.startsWith" />
    /// <param name="prefix" type="String"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "prefix", type: String}
    ]);
    if (e) throw e;
    return (this.substr(0, prefix.length) === prefix);
}
String.prototype.trim = function String$trim() {
    /// <summary locid="M:J#String.trim" />
    /// <returns type="String"></returns>
    if (arguments.length !== 0) throw Error.parameterCount();
    return this.replace(/^\s+|\s+$/g, '');
}
String.prototype.trimEnd = function String$trimEnd() {
    /// <summary locid="M:J#String.trimEnd" />
    /// <returns type="String"></returns>
    if (arguments.length !== 0) throw Error.parameterCount();
    return this.replace(/\s+$/, '');
}
String.prototype.trimStart = function String$trimStart() {
    /// <summary locid="M:J#String.trimStart" />
    /// <returns type="String"></returns>
    if (arguments.length !== 0) throw Error.parameterCount();
    return this.replace(/^\s+/, '');
}
String.format = function String$format(format, args) {
    /// <summary locid="M:J#String.format" />
    /// <param name="format" type="String"></param>
    /// <param name="args" parameterArray="true" mayBeNull="true"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "format", type: String},
        {name: "args", mayBeNull: true, parameterArray: true}
    ]);
    if (e) throw e;
    return String._toFormattedString(false, arguments);
}
String._toFormattedString = function String$_toFormattedString(useLocale, args) {
    var result = '';
    var format = args[0];
    for (var i=0;;) {
        var open = format.indexOf('{', i);
        var close = format.indexOf('}', i);
        if ((open < 0) && (close < 0)) {
            result += format.slice(i);
            break;
        }
        if ((close > 0) && ((close < open) || (open < 0))) {
            if (format.charAt(close + 1) !== '}') {
                throw Error.argument('format', Sys.Res.stringFormatBraceMismatch);
            }
            result += format.slice(i, close + 1);
            i = close + 2;
            continue;
        }
        result += format.slice(i, open);
        i = open + 1;
        if (format.charAt(i) === '{') {
            result += '{';
            i++;
            continue;
        }
        if (close < 0) throw Error.argument('format', Sys.Res.stringFormatBraceMismatch);
        var brace = format.substring(i, close);
        var colonIndex = brace.indexOf(':');
        var argNumber = parseInt((colonIndex < 0)? brace : brace.substring(0, colonIndex), 10) + 1;
        if (isNaN(argNumber)) throw Error.argument('format', Sys.Res.stringFormatInvalid);
        var argFormat = (colonIndex < 0)? '' : brace.substring(colonIndex + 1);
        var arg = args[argNumber];
        if (typeof(arg) === "undefined" || arg === null) {
            arg = '';
        }
        if (arg.toFormattedString) {
            result += arg.toFormattedString(argFormat);
        }
        else if (useLocale && arg.localeFormat) {
            result += arg.localeFormat(argFormat);
        }
        else if (arg.format) {
            result += arg.format(argFormat);
        }
        else
            result += arg.toString();
        i = close + 1;
    }
    return result;
}
 
Boolean.__typeName = 'Boolean';
Boolean.__class = true;
Boolean.parse = function Boolean$parse(value) {
    /// <summary locid="M:J#Boolean.parse" />
    /// <param name="value" type="String"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "value", type: String}
    ], false);
    if (e) throw e;
    var v = value.trim().toLowerCase();
    if (v === 'false') return false;
    if (v === 'true') return true;
    throw Error.argumentOutOfRange('value', value, Sys.Res.boolTrueOrFalse);
}
 
Date.__typeName = 'Date';
Date.__class = true;
 
Number.__typeName = 'Number';
Number.__class = true;
 
RegExp.__typeName = 'RegExp';
RegExp.__class = true;
 
if (!window) this.window = this;
window.Type = Function;
Type.__fullyQualifiedIdentifierRegExp = new RegExp("^[^.0-9 \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]([^ \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]*[^. \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\])?$", "i");
Type.__identifierRegExp = new RegExp("^[^.0-9 \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\][^. \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]*$", "i");
Type.prototype.callBaseMethod = function Type$callBaseMethod(instance, name, baseArguments) {
    /// <summary locid="M:J#Type.callBaseMethod" />
    /// <param name="instance"></param>
    /// <param name="name" type="String"></param>
    /// <param name="baseArguments" type="Array" optional="true" mayBeNull="true" elementMayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "instance"},
        {name: "name", type: String},
        {name: "baseArguments", type: Array, mayBeNull: true, optional: true, elementMayBeNull: true}
    ]);
    if (e) throw e;
    var baseMethod = Sys._getBaseMethod(this, instance, name);
    if (!baseMethod) throw Error.invalidOperation(String.format(Sys.Res.methodNotFound, name));
    if (!baseArguments) {
        return baseMethod.apply(instance);
    }
    else {
        return baseMethod.apply(instance, baseArguments);
    }
}
Type.prototype.getBaseMethod = function Type$getBaseMethod(instance, name) {
    /// <summary locid="M:J#Type.getBaseMethod" />
    /// <param name="instance"></param>
    /// <param name="name" type="String"></param>
    /// <returns type="Function" mayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "instance"},
        {name: "name", type: String}
    ]);
    if (e) throw e;
    return Sys._getBaseMethod(this, instance, name);
}
Type.prototype.getBaseType = function Type$getBaseType() {
    /// <summary locid="M:J#Type.getBaseType" />
    /// <returns type="Type" mayBeNull="true"></returns>
    if (arguments.length !== 0) throw Error.parameterCount();
    return (typeof(this.__baseType) === "undefined") ? null : this.__baseType;
}
Type.prototype.getInterfaces = function Type$getInterfaces() {
    /// <summary locid="M:J#Type.getInterfaces" />
    /// <returns type="Array" elementType="Type" mayBeNull="false" elementMayBeNull="false"></returns>
    if (arguments.length !== 0) throw Error.parameterCount();
    var result = [];
    var type = this;
    while(type) {
        var interfaces = type.__interfaces;
        if (interfaces) {
            for (var i = 0, l = interfaces.length; i < l; i++) {
                var interfaceType = interfaces[i];
                if (!Array.contains(result, interfaceType)) {
                    result[result.length] = interfaceType;
                }
            }
        }
        type = type.__baseType;
    }
    return result;
}
Type.prototype.getName = function Type$getName() {
    /// <summary locid="M:J#Type.getName" />
    /// <returns type="String"></returns>
    if (arguments.length !== 0) throw Error.parameterCount();
    return (typeof(this.__typeName) === "undefined") ? "" : this.__typeName;
}
Type.prototype.implementsInterface = function Type$implementsInterface(interfaceType) {
    /// <summary locid="M:J#Type.implementsInterface" />
    /// <param name="interfaceType" type="Type"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "interfaceType", type: Type}
    ]);
    if (e) throw e;
    this.resolveInheritance();
    var interfaceName = interfaceType.getName();
    var cache = this.__interfaceCache;
    if (cache) {
        var cacheEntry = cache[interfaceName];
        if (typeof(cacheEntry) !== 'undefined') return cacheEntry;
    }
    else {
        cache = this.__interfaceCache = {};
    }
    var baseType = this;
    while (baseType) {
        var interfaces = baseType.__interfaces;
        if (interfaces) {
            if (Array.indexOf(interfaces, interfaceType) !== -1) {
                return cache[interfaceName] = true;
            }
        }
        baseType = baseType.__baseType;
    }
    return cache[interfaceName] = false;
}
Type.prototype.inheritsFrom = function Type$inheritsFrom(parentType) {
    /// <summary locid="M:J#Type.inheritsFrom" />
    /// <param name="parentType" type="Type"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "parentType", type: Type}
    ]);
    if (e) throw e;
    this.resolveInheritance();
    var baseType = this.__baseType;
    while (baseType) {
        if (baseType === parentType) {
            return true;
        }
        baseType = baseType.__baseType;
    }
    return false;
}
Type.prototype.initializeBase = function Type$initializeBase(instance, baseArguments) {
    /// <summary locid="M:J#Type.initializeBase" />
    /// <param name="instance"></param>
    /// <param name="baseArguments" type="Array" optional="true" mayBeNull="true" elementMayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "instance"},
        {name: "baseArguments", type: Array, mayBeNull: true, optional: true, elementMayBeNull: true}
    ]);
    if (e) throw e;
    if (!Sys._isInstanceOfType(this, instance)) throw Error.argumentType('instance', Object.getType(instance), this);
    this.resolveInheritance();
    if (this.__baseType) {
        if (!baseArguments) {
            this.__baseType.apply(instance);
        }
        else {
            this.__baseType.apply(instance, baseArguments);
        }
    }
    return instance;
}
Type.prototype.isImplementedBy = function Type$isImplementedBy(instance) {
    /// <summary locid="M:J#Type.isImplementedBy" />
    /// <param name="instance" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "instance", mayBeNull: true}
    ]);
    if (e) throw e;
    if (typeof(instance) === "undefined" || instance === null) return false;
    var instanceType = Object.getType(instance);
    return !!(instanceType.implementsInterface && instanceType.implementsInterface(this));
}
Type.prototype.isInstanceOfType = function Type$isInstanceOfType(instance) {
    /// <summary locid="M:J#Type.isInstanceOfType" />
    /// <param name="instance" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "instance", mayBeNull: true}
    ]);
    if (e) throw e;
    return Sys._isInstanceOfType(this, instance);
}
Type.prototype.registerClass = function Type$registerClass(typeName, baseType, interfaceTypes) {
    /// <summary locid="M:J#Type.registerClass" />
    /// <param name="typeName" type="String"></param>
    /// <param name="baseType" type="Type" optional="true" mayBeNull="true"></param>
    /// <param name="interfaceTypes" parameterArray="true" type="Type"></param>
    /// <returns type="Type"></returns>
    var e = Function._validateParams(arguments, [
        {name: "typeName", type: String},
        {name: "baseType", type: Type, mayBeNull: true, optional: true},
        {name: "interfaceTypes", type: Type, parameterArray: true}
    ]);
    if (e) throw e;
    if (!Type.__fullyQualifiedIdentifierRegExp.test(typeName)) throw Error.argument('typeName', Sys.Res.notATypeName);
    var parsedName;
    try {
        parsedName = eval(typeName);
    }
    catch(e) {
        throw Error.argument('typeName', Sys.Res.argumentTypeName);
    }
    if (parsedName !== this) throw Error.argument('typeName', Sys.Res.badTypeName);
    if (Sys.__registeredTypes[typeName]) throw Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice, typeName));
    if ((arguments.length > 1) && (typeof(baseType) === 'undefined')) throw Error.argumentUndefined('baseType');
    if (baseType && !baseType.__class) throw Error.argument('baseType', Sys.Res.baseNotAClass);
    this.prototype.constructor = this;
    this.__typeName = typeName;
    this.__class = true;
    if (baseType) {
        this.__baseType = baseType;
        this.__basePrototypePending = true;
    }
    Sys.__upperCaseTypes[typeName.toUpperCase()] = this;
    if (interfaceTypes) {
        this.__interfaces = [];
        this.resolveInheritance();
        for (var i = 2, l = arguments.length; i < l; i++) {
            var interfaceType = arguments[i];
            if (!interfaceType.__interface) throw Error.argument('interfaceTypes[' + (i - 2) + ']', Sys.Res.notAnInterface);
            for (var methodName in interfaceType.prototype) {
                var method = interfaceType.prototype[methodName];
                if (!this.prototype[methodName]) {
                    this.prototype[methodName] = method;
                }
            }
            this.__interfaces.push(interfaceType);
        }
    }
    Sys.__registeredTypes[typeName] = true;
    return this;
}
Type.prototype.registerInterface = function Type$registerInterface(typeName) {
    /// <summary locid="M:J#Type.registerInterface" />
    /// <param name="typeName" type="String"></param>
    /// <returns type="Type"></returns>
    var e = Function._validateParams(arguments, [
        {name: "typeName", type: String}
    ]);
    if (e) throw e;
    if (!Type.__fullyQualifiedIdentifierRegExp.test(typeName)) throw Error.argument('typeName', Sys.Res.notATypeName);
    var parsedName;
    try {
        parsedName = eval(typeName);
    }
    catch(e) {
        throw Error.argument('typeName', Sys.Res.argumentTypeName);
    }
    if (parsedName !== this) throw Error.argument('typeName', Sys.Res.badTypeName);
    if (Sys.__registeredTypes[typeName]) throw Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice, typeName));
    Sys.__upperCaseTypes[typeName.toUpperCase()] = this;
    this.prototype.constructor = this;
    this.__typeName = typeName;
    this.__interface = true;
    Sys.__registeredTypes[typeName] = true;
    return this;
}
Type.prototype.resolveInheritance = function Type$resolveInheritance() {
    /// <summary locid="M:J#Type.resolveInheritance" />
    if (arguments.length !== 0) throw Error.parameterCount();
    if (this.__basePrototypePending) {
        var baseType = this.__baseType;
        baseType.resolveInheritance();
        for (var memberName in baseType.prototype) {
            var memberValue = baseType.prototype[memberName];
            if (!this.prototype[memberName]) {
                this.prototype[memberName] = memberValue;
            }
        }
        delete this.__basePrototypePending;
    }
}
Type.getRootNamespaces = function Type$getRootNamespaces() {
    /// <summary locid="M:J#Type.getRootNamespaces" />
    /// <returns type="Array"></returns>
    if (arguments.length !== 0) throw Error.parameterCount();
    return Array.clone(Sys.__rootNamespaces);
}
Type.isClass = function Type$isClass(type) {
    /// <summary locid="M:J#Type.isClass" />
    /// <param name="type" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "type", mayBeNull: true}
    ]);
    if (e) throw e;
    if ((typeof(type) === 'undefined') || (type === null)) return false;
    return !!type.__class;
}
Type.isInterface = function Type$isInterface(type) {
    /// <summary locid="M:J#Type.isInterface" />
    /// <param name="type" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "type", mayBeNull: true}
    ]);
    if (e) throw e;
    if ((typeof(type) === 'undefined') || (type === null)) return false;
    return !!type.__interface;
}
Type.isNamespace = function Type$isNamespace(object) {
    /// <summary locid="M:J#Type.isNamespace" />
    /// <param name="object" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "object", mayBeNull: true}
    ]);
    if (e) throw e;
    if ((typeof(object) === 'undefined') || (object === null)) return false;
    return !!object.__namespace;
}
Type.parse = function Type$parse(typeName, ns) {
    /// <summary locid="M:J#Type.parse" />
    /// <param name="typeName" type="String" mayBeNull="true"></param>
    /// <param name="ns" optional="true" mayBeNull="true"></param>
    /// <returns type="Type" mayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "typeName", type: String, mayBeNull: true},
        {name: "ns", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var fn;
    if (ns) {
        fn = Sys.__upperCaseTypes[ns.getName().toUpperCase() + '.' + typeName.toUpperCase()];
        return fn || null;
    }
    if (!typeName) return null;
    if (!Type.__htClasses) {
        Type.__htClasses = {};
    }
    fn = Type.__htClasses[typeName];
    if (!fn) {
        fn = eval(typeName);
        if (typeof(fn) !== 'function') throw Error.argument('typeName', Sys.Res.notATypeName);
        Type.__htClasses[typeName] = fn;
    }
    return fn;
}
Type.registerNamespace = function Type$registerNamespace(namespacePath) {
    /// <summary locid="M:J#Type.registerNamespace" />
    /// <param name="namespacePath" type="String"></param>
    var e = Function._validateParams(arguments, [
        {name: "namespacePath", type: String}
    ]);
    if (e) throw e;
    Type._registerNamespace(namespacePath);
}
Type._registerNamespace = function Type$_registerNamespace(namespacePath) {
    if (!Type.__fullyQualifiedIdentifierRegExp.test(namespacePath)) throw Error.argument('namespacePath', Sys.Res.invalidNameSpace);
    var rootObject = window;
    var namespaceParts = namespacePath.split('.');
    for (var i = 0; i < namespaceParts.length; i++) {
        var currentPart = namespaceParts[i];
        var ns = rootObject[currentPart];
        var nsType = typeof(ns);
        if ((nsType !== "undefined") && (ns !== null)) {
            if (nsType === "function") {
                throw Error.invalidOperation(String.format(Sys.Res.namespaceContainsClass, namespaceParts.splice(0, i + 1).join('.')));
            }
            if ((typeof(ns) !== "object") || (ns instanceof Array)) {
                throw Error.invalidOperation(String.format(Sys.Res.namespaceContainsNonObject, namespaceParts.splice(0, i + 1).join('.')));
            }
        }
        if (!ns) {
            ns = rootObject[currentPart] = {};
        }
        if (!ns.__namespace) {
            if ((i === 0) && (namespacePath !== "Sys")) {
                Sys.__rootNamespaces[Sys.__rootNamespaces.length] = ns;
            }
            ns.__namespace = true;
            ns.__typeName = namespaceParts.slice(0, i + 1).join('.');
            var parsedName;
            try {
                parsedName = eval(ns.__typeName);
            }
            catch(e) {
                parsedName = null;
            }
            if (parsedName !== ns) {
                delete rootObject[currentPart];
                throw Error.argument('namespacePath', Sys.Res.invalidNameSpace);
            }
            ns.getName = function ns$getName() {return this.__typeName;}
        }
        rootObject = ns;
    }
}
Type._checkDependency = function Type$_checkDependency(dependency, featureName) {
    var scripts = Type._registerScript._scripts, isDependent = (scripts ? (!!scripts[dependency]) : false);
    if ((typeof(featureName) !== 'undefined') && !isDependent) {
        throw Error.invalidOperation(String.format(Sys.Res.requiredScriptReferenceNotIncluded, 
        featureName, dependency));
    }
    return isDependent;
}
Type._registerScript = function Type$_registerScript(scriptName, dependencies) {
    var scripts = Type._registerScript._scripts;
    if (!scripts) {
        Type._registerScript._scripts = scripts = {};
    }
    if (scripts[scriptName]) {
        throw Error.invalidOperation(String.format(Sys.Res.scriptAlreadyLoaded, scriptName));
    }
    scripts[scriptName] = true;
    if (dependencies) {
        for (var i = 0, l = dependencies.length; i < l; i++) {
            var dependency = dependencies[i];
            if (!Type._checkDependency(dependency)) {
                throw Error.invalidOperation(String.format(Sys.Res.scriptDependencyNotFound, scriptName, dependency));
            }
        }
    }
}
Type._registerNamespace("Sys");
Sys.__upperCaseTypes = {};
Sys.__rootNamespaces = [Sys];
Sys.__registeredTypes = {};
Sys._isInstanceOfType = function Sys$_isInstanceOfType(type, instance) {
    if (typeof(instance) === "undefined" || instance === null) return false;
    if (instance instanceof type) return true;
    var instanceType = Object.getType(instance);
    return !!(instanceType === type) ||
           (instanceType.inheritsFrom && instanceType.inheritsFrom(type)) ||
           (instanceType.implementsInterface && instanceType.implementsInterface(type));
}
Sys._getBaseMethod = function Sys$_getBaseMethod(type, instance, name) {
    if (!Sys._isInstanceOfType(type, instance)) throw Error.argumentType('instance', Object.getType(instance), type);
    var baseType = type.getBaseType();
    if (baseType) {
        var baseMethod = baseType.prototype[name];
        return (baseMethod instanceof Function) ? baseMethod : null;
    }
    return null;
}
Sys._isDomElement = function Sys$_isDomElement(obj) {
    var val = false;
    if (typeof (obj.nodeType) !== 'number') {
        var doc = obj.ownerDocument || obj.document || obj;
        if (doc != obj) {
            var w = doc.defaultView || doc.parentWindow;
            val = (w != obj);
        }
        else {
            val = (typeof (doc.body) === 'undefined');
        }
    }
    return !val;
}
 
Array.__typeName = 'Array';
Array.__class = true;
Array.add = Array.enqueue = function Array$enqueue(array, item) {
    /// <summary locid="M:J#Array.enqueue" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <param name="item" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    array[array.length] = item;
}
Array.addRange = function Array$addRange(array, items) {
    /// <summary locid="M:J#Array.addRange" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <param name="items" type="Array" elementMayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "items", type: Array, elementMayBeNull: true}
    ]);
    if (e) throw e;
    array.push.apply(array, items);
}
Array.clear = function Array$clear(array) {
    /// <summary locid="M:J#Array.clear" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true}
    ]);
    if (e) throw e;
    array.length = 0;
}
Array.clone = function Array$clone(array) {
    /// <summary locid="M:J#Array.clone" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <returns type="Array" elementMayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true}
    ]);
    if (e) throw e;
    if (array.length === 1) {
        return [array[0]];
    }
    else {
        return Array.apply(null, array);
    }
}
Array.contains = function Array$contains(array, item) {
    /// <summary locid="M:J#Array.contains" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <param name="item" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    return (Sys._indexOf(array, item) >= 0);
}
Array.dequeue = function Array$dequeue(array) {
    /// <summary locid="M:J#Array.dequeue" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <returns mayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true}
    ]);
    if (e) throw e;
    return array.shift();
}
Array.forEach = function Array$forEach(array, method, instance) {
    /// <summary locid="M:J#Array.forEach" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <param name="method" type="Function"></param>
    /// <param name="instance" optional="true" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "method", type: Function},
        {name: "instance", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    for (var i = 0, l = array.length; i < l; i++) {
        var elt = array[i];
        if (typeof(elt) !== 'undefined') method.call(instance, elt, i, array);
    }
}
Array.indexOf = function Array$indexOf(array, item, start) {
    /// <summary locid="M:J#Array.indexOf" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <param name="item" optional="true" mayBeNull="true"></param>
    /// <param name="start" optional="true" mayBeNull="true"></param>
    /// <returns type="Number"></returns>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "item", mayBeNull: true, optional: true},
        {name: "start", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    return Sys._indexOf(array, item, start);
}
Array.insert = function Array$insert(array, index, item) {
    /// <summary locid="M:J#Array.insert" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <param name="index" mayBeNull="true"></param>
    /// <param name="item" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "index", mayBeNull: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    array.splice(index, 0, item);
}
Array.parse = function Array$parse(value) {
    /// <summary locid="M:J#Array.parse" />
    /// <param name="value" type="String" mayBeNull="true"></param>
    /// <returns type="Array" elementMayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "value", type: String, mayBeNull: true}
    ]);
    if (e) throw e;
    if (!value) return [];
    var v = eval(value);
    if (!Array.isInstanceOfType(v)) throw Error.argument('value', Sys.Res.arrayParseBadFormat);
    return v;
}
Array.remove = function Array$remove(array, item) {
    /// <summary locid="M:J#Array.remove" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <param name="item" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    var index = Sys._indexOf(array, item);
    if (index >= 0) {
        array.splice(index, 1);
    }
    return (index >= 0);
}
Array.removeAt = function Array$removeAt(array, index) {
    /// <summary locid="M:J#Array.removeAt" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <param name="index" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "index", mayBeNull: true}
    ]);
    if (e) throw e;
    array.splice(index, 1);
}
Sys._indexOf = function Sys$_indexOf(array, item, start) {
    if (typeof(item) === "undefined") return -1;
    var length = array.length;
    if (length !== 0) {
        start = start - 0;
        if (isNaN(start)) {
            start = 0;
        }
        else {
            if (isFinite(start)) {
                start = start - (start % 1);
            }
            if (start < 0) {
                start = Math.max(0, length + start);
            }
        }
        for (var i = start; i < length; i++) {
            if ((typeof(array[i]) !== "undefined") && (array[i] === item)) {
                return i;
            }
        }
    }
    return -1;
}
Type._registerScript._scripts = {
	"MicrosoftAjaxCore.js": true,
	"MicrosoftAjaxGlobalization.js": true,
	"MicrosoftAjaxSerialization.js": true,
	"MicrosoftAjaxComponentModel.js": true,
	"MicrosoftAjaxHistory.js": true,
	"MicrosoftAjaxNetwork.js" : true,
	"MicrosoftAjaxWebServices.js": true };
 
Sys.IDisposable = function Sys$IDisposable() {
    throw Error.notImplemented();
}
    function Sys$IDisposable$dispose() {
        throw Error.notImplemented();
    }
Sys.IDisposable.prototype = {
    dispose: Sys$IDisposable$dispose
}
Sys.IDisposable.registerInterface('Sys.IDisposable');
 
Sys.StringBuilder = function Sys$StringBuilder(initialText) {
    /// <summary locid="M:J#Sys.StringBuilder.#ctor" />
    /// <param name="initialText" optional="true" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "initialText", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    this._parts = (typeof(initialText) !== 'undefined' && initialText !== null && initialText !== '') ?
        [initialText.toString()] : [];
    this._value = {};
    this._len = 0;
}
    function Sys$StringBuilder$append(text) {
        /// <summary locid="M:J#Sys.StringBuilder.append" />
        /// <param name="text" mayBeNull="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "text", mayBeNull: true}
        ]);
        if (e) throw e;
        this._parts[this._parts.length] = text;
    }
    function Sys$StringBuilder$appendLine(text) {
        /// <summary locid="M:J#Sys.StringBuilder.appendLine" />
        /// <param name="text" optional="true" mayBeNull="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "text", mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        this._parts[this._parts.length] =
            ((typeof(text) === 'undefined') || (text === null) || (text === '')) ?
            '\r\n' : text + '\r\n';
    }
    function Sys$StringBuilder$clear() {
        /// <summary locid="M:J#Sys.StringBuilder.clear" />
        if (arguments.length !== 0) throw Error.parameterCount();
        this._parts = [];
        this._value = {};
        this._len = 0;
    }
    function Sys$StringBuilder$isEmpty() {
        /// <summary locid="M:J#Sys.StringBuilder.isEmpty" />
        /// <returns type="Boolean"></returns>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this._parts.length === 0) return true;
        return this.toString() === '';
    }
    function Sys$StringBuilder$toString(separator) {
        /// <summary locid="M:J#Sys.StringBuilder.toString" />
        /// <param name="separator" type="String" optional="true" mayBeNull="true"></param>
        /// <returns type="String"></returns>
        var e = Function._validateParams(arguments, [
            {name: "separator", type: String, mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        separator = separator || '';
        var parts = this._parts;
        if (this._len !== parts.length) {
            this._value = {};
            this._len = parts.length;
        }
        var val = this._value;
        if (typeof(val[separator]) === 'undefined') {
            if (separator !== '') {
                for (var i = 0; i < parts.length;) {
                    if ((typeof(parts[i]) === 'undefined') || (parts[i] === '') || (parts[i] === null)) {
                        parts.splice(i, 1);
                    }
                    else {
                        i++;
                    }
                }
            }
            val[separator] = this._parts.join(separator);
        }
        return val[separator];
    }
Sys.StringBuilder.prototype = {
    append: Sys$StringBuilder$append,
    appendLine: Sys$StringBuilder$appendLine,
    clear: Sys$StringBuilder$clear,
    isEmpty: Sys$StringBuilder$isEmpty,
    toString: Sys$StringBuilder$toString
}
Sys.StringBuilder.registerClass('Sys.StringBuilder');
 
Sys.Browser = {};
Sys.Browser.InternetExplorer = {};
Sys.Browser.Firefox = {};
Sys.Browser.Safari = {};
Sys.Browser.Opera = {};
Sys.Browser.agent = null;
Sys.Browser.hasDebuggerStatement = false;
Sys.Browser.name = navigator.appName;
Sys.Browser.version = parseFloat(navigator.appVersion);
Sys.Browser.documentMode = 0;
if (navigator.userAgent.indexOf(' MSIE ') > -1) {
    Sys.Browser.agent = Sys.Browser.InternetExplorer;
    Sys.Browser.version = parseFloat(navigator.userAgent.match(/MSIE (\d+\.\d+)/)[1]);
    if (Sys.Browser.version >= 8) {
        if (document.documentMode >= 7) {
            Sys.Browser.documentMode = document.documentMode;    
        }
    }
    Sys.Browser.hasDebuggerStatement = true;
}
else if (navigator.userAgent.indexOf(' Firefox/') > -1) {
    Sys.Browser.agent = Sys.Browser.Firefox;
    Sys.Browser.version = parseFloat(navigator.userAgent.match(/ Firefox\/(\d+\.\d+)/)[1]);
    Sys.Browser.name = 'Firefox';
    Sys.Browser.hasDebuggerStatement = true;
}
else if (navigator.userAgent.indexOf(' AppleWebKit/') > -1) {
    Sys.Browser.agent = Sys.Browser.Safari;
    Sys.Browser.version = parseFloat(navigator.userAgent.match(/ AppleWebKit\/(\d+(\.\d+)?)/)[1]);
    Sys.Browser.name = 'Safari';
}
else if (navigator.userAgent.indexOf('Opera/') > -1) {
    Sys.Browser.agent = Sys.Browser.Opera;
}
 
Sys.EventArgs = function Sys$EventArgs() {
    /// <summary locid="M:J#Sys.EventArgs.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
}
Sys.EventArgs.registerClass('Sys.EventArgs');
Sys.EventArgs.Empty = new Sys.EventArgs();
 
Sys.CancelEventArgs = function Sys$CancelEventArgs() {
    /// <summary locid="M:J#Sys.CancelEventArgs.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    Sys.CancelEventArgs.initializeBase(this);
    this._cancel = false;
}
    function Sys$CancelEventArgs$get_cancel() {
        /// <value type="Boolean" locid="P:J#Sys.CancelEventArgs.cancel"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._cancel;
    }
    function Sys$CancelEventArgs$set_cancel(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
        if (e) throw e;
        this._cancel = value;
    }
Sys.CancelEventArgs.prototype = {
    get_cancel: Sys$CancelEventArgs$get_cancel,
    set_cancel: Sys$CancelEventArgs$set_cancel
}
Sys.CancelEventArgs.registerClass('Sys.CancelEventArgs', Sys.EventArgs);
Type.registerNamespace('Sys.UI');
 
Sys._Debug = function Sys$_Debug() {
    /// <summary locid="M:J#Sys.Debug.#ctor" />
    /// <field name="isDebug" type="Boolean" locid="F:J#Sys.Debug.isDebug"></field>
    if (arguments.length !== 0) throw Error.parameterCount();
}
    function Sys$_Debug$_appendConsole(text) {
        if ((typeof(Debug) !== 'undefined') && Debug.writeln) {
            Debug.writeln(text);
        }
        if (window.console && window.console.log) {
            window.console.log(text);
        }
        if (window.opera) {
            window.opera.postError(text);
        }
        if (window.debugService) {
            window.debugService.trace(text);
        }
    }
    function Sys$_Debug$_appendTrace(text) {
        var traceElement = document.getElementById('TraceConsole');
        if (traceElement && (traceElement.tagName.toUpperCase() === 'TEXTAREA')) {
            traceElement.value += text + '\n';
        }
    }
    function Sys$_Debug$assert(condition, message, displayCaller) {
        /// <summary locid="M:J#Sys.Debug.assert" />
        /// <param name="condition" type="Boolean"></param>
        /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
        /// <param name="displayCaller" type="Boolean" optional="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "condition", type: Boolean},
            {name: "message", type: String, mayBeNull: true, optional: true},
            {name: "displayCaller", type: Boolean, optional: true}
        ]);
        if (e) throw e;
        if (!condition) {
            message = (displayCaller && this.assert.caller) ?
                String.format(Sys.Res.assertFailedCaller, message, this.assert.caller) :
                String.format(Sys.Res.assertFailed, message);
            if (confirm(String.format(Sys.Res.breakIntoDebugger, message))) {
                this.fail(message);
            }
        }
    }
    function Sys$_Debug$clearTrace() {
        /// <summary locid="M:J#Sys.Debug.clearTrace" />
        if (arguments.length !== 0) throw Error.parameterCount();
        var traceElement = document.getElementById('TraceConsole');
        if (traceElement && (traceElement.tagName.toUpperCase() === 'TEXTAREA')) {
            traceElement.value = '';
        }
    }
    function Sys$_Debug$fail(message) {
        /// <summary locid="M:J#Sys.Debug.fail" />
        /// <param name="message" type="String" mayBeNull="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "message", type: String, mayBeNull: true}
        ]);
        if (e) throw e;
        this._appendConsole(message);
        if (Sys.Browser.hasDebuggerStatement) {
            eval('debugger');
        }
    }
    function Sys$_Debug$trace(text) {
        /// <summary locid="M:J#Sys.Debug.trace" />
        /// <param name="text"></param>
        var e = Function._validateParams(arguments, [
            {name: "text"}
        ]);
        if (e) throw e;
        this._appendConsole(text);
        this._appendTrace(text);
    }
    function Sys$_Debug$traceDump(object, name) {
        /// <summary locid="M:J#Sys.Debug.traceDump" />
        /// <param name="object" mayBeNull="true"></param>
        /// <param name="name" type="String" mayBeNull="true" optional="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "object", mayBeNull: true},
            {name: "name", type: String, mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        var text = this._traceDump(object, name, true);
    }
    function Sys$_Debug$_traceDump(object, name, recursive, indentationPadding, loopArray) {
        name = name? name : 'traceDump';
        indentationPadding = indentationPadding? indentationPadding : '';
        if (object === null) {
            this.trace(indentationPadding + name + ': null');
            return;
        }
        switch(typeof(object)) {
            case 'undefined':
                this.trace(indentationPadding + name + ': Undefined');
                break;
            case 'number': case 'string': case 'boolean':
                this.trace(indentationPadding + name + ': ' + object);
                break;
            default:
                if (Date.isInstanceOfType(object) || RegExp.isInstanceOfType(object)) {
                    this.trace(indentationPadding + name + ': ' + object.toString());
                    break;
                }
                if (!loopArray) {
                    loopArray = [];
                }
                else if (Array.contains(loopArray, object)) {
                    this.trace(indentationPadding + name + ': ...');
                    return;
                }
                Array.add(loopArray, object);
                if ((object == window) || (object === document) ||
                    (window.HTMLElement && (object instanceof HTMLElement)) ||
                    (typeof(object.nodeName) === 'string')) {
                    var tag = object.tagName? object.tagName : 'DomElement';
                    if (object.id) {
                        tag += ' - ' + object.id;
                    }
                    this.trace(indentationPadding + name + ' {' +  tag + '}');
                }
                else {
                    var typeName = Object.getTypeName(object);
                    this.trace(indentationPadding + name + (typeof(typeName) === 'string' ? ' {' + typeName + '}' : ''));
                    if ((indentationPadding === '') || recursive) {
                        indentationPadding += "    ";
                        var i, length, properties, p, v;
                        if (Array.isInstanceOfType(object)) {
                            length = object.length;
                            for (i = 0; i < length; i++) {
                                this._traceDump(object[i], '[' + i + ']', recursive, indentationPadding, loopArray);
                            }
                        }
                        else {
                            for (p in object) {
                                v = object[p];
                                if (!Function.isInstanceOfType(v)) {
                                    this._traceDump(v, p, recursive, indentationPadding, loopArray);
                                }
                            }
                        }
                    }
                }
                Array.remove(loopArray, object);
        }
    }
Sys._Debug.prototype = {
    _appendConsole: Sys$_Debug$_appendConsole,
    _appendTrace: Sys$_Debug$_appendTrace,
    assert: Sys$_Debug$assert,
    clearTrace: Sys$_Debug$clearTrace,
    fail: Sys$_Debug$fail,
    trace: Sys$_Debug$trace,
    traceDump: Sys$_Debug$traceDump,
    _traceDump: Sys$_Debug$_traceDump
}
Sys._Debug.registerClass('Sys._Debug');
Sys.Debug = new Sys._Debug();
    Sys.Debug.isDebug = true;
 
function Sys$Enum$parse(value, ignoreCase) {
    /// <summary locid="M:J#Sys.Enum.parse" />
    /// <param name="value" type="String"></param>
    /// <param name="ignoreCase" type="Boolean" optional="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "value", type: String},
        {name: "ignoreCase", type: Boolean, optional: true}
    ]);
    if (e) throw e;
    var values, parsed, val;
    if (ignoreCase) {
        values = this.__lowerCaseValues;
        if (!values) {
            this.__lowerCaseValues = values = {};
            var prototype = this.prototype;
            for (var name in prototype) {
                values[name.toLowerCase()] = prototype[name];
            }
        }
    }
    else {
        values = this.prototype;
    }
    if (!this.__flags) {
        val = (ignoreCase ? value.toLowerCase() : value);
        parsed = values[val.trim()];
        if (typeof(parsed) !== 'number') throw Error.argument('value', String.format(Sys.Res.enumInvalidValue, value, this.__typeName));
        return parsed;
    }
    else {
        var parts = (ignoreCase ? value.toLowerCase() : value).split(',');
        var v = 0;
        for (var i = parts.length - 1; i >= 0; i--) {
            var part = parts[i].trim();
            parsed = values[part];
            if (typeof(parsed) !== 'number') throw Error.argument('value', String.format(Sys.Res.enumInvalidValue, value.split(',')[i].trim(), this.__typeName));
            v |= parsed;
        }
        return v;
    }
}
function Sys$Enum$toString(value) {
    /// <summary locid="M:J#Sys.Enum.toString" />
    /// <param name="value" optional="true" mayBeNull="true"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "value", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    if ((typeof(value) === 'undefined') || (value === null)) return this.__string;
    if ((typeof(value) != 'number') || ((value % 1) !== 0)) throw Error.argumentType('value', Object.getType(value), this);
    var values = this.prototype;
    var i;
    if (!this.__flags || (value === 0)) {
        for (i in values) {
            if (values[i] === value) {
                return i;
            }
        }
    }
    else {
        var sorted = this.__sortedValues;
        if (!sorted) {
            sorted = [];
            for (i in values) {
                sorted[sorted.length] = {key: i, value: values[i]};
            }
            sorted.sort(function(a, b) {
                return a.value - b.value;
            });
            this.__sortedValues = sorted;
        }
        var parts = [];
        var v = value;
        for (i = sorted.length - 1; i >= 0; i--) {
            var kvp = sorted[i];
            var vali = kvp.value;
            if (vali === 0) continue;
            if ((vali & value) === vali) {
                parts[parts.length] = kvp.key;
                v -= vali;
                if (v === 0) break;
            }
        }
        if (parts.length && v === 0) return parts.reverse().join(', ');
    }
    throw Error.argumentOutOfRange('value', value, String.format(Sys.Res.enumInvalidValue, value, this.__typeName));
}
Type.prototype.registerEnum = function Type$registerEnum(name, flags) {
    /// <summary locid="M:J#Sys.UI.LineType.#ctor" />
    /// <param name="name" type="String"></param>
    /// <param name="flags" type="Boolean" optional="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "name", type: String},
        {name: "flags", type: Boolean, optional: true}
    ]);
    if (e) throw e;
    if (!Type.__fullyQualifiedIdentifierRegExp.test(name)) throw Error.argument('name', Sys.Res.notATypeName);
    var parsedName;
    try {
        parsedName = eval(name);
    }
    catch(e) {
        throw Error.argument('name', Sys.Res.argumentTypeName);
    }
    if (parsedName !== this) throw Error.argument('name', Sys.Res.badTypeName);
    if (Sys.__registeredTypes[name]) throw Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice, name));
    for (var j in this.prototype) {
        var val = this.prototype[j];
        if (!Type.__identifierRegExp.test(j)) throw Error.invalidOperation(String.format(Sys.Res.enumInvalidValueName, j));
        if (typeof(val) !== 'number' || (val % 1) !== 0) throw Error.invalidOperation(Sys.Res.enumValueNotInteger);
        if (typeof(this[j]) !== 'undefined') throw Error.invalidOperation(String.format(Sys.Res.enumReservedName, j));
    }
    Sys.__upperCaseTypes[name.toUpperCase()] = this;
    for (var i in this.prototype) {
        this[i] = this.prototype[i];
    }
    this.__typeName = name;
    this.parse = Sys$Enum$parse;
    this.__string = this.toString();
    this.toString = Sys$Enum$toString;
    this.__flags = flags;
    this.__enum = true;
    Sys.__registeredTypes[name] = true;
}
Type.isEnum = function Type$isEnum(type) {
    /// <summary locid="M:J#Type.isEnum" />
    /// <param name="type" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "type", mayBeNull: true}
    ]);
    if (e) throw e;
    if ((typeof(type) === 'undefined') || (type === null)) return false;
    return !!type.__enum;
}
Type.isFlags = function Type$isFlags(type) {
    /// <summary locid="M:J#Type.isFlags" />
    /// <param name="type" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "type", mayBeNull: true}
    ]);
    if (e) throw e;
    if ((typeof(type) === 'undefined') || (type === null)) return false;
    return !!type.__flags;
}
Sys.CollectionChange = function Sys$CollectionChange(action, newItems, newStartingIndex, oldItems, oldStartingIndex) {
    /// <summary locid="M:J#Sys.CollectionChange.#ctor" />
    /// <param name="action" type="Sys.NotifyCollectionChangedAction"></param>
    /// <param name="newItems" optional="true" mayBeNull="true"></param>
    /// <param name="newStartingIndex" type="Number" integer="true" optional="true" mayBeNull="true"></param>
    /// <param name="oldItems" optional="true" mayBeNull="true"></param>
    /// <param name="oldStartingIndex" type="Number" integer="true" optional="true" mayBeNull="true"></param>
    /// <field name="action" type="Sys.NotifyCollectionChangedAction" locid="F:J#Sys.CollectionChange.action"></field>
    /// <field name="newItems" type="Array" mayBeNull="true" elementMayBeNull="true" locid="F:J#Sys.CollectionChange.newItems"></field>
    /// <field name="newStartingIndex" type="Number" integer="true" locid="F:J#Sys.CollectionChange.newStartingIndex"></field>
    /// <field name="oldItems" type="Array" mayBeNull="true" elementMayBeNull="true" locid="F:J#Sys.CollectionChange.oldItems"></field>
    /// <field name="oldStartingIndex" type="Number" integer="true" locid="F:J#Sys.CollectionChange.oldStartingIndex"></field>
    var e = Function._validateParams(arguments, [
        {name: "action", type: Sys.NotifyCollectionChangedAction},
        {name: "newItems", mayBeNull: true, optional: true},
        {name: "newStartingIndex", type: Number, mayBeNull: true, integer: true, optional: true},
        {name: "oldItems", mayBeNull: true, optional: true},
        {name: "oldStartingIndex", type: Number, mayBeNull: true, integer: true, optional: true}
    ]);
    if (e) throw e;
    this.action = action;
    if (newItems) {
        if (!(newItems instanceof Array)) {
            newItems = [newItems];
        }
    }
    this.newItems = newItems || null;
    if (typeof newStartingIndex !== "number") {
        newStartingIndex = -1;
    }
    this.newStartingIndex = newStartingIndex;
    if (oldItems) {
        if (!(oldItems instanceof Array)) {
            oldItems = [oldItems];
        }
    }
    this.oldItems = oldItems || null;
    if (typeof oldStartingIndex !== "number") {
        oldStartingIndex = -1;
    }
    this.oldStartingIndex = oldStartingIndex;
}
Sys.CollectionChange.registerClass("Sys.CollectionChange");
Sys.NotifyCollectionChangedAction = function Sys$NotifyCollectionChangedAction() {
    /// <summary locid="M:J#Sys.NotifyCollectionChangedAction.#ctor" />
    /// <field name="add" type="Number" integer="true" static="true" locid="F:J#Sys.NotifyCollectionChangedAction.add"></field>
    /// <field name="remove" type="Number" integer="true" static="true" locid="F:J#Sys.NotifyCollectionChangedAction.remove"></field>
    /// <field name="reset" type="Number" integer="true" static="true" locid="F:J#Sys.NotifyCollectionChangedAction.reset"></field>
    if (arguments.length !== 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
Sys.NotifyCollectionChangedAction.prototype = {
    add: 0,
    remove: 1,
    reset: 2
}
Sys.NotifyCollectionChangedAction.registerEnum('Sys.NotifyCollectionChangedAction');
Sys.NotifyCollectionChangedEventArgs = function Sys$NotifyCollectionChangedEventArgs(changes) {
    /// <summary locid="M:J#Sys.NotifyCollectionChangedEventArgs.#ctor" />
    /// <param name="changes" type="Array" elementType="Sys.CollectionChange"></param>
    var e = Function._validateParams(arguments, [
        {name: "changes", type: Array, elementType: Sys.CollectionChange}
    ]);
    if (e) throw e;
    this._changes = changes;
    Sys.NotifyCollectionChangedEventArgs.initializeBase(this);
}
    function Sys$NotifyCollectionChangedEventArgs$get_changes() {
        /// <value type="Array" elementType="Sys.CollectionChange" locid="P:J#Sys.NotifyCollectionChangedEventArgs.changes"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._changes || [];
    }
Sys.NotifyCollectionChangedEventArgs.prototype = {
    get_changes: Sys$NotifyCollectionChangedEventArgs$get_changes
}
Sys.NotifyCollectionChangedEventArgs.registerClass("Sys.NotifyCollectionChangedEventArgs", Sys.EventArgs);
Sys.Observer = function Sys$Observer() {
    throw Error.invalidOperation();
}
Sys.Observer.registerClass("Sys.Observer");
Sys.Observer.makeObservable = function Sys$Observer$makeObservable(target) {
    /// <summary locid="M:J#Sys.Observer.makeObservable" />
    /// <param name="target" mayBeNull="false"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "target"}
    ]);
    if (e) throw e;
    var isArray = target instanceof Array,
        o = Sys.Observer;
    Sys.Observer._ensureObservable(target);
    if (target.setValue === o._observeMethods.setValue) return target;
    o._addMethods(target, o._observeMethods);
    if (isArray) {
        o._addMethods(target, o._arrayMethods);
    }
    return target;
}
Sys.Observer._ensureObservable = function Sys$Observer$_ensureObservable(target) {
    var type = typeof target;
    if ((type === "string") || (type === "number") || (type === "boolean") || (type === "date")) {
        throw Error.invalidOperation(String.format(Sys.Res.notObservable, type));
    }
}
Sys.Observer._addMethods = function Sys$Observer$_addMethods(target, methods) {
    for (var m in methods) {
        if (target[m] && (target[m] !== methods[m])) {
            throw Error.invalidOperation(String.format(Sys.Res.observableConflict, m));
        }
        target[m] = methods[m];
    }
}
Sys.Observer._addEventHandler = function Sys$Observer$_addEventHandler(target, eventName, handler) {
    Sys.Observer._getContext(target, true).events._addHandler(eventName, handler);
}
Sys.Observer.addEventHandler = function Sys$Observer$addEventHandler(target, eventName, handler) {
    /// <summary locid="M:J#Sys.Observer.addEventHandler" />
    /// <param name="target"></param>
    /// <param name="eventName" type="String"></param>
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"},
        {name: "eventName", type: String},
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    Sys.Observer._addEventHandler(target, eventName, handler);
}
Sys.Observer._removeEventHandler = function Sys$Observer$_removeEventHandler(target, eventName, handler) {
    Sys.Observer._getContext(target, true).events._removeHandler(eventName, handler);
}
Sys.Observer.removeEventHandler = function Sys$Observer$removeEventHandler(target, eventName, handler) {
    /// <summary locid="M:J#Sys.Observer.removeEventHandler" />
    /// <param name="target"></param>
    /// <param name="eventName" type="String"></param>
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"},
        {name: "eventName", type: String},
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    Sys.Observer._removeEventHandler(target, eventName, handler);
}
Sys.Observer.raiseEvent = function Sys$Observer$raiseEvent(target, eventName, eventArgs) {
    /// <summary locid="M:J#Sys.Observer.raiseEvent" />
    /// <param name="target"></param>
    /// <param name="eventName" type="String"></param>
    /// <param name="eventArgs" type="Sys.EventArgs"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"},
        {name: "eventName", type: String},
        {name: "eventArgs", type: Sys.EventArgs}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    var ctx = Sys.Observer._getContext(target);
    if (!ctx) return;
    var handler = ctx.events.getHandler(eventName);
    if (handler) {
        handler(target, eventArgs);
    }
}
Sys.Observer.addPropertyChanged = function Sys$Observer$addPropertyChanged(target, handler) {
    /// <summary locid="M:J#Sys.Observer.addPropertyChanged" />
    /// <param name="target" mayBeNull="false"></param>
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"},
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    Sys.Observer._addEventHandler(target, "propertyChanged", handler);
}
Sys.Observer.removePropertyChanged = function Sys$Observer$removePropertyChanged(target, handler) {
    /// <summary locid="M:J#Sys.Observer.removePropertyChanged" />
    /// <param name="target" mayBeNull="false"></param>
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"},
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    Sys.Observer._removeEventHandler(target, "propertyChanged", handler);
}
Sys.Observer.beginUpdate = function Sys$Observer$beginUpdate(target) {
    /// <summary locid="M:J#Sys.Observer.beginUpdate" />
    /// <param name="target" mayBeNull="false"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    Sys.Observer._getContext(target, true).updating = true;
}
Sys.Observer.endUpdate = function Sys$Observer$endUpdate(target) {
    /// <summary locid="M:J#Sys.Observer.endUpdate" />
    /// <param name="target" mayBeNull="false"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    var ctx = Sys.Observer._getContext(target);
    if (!ctx || !ctx.updating) return;
    ctx.updating = false;
    var dirty = ctx.dirty;
    ctx.dirty = false;
    if (dirty) {
        if (target instanceof Array) {
            var changes = ctx.changes;
            ctx.changes = null;
            Sys.Observer.raiseCollectionChanged(target, changes);
        }
        Sys.Observer.raisePropertyChanged(target, "");
    }
}
Sys.Observer.isUpdating = function Sys$Observer$isUpdating(target) {
    /// <summary locid="M:J#Sys.Observer.isUpdating" />
    /// <param name="target" mayBeNull="false"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "target"}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    var ctx = Sys.Observer._getContext(target);
    return ctx ? ctx.updating : false;
}
Sys.Observer._setValue = function Sys$Observer$_setValue(target, propertyName, value) {
    var getter, setter, mainTarget = target, path = propertyName.split('.');
    for (var i = 0, l = (path.length - 1); i < l ; i++) {
        var name = path[i];
        getter = target["get_" + name]; 
        if (typeof (getter) === "function") {
            target = getter.call(target);
        }
        else {
            target = target[name];
        }
        var type = typeof (target);
        if ((target === null) || (type === "undefined")) {
            throw Error.invalidOperation(String.format(Sys.Res.nullReferenceInPath, propertyName));
        }
    }    
    var currentValue, lastPath = path[l];
    getter = target["get_" + lastPath];
    setter = target["set_" + lastPath];
    if (typeof(getter) === 'function') {
        currentValue = getter.call(target);
    }
    else {
        currentValue = target[lastPath];
    }
    if (typeof(setter) === 'function') {
        setter.call(target, value);
    }
    else {
        target[lastPath] = value;
    }
    if (currentValue !== value) {
        var ctx = Sys.Observer._getContext(mainTarget);
        if (ctx && ctx.updating) {
            ctx.dirty = true;
            return;
        };
        Sys.Observer.raisePropertyChanged(mainTarget, path[0]);
    }
}
Sys.Observer.setValue = function Sys$Observer$setValue(target, propertyName, value) {
    /// <summary locid="M:J#Sys.Observer.setValue" />
    /// <param name="target" mayBeNull="false"></param>
    /// <param name="propertyName" type="String"></param>
    /// <param name="value" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"},
        {name: "propertyName", type: String},
        {name: "value", mayBeNull: true}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    Sys.Observer._setValue(target, propertyName, value);
}
Sys.Observer.raisePropertyChanged = function Sys$Observer$raisePropertyChanged(target, propertyName) {
    /// <summary locid="M:J#Sys.Observer.raisePropertyChanged" />
    /// <param name="target" mayBeNull="false"></param>
    /// <param name="propertyName" type="String"></param>
    Sys.Observer.raiseEvent(target, "propertyChanged", new Sys.PropertyChangedEventArgs(propertyName));
}
Sys.Observer.addCollectionChanged = function Sys$Observer$addCollectionChanged(target, handler) {
    /// <summary locid="M:J#Sys.Observer.addCollectionChanged" />
    /// <param name="target" type="Array" elementMayBeNull="true"></param>
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "target", type: Array, elementMayBeNull: true},
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    Sys.Observer._addEventHandler(target, "collectionChanged", handler);
}
Sys.Observer.removeCollectionChanged = function Sys$Observer$removeCollectionChanged(target, handler) {
    /// <summary locid="M:J#Sys.Observer.removeCollectionChanged" />
    /// <param name="target" type="Array" elementMayBeNull="true"></param>
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "target", type: Array, elementMayBeNull: true},
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    Sys.Observer._removeEventHandler(target, "collectionChanged", handler);
}
Sys.Observer._collectionChange = function Sys$Observer$_collectionChange(target, change) {
    var ctx = Sys.Observer._getContext(target);
    if (ctx && ctx.updating) {
        ctx.dirty = true;
        var changes = ctx.changes;
        if (!changes) {
            ctx.changes = changes = [change];
        }
        else {
            changes.push(change);
        }
    }
    else {
        Sys.Observer.raiseCollectionChanged(target, [change]);
        Sys.Observer.raisePropertyChanged(target, 'length');
    }
}
Sys.Observer.add = function Sys$Observer$add(target, item) {
    /// <summary locid="M:J#Sys.Observer.add" />
    /// <param name="target" type="Array" elementMayBeNull="true"></param>
    /// <param name="item" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "target", type: Array, elementMayBeNull: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    var change = new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.add, [item], target.length);
    Array.add(target, item);
    Sys.Observer._collectionChange(target, change);
}
Sys.Observer.addRange = function Sys$Observer$addRange(target, items) {
    /// <summary locid="M:J#Sys.Observer.addRange" />
    /// <param name="target" type="Array" elementMayBeNull="true"></param>
    /// <param name="items" type="Array" elementMayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "target", type: Array, elementMayBeNull: true},
        {name: "items", type: Array, elementMayBeNull: true}
    ]);
    if (e) throw e;
    var change = new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.add, items, target.length);
    Array.addRange(target, items);
    Sys.Observer._collectionChange(target, change);
}
Sys.Observer.clear = function Sys$Observer$clear(target) {
    /// <summary locid="M:J#Sys.Observer.clear" />
    /// <param name="target" type="Array" elementMayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "target", type: Array, elementMayBeNull: true}
    ]);
    if (e) throw e;
    var oldItems = Array.clone(target);
    Array.clear(target);
    Sys.Observer._collectionChange(target, new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.reset, null, -1, oldItems, 0));
}
Sys.Observer.insert = function Sys$Observer$insert(target, index, item) {
    /// <summary locid="M:J#Sys.Observer.insert" />
    /// <param name="target" type="Array" elementMayBeNull="true"></param>
    /// <param name="index" type="Number" integer="true"></param>
    /// <param name="item" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "target", type: Array, elementMayBeNull: true},
        {name: "index", type: Number, integer: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    Array.insert(target, index, item);
    Sys.Observer._collectionChange(target, new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.add, [item], index));
}
Sys.Observer.remove = function Sys$Observer$remove(target, item) {
    /// <summary locid="M:J#Sys.Observer.remove" />
    /// <param name="target" type="Array" elementMayBeNull="true"></param>
    /// <param name="item" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "target", type: Array, elementMayBeNull: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    var index = Array.indexOf(target, item);
    if (index !== -1) {
        Array.remove(target, item);
        Sys.Observer._collectionChange(target, new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.remove, null, -1, [item], index));
        return true;
    }
    return false;
}
Sys.Observer.removeAt = function Sys$Observer$removeAt(target, index) {
    /// <summary locid="M:J#Sys.Observer.removeAt" />
    /// <param name="target" type="Array" elementMayBeNull="true"></param>
    /// <param name="index" type="Number" integer="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "target", type: Array, elementMayBeNull: true},
        {name: "index", type: Number, integer: true}
    ]);
    if (e) throw e;
    if ((index > -1) && (index < target.length)) {
        var item = target[index];
        Array.removeAt(target, index);
        Sys.Observer._collectionChange(target, new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.remove, null, -1, [item], index));
    }
}
Sys.Observer.raiseCollectionChanged = function Sys$Observer$raiseCollectionChanged(target, changes) {
    /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
    /// <param name="target"></param>
    /// <param name="changes" type="Array" elementType="Sys.CollectionChange"></param>
    Sys.Observer.raiseEvent(target, "collectionChanged", new Sys.NotifyCollectionChangedEventArgs(changes));
}
Sys.Observer._observeMethods = {
    add_propertyChanged: function(handler) {
        Sys.Observer._addEventHandler(this, "propertyChanged", handler);
    },
    remove_propertyChanged: function(handler) {
        Sys.Observer._removeEventHandler(this, "propertyChanged", handler);
    },
    addEventHandler: function(eventName, handler) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="eventName" type="String"></param>
        /// <param name="handler" type="Function"></param>
        var e = Function._validateParams(arguments, [
            {name: "eventName", type: String},
            {name: "handler", type: Function}
        ]);
        if (e) throw e;
        Sys.Observer._addEventHandler(this, eventName, handler);
    },
    removeEventHandler: function(eventName, handler) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="eventName" type="String"></param>
        /// <param name="handler" type="Function"></param>
        var e = Function._validateParams(arguments, [
            {name: "eventName", type: String},
            {name: "handler", type: Function}
        ]);
        if (e) throw e;
        Sys.Observer._removeEventHandler(this, eventName, handler);
    },
    get_isUpdating: function() {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <returns type="Boolean"></returns>
        return Sys.Observer.isUpdating(this);
    },
    beginUpdate: function() {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        Sys.Observer.beginUpdate(this);
    },
    endUpdate: function() {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        Sys.Observer.endUpdate(this);
    },
    setValue: function(name, value) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="name" type="String"></param>
        /// <param name="value" mayBeNull="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "name", type: String},
            {name: "value", mayBeNull: true}
        ]);
        if (e) throw e;
        Sys.Observer._setValue(this, name, value);
    },
    raiseEvent: function(eventName, eventArgs) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="eventName" type="String"></param>
        /// <param name="eventArgs" type="Sys.EventArgs"></param>
        Sys.Observer.raiseEvent(this, eventName, eventArgs);
    },
    raisePropertyChanged: function(name) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="name" type="String"></param>
        Sys.Observer.raiseEvent(this, "propertyChanged", new Sys.PropertyChangedEventArgs(name));
    }
}
Sys.Observer._arrayMethods = {
    add_collectionChanged: function(handler) {
        Sys.Observer._addEventHandler(this, "collectionChanged", handler);
    },
    remove_collectionChanged: function(handler) {
        Sys.Observer._removeEventHandler(this, "collectionChanged", handler);
    },
    add: function(item) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="item" mayBeNull="true"></param>
        Sys.Observer.add(this, item);
    },
    addRange: function(items) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="items" type="Array" elementMayBeNull="true"></param>
        Sys.Observer.addRange(this, items);
    },
    clear: function() {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        Sys.Observer.clear(this);
    },
    insert: function(index, item) { 
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="index" type="Number" integer="true"></param>
        /// <param name="item" mayBeNull="true"></param>
        Sys.Observer.insert(this, index, item);
    },
    remove: function(item) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="item" mayBeNull="true"></param>
        /// <returns type="Boolean"></returns>
        return Sys.Observer.remove(this, item);
    },
    removeAt: function(index) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="index" type="Number" integer="true"></param>
        Sys.Observer.removeAt(this, index);
    },
    raiseCollectionChanged: function(changes) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="changes" type="Array" elementType="Sys.CollectionChange"></param>
        Sys.Observer.raiseEvent(this, "collectionChanged", new Sys.NotifyCollectionChangedEventArgs(changes));
    }
}
Sys.Observer._getContext = function Sys$Observer$_getContext(obj, create) {
    var ctx = obj._observerContext;
    if (ctx) return ctx();
    if (create) {
        return (obj._observerContext = Sys.Observer._createContext())();
    }
    return null;
}
Sys.Observer._createContext = function Sys$Observer$_createContext() {
    var ctx = {
        events: new Sys.EventHandlerList()
    };
    return function() {
        return ctx;
    }
}
Date._appendPreOrPostMatch = function Date$_appendPreOrPostMatch(preMatch, strBuilder) {
    var quoteCount = 0;
    var escaped = false;
    for (var i = 0, il = preMatch.length; i < il; i++) {
        var c = preMatch.charAt(i);
        switch (c) {
        case '\'':
            if (escaped) strBuilder.append("'");
            else quoteCount++;
            escaped = false;
            break;
        case '\\':
            if (escaped) strBuilder.append("\\");
            escaped = !escaped;
            break;
        default:
            strBuilder.append(c);
            escaped = false;
            break;
        }
    }
    return quoteCount;
}
Date._expandFormat = function Date$_expandFormat(dtf, format) {
    if (!format) {
        format = "F";
    }
    var len = format.length;
    if (len === 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.LongDatePattern + " " + dtf.ShortTimePattern;
        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);
        }
    }
    else if ((len === 2) && (format.charAt(0) === "%")) {
        format = format.charAt(1);
    }
    return format;
}
Date._expandYear = function Date$_expandYear(dtf, year) {
    var now = new Date(),
        era = Date._getEra(now);
    if (year < 100) {
        var curr = Date._getEraYear(now, dtf, era);
        year += curr - (curr % 100);
        if (year > dtf.Calendar.TwoDigitYearMax) {
            year -= 100;
        }
    }
    return year;
}
Date._getEra = function Date$_getEra(date, eras) {
    if (!eras) return 0;
    var start, ticks = date.getTime();
    for (var i = 0, l = eras.length; i < l; i += 4) {
        start = eras[i+2];
        if ((start === null) || (ticks >= start)) {
            return i;
        }
    }
    return 0;
}
Date._getEraYear = function Date$_getEraYear(date, dtf, era, sortable) {
    var year = date.getFullYear();
    if (!sortable && dtf.eras) {
        year -= dtf.eras[era + 3];
    }    
    return year;
}
Date._getParseRegExp = function Date$_getParseRegExp(dtf, format) {
    if (!dtf._parseRegExp) {
        dtf._parseRegExp = {};
    }
    else if (dtf._parseRegExp[format]) {
        return dtf._parseRegExp[format];
    }
    var expFormat = Date._expandFormat(dtf, format);
    expFormat = expFormat.replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g, "\\\\$1");
    var regexp = new Sys.StringBuilder("^");
    var groups = [];
    var index = 0;
    var quoteCount = 0;
    var tokenRegExp = Date._getTokenRegExp();
    var match;
    while ((match = tokenRegExp.exec(expFormat)) !== null) {
        var preMatch = expFormat.slice(index, match.index);
        index = tokenRegExp.lastIndex;
        quoteCount += Date._appendPreOrPostMatch(preMatch, regexp);
        if ((quoteCount%2) === 1) {
            regexp.append(match[0]);
            continue;
        }
        switch (match[0]) {
            case 'dddd': case 'ddd':
            case 'MMMM': case 'MMM':
            case 'gg': case 'g':
                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;
            case '/':
                regexp.append("(\\" + dtf.DateSeparator + ")");
                break;
        }
        Array.add(groups, match[0]);
    }
    Date._appendPreOrPostMatch(expFormat.slice(index), regexp);
    regexp.append("$");
    var regexpStr = regexp.toString().replace(/\s+/g, "\\s+");
    var parseRegExp = {'regExp': regexpStr, 'groups': groups};
    dtf._parseRegExp[format] = parseRegExp;
    return parseRegExp;
}
Date._getTokenRegExp = function Date$_getTokenRegExp() {
    return /\/|dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z|gg|g/g;
}
Date.parseLocale = function Date$parseLocale(value, formats) {
    /// <summary locid="M:J#Date.parseLocale" />
    /// <param name="value" type="String"></param>
    /// <param name="formats" parameterArray="true" optional="true" mayBeNull="true"></param>
    /// <returns type="Date"></returns>
    var e = Function._validateParams(arguments, [
        {name: "value", type: String},
        {name: "formats", mayBeNull: true, optional: true, parameterArray: true}
    ]);
    if (e) throw e;
    return Date._parse(value, Sys.CultureInfo.CurrentCulture, arguments);
}
Date.parseInvariant = function Date$parseInvariant(value, formats) {
    /// <summary locid="M:J#Date.parseInvariant" />
    /// <param name="value" type="String"></param>
    /// <param name="formats" parameterArray="true" optional="true" mayBeNull="true"></param>
    /// <returns type="Date"></returns>
    var e = Function._validateParams(arguments, [
        {name: "value", type: String},
        {name: "formats", mayBeNull: true, optional: true, parameterArray: true}
    ]);
    if (e) throw e;
    return Date._parse(value, Sys.CultureInfo.InvariantCulture, arguments);
}
Date._parse = function Date$_parse(value, cultureInfo, args) {
    var i, l, date, format, formats, custom = false;
    for (i = 1, l = args.length; i < l; i++) {
        format = args[i];
        if (format) {
            custom = true;
            date = Date._parseExact(value, format, cultureInfo);
            if (date) return date;
        }
    }
    if (! custom) {
        formats = cultureInfo._getDateTimeFormats();
        for (i = 0, l = formats.length; i < l; i++) {
            date = Date._parseExact(value, formats[i], cultureInfo);
            if (date) return date;
        }
    }
    return null;
}
Date._parseExact = function Date$_parseExact(value, format, cultureInfo) {
    value = value.trim();
    var dtf = cultureInfo.dateTimeFormat,
        parseInfo = Date._getParseRegExp(dtf, format),
        match = new RegExp(parseInfo.regExp).exec(value);
    if (match === null) return null;
    
    var groups = parseInfo.groups,
        era = null, year = null, month = null, date = null, weekDay = null,
        hour = 0, hourOffset, min = 0, sec = 0, msec = 0, tzMinOffset = null,
        pmHour = false;
    for (var j = 0, jl = groups.length; j < jl; j++) {
        var matchGroup = match[j+1];
        if (matchGroup) {
            switch (groups[j]) {
                case 'dd': case 'd':
                    date = parseInt(matchGroup, 10);
                    if ((date < 1) || (date > 31)) return null;
                    break;
                case 'MMMM':
                    month = cultureInfo._getMonthIndex(matchGroup);
                    if ((month < 0) || (month > 11)) return null;
                    break;
                case 'MMM':
                    month = cultureInfo._getAbbrMonthIndex(matchGroup);
                    if ((month < 0) || (month > 11)) return null;
                    break;
                case 'M': case 'MM':
                    month = parseInt(matchGroup, 10) - 1;
                    if ((month < 0) || (month > 11)) return null;
                    break;
                case 'y': case 'yy':
                    year = Date._expandYear(dtf,parseInt(matchGroup, 10));
                    if ((year < 0) || (year > 9999)) return null;
                    break;
                case 'yyyy':
                    year = parseInt(matchGroup, 10);
                    if ((year < 0) || (year > 9999)) return null;
                    break;
                case 'h': case 'hh':
                    hour = parseInt(matchGroup, 10);
                    if (hour === 12) hour = 0;
                    if ((hour < 0) || (hour > 11)) return null;
                    break;
                case 'H': case 'HH':
                    hour = parseInt(matchGroup, 10);
                    if ((hour < 0) || (hour > 23)) return null;
                    break;
                case 'm': case 'mm':
                    min = parseInt(matchGroup, 10);
                    if ((min < 0) || (min > 59)) return null;
                    break;
                case 's': case 'ss':
                    sec = parseInt(matchGroup, 10);
                    if ((sec < 0) || (sec > 59)) return null;
                    break;
                case 'tt': case 't':
                    var upperToken = matchGroup.toUpperCase();
                    pmHour = (upperToken === dtf.PMDesignator.toUpperCase());
                    if (!pmHour && (upperToken !== dtf.AMDesignator.toUpperCase())) return null;
                    break;
                case 'f':
                    msec = parseInt(matchGroup, 10) * 100;
                    if ((msec < 0) || (msec > 999)) return null;
                    break;
                case 'ff':
                    msec = parseInt(matchGroup, 10) * 10;
                    if ((msec < 0) || (msec > 999)) return null;
                    break;
                case 'fff':
                    msec = parseInt(matchGroup, 10);
                    if ((msec < 0) || (msec > 999)) return null;
                    break;
                case 'dddd':
                    weekDay = cultureInfo._getDayIndex(matchGroup);
                    if ((weekDay < 0) || (weekDay > 6)) return null;
                    break;
                case 'ddd':
                    weekDay = cultureInfo._getAbbrDayIndex(matchGroup);
                    if ((weekDay < 0) || (weekDay > 6)) return null;
                    break;
                case 'zzz':
                    var offsets = matchGroup.split(/:/);
                    if (offsets.length !== 2) return null;
                    hourOffset = parseInt(offsets[0], 10);
                    if ((hourOffset < -12) || (hourOffset > 13)) return null;
                    var minOffset = parseInt(offsets[1], 10);
                    if ((minOffset < 0) || (minOffset > 59)) return null;
                    tzMinOffset = (hourOffset * 60) + (matchGroup.startsWith('-')? -minOffset : minOffset);
                    break;
                case 'z': case 'zz':
                    hourOffset = parseInt(matchGroup, 10);
                    if ((hourOffset < -12) || (hourOffset > 13)) return null;
                    tzMinOffset = hourOffset * 60;
                    break;
                case 'g': case 'gg':
                    var eraName = matchGroup;
                    if (!eraName || !dtf.eras) return null;
                    eraName = eraName.toLowerCase().trim();
                    for (var i = 0, l = dtf.eras.length; i < l; i += 4) {
                        if (eraName === dtf.eras[i + 1].toLowerCase()) {
                            era = i;
                            break;
                        }
                    }
                    if (era === null) return null;
                    break;
            }
        }
    }
    var result = new Date(), defaultYear, convert = dtf.Calendar.convert;
    if (convert) {
        defaultYear = convert.fromGregorian(result)[0];
    }
    else {
        defaultYear = result.getFullYear();
    }
    if (year === null) {
        year = defaultYear;
    }
    else if (dtf.eras) {
        year += dtf.eras[(era || 0) + 3];
    }
    if (month === null) {
        month = 0;
    }
    if (date === null) {
        date = 1;
    }
    if (convert) {
        result = convert.toGregorian(year, month, date);
        if (result === null) return null;
    }
    else {
        result.setFullYear(year, month, date);
        if (result.getDate() !== date) return null;
        if ((weekDay !== null) && (result.getDay() !== weekDay)) {
            return null;
        }
    }
    if (pmHour && (hour < 12)) {
        hour += 12;
    }
    result.setHours(hour, min, sec, msec);
    if (tzMinOffset !== null) {
        var adjustedMin = result.getMinutes() - (tzMinOffset + result.getTimezoneOffset());
        result.setHours(result.getHours() + parseInt(adjustedMin/60, 10), adjustedMin%60);
    }
    return result;
}
Date.prototype.format = function Date$format(format) {
    /// <summary locid="M:J#Date.format" />
    /// <param name="format" type="String"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "format", type: String}
    ]);
    if (e) throw e;
    return this._toFormattedString(format, Sys.CultureInfo.InvariantCulture);
}
Date.prototype.localeFormat = function Date$localeFormat(format) {
    /// <summary locid="M:J#Date.localeFormat" />
    /// <param name="format" type="String"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "format", type: String}
    ]);
    if (e) throw e;
    return this._toFormattedString(format, Sys.CultureInfo.CurrentCulture);
}
Date.prototype._toFormattedString = function Date$_toFormattedString(format, cultureInfo) {
    var dtf = cultureInfo.dateTimeFormat,
        convert = dtf.Calendar.convert;
    if (!format || !format.length || (format === 'i')) {
        if (cultureInfo && cultureInfo.name.length) {
            if (convert) {
                return this._toFormattedString(dtf.FullDateTimePattern, cultureInfo);
            }
            else {
                var eraDate = new Date(this.getTime());
                var era = Date._getEra(this, dtf.eras);
                eraDate.setFullYear(Date._getEraYear(this, dtf, era));
                return eraDate.toLocaleString();
            }
        }
        else {
            return this.toString();
        }
    }
    var eras = dtf.eras,
        sortable = (format === "s");
    format = Date._expandFormat(dtf, format);
    var ret = new Sys.StringBuilder();
    var hour;
    function addLeadingZero(num) {
        if (num < 10) {
            return '0' + num;
        }
        return num.toString();
    }
    function addLeadingZeros(num) {
        if (num < 10) {
            return '00' + num;
        }
        if (num < 100) {
            return '0' + num;
        }
        return num.toString();
    }
    function padYear(year) {
        if (year < 10) {
            return '000' + year;
        }
        else if (year < 100) {
            return '00' + year;
        }
        else if (year < 1000) {
            return '0' + year;
        }
        return year.toString();
    }
    
    var foundDay, checkedDay, dayPartRegExp = /([^d]|^)(d|dd)([^d]|$)/g;
    function hasDay() {
        if (foundDay || checkedDay) {
            return foundDay;
        }
        foundDay = dayPartRegExp.test(format);
        checkedDay = true;
        return foundDay;
    }
    
    var quoteCount = 0,
        tokenRegExp = Date._getTokenRegExp(),
        converted;
    if (!sortable && convert) {
        converted = convert.fromGregorian(this);
    }
    for (;;) {
        var index = tokenRegExp.lastIndex;
        var ar = tokenRegExp.exec(format);
        var preMatch = format.slice(index, ar ? ar.index : format.length);
        quoteCount += Date._appendPreOrPostMatch(preMatch, ret);
        if (!ar) break;
        if ((quoteCount%2) === 1) {
            ret.append(ar[0]);
            continue;
        }
        
        function getPart(date, part) {
            if (converted) {
                return converted[part];
            }
            switch (part) {
                case 0: return date.getFullYear();
                case 1: return date.getMonth();
                case 2: return date.getDate();
            }
        }
        switch (ar[0]) {
        case "dddd":
            ret.append(dtf.DayNames[this.getDay()]);
            break;
        case "ddd":
            ret.append(dtf.AbbreviatedDayNames[this.getDay()]);
            break;
        case "dd":
            foundDay = true;
            ret.append(addLeadingZero(getPart(this, 2)));
            break;
        case "d":
            foundDay = true;
            ret.append(getPart(this, 2));
            break;
        case "MMMM":
            ret.append((dtf.MonthGenitiveNames && hasDay())
                ? dtf.MonthGenitiveNames[getPart(this, 1)]
                : dtf.MonthNames[getPart(this, 1)]);
            break;
        case "MMM":
            ret.append((dtf.AbbreviatedMonthGenitiveNames && hasDay())
                ? dtf.AbbreviatedMonthGenitiveNames[getPart(this, 1)]
                : dtf.AbbreviatedMonthNames[getPart(this, 1)]);
            break;
        case "MM":
            ret.append(addLeadingZero(getPart(this, 1) + 1));
            break;
        case "M":
            ret.append(getPart(this, 1) + 1);
            break;
        case "yyyy":
            ret.append(padYear(converted ? converted[0] : Date._getEraYear(this, dtf, Date._getEra(this, eras), sortable)));
            break;
        case "yy":
            ret.append(addLeadingZero((converted ? converted[0] : Date._getEraYear(this, dtf, Date._getEra(this, eras), sortable)) % 100));
            break;
        case "y":
            ret.append((converted ? converted[0] : Date._getEraYear(this, dtf, Date._getEra(this, eras), sortable)) % 100);
            break;
        case "hh":
            hour = this.getHours() % 12;
            if (hour === 0) hour = 12;
            ret.append(addLeadingZero(hour));
            break;
        case "h":
            hour = this.getHours() % 12;
            if (hour === 0) hour = 12;
            ret.append(hour);
            break;
        case "HH":
            ret.append(addLeadingZero(this.getHours()));
            break;
        case "H":
            ret.append(this.getHours());
            break;
        case "mm":
            ret.append(addLeadingZero(this.getMinutes()));
            break;
        case "m":
            ret.append(this.getMinutes());
            break;
        case "ss":
            ret.append(addLeadingZero(this.getSeconds()));
            break;
        case "s":
            ret.append(this.getSeconds());
            break;
        case "tt":
            ret.append((this.getHours() < 12) ? dtf.AMDesignator : dtf.PMDesignator);
            break;
        case "t":
            ret.append(((this.getHours() < 12) ? dtf.AMDesignator : dtf.PMDesignator).charAt(0));
            break;
        case "f":
            ret.append(addLeadingZeros(this.getMilliseconds()).charAt(0));
            break;
        case "ff":
            ret.append(addLeadingZeros(this.getMilliseconds()).substr(0, 2));
            break;
        case "fff":
            ret.append(addLeadingZeros(this.getMilliseconds()));
            break;
        case "z":
            hour = this.getTimezoneOffset() / 60;
            ret.append(((hour <= 0) ? '+' : '-') + Math.floor(Math.abs(hour)));
            break;
        case "zz":
            hour = this.getTimezoneOffset() / 60;
            ret.append(((hour <= 0) ? '+' : '-') + addLeadingZero(Math.floor(Math.abs(hour))));
            break;
        case "zzz":
            hour = this.getTimezoneOffset() / 60;
            ret.append(((hour <= 0) ? '+' : '-') + addLeadingZero(Math.floor(Math.abs(hour))) +
                ":" + addLeadingZero(Math.abs(this.getTimezoneOffset() % 60)));
            break;
        case "g":
        case "gg":
            if (dtf.eras) {
                ret.append(dtf.eras[Date._getEra(this, eras) + 1]);
            }
            break;
        case "/":
            ret.append(dtf.DateSeparator);
            break;
        }
    }
    return ret.toString();
}
String.localeFormat = function String$localeFormat(format, args) {
    /// <summary locid="M:J#String.localeFormat" />
    /// <param name="format" type="String"></param>
    /// <param name="args" parameterArray="true" mayBeNull="true"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "format", type: String},
        {name: "args", mayBeNull: true, parameterArray: true}
    ]);
    if (e) throw e;
    return String._toFormattedString(true, arguments);
}
Number.parseLocale = function Number$parseLocale(value) {
    /// <summary locid="M:J#Number.parseLocale" />
    /// <param name="value" type="String"></param>
    /// <returns type="Number"></returns>
    var e = Function._validateParams(arguments, [
        {name: "value", type: String}
    ], false);
    if (e) throw e;
    return Number._parse(value, Sys.CultureInfo.CurrentCulture);
}
Number.parseInvariant = function Number$parseInvariant(value) {
    /// <summary locid="M:J#Number.parseInvariant" />
    /// <param name="value" type="String"></param>
    /// <returns type="Number"></returns>
    var e = Function._validateParams(arguments, [
        {name: "value", type: String}
    ], false);
    if (e) throw e;
    return Number._parse(value, Sys.CultureInfo.InvariantCulture);
}
Number._parse = function Number$_parse(value, cultureInfo) {
    value = value.trim();
    
    if (value.match(/^[+-]?infinity$/i)) {
        return parseFloat(value);
    }
    if (value.match(/^0x[a-f0-9]+$/i)) {
        return parseInt(value);
    }
    var numFormat = cultureInfo.numberFormat;
    var signInfo = Number._parseNumberNegativePattern(value, numFormat, numFormat.NumberNegativePattern);
    var sign = signInfo[0];
    var num = signInfo[1];
    
    if ((sign === '') && (numFormat.NumberNegativePattern !== 1)) {
        signInfo = Number._parseNumberNegativePattern(value, numFormat, 1);
        sign = signInfo[0];
        num = signInfo[1];
    }
    if (sign === '') sign = '+';
    
    var exponent;
    var intAndFraction;
    var exponentPos = num.indexOf('e');
    if (exponentPos < 0) exponentPos = num.indexOf('E');
    if (exponentPos < 0) {
        intAndFraction = num;
        exponent = null;
    }
    else {
        intAndFraction = num.substr(0, exponentPos);
        exponent = num.substr(exponentPos + 1);
    }
    
    var integer;
    var fraction;
    var decimalPos = intAndFraction.indexOf(numFormat.NumberDecimalSeparator);
    if (decimalPos < 0) {
        integer = intAndFraction;
        fraction = null;
    }
    else {
        integer = intAndFraction.substr(0, decimalPos);
        fraction = intAndFraction.substr(decimalPos + numFormat.NumberDecimalSeparator.length);
    }
    
    integer = integer.split(numFormat.NumberGroupSeparator).join('');
    var altNumGroupSeparator = numFormat.NumberGroupSeparator.replace(/\u00A0/g, " ");
    if (numFormat.NumberGroupSeparator !== altNumGroupSeparator) {
        integer = integer.split(altNumGroupSeparator).join('');
    }
    
    var p = sign + integer;
    if (fraction !== null) {
        p += '.' + fraction;
    }
    if (exponent !== null) {
        var expSignInfo = Number._parseNumberNegativePattern(exponent, numFormat, 1);
        if (expSignInfo[0] === '') {
            expSignInfo[0] = '+';
        }
        p += 'e' + expSignInfo[0] + expSignInfo[1];
    }
    if (p.match(/^[+-]?\d*\.?\d*(e[+-]?\d+)?$/)) {
        return parseFloat(p);
    }
    return Number.NaN;
}
Number._parseNumberNegativePattern = function Number$_parseNumberNegativePattern(value, numFormat, numberNegativePattern) {
    var neg = numFormat.NegativeSign;
    var pos = numFormat.PositiveSign;    
    switch (numberNegativePattern) {
        case 4: 
            neg = ' ' + neg;
            pos = ' ' + pos;
        case 3: 
            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: 
            neg += ' ';
            pos += ' ';
        case 1: 
            if (value.startsWith(neg)) {
                return ['-', value.substr(neg.length)];
            }
            else if (value.startsWith(pos)) {
                return ['+', value.substr(pos.length)];
            }
            break;
        case 0: 
            if (value.startsWith('(') && value.endsWith(')')) {
                return ['-', value.substr(1, value.length - 2)];
            }
            break;
    }
    return ['', value];
}
Number.prototype.format = function Number$format(format) {
    /// <summary locid="M:J#Number.format" />
    /// <param name="format" type="String"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "format", type: String}
    ]);
    if (e) throw e;
    return this._toFormattedString(format, Sys.CultureInfo.InvariantCulture);
}
Number.prototype.localeFormat = function Number$localeFormat(format) {
    /// <summary locid="M:J#Number.localeFormat" />
    /// <param name="format" type="String"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "format", type: String}
    ]);
    if (e) throw e;
    return this._toFormattedString(format, Sys.CultureInfo.CurrentCulture);
}
Number.prototype._toFormattedString = function Number$_toFormattedString(format, cultureInfo) {
    if (!format || (format.length === 0) || (format === 'i')) {
        if (cultureInfo && (cultureInfo.name.length > 0)) {
            return this.toLocaleString();
        }
        else {
            return this.toString();
        }
    }
    
    var _percentPositivePattern = ["n %", "n%", "%n" ];
    var _percentNegativePattern = ["-n %", "-n%", "-%n"];
    var _numberNegativePattern = ["(n)","-n","- n","n-","n -"];
    var _currencyPositivePattern = ["$n","n$","$ n","n $"];
    var _currencyNegativePattern = ["($n)","-$n","$-n","$n-","(n$)","-n$","n-$","n$-","-n $","-$ n","n $-","$ n-","$ -n","n- $","($ n)","(n $)"];
    function zeroPad(str, count, left) {
        for (var l=str.length; l < count; l++) {
            str = (left ? ('0' + str) : (str + '0'));
        }
        return str;
    }
    
    function expandNumber(number, precision, groupSizes, sep, decimalChar) {
        
        var curSize = groupSizes[0];
        var curGroupIndex = 1;
        var factor = Math.pow(10, precision);
        var rounded = (Math.round(number * factor) / factor);
        if (!isFinite(rounded)) {
            rounded = number;
        }
        number = rounded;
        
        var numberString = number.toString();
        var right = "";
        var exponent;
        
        
        var split = numberString.split(/e/i);
        numberString = split[0];
        exponent = (split.length > 1 ? parseInt(split[1]) : 0);
        split = numberString.split('.');
        numberString = split[0];
        right = split.length > 1 ? split[1] : "";
        
        var l;
        if (exponent > 0) {
            right = zeroPad(right, exponent, false);
            numberString += right.slice(0, exponent);
            right = right.substr(exponent);
        }
        else if (exponent < 0) {
            exponent = -exponent;
            numberString = zeroPad(numberString, exponent+1, true);
            right = numberString.slice(-exponent, numberString.length) + right;
            numberString = numberString.slice(0, -exponent);
        }
        if (precision > 0) {
            if (right.length > precision) {
                right = right.slice(0, precision);
            }
            else {
                right = zeroPad(right, precision, false);
            }
            right = decimalChar + right;
        }
        else { 
            right = "";
        }
        var stringIndex = numberString.length-1;
        var ret = "";
        while (stringIndex >= 0) {
            if (curSize === 0 || curSize > stringIndex) {
                if (ret.length > 0)
                    return numberString.slice(0, stringIndex + 1) + sep + ret + right;
                else
                    return numberString.slice(0, stringIndex + 1) + right;
            }
            if (ret.length > 0)
                ret = numberString.slice(stringIndex - curSize + 1, stringIndex+1) + sep + ret;
            else
                ret = numberString.slice(stringIndex - curSize + 1, stringIndex+1);
            stringIndex -= curSize;
            if (curGroupIndex < groupSizes.length) {
                curSize = groupSizes[curGroupIndex];
                curGroupIndex++;
            }
        }
        return numberString.slice(0, stringIndex + 1) + sep + ret + right;
    }
    var nf = cultureInfo.numberFormat;
    var number = Math.abs(this);
    if (!format)
        format = "D";
    var precision = -1;
    if (format.length > 1) precision = parseInt(format.slice(1), 10);
    var pattern;
    switch (format.charAt(0)) {
    case "d":
    case "D":
        pattern = 'n';
        if (precision !== -1) {
            number = zeroPad(""+number, precision, true);
        }
        if (this < 0) number = -number;
        break;
    case "c":
    case "C":
        if (this < 0) pattern = _currencyNegativePattern[nf.CurrencyNegativePattern];
        else pattern = _currencyPositivePattern[nf.CurrencyPositivePattern];
        if (precision === -1) precision = nf.CurrencyDecimalDigits;
        number = expandNumber(Math.abs(this), precision, nf.CurrencyGroupSizes, nf.CurrencyGroupSeparator, nf.CurrencyDecimalSeparator);
        break;
    case "n":
    case "N":
        if (this < 0) pattern = _numberNegativePattern[nf.NumberNegativePattern];
        else pattern = 'n';
        if (precision === -1) precision = nf.NumberDecimalDigits;
        number = expandNumber(Math.abs(this), precision, nf.NumberGroupSizes, nf.NumberGroupSeparator, nf.NumberDecimalSeparator);
        break;
    case "p":
    case "P":
        if (this < 0) pattern = _percentNegativePattern[nf.PercentNegativePattern];
        else pattern = _percentPositivePattern[nf.PercentPositivePattern];
        if (precision === -1) precision = nf.PercentDecimalDigits;
        number = expandNumber(Math.abs(this) * 100, precision, nf.PercentGroupSizes, nf.PercentGroupSeparator, nf.PercentDecimalSeparator);
        break;
    default:
        throw Error.format(Sys.Res.formatBadFormatSpecifier);
    }
    var regex = /n|\$|-|%/g;
    var ret = "";
    for (;;) {
        var index = regex.lastIndex;
        var ar = regex.exec(pattern);
        ret += pattern.slice(index, ar ? ar.index : pattern.length);
        if (!ar)
            break;
        switch (ar[0]) {
        case "n":
            ret += number;
            break;
        case "$":
            ret += nf.CurrencySymbol;
            break;
        case "-":
            if (/[1-9]/.test(number)) {
                ret += nf.NegativeSign;
            }
            break;
        case "%":
            ret += nf.PercentSymbol;
            break;
        }
    }
    return ret;
}
 
Sys.CultureInfo = function Sys$CultureInfo(name, numberFormat, dateTimeFormat) {
    /// <summary locid="M:J#Sys.CultureInfo.#ctor" />
    /// <param name="name" type="String"></param>
    /// <param name="numberFormat" type="Object"></param>
    /// <param name="dateTimeFormat" type="Object"></param>
    var e = Function._validateParams(arguments, [
        {name: "name", type: String},
        {name: "numberFormat", type: Object},
        {name: "dateTimeFormat", type: Object}
    ]);
    if (e) throw e;
    this.name = name;
    this.numberFormat = numberFormat;
    this.dateTimeFormat = dateTimeFormat;
}
    function Sys$CultureInfo$_getDateTimeFormats() {
        if (! this._dateTimeFormats) {
            var dtf = this.dateTimeFormat;
            this._dateTimeFormats =
              [ dtf.MonthDayPattern,
                dtf.YearMonthPattern,
                dtf.ShortDatePattern,
                dtf.ShortTimePattern,
                dtf.LongDatePattern,
                dtf.LongTimePattern,
                dtf.FullDateTimePattern,
                dtf.RFC1123Pattern,
                dtf.SortableDateTimePattern,
                dtf.UniversalSortableDateTimePattern ];
        }
        return this._dateTimeFormats;
    }
    function Sys$CultureInfo$_getIndex(value, a1, a2) {
        var upper = this._toUpper(value),
            i = Array.indexOf(a1, upper);
        if (i === -1) {
            i = Array.indexOf(a2, upper);
        }
        return i;
    }
    function Sys$CultureInfo$_getMonthIndex(value) {
        if (!this._upperMonths) {
            this._upperMonths = this._toUpperArray(this.dateTimeFormat.MonthNames);
            this._upperMonthsGenitive = this._toUpperArray(this.dateTimeFormat.MonthGenitiveNames);
        }
        return this._getIndex(value, this._upperMonths, this._upperMonthsGenitive);
    }
    function Sys$CultureInfo$_getAbbrMonthIndex(value) {
        if (!this._upperAbbrMonths) {
            this._upperAbbrMonths = this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthNames);
            this._upperAbbrMonthsGenitive = this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthGenitiveNames);
        }
        return this._getIndex(value, this._upperAbbrMonths, this._upperAbbrMonthsGenitive);
    }
    function Sys$CultureInfo$_getDayIndex(value) {
        if (!this._upperDays) {
            this._upperDays = this._toUpperArray(this.dateTimeFormat.DayNames);
        }
        return Array.indexOf(this._upperDays, this._toUpper(value));
    }
    function Sys$CultureInfo$_getAbbrDayIndex(value) {
        if (!this._upperAbbrDays) {
            this._upperAbbrDays = this._toUpperArray(this.dateTimeFormat.AbbreviatedDayNames);
        }
        return Array.indexOf(this._upperAbbrDays, this._toUpper(value));
    }
    function Sys$CultureInfo$_toUpperArray(arr) {
        var result = [];
        for (var i = 0, il = arr.length; i < il; i++) {
            result[i] = this._toUpper(arr[i]);
        }
        return result;
    }
    function Sys$CultureInfo$_toUpper(value) {
        return value.split("\u00A0").join(' ').toUpperCase();
    }
Sys.CultureInfo.prototype = {
    _getDateTimeFormats: Sys$CultureInfo$_getDateTimeFormats,
    _getIndex: Sys$CultureInfo$_getIndex,
    _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.registerClass('Sys.CultureInfo');
Sys.CultureInfo._parse = function Sys$CultureInfo$_parse(value) {
    var dtf = value.dateTimeFormat;
    if (dtf && !dtf.eras) {
        dtf.eras = value.eras;
    }
    return new Sys.CultureInfo(value.name, value.numberFormat, dtf);
}
Sys.CultureInfo.InvariantCulture = Sys.CultureInfo._parse({"name":"","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":true,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"\u00A4","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":true},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\':\'mm\':\'ss \'GMT\'","ShortDatePattern":"MM/dd/yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\'-\'MM\'-\'dd HH\':\'mm\':\'ss\'Z\'","YearMonthPattern":"yyyy MMMM","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":true,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]},"eras":[1,"A.D.",null,0]});
if (typeof(__cultureInfo) === "object") {
    Sys.CultureInfo.CurrentCulture = Sys.CultureInfo._parse(__cultureInfo);
    delete __cultureInfo;    
}
else {
    Sys.CultureInfo.CurrentCulture = Sys.CultureInfo._parse({"name":"en-US","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, MMMM dd, yyyy h:mm:ss tt","LongDatePattern":"dddd, MMMM dd, yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\':\'mm\':\'ss \'GMT\'","ShortDatePattern":"M/d/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\'-\'MM\'-\'dd HH\':\'mm\':\'ss\'Z\'","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]},"eras":[1,"A.D.",null,0]});
}
Type.registerNamespace('Sys.Serialization');
Sys.Serialization.JavaScriptSerializer = function Sys$Serialization$JavaScriptSerializer() {
    /// <summary locid="M:J#Sys.Serialization.JavaScriptSerializer.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
}
Sys.Serialization.JavaScriptSerializer.registerClass('Sys.Serialization.JavaScriptSerializer');
Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs = [];
Sys.Serialization.JavaScriptSerializer._charsToEscape = [];
Sys.Serialization.JavaScriptSerializer._dateRegEx = new RegExp('(^|[^\\\\])\\"\\\\/Date\\((-?[0-9]+)(?:[a-zA-Z]|(?:\\+|-)[0-9]{4})?\\)\\\\/\\"', 'g');
Sys.Serialization.JavaScriptSerializer._escapeChars = {};
Sys.Serialization.JavaScriptSerializer._escapeRegEx = new RegExp('["\\\\\\x00-\\x1F]', 'i');
Sys.Serialization.JavaScriptSerializer._escapeRegExGlobal = new RegExp('["\\\\\\x00-\\x1F]', 'g');
Sys.Serialization.JavaScriptSerializer._jsonRegEx = new RegExp('[^,:{}\\[\\]0-9.\\-+Eaeflnr-u \\n\\r\\t]', 'g');
Sys.Serialization.JavaScriptSerializer._jsonStringRegEx = new RegExp('"(\\\\.|[^"\\\\])*"', 'g');
Sys.Serialization.JavaScriptSerializer._serverTypeFieldName = '__type';
Sys.Serialization.JavaScriptSerializer._init = function Sys$Serialization$JavaScriptSerializer$_init() {
    var replaceChars = ['\\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] = '\\';
    Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs['\\'] = new RegExp('\\\\', 'g');
    Sys.Serialization.JavaScriptSerializer._escapeChars['\\'] = '\\\\';
    Sys.Serialization.JavaScriptSerializer._charsToEscape[1] = '"';
    Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs['"'] = new RegExp('"', 'g');
    Sys.Serialization.JavaScriptSerializer._escapeChars['"'] = '\\"';
    for (var i = 0; i < 32; i++) {
        var c = String.fromCharCode(i);
        Sys.Serialization.JavaScriptSerializer._charsToEscape[i+2] = c;
        Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs[c] = new RegExp(c, 'g');
        Sys.Serialization.JavaScriptSerializer._escapeChars[c] = replaceChars[i];
    }
}
Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder = function Sys$Serialization$JavaScriptSerializer$_serializeBooleanWithBuilder(object, stringBuilder) {
    stringBuilder.append(object.toString());
}
Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder = 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 = function Sys$Serialization$JavaScriptSerializer$_serializeStringWithBuilder(string, stringBuilder) {
    stringBuilder.append('"');
    if (Sys.Serialization.JavaScriptSerializer._escapeRegEx.test(string)) {
        if (Sys.Serialization.JavaScriptSerializer._charsToEscape.length === 0) {
            Sys.Serialization.JavaScriptSerializer._init();
        }
        if (string.length < 128) {
            string = string.replace(Sys.Serialization.JavaScriptSerializer._escapeRegExGlobal,
                function(x) { return Sys.Serialization.JavaScriptSerializer._escapeChars[x]; });
        }
        else {
            for (var i = 0; i < 34; i++) {
                var c = Sys.Serialization.JavaScriptSerializer._charsToEscape[i];
                if (string.indexOf(c) !== -1) {
                    if (Sys.Browser.agent === Sys.Browser.Opera || Sys.Browser.agent === Sys.Browser.FireFox) {
                        string = string.split(c).join(Sys.Serialization.JavaScriptSerializer._escapeChars[c]);
                    }
                    else {
                        string = string.replace(Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs[c],
                            Sys.Serialization.JavaScriptSerializer._escapeChars[c]);
                    }
                }
            }
       }
    }
    stringBuilder.append(string);
    stringBuilder.append('"');
}
Sys.Serialization.JavaScriptSerializer._serializeWithBuilder = function Sys$Serialization$JavaScriptSerializer$_serializeWithBuilder(object, stringBuilder, sort, prevObjects) {
    var i;
    switch (typeof object) {
    case 'object':
        if (object) {
            if (prevObjects){
                for( var j = 0; j < prevObjects.length; j++) {
                    if (prevObjects[j] === object) {
                        throw Error.invalidOperation(Sys.Res.cannotSerializeObjectWithCycle);
                    }
                }
            }
            else {
                prevObjects = new Array();
            }
            try {
                Array.add(prevObjects, object);
                
                if (Number.isInstanceOfType(object)){
                    Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder(object, stringBuilder);
                }
                else if (Boolean.isInstanceOfType(object)){
                    Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder(object, stringBuilder);
                }
                else if (String.isInstanceOfType(object)){
                    Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder(object, stringBuilder);
                }
            
                else if (Array.isInstanceOfType(object)) {
                    stringBuilder.append('[');
                   
                    for (i = 0; i < object.length; ++i) {
                        if (i > 0) {
                            stringBuilder.append(',');
                        }
                        Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(object[i], stringBuilder,false,prevObjects);
                    }
                    stringBuilder.append(']');
                }
                else {
                    if (Date.isInstanceOfType(object)) {
                        stringBuilder.append('"\\/Date(');
                        stringBuilder.append(object.getTime());
                        stringBuilder.append(')\\/"');
                        break;
                    }
                    var properties = [];
                    var propertyCount = 0;
                    for (var name in object) {
                        if (name.startsWith('$')) {
                            continue;
                        }
                        if (name === Sys.Serialization.JavaScriptSerializer._serverTypeFieldName && propertyCount !== 0){
                            properties[propertyCount++] = properties[0];
                            properties[0] = name;
                        }
                        else{
                            properties[propertyCount++] = name;
                        }
                    }
                    if (sort) properties.sort();
                    stringBuilder.append('{');
                    var needComma = false;
                     
                    for (i=0; i<propertyCount; i++) {
                        var value = object[properties[i]];
                        if (typeof value !== 'undefined' && typeof value !== 'function') {
                            if (needComma) {
                                stringBuilder.append(',');
                            }
                            else {
                                needComma = true;
                            }
                           
                            Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(properties[i], stringBuilder, sort, prevObjects);
                            stringBuilder.append(':');
                            Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(value, stringBuilder, sort, prevObjects);
                          
                        }
                    }
                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(object, stringBuilder);
        break;
    default:
        stringBuilder.append('null');
        break;
    }
}
Sys.Serialization.JavaScriptSerializer.serialize = function Sys$Serialization$JavaScriptSerializer$serialize(object) {
    /// <summary locid="M:J#Sys.Serialization.JavaScriptSerializer.serialize" />
    /// <param name="object" mayBeNull="true"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "object", mayBeNull: true}
    ]);
    if (e) throw e;
    var stringBuilder = new Sys.StringBuilder();
    Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(object, stringBuilder, false);
    return stringBuilder.toString();
}
Sys.Serialization.JavaScriptSerializer.deserialize = function Sys$Serialization$JavaScriptSerializer$deserialize(data, secure) {
    /// <summary locid="M:J#Sys.Serialization.JavaScriptSerializer.deserialize" />
    /// <param name="data" type="String"></param>
    /// <param name="secure" type="Boolean" optional="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "data", type: String},
        {name: "secure", type: Boolean, optional: true}
    ]);
    if (e) throw e;
    
    if (data.length === 0) throw Error.argument('data', Sys.Res.cannotDeserializeEmptyString);
    try {    
        var exp = data.replace(Sys.Serialization.JavaScriptSerializer._dateRegEx, "$1new Date($2)");
        
        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);
    }
}
Type.registerNamespace('Sys.UI');
 
Sys.EventHandlerList = function Sys$EventHandlerList() {
    /// <summary locid="M:J#Sys.EventHandlerList.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    this._list = {};
}
    function Sys$EventHandlerList$_addHandler(id, handler) {
        Array.add(this._getEvent(id, true), handler);
    }
    function Sys$EventHandlerList$addHandler(id, handler) {
        /// <summary locid="M:J#Sys.EventHandlerList.addHandler" />
        /// <param name="id" type="String"></param>
        /// <param name="handler" type="Function"></param>
        var e = Function._validateParams(arguments, [
            {name: "id", type: String},
            {name: "handler", type: Function}
        ]);
        if (e) throw e;
        this._addHandler(id, handler);
    }
    function Sys$EventHandlerList$_removeHandler(id, handler) {
        var evt = this._getEvent(id);
        if (!evt) return;
        Array.remove(evt, handler);
    }
    function Sys$EventHandlerList$removeHandler(id, handler) {
        /// <summary locid="M:J#Sys.EventHandlerList.removeHandler" />
        /// <param name="id" type="String"></param>
        /// <param name="handler" type="Function"></param>
        var e = Function._validateParams(arguments, [
            {name: "id", type: String},
            {name: "handler", type: Function}
        ]);
        if (e) throw e;
        this._removeHandler(id, handler);
    }
    function Sys$EventHandlerList$getHandler(id) {
        /// <summary locid="M:J#Sys.EventHandlerList.getHandler" />
        /// <param name="id" type="String"></param>
        /// <returns type="Function"></returns>
        var e = Function._validateParams(arguments, [
            {name: "id", type: String}
        ]);
        if (e) throw e;
        var evt = this._getEvent(id);
        if (!evt || (evt.length === 0)) return null;
        evt = Array.clone(evt);
        return function(source, args) {
            for (var i = 0, l = 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] = [];
        }
        return this._list[id];
    }
Sys.EventHandlerList.prototype = {
    _addHandler: Sys$EventHandlerList$_addHandler,
    addHandler: Sys$EventHandlerList$addHandler,
    _removeHandler: Sys$EventHandlerList$_removeHandler,
    removeHandler: Sys$EventHandlerList$removeHandler,
    getHandler: Sys$EventHandlerList$getHandler,
    _getEvent: Sys$EventHandlerList$_getEvent
}
Sys.EventHandlerList.registerClass('Sys.EventHandlerList');
Sys.CommandEventArgs = function Sys$CommandEventArgs(commandName, commandArgument, commandSource) {
    /// <summary locid="M:J#Sys.CommandEventArgs.#ctor" />
    /// <param name="commandName" type="String"></param>
    /// <param name="commandArgument" mayBeNull="true"></param>
    /// <param name="commandSource" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "commandName", type: String},
        {name: "commandArgument", mayBeNull: true},
        {name: "commandSource", mayBeNull: true}
    ]);
    if (e) throw e;
    Sys.CommandEventArgs.initializeBase(this);
    this._commandName = commandName;
    this._commandArgument = commandArgument;
    this._commandSource = commandSource;
}
    function Sys$CommandEventArgs$get_commandName() {
        /// <value type="String" locid="P:J#Sys.CommandEventArgs.commandName"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._commandName;
    }
    function Sys$CommandEventArgs$get_commandArgument() {
        /// <value mayBeNull="true" locid="P:J#Sys.CommandEventArgs.commandArgument"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._commandArgument;
    }
    function Sys$CommandEventArgs$get_commandSource() {
        /// <value mayBeNull="true" locid="P:J#Sys.CommandEventArgs.commandSource"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._commandSource;
    }
Sys.CommandEventArgs.prototype = {
    _commandName: null,
    _commandArgument: null,
    _commandSource: null,
    get_commandName: Sys$CommandEventArgs$get_commandName,
    get_commandArgument: Sys$CommandEventArgs$get_commandArgument,
    get_commandSource: Sys$CommandEventArgs$get_commandSource
}
Sys.CommandEventArgs.registerClass("Sys.CommandEventArgs", Sys.CancelEventArgs);
 
Sys.INotifyPropertyChange = function Sys$INotifyPropertyChange() {
    /// <summary locid="M:J#Sys.INotifyPropertyChange.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
    function Sys$INotifyPropertyChange$add_propertyChanged(handler) {
    /// <summary locid="E:J#Sys.INotifyPropertyChange.propertyChanged" />
    var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
    if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$INotifyPropertyChange$remove_propertyChanged(handler) {
    var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
    if (e) throw e;
        throw Error.notImplemented();
    }
Sys.INotifyPropertyChange.prototype = {
    add_propertyChanged: Sys$INotifyPropertyChange$add_propertyChanged,
    remove_propertyChanged: Sys$INotifyPropertyChange$remove_propertyChanged
}
Sys.INotifyPropertyChange.registerInterface('Sys.INotifyPropertyChange');
 
Sys.PropertyChangedEventArgs = function Sys$PropertyChangedEventArgs(propertyName) {
    /// <summary locid="M:J#Sys.PropertyChangedEventArgs.#ctor" />
    /// <param name="propertyName" type="String"></param>
    var e = Function._validateParams(arguments, [
        {name: "propertyName", type: String}
    ]);
    if (e) throw e;
    Sys.PropertyChangedEventArgs.initializeBase(this);
    this._propertyName = propertyName;
}
 
    function Sys$PropertyChangedEventArgs$get_propertyName() {
        /// <value type="String" locid="P:J#Sys.PropertyChangedEventArgs.propertyName"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._propertyName;
    }
Sys.PropertyChangedEventArgs.prototype = {
    get_propertyName: Sys$PropertyChangedEventArgs$get_propertyName
}
Sys.PropertyChangedEventArgs.registerClass('Sys.PropertyChangedEventArgs', Sys.EventArgs);
 
Sys.INotifyDisposing = function Sys$INotifyDisposing() {
    /// <summary locid="M:J#Sys.INotifyDisposing.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
    function Sys$INotifyDisposing$add_disposing(handler) {
    /// <summary locid="E:J#Sys.INotifyDisposing.disposing" />
    var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
    if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$INotifyDisposing$remove_disposing(handler) {
    var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
    if (e) throw e;
        throw Error.notImplemented();
    }
Sys.INotifyDisposing.prototype = {
    add_disposing: Sys$INotifyDisposing$add_disposing,
    remove_disposing: Sys$INotifyDisposing$remove_disposing
}
Sys.INotifyDisposing.registerInterface("Sys.INotifyDisposing");
 
Sys.Component = function Sys$Component() {
    /// <summary locid="M:J#Sys.Component.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    if (Sys.Application) Sys.Application.registerDisposableObject(this);
}
    function Sys$Component$get_events() {
        /// <value type="Sys.EventHandlerList" locid="P:J#Sys.Component.events"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._events) {
            this._events = new Sys.EventHandlerList();
        }
        return this._events;
    }
    function Sys$Component$get_id() {
        /// <value type="String" locid="P:J#Sys.Component.id"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._id;
    }
    function Sys$Component$set_id(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        if (this._idSet) throw Error.invalidOperation(Sys.Res.componentCantSetIdTwice);
        this._idSet = true;
        var oldId = this.get_id();
        if (oldId && Sys.Application.findComponent(oldId)) throw Error.invalidOperation(Sys.Res.componentCantSetIdAfterAddedToApp);
        this._id = value;
    }
    function Sys$Component$get_isInitialized() {
        /// <value type="Boolean" locid="P:J#Sys.Component.isInitialized"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._initialized;
    }
    function Sys$Component$get_isUpdating() {
        /// <value type="Boolean" locid="P:J#Sys.Component.isUpdating"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._updating;
    }
    function Sys$Component$add_disposing(handler) {
        /// <summary locid="E:J#Sys.Component.disposing" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().addHandler("disposing", handler);
    }
    function Sys$Component$remove_disposing(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().removeHandler("disposing", handler);
    }
    function Sys$Component$add_propertyChanged(handler) {
        /// <summary locid="E:J#Sys.Component.propertyChanged" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().addHandler("propertyChanged", handler);
    }
    function Sys$Component$remove_propertyChanged(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().removeHandler("propertyChanged", handler);
    }
    function Sys$Component$beginUpdate() {
        this._updating = true;
    }
    function Sys$Component$dispose() {
        if (this._events) {
            var handler = this._events.getHandler("disposing");
            if (handler) {
                handler(this, Sys.EventArgs.Empty);
            }
        }
        delete this._events;
        Sys.Application.unregisterDisposableObject(this);
        Sys.Application.removeComponent(this);
    }
    function Sys$Component$endUpdate() {
        this._updating = false;
        if (!this._initialized) this.initialize();
        this.updated();
    }
    function Sys$Component$initialize() {
        this._initialized = true;
    }
    function Sys$Component$raisePropertyChanged(propertyName) {
        /// <summary locid="M:J#Sys.Component.raisePropertyChanged" />
        /// <param name="propertyName" type="String"></param>
        var e = Function._validateParams(arguments, [
            {name: "propertyName", type: String}
        ]);
        if (e) throw e;
        if (!this._events) return;
        var handler = this._events.getHandler("propertyChanged");
        if (handler) {
            handler(this, new Sys.PropertyChangedEventArgs(propertyName));
        }
    }
    function Sys$Component$updated() {
    }
Sys.Component.prototype = {
    _id: null,
    _idSet: false,
    _initialized: false,
    _updating: false,
    get_events: Sys$Component$get_events,
    get_id: Sys$Component$get_id,
    set_id: Sys$Component$set_id,
    get_isInitialized: Sys$Component$get_isInitialized,
    get_isUpdating: Sys$Component$get_isUpdating,
    add_disposing: Sys$Component$add_disposing,
    remove_disposing: Sys$Component$remove_disposing,
    add_propertyChanged: Sys$Component$add_propertyChanged,
    remove_propertyChanged: Sys$Component$remove_propertyChanged,
    beginUpdate: Sys$Component$beginUpdate,
    dispose: Sys$Component$dispose,
    endUpdate: Sys$Component$endUpdate,
    initialize: Sys$Component$initialize,
    raisePropertyChanged: Sys$Component$raisePropertyChanged,
    updated: Sys$Component$updated
}
Sys.Component.registerClass('Sys.Component', null, Sys.IDisposable, Sys.INotifyPropertyChange, Sys.INotifyDisposing);
function Sys$Component$_setProperties(target, properties) {
    /// <summary locid="M:J#Sys.Component._setProperties" />
    /// <param name="target"></param>
    /// <param name="properties"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"},
        {name: "properties"}
    ]);
    if (e) throw e;
    var current;
    var targetType = Object.getType(target);
    var isObject = (targetType === Object) || (targetType === Sys.UI.DomElement);
    var isComponent = Sys.Component.isInstanceOfType(target) && !target.get_isUpdating();
    if (isComponent) target.beginUpdate();
    for (var name in properties) {
        var val = properties[name];
        var getter = isObject ? null : target["get_" + name];
        if (isObject || typeof(getter) !== 'function') {
            var targetVal = target[name];
            if (!isObject && typeof(targetVal) === 'undefined') throw Error.invalidOperation(String.format(Sys.Res.propertyUndefined, name));
            if (!val || (typeof(val) !== 'object') || (isObject && !targetVal)) {
                target[name] = val;
            }
            else {
                Sys$Component$_setProperties(targetVal, val);
            }
        }
        else {
            var setter = target["set_" + name];
            if (typeof(setter) === 'function') {
                setter.apply(target, [val]);
            }
            else if (val instanceof Array) {
                current = getter.apply(target);
                if (!(current instanceof Array)) throw new Error.invalidOperation(String.format(Sys.Res.propertyNotAnArray, name));
                for (var i = 0, j = current.length, l= val.length; i < l; i++, j++) {
                    current[j] = val[i];
                }
            }
            else if ((typeof(val) === 'object') && (Object.getType(val) === Object)) {
                current = getter.apply(target);
                if ((typeof(current) === 'undefined') || (current === null)) throw new Error.invalidOperation(String.format(Sys.Res.propertyNullOrUndefined, name));
                Sys$Component$_setProperties(current, val);
            }
            else {
                throw new Error.invalidOperation(String.format(Sys.Res.propertyNotWritable, name));
            }
        }
    }
    if (isComponent) target.endUpdate();
}
function Sys$Component$_setReferences(component, references) {
    for (var name in references) {
        var setter = component["set_" + name];
        var reference = $find(references[name]);
        if (typeof(setter) !== 'function') throw new Error.invalidOperation(String.format(Sys.Res.propertyNotWritable, name));
        if (!reference) throw Error.invalidOperation(String.format(Sys.Res.referenceNotFound, references[name]));
        setter.apply(component, [reference]);
    }
}
var $create = Sys.Component.create = function Sys$Component$create(type, properties, events, references, element) {
    /// <summary locid="M:J#Sys.Component.create" />
    /// <param name="type" type="Type"></param>
    /// <param name="properties" optional="true" mayBeNull="true"></param>
    /// <param name="events" optional="true" mayBeNull="true"></param>
    /// <param name="references" optional="true" mayBeNull="true"></param>
    /// <param name="element" domElement="true" optional="true" mayBeNull="true"></param>
    /// <returns type="Sys.UI.Component"></returns>
    var e = Function._validateParams(arguments, [
        {name: "type", type: Type},
        {name: "properties", mayBeNull: true, optional: true},
        {name: "events", mayBeNull: true, optional: true},
        {name: "references", mayBeNull: true, optional: true},
        {name: "element", mayBeNull: true, domElement: true, optional: true}
    ]);
    if (e) throw e;
    if (!type.inheritsFrom(Sys.Component)) {
        throw Error.argument('type', String.format(Sys.Res.createNotComponent, type.getName()));
    }
    if (type.inheritsFrom(Sys.UI.Behavior) || type.inheritsFrom(Sys.UI.Control)) {
        if (!element) throw Error.argument('element', Sys.Res.createNoDom);
    }
    else if (element) throw Error.argument('element', Sys.Res.createComponentOnDom);
    var component = (element ? new type(element): new type());
    var app = Sys.Application;
    var creatingComponents = app.get_isCreatingComponents();
    component.beginUpdate();
    if (properties) {
        Sys$Component$_setProperties(component, properties);
    }
    if (events) {
        for (var name in events) {
            if (!(component["add_" + name] instanceof Function)) throw new Error.invalidOperation(String.format(Sys.Res.undefinedEvent, name));
            if (!(events[name] instanceof Function)) throw new Error.invalidOperation(Sys.Res.eventHandlerNotFunction);
            component["add_" + name](events[name]);
        }
    }
    if (component.get_id()) {
        app.addComponent(component);
    }
    if (creatingComponents) {
        app._createdComponents[app._createdComponents.length] = component;
        if (references) {
            app._addComponentToSecondPass(component, references);
        }
        else {
            component.endUpdate();
        }
    }
    else {
        if (references) {
            Sys$Component$_setReferences(component, references);
        }
        component.endUpdate();
    }
    return component;
}
 
Sys.UI.MouseButton = function Sys$UI$MouseButton() {
    /// <summary locid="M:J#Sys.UI.MouseButton.#ctor" />
    /// <field name="leftButton" type="Number" integer="true" static="true" locid="F:J#Sys.UI.MouseButton.leftButton"></field>
    /// <field name="middleButton" type="Number" integer="true" static="true" locid="F:J#Sys.UI.MouseButton.middleButton"></field>
    /// <field name="rightButton" type="Number" integer="true" static="true" locid="F:J#Sys.UI.MouseButton.rightButton"></field>
    if (arguments.length !== 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
Sys.UI.MouseButton.prototype = {
    leftButton: 0,
    middleButton: 1,
    rightButton: 2
}
Sys.UI.MouseButton.registerEnum("Sys.UI.MouseButton");
 
Sys.UI.Key = function Sys$UI$Key() {
    /// <summary locid="M:J#Sys.UI.Key.#ctor" />
    /// <field name="backspace" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.backspace"></field>
    /// <field name="tab" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.tab"></field>
    /// <field name="enter" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.enter"></field>
    /// <field name="esc" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.esc"></field>
    /// <field name="space" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.space"></field>
    /// <field name="pageUp" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.pageUp"></field>
    /// <field name="pageDown" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.pageDown"></field>
    /// <field name="end" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.end"></field>
    /// <field name="home" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.home"></field>
    /// <field name="left" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.left"></field>
    /// <field name="up" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.up"></field>
    /// <field name="right" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.right"></field>
    /// <field name="down" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.down"></field>
    /// <field name="del" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.del"></field>
    if (arguments.length !== 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
Sys.UI.Key.prototype = {
    backspace: 8,
    tab: 9,
    enter: 13,
    esc: 27,
    space: 32,
    pageUp: 33,
    pageDown: 34,
    end: 35,
    home: 36,
    left: 37,
    up: 38,
    right: 39,
    down: 40,
    del: 127
}
Sys.UI.Key.registerEnum("Sys.UI.Key");
 
Sys.UI.Point = function Sys$UI$Point(x, y) {
    /// <summary locid="M:J#Sys.UI.Point.#ctor" />
    /// <param name="x" type="Number"></param>
    /// <param name="y" type="Number"></param>
    /// <field name="x" type="Number" integer="true" locid="F:J#Sys.UI.Point.x"></field>
    /// <field name="y" type="Number" integer="true" locid="F:J#Sys.UI.Point.y"></field>
    /// <field name="rawX" type="Number" locid="F:J#Sys.UI.Point.rawX"></field>
    /// <field name="rawY" type="Number" locid="F:J#Sys.UI.Point.rawY"></field>
    var e = Function._validateParams(arguments, [
        {name: "x", type: Number},
        {name: "y", type: Number}
    ]);
    if (e) throw e;
    this.rawX = x;
    this.rawY = y;
    this.x = Math.round(x);
    this.y = Math.round(y);
}
Sys.UI.Point.registerClass('Sys.UI.Point');
 
Sys.UI.Bounds = function Sys$UI$Bounds(x, y, width, height) {
    /// <summary locid="M:J#Sys.UI.Bounds.#ctor" />
    /// <param name="x" type="Number" integer="true"></param>
    /// <param name="y" type="Number" integer="true"></param>
    /// <param name="width" type="Number" integer="true"></param>
    /// <param name="height" type="Number" integer="true"></param>
    /// <field name="x" type="Number" integer="true" locid="F:J#Sys.UI.Bounds.x"></field>
    /// <field name="y" type="Number" integer="true" locid="F:J#Sys.UI.Bounds.y"></field>
    /// <field name="width" type="Number" integer="true" locid="F:J#Sys.UI.Bounds.width"></field>
    /// <field name="height" type="Number" integer="true" locid="F:J#Sys.UI.Bounds.height"></field>
    var e = Function._validateParams(arguments, [
        {name: "x", type: Number, integer: true},
        {name: "y", type: Number, integer: true},
        {name: "width", type: Number, integer: true},
        {name: "height", type: Number, integer: true}
    ]);
    if (e) throw e;
    this.x = x;
    this.y = y;
    this.height = height;
    this.width = width;
}
Sys.UI.Bounds.registerClass('Sys.UI.Bounds');
 
Sys.UI.DomEvent = function Sys$UI$DomEvent(eventObject) {
    /// <summary locid="M:J#Sys.UI.DomEvent.#ctor" />
    /// <param name="eventObject"></param>
    /// <field name="altKey" type="Boolean" locid="F:J#Sys.UI.DomEvent.altKey"></field>
    /// <field name="button" type="Sys.UI.MouseButton" locid="F:J#Sys.UI.DomEvent.button"></field>
    /// <field name="charCode" type="Number" integer="true" locid="F:J#Sys.UI.DomEvent.charCode"></field>
    /// <field name="clientX" type="Number" integer="true" locid="F:J#Sys.UI.DomEvent.clientX"></field>
    /// <field name="clientY" type="Number" integer="true" locid="F:J#Sys.UI.DomEvent.clientY"></field>
    /// <field name="ctrlKey" type="Boolean" locid="F:J#Sys.UI.DomEvent.ctrlKey"></field>
    /// <field name="keyCode" type="Number" integer="true" locid="F:J#Sys.UI.DomEvent.keyCode"></field>
    /// <field name="offsetX" type="Number" integer="true" locid="F:J#Sys.UI.DomEvent.offsetX"></field>
    /// <field name="offsetY" type="Number" integer="true" locid="F:J#Sys.UI.DomEvent.offsetY"></field>
    /// <field name="screenX" type="Number" integer="true" locid="F:J#Sys.UI.DomEvent.screenX"></field>
    /// <field name="screenY" type="Number" integer="true" locid="F:J#Sys.UI.DomEvent.screenY"></field>
    /// <field name="shiftKey" type="Boolean" locid="F:J#Sys.UI.DomEvent.shiftKey"></field>
    /// <field name="target" locid="F:J#Sys.UI.DomEvent.target"></field>
    /// <field name="type" type="String" locid="F:J#Sys.UI.DomEvent.type"></field>
    var e = Function._validateParams(arguments, [
        {name: "eventObject"}
    ]);
    if (e) throw e;
    var ev = eventObject;
    var etype = this.type = ev.type.toLowerCase();
    this.rawEvent = ev;
    this.altKey = ev.altKey;
    if (typeof(ev.button) !== 'undefined') {
        this.button = (typeof(ev.which) !== 'undefined') ? ev.button :
            (ev.button === 4) ? Sys.UI.MouseButton.middleButton :
            (ev.button === 2) ? Sys.UI.MouseButton.rightButton :
            Sys.UI.MouseButton.leftButton;
    }
    if (etype === 'keypress') {
        this.charCode = ev.charCode || ev.keyCode;
    }
    else if (ev.keyCode && (ev.keyCode === 46)) {
        this.keyCode = 127;
    }
    else {
        this.keyCode = ev.keyCode;
    }
    this.clientX = ev.clientX;
    this.clientY = ev.clientY;
    this.ctrlKey = ev.ctrlKey;
    this.target = ev.target ? ev.target : ev.srcElement;
    if (!etype.startsWith('key')) {
        if ((typeof(ev.offsetX) !== 'undefined') && (typeof(ev.offsetY) !== 'undefined')) {
            this.offsetX = ev.offsetX;
            this.offsetY = ev.offsetY;
        }
        else if (this.target && (this.target.nodeType !== 3) && (typeof(ev.clientX) === 'number')) {
            var loc = Sys.UI.DomElement.getLocation(this.target);
            var w = Sys.UI.DomElement._getWindow(this.target);
            this.offsetX = (w.pageXOffset || 0) + ev.clientX - loc.x;
            this.offsetY = (w.pageYOffset || 0) + ev.clientY - loc.y;
        }
    }
    this.screenX = ev.screenX;
    this.screenY = ev.screenY;
    this.shiftKey = ev.shiftKey;
}
    function Sys$UI$DomEvent$preventDefault() {
        /// <summary locid="M:J#Sys.UI.DomEvent.preventDefault" />
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this.rawEvent.preventDefault) {
            this.rawEvent.preventDefault();
        }
        else if (window.event) {
            this.rawEvent.returnValue = false;
        }
    }
    function Sys$UI$DomEvent$stopPropagation() {
        /// <summary locid="M:J#Sys.UI.DomEvent.stopPropagation" />
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this.rawEvent.stopPropagation) {
            this.rawEvent.stopPropagation();
        }
        else if (window.event) {
            this.rawEvent.cancelBubble = true;
        }
    }
Sys.UI.DomEvent.prototype = {
    preventDefault: Sys$UI$DomEvent$preventDefault,
    stopPropagation: Sys$UI$DomEvent$stopPropagation
}
Sys.UI.DomEvent.registerClass('Sys.UI.DomEvent');
var $addHandler = Sys.UI.DomEvent.addHandler = function Sys$UI$DomEvent$addHandler(element, eventName, handler, autoRemove) {
    /// <summary locid="M:J#Sys.UI.DomEvent.addHandler" />
    /// <param name="element"></param>
    /// <param name="eventName" type="String"></param>
    /// <param name="handler" type="Function"></param>
    /// <param name="autoRemove" type="Boolean" optional="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "element"},
        {name: "eventName", type: String},
        {name: "handler", type: Function},
        {name: "autoRemove", type: Boolean, optional: true}
    ]);
    if (e) throw e;
    Sys.UI.DomEvent._ensureDomNode(element);
    if (eventName === "error") throw Error.invalidOperation(Sys.Res.addHandlerCantBeUsedForError);
    if (!element._events) {
        element._events = {};
    }
    var eventCache = element._events[eventName];
    if (!eventCache) {
        element._events[eventName] = eventCache = [];
    }
    var browserHandler;
    if (element.addEventListener) {
        browserHandler = function(e) {
            return handler.call(element, new Sys.UI.DomEvent(e));
        }
        element.addEventListener(eventName, browserHandler, false);
    }
    else if (element.attachEvent) {
        browserHandler = function() {
            var e = {};
            try {e = 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] = {handler: handler, browserHandler: browserHandler, autoRemove: autoRemove };
    if (autoRemove) {
        var d = element.dispose;
        if (d !== Sys.UI.DomEvent._disposeHandlers) {
            element.dispose = Sys.UI.DomEvent._disposeHandlers;
            if (typeof(d) !== "undefined") {
                element._chainDispose = d;
            }
        }
    }
}
var $addHandlers = Sys.UI.DomEvent.addHandlers = function Sys$UI$DomEvent$addHandlers(element, events, handlerOwner, autoRemove) {
    /// <summary locid="M:J#Sys.UI.DomEvent.addHandlers" />
    /// <param name="element"></param>
    /// <param name="events" type="Object"></param>
    /// <param name="handlerOwner" optional="true"></param>
    /// <param name="autoRemove" type="Boolean" optional="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "element"},
        {name: "events", type: Object},
        {name: "handlerOwner", optional: true},
        {name: "autoRemove", type: Boolean, optional: true}
    ]);
    if (e) throw e;
    Sys.UI.DomEvent._ensureDomNode(element);
    for (var name in events) {
        var handler = events[name];
        if (typeof(handler) !== 'function') throw Error.invalidOperation(Sys.Res.cantAddNonFunctionhandler);
        if (handlerOwner) {
            handler = Function.createDelegate(handlerOwner, handler);
        }
        $addHandler(element, name, handler, autoRemove || false);
    }
}
var $clearHandlers = Sys.UI.DomEvent.clearHandlers = function Sys$UI$DomEvent$clearHandlers(element) {
    /// <summary locid="M:J#Sys.UI.DomEvent.clearHandlers" />
    /// <param name="element"></param>
    var e = Function._validateParams(arguments, [
        {name: "element"}
    ]);
    if (e) throw e;
    Sys.UI.DomEvent._ensureDomNode(element);
    Sys.UI.DomEvent._clearHandlers(element, false);
}
Sys.UI.DomEvent._clearHandlers = function Sys$UI$DomEvent$_clearHandlers(element, autoRemoving) {
    if (element._events) {
        var cache = element._events;
        for (var name in cache) {
            var handlers = cache[name];
            for (var i = handlers.length - 1; i >= 0; i--) {
                var entry = handlers[i];
                if (!autoRemoving || entry.autoRemove) {
                    $removeHandler(element, name, entry.handler);
                }
            }
        }
        element._events = null;
    }
}
Sys.UI.DomEvent._disposeHandlers = function Sys$UI$DomEvent$_disposeHandlers() {
    Sys.UI.DomEvent._clearHandlers(this, true);
    var d = this._chainDispose, type = typeof(d);
    if (type !== "undefined") {
        this.dispose = d;
        this._chainDispose = null;
        if (type === "function") {
            this.dispose();
        }
    }
}
var $removeHandler = Sys.UI.DomEvent.removeHandler = function Sys$UI$DomEvent$removeHandler(element, eventName, handler) {
    /// <summary locid="M:J#Sys.UI.DomEvent.removeHandler" />
    /// <param name="element"></param>
    /// <param name="eventName" type="String"></param>
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "element"},
        {name: "eventName", type: String},
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    Sys.UI.DomEvent._removeHandler(element, eventName, handler);
}
Sys.UI.DomEvent._removeHandler = function Sys$UI$DomEvent$_removeHandler(element, eventName, handler) {
    Sys.UI.DomEvent._ensureDomNode(element);
    var browserHandler = null;
    if ((typeof(element._events) !== 'object') || !element._events) throw Error.invalidOperation(Sys.Res.eventHandlerInvalid);
    var cache = element._events[eventName];
    if (!(cache instanceof Array)) throw Error.invalidOperation(Sys.Res.eventHandlerInvalid);
    for (var i = 0, l = cache.length; i < l; i++) {
        if (cache[i].handler === handler) {
            browserHandler = cache[i].browserHandler;
            break;
        }
    }
    if (typeof(browserHandler) !== 'function') throw Error.invalidOperation(Sys.Res.eventHandlerInvalid);
    if (element.removeEventListener) {
        element.removeEventListener(eventName, browserHandler, false);
    }
    else if (element.detachEvent) {
        element.detachEvent('on' + eventName, browserHandler);
    }
    cache.splice(i, 1);
}
Sys.UI.DomEvent._ensureDomNode = function Sys$UI$DomEvent$_ensureDomNode(element) {
    if (element.tagName && (element.tagName.toUpperCase() === "SCRIPT")) return;
    
    var doc = element.ownerDocument || element.document || element;
    if ((typeof(element.document) !== 'object') && (element != doc) && (typeof(element.nodeType) !== 'number')) {
        throw Error.argument("element", Sys.Res.argumentDomNode);
    }
}
 
Sys.UI.DomElement = function Sys$UI$DomElement() {
    /// <summary locid="M:J#Sys.UI.DomElement.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
Sys.UI.DomElement.registerClass('Sys.UI.DomElement');
Sys.UI.DomElement.addCssClass = function Sys$UI$DomElement$addCssClass(element, className) {
    /// <summary locid="M:J#Sys.UI.DomElement.addCssClass" />
    /// <param name="element" domElement="true"></param>
    /// <param name="className" type="String"></param>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "className", type: String}
    ]);
    if (e) throw e;
    if (!Sys.UI.DomElement.containsCssClass(element, className)) {
        if (element.className === '') {
            element.className = className;
        }
        else {
            element.className += ' ' + className;
        }
    }
}
Sys.UI.DomElement.containsCssClass = function Sys$UI$DomElement$containsCssClass(element, className) {
    /// <summary locid="M:J#Sys.UI.DomElement.containsCssClass" />
    /// <param name="element" domElement="true"></param>
    /// <param name="className" type="String"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "className", type: String}
    ]);
    if (e) throw e;
    return Array.contains(element.className.split(' '), className);
}
Sys.UI.DomElement.getBounds = function Sys$UI$DomElement$getBounds(element) {
    /// <summary locid="M:J#Sys.UI.DomElement.getBounds" />
    /// <param name="element" domElement="true"></param>
    /// <returns type="Sys.UI.Bounds"></returns>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    var offset = Sys.UI.DomElement.getLocation(element);
    return new Sys.UI.Bounds(offset.x, offset.y, element.offsetWidth || 0, element.offsetHeight || 0);
}
var $get = Sys.UI.DomElement.getElementById = function Sys$UI$DomElement$getElementById(id, element) {
    /// <summary locid="M:J#Sys.UI.DomElement.getElementById" />
    /// <param name="id" type="String"></param>
    /// <param name="element" domElement="true" optional="true" mayBeNull="true"></param>
    /// <returns domElement="true" mayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "id", type: String},
        {name: "element", mayBeNull: true, domElement: true, optional: true}
    ]);
    if (e) throw e;
    if (!element) return document.getElementById(id);
    if (element.getElementById) return element.getElementById(id);
    var nodeQueue = [];
    var childNodes = element.childNodes;
    for (var i = 0; i < childNodes.length; i++) {
        var node = childNodes[i];
        if (node.nodeType == 1) {
            nodeQueue[nodeQueue.length] = node;
        }
    }
    while (nodeQueue.length) {
        node = nodeQueue.shift();
        if (node.id == id) {
            return node;
        }
        childNodes = node.childNodes;
        for (i = 0; i < childNodes.length; i++) {
            node = childNodes[i];
            if (node.nodeType == 1) {
                nodeQueue[nodeQueue.length] = node;
            }
        }
    }
    return null;
}
if (document.documentElement.getBoundingClientRect) {
    Sys.UI.DomElement.getLocation = function Sys$UI$DomElement$getLocation(element) {
        /// <summary locid="M:J#Sys.UI.DomElement.getLocation" />
        /// <param name="element" domElement="true"></param>
        /// <returns type="Sys.UI.Point"></returns>
        var e = Function._validateParams(arguments, [
            {name: "element", domElement: true}
        ]);
        if (e) throw e;
        if (element.self || element.nodeType === 9 || 
            (element === document.documentElement) || 
            (element.parentNode === element.ownerDocument.documentElement)) { 
            return new Sys.UI.Point(0, 0);
        }        
        
        var clientRect = element.getBoundingClientRect();
        if (!clientRect) {
            return new Sys.UI.Point(0,0);
        }
        var documentElement = element.ownerDocument.documentElement;
        var bodyElement = element.ownerDocument.body;
        var ex,
            offsetX = Math.round(clientRect.left) + (documentElement.scrollLeft || bodyElement.scrollLeft),
            offsetY = Math.round(clientRect.top) + (documentElement.scrollTop || bodyElement.scrollTop);
        if (Sys.Browser.agent === Sys.Browser.InternetExplorer) {
            try {
                var f = element.ownerDocument.parentWindow.frameElement || null;
                if (f) {
                    var offset = (f.frameBorder === "0" || f.frameBorder === "no") ? 2 : 0;
                    offsetX += offset;
                    offsetY += offset;
                }
            }
            catch(ex) {
            }
            if (Sys.Browser.version === 7 && !document.documentMode) {
                var body = document.body,
                    rect = body.getBoundingClientRect(),
                    zoom = (rect.right-rect.left) / body.clientWidth;
                zoom = Math.round(zoom * 100);
                zoom = (zoom - zoom % 5) / 100;
                if (!isNaN(zoom) && (zoom !== 1)) {
                    offsetX = Math.round(offsetX / zoom);
                    offsetY = Math.round(offsetY / zoom);
                }
            }        
            if ((document.documentMode || 0) < 8) {
                offsetX -= documentElement.clientLeft;
                offsetY -= documentElement.clientTop;
            }
        }
        return new Sys.UI.Point(offsetX, offsetY);
    }
}
else if (Sys.Browser.agent === Sys.Browser.Safari) {
    Sys.UI.DomElement.getLocation = function Sys$UI$DomElement$getLocation(element) {
        /// <summary locid="M:J#Sys.UI.DomElement.getLocation" />
        /// <param name="element" domElement="true"></param>
        /// <returns type="Sys.UI.Point"></returns>
        var e = Function._validateParams(arguments, [
            {name: "element", domElement: true}
        ]);
        if (e) throw e;
        if ((element.window && (element.window === element)) || element.nodeType === 9) return new Sys.UI.Point(0,0);
        var offsetX = 0, offsetY = 0,
            parent,
            previous = null,
            previousStyle = null,
            currentStyle;
        for (parent = element; parent; previous = parent, previousStyle = currentStyle, parent = parent.offsetParent) {
            currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
            var tagName = parent.tagName ? parent.tagName.toUpperCase() : null;
            if ((parent.offsetLeft || parent.offsetTop) &&
                ((tagName !== "BODY") || (!previousStyle || previousStyle.position !== "absolute"))) {
                offsetX += parent.offsetLeft;
                offsetY += parent.offsetTop;
            }
            if (previous && Sys.Browser.version >= 3) {
                offsetX += parseInt(currentStyle.borderLeftWidth);
                offsetY += parseInt(currentStyle.borderTopWidth);
            }
        }
        currentStyle = Sys.UI.DomElement._getCurrentStyle(element);
        var elementPosition = currentStyle ? currentStyle.position : null;
        if (!elementPosition || (elementPosition !== "absolute")) {
            for (parent = element.parentNode; parent; parent = parent.parentNode) {
                tagName = parent.tagName ? parent.tagName.toUpperCase() : null;
                if ((tagName !== "BODY") && (tagName !== "HTML") && (parent.scrollLeft || parent.scrollTop)) {
                    offsetX -= (parent.scrollLeft || 0);
                    offsetY -= (parent.scrollTop || 0);
                }
                currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
                var parentPosition = currentStyle ? currentStyle.position : null;
                if (parentPosition && (parentPosition === "absolute")) break;
            }
        }
        return new Sys.UI.Point(offsetX, offsetY);
    }
}
else {
    Sys.UI.DomElement.getLocation = function Sys$UI$DomElement$getLocation(element) {
        /// <summary locid="M:J#Sys.UI.DomElement.getLocation" />
        /// <param name="element" domElement="true"></param>
        /// <returns type="Sys.UI.Point"></returns>
        var e = Function._validateParams(arguments, [
            {name: "element", domElement: true}
        ]);
        if (e) throw e;
        if ((element.window && (element.window === element)) || element.nodeType === 9) return new Sys.UI.Point(0,0);
        var offsetX = 0, offsetY = 0,
            parent,
            previous = null,
            previousStyle = null,
            currentStyle = null;
        for (parent = element; parent; previous = parent, previousStyle = currentStyle, parent = parent.offsetParent) {
            var tagName = parent.tagName ? parent.tagName.toUpperCase() : null;
            currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
            if ((parent.offsetLeft || parent.offsetTop) &&
                !((tagName === "BODY") &&
                (!previousStyle || previousStyle.position !== "absolute"))) {
                offsetX += parent.offsetLeft;
                offsetY += parent.offsetTop;
            }
            if (previous !== null && currentStyle) {
                if ((tagName !== "TABLE") && (tagName !== "TD") && (tagName !== "HTML")) {
                    offsetX += parseInt(currentStyle.borderLeftWidth) || 0;
                    offsetY += parseInt(currentStyle.borderTopWidth) || 0;
                }
                if (tagName === "TABLE" &&
                    (currentStyle.position === "relative" || currentStyle.position === "absolute")) {
                    offsetX += parseInt(currentStyle.marginLeft) || 0;
                    offsetY += parseInt(currentStyle.marginTop) || 0;
                }
            }
        }
        currentStyle = Sys.UI.DomElement._getCurrentStyle(element);
        var elementPosition = currentStyle ? currentStyle.position : null;
        if (!elementPosition || (elementPosition !== "absolute")) {
            for (parent = element.parentNode; parent; parent = parent.parentNode) {
                tagName = parent.tagName ? parent.tagName.toUpperCase() : null;
                if ((tagName !== "BODY") && (tagName !== "HTML") && (parent.scrollLeft || parent.scrollTop)) {
                    offsetX -= (parent.scrollLeft || 0);
                    offsetY -= (parent.scrollTop || 0);
                    currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
                    if (currentStyle) {
                        offsetX += parseInt(currentStyle.borderLeftWidth) || 0;
                        offsetY += parseInt(currentStyle.borderTopWidth) || 0;
                    }
                }
            }
        }
        return new Sys.UI.Point(offsetX, offsetY);
    }
}
Sys.UI.DomElement.isDomElement = function Sys$UI$DomElement$isDomElement(obj) {
    /// <summary locid="M:J#Sys.UI.DomElement.isDomElement" />
    /// <param name="obj"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "obj"}
    ]);
    if (e) throw e;
    return Sys._isDomElement(obj);
}
Sys.UI.DomElement.removeCssClass = function Sys$UI$DomElement$removeCssClass(element, className) {
    /// <summary locid="M:J#Sys.UI.DomElement.removeCssClass" />
    /// <param name="element" domElement="true"></param>
    /// <param name="className" type="String"></param>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "className", type: String}
    ]);
    if (e) throw e;
    var currentClassName = ' ' + element.className + ' ';
    var index = currentClassName.indexOf(' ' + className + ' ');
    if (index >= 0) {
        element.className = (currentClassName.substr(0, index) + ' ' +
            currentClassName.substring(index + className.length + 1, currentClassName.length)).trim();
    }
}
Sys.UI.DomElement.resolveElement = function Sys$UI$DomElement$resolveElement(elementOrElementId, containerElement) {
    /// <summary locid="M:J#Sys.UI.DomElement.resolveElement" />
    /// <param name="elementOrElementId" mayBeNull="true"></param>
    /// <param name="containerElement" domElement="true" optional="true" mayBeNull="true"></param>
    /// <returns domElement="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "elementOrElementId", mayBeNull: true},
        {name: "containerElement", mayBeNull: true, domElement: true, optional: true}
    ]);
    if (e) throw e;
    var el = elementOrElementId;
    if (!el) return null;
    if (typeof(el) === "string") {
        el = Sys.UI.DomElement.getElementById(el, containerElement);
        if (!el) {
            throw Error.argument("elementOrElementId", String.format(Sys.Res.elementNotFound, elementOrElementId));
        }
    }
    else if(!Sys.UI.DomElement.isDomElement(el)) {
        throw Error.argument("elementOrElementId", Sys.Res.expectedElementOrId);
    }
    return el;
}
Sys.UI.DomElement.raiseBubbleEvent = function Sys$UI$DomElement$raiseBubbleEvent(source, args) {
    /// <summary locid="M:J#Sys.UI.DomElement.raiseBubbleEvent" />
    /// <param name="source" domElement="true"></param>
    /// <param name="args" type="Sys.EventArgs"></param>
    var e = Function._validateParams(arguments, [
        {name: "source", domElement: true},
        {name: "args", type: Sys.EventArgs}
    ]);
    if (e) throw e;
    var target = source;
    while (target) {
        var control = target.control;
        if (control && control.onBubbleEvent && control.raiseBubbleEvent) {
            Sys.UI.DomElement._raiseBubbleEventFromControl(control, source, args);
            return;
        }
        target = target.parentNode;
    }
}
Sys.UI.DomElement._raiseBubbleEventFromControl = function Sys$UI$DomElement$_raiseBubbleEventFromControl(control, source, args) {
    if (!control.onBubbleEvent(source, args)) {
        control._raiseBubbleEvent(source, args);
    }
}
Sys.UI.DomElement.setLocation = function Sys$UI$DomElement$setLocation(element, x, y) {
    /// <summary locid="M:J#Sys.UI.DomElement.setLocation" />
    /// <param name="element" domElement="true"></param>
    /// <param name="x" type="Number" integer="true"></param>
    /// <param name="y" type="Number" integer="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "x", type: Number, integer: true},
        {name: "y", type: Number, integer: true}
    ]);
    if (e) throw e;
    var style = element.style;
    style.position = 'absolute';
    style.left = x + "px";
    style.top = y + "px";
}
Sys.UI.DomElement.toggleCssClass = function Sys$UI$DomElement$toggleCssClass(element, className) {
    /// <summary locid="M:J#Sys.UI.DomElement.toggleCssClass" />
    /// <param name="element" domElement="true"></param>
    /// <param name="className" type="String"></param>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "className", type: String}
    ]);
    if (e) throw e;
    if (Sys.UI.DomElement.containsCssClass(element, className)) {
        Sys.UI.DomElement.removeCssClass(element, className);
    }
    else {
        Sys.UI.DomElement.addCssClass(element, className);
    }
}
Sys.UI.DomElement.getVisibilityMode = function Sys$UI$DomElement$getVisibilityMode(element) {
    /// <summary locid="M:J#Sys.UI.DomElement.getVisibilityMode" />
    /// <param name="element" domElement="true"></param>
    /// <returns type="Sys.UI.VisibilityMode"></returns>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    return (element._visibilityMode === Sys.UI.VisibilityMode.hide) ?
        Sys.UI.VisibilityMode.hide :
        Sys.UI.VisibilityMode.collapse;
}
Sys.UI.DomElement.setVisibilityMode = function Sys$UI$DomElement$setVisibilityMode(element, value) {
    /// <summary locid="M:J#Sys.UI.DomElement.setVisibilityMode" />
    /// <param name="element" domElement="true"></param>
    /// <param name="value" type="Sys.UI.VisibilityMode"></param>
    var e = 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 !== value) {
        element._visibilityMode = value;
        if (Sys.UI.DomElement.getVisible(element) === false) {
            if (element._visibilityMode === Sys.UI.VisibilityMode.hide) {
                element.style.display = element._oldDisplayMode;
            }
            else {
                element.style.display = 'none';
            }
        }
        element._visibilityMode = value;
    }
}
Sys.UI.DomElement.getVisible = function Sys$UI$DomElement$getVisible(element) {
    /// <summary locid="M:J#Sys.UI.DomElement.getVisible" />
    /// <param name="element" domElement="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    var style = element.currentStyle || Sys.UI.DomElement._getCurrentStyle(element);
    if (!style) return true;
    return (style.visibility !== 'hidden') && (style.display !== 'none');
}
Sys.UI.DomElement.setVisible = function Sys$UI$DomElement$setVisible(element, value) {
    /// <summary locid="M:J#Sys.UI.DomElement.setVisible" />
    /// <param name="element" domElement="true"></param>
    /// <param name="value" type="Boolean"></param>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "value", type: Boolean}
    ]);
    if (e) throw e;
    if (value !== Sys.UI.DomElement.getVisible(element)) {
        Sys.UI.DomElement._ensureOldDisplayMode(element);
        element.style.visibility = value ? 'visible' : 'hidden';
        if (value || (element._visibilityMode === Sys.UI.VisibilityMode.hide)) {
            element.style.display = element._oldDisplayMode;
        }
        else {
            element.style.display = 'none';
        }
    }
}
Sys.UI.DomElement._ensureOldDisplayMode = function Sys$UI$DomElement$_ensureOldDisplayMode(element) {
    if (!element._oldDisplayMode) {
        var style = element.currentStyle || Sys.UI.DomElement._getCurrentStyle(element);
        element._oldDisplayMode = style ? style.display : null;
        if (!element._oldDisplayMode || element._oldDisplayMode === '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 = 'block';
                    break;
                case 'LI':
                    element._oldDisplayMode = 'list-item';
                    break;
                default:
                    element._oldDisplayMode = 'inline';
            }
        }
    }
}
Sys.UI.DomElement._getWindow = function Sys$UI$DomElement$_getWindow(element) {
    var doc = element.ownerDocument || element.document || element;
    return doc.defaultView || doc.parentWindow;
}
Sys.UI.DomElement._getCurrentStyle = function Sys$UI$DomElement$_getCurrentStyle(element) {
    if (element.nodeType === 3) return null;
    var w = Sys.UI.DomElement._getWindow(element);
    if (element.documentElement) element = element.documentElement;
    var computedStyle = (w && (element !== w) && w.getComputedStyle) ?
        w.getComputedStyle(element, null) :
        element.currentStyle || element.style;
    if (!computedStyle && (Sys.Browser.agent === Sys.Browser.Safari) && element.style) {
        var oldDisplay = element.style.display;
        var oldPosition = element.style.position;
        element.style.position = 'absolute';
        element.style.display = 'block';
        var style = w.getComputedStyle(element, null);
        element.style.display = oldDisplay;
        element.style.position = oldPosition;
        computedStyle = {};
        for (var n in style) {
            computedStyle[n] = style[n];
        }
        computedStyle.display = 'none';
    }
    return computedStyle;
}
 
Sys.IContainer = function Sys$IContainer() {
    throw Error.notImplemented();
}
    function Sys$IContainer$addComponent(component) {
        /// <summary locid="M:J#Sys.IContainer.addComponent" />
        /// <param name="component" type="Sys.Component"></param>
        var e = Function._validateParams(arguments, [
            {name: "component", type: Sys.Component}
        ]);
        if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$IContainer$removeComponent(component) {
        /// <summary locid="M:J#Sys.IContainer.removeComponent" />
        /// <param name="component" type="Sys.Component"></param>
        var e = Function._validateParams(arguments, [
            {name: "component", type: Sys.Component}
        ]);
        if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$IContainer$findComponent(id) {
        /// <summary locid="M:J#Sys.IContainer.findComponent" />
        /// <param name="id" type="String"></param>
        /// <returns type="Sys.Component"></returns>
        var e = Function._validateParams(arguments, [
            {name: "id", type: String}
        ]);
        if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$IContainer$getComponents() {
        /// <summary locid="M:J#Sys.IContainer.getComponents" />
        /// <returns type="Array" elementType="Sys.Component"></returns>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
Sys.IContainer.prototype = {
    addComponent: Sys$IContainer$addComponent,
    removeComponent: Sys$IContainer$removeComponent,
    findComponent: Sys$IContainer$findComponent,
    getComponents: Sys$IContainer$getComponents
}
Sys.IContainer.registerInterface("Sys.IContainer");
 
Sys.ApplicationLoadEventArgs = function Sys$ApplicationLoadEventArgs(components, isPartialLoad) {
    /// <summary locid="M:J#Sys.ApplicationLoadEventArgs.#ctor" />
    /// <param name="components" type="Array" elementType="Sys.Component"></param>
    /// <param name="isPartialLoad" type="Boolean"></param>
    var e = Function._validateParams(arguments, [
        {name: "components", type: Array, elementType: Sys.Component},
        {name: "isPartialLoad", type: Boolean}
    ]);
    if (e) throw e;
    Sys.ApplicationLoadEventArgs.initializeBase(this);
    this._components = components;
    this._isPartialLoad = isPartialLoad;
}
 
    function Sys$ApplicationLoadEventArgs$get_components() {
        /// <value type="Array" elementType="Sys.Component" locid="P:J#Sys.ApplicationLoadEventArgs.components"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._components;
    }
    function Sys$ApplicationLoadEventArgs$get_isPartialLoad() {
        /// <value type="Boolean" locid="P:J#Sys.ApplicationLoadEventArgs.isPartialLoad"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._isPartialLoad;
    }
Sys.ApplicationLoadEventArgs.prototype = {
    get_components: Sys$ApplicationLoadEventArgs$get_components,
    get_isPartialLoad: Sys$ApplicationLoadEventArgs$get_isPartialLoad
}
Sys.ApplicationLoadEventArgs.registerClass('Sys.ApplicationLoadEventArgs', Sys.EventArgs);
 
Sys._Application = function Sys$_Application() {
    /// <summary locid="M:J#Sys.Application.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    Sys._Application.initializeBase(this);
    this._disposableObjects = [];
    this._components = {};
    this._createdComponents = [];
    this._secondPassComponents = [];
    this._unloadHandlerDelegate = Function.createDelegate(this, this._unloadHandler);
    Sys.UI.DomEvent.addHandler(window, "unload", this._unloadHandlerDelegate);
    this._domReady();
}
    function Sys$_Application$get_isCreatingComponents() {
        /// <value type="Boolean" locid="P:J#Sys.Application.isCreatingComponents"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._creatingComponents;
    }
    function Sys$_Application$get_isDisposing() {
        /// <value type="Boolean" locid="P:J#Sys.Application.isDisposing"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._disposing;
    }
    function Sys$_Application$add_init(handler) {
        /// <summary locid="E:J#Sys.Application.init" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        if (this._initialized) {
            handler(this, Sys.EventArgs.Empty);
        }
        else {
            this.get_events().addHandler("init", handler);
        }
    }
    function Sys$_Application$remove_init(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().removeHandler("init", handler);
    }
    function Sys$_Application$add_load(handler) {
        /// <summary locid="E:J#Sys.Application.load" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().addHandler("load", handler);
    }
    function Sys$_Application$remove_load(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().removeHandler("load", handler);
    }
    function Sys$_Application$add_unload(handler) {
        /// <summary locid="E:J#Sys.Application.unload" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().addHandler("unload", handler);
    }
    function Sys$_Application$remove_unload(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().removeHandler("unload", handler);
    }
    function Sys$_Application$addComponent(component) {
        /// <summary locid="M:J#Sys.Application.addComponent" />
        /// <param name="component" type="Sys.Component"></param>
        var e = Function._validateParams(arguments, [
            {name: "component", type: Sys.Component}
        ]);
        if (e) throw e;
        var id = component.get_id();
        if (!id) throw Error.invalidOperation(Sys.Res.cantAddWithoutId);
        if (typeof(this._components[id]) !== 'undefined') throw Error.invalidOperation(String.format(Sys.Res.appDuplicateComponent, id));
        this._components[id] = component;
    }
    function Sys$_Application$beginCreateComponents() {
        /// <summary locid="M:J#Sys.Application.beginCreateComponents" />
        if (arguments.length !== 0) throw Error.parameterCount();
        this._creatingComponents = true;
    }
    function Sys$_Application$dispose() {
        /// <summary locid="M:J#Sys.Application.dispose" />
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._disposing) {
            this._disposing = true;
            if (this._timerCookie) {
                window.clearTimeout(this._timerCookie);
                delete this._timerCookie;
            }
            if (this._endRequestHandler) {
                Sys.WebForms.PageRequestManager.getInstance().remove_endRequest(this._endRequestHandler);
                delete this._endRequestHandler;
            }
            if (this._beginRequestHandler) {
                Sys.WebForms.PageRequestManager.getInstance().remove_beginRequest(this._beginRequestHandler);
                delete this._beginRequestHandler;
            }
            if (window.pageUnload) {
                window.pageUnload(this, Sys.EventArgs.Empty);
            }
            var unloadHandler = this.get_events().getHandler("unload");
            if (unloadHandler) {
                unloadHandler(this, Sys.EventArgs.Empty);
            }
            var disposableObjects = Array.clone(this._disposableObjects);
            for (var i = 0, l = disposableObjects.length; i < l; i++) {
                var object = disposableObjects[i];
                if (typeof(object) !== "undefined") {
                    object.dispose();
                }
            }
            Array.clear(this._disposableObjects);
            Sys.UI.DomEvent.removeHandler(window, "unload", this._unloadHandlerDelegate);
            if (Sys._ScriptLoader) {
                var sl = Sys._ScriptLoader.getInstance();
                if(sl) {
                    sl.dispose();
                }
            }
            Sys._Application.callBaseMethod(this, 'dispose');
        }
    }
    function Sys$_Application$disposeElement(element, childNodesOnly) {
        /// <summary locid="M:J#Sys._Application.disposeElement" />
        /// <param name="element"></param>
        /// <param name="childNodesOnly" type="Boolean"></param>
        var e = Function._validateParams(arguments, [
            {name: "element"},
            {name: "childNodesOnly", type: Boolean}
        ]);
        if (e) throw e;
        if (element.nodeType === 1) {
            var i, allElements = element.getElementsByTagName("*"),
                length = allElements.length,
                children = new Array(length);
            for (i = 0; i < length; i++) {
                children[i] = allElements[i];
            }
            for (i = length - 1; i >= 0; i--) {
                var child = children[i];
                var d = child.dispose;
                if (d && typeof(d) === "function") {
                    child.dispose();
                }
                else {
                    var c = child.control;
                    if (c && typeof(c.dispose) === "function") {
                        c.dispose();
                    }
                }
                var list = child._behaviors;
                if (list) {
                    this._disposeComponents(list);
                }
                list = child._components;
                if (list) {
                    this._disposeComponents(list);
                    child._components = null;
                }
            }
            if (!childNodesOnly) {
                var d = element.dispose;
                if (d && typeof(d) === "function") {
                    element.dispose();
                }
                else {
                    var c = element.control;
                    if (c && typeof(c.dispose) === "function") {
                        c.dispose();
                    }
                }
                var list = element._behaviors;
                if (list) {
                    this._disposeComponents(list);
                }
                list = element._components;
                if (list) {
                    this._disposeComponents(list);
                    element._components = null;
                }
            }
        }
    }
    function Sys$_Application$endCreateComponents() {
        /// <summary locid="M:J#Sys.Application.endCreateComponents" />
        if (arguments.length !== 0) throw Error.parameterCount();
        var components = this._secondPassComponents;
        for (var i = 0, l = components.length; i < l; i++) {
            var component = components[i].component;
            Sys$Component$_setReferences(component, components[i].references);
            component.endUpdate();
        }
        this._secondPassComponents = [];
        this._creatingComponents = false;
    }
    function Sys$_Application$findComponent(id, parent) {
        /// <summary locid="M:J#Sys.Application.findComponent" />
        /// <param name="id" type="String"></param>
        /// <param name="parent" optional="true" mayBeNull="true"></param>
        /// <returns type="Sys.Component" mayBeNull="true"></returns>
        var e = Function._validateParams(arguments, [
            {name: "id", type: String},
            {name: "parent", mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        return (parent ?
            ((Sys.IContainer.isInstanceOfType(parent)) ?
                parent.findComponent(id) :
                parent[id] || null) :
            Sys.Application._components[id] || null);
    }
    function Sys$_Application$getComponents() {
        /// <summary locid="M:J#Sys.Application.getComponents" />
        /// <returns type="Array" elementType="Sys.Component"></returns>
        if (arguments.length !== 0) throw Error.parameterCount();
        var res = [];
        var components = this._components;
        for (var name in components) {
            res[res.length] = components[name];
        }
        return res;
    }
    function Sys$_Application$initialize() {
        /// <summary locid="M:J#Sys.Application.initialize" />
        if (arguments.length !== 0) throw Error.parameterCount();
        if(!this.get_isInitialized() && !this._disposing) {
            Sys._Application.callBaseMethod(this, 'initialize');
            this._raiseInit();
            if (this.get_stateString) {
                if (Sys.WebForms && Sys.WebForms.PageRequestManager) {
                    this._beginRequestHandler = Function.createDelegate(this, this._onPageRequestManagerBeginRequest);
                    Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(this._beginRequestHandler);
                    this._endRequestHandler = Function.createDelegate(this, this._onPageRequestManagerEndRequest);
                    Sys.WebForms.PageRequestManager.getInstance().add_endRequest(this._endRequestHandler);
                }
                var loadedEntry = this.get_stateString();
                if (loadedEntry !== this._currentEntry) {
                    this._navigate(loadedEntry);
                }
                else {
                    this._ensureHistory();
                }
            }
            this.raiseLoad();
        }
    }
    function Sys$_Application$notifyScriptLoaded() {
        /// <summary locid="M:J#Sys.Application.notifyScriptLoaded" />
        if (arguments.length !== 0) throw Error.parameterCount();
    }
    function Sys$_Application$registerDisposableObject(object) {
        /// <summary locid="M:J#Sys.Application.registerDisposableObject" />
        /// <param name="object" type="Sys.IDisposable"></param>
        var e = Function._validateParams(arguments, [
            {name: "object", type: Sys.IDisposable}
        ]);
        if (e) throw e;
        if (!this._disposing) {
            var objects = this._disposableObjects,
                i = objects.length;
            objects[i] = object;
            object.__msdisposeindex = i;
        }
    }
    function Sys$_Application$raiseLoad() {
        /// <summary locid="M:J#Sys.Application.raiseLoad" />
        if (arguments.length !== 0) throw Error.parameterCount();
        var h = this.get_events().getHandler("load");
        var args = new Sys.ApplicationLoadEventArgs(Array.clone(this._createdComponents), !!this._loaded);
        this._loaded = true;
        if (h) {
            h(this, args);
        }
        if (window.pageLoad) {
            window.pageLoad(this, args);
        }
        this._createdComponents = [];
    }
    function Sys$_Application$removeComponent(component) {
        /// <summary locid="M:J#Sys.Application.removeComponent" />
        /// <param name="component" type="Sys.Component"></param>
        var e = Function._validateParams(arguments, [
            {name: "component", type: Sys.Component}
        ]);
        if (e) throw e;
        var id = component.get_id();
        if (id) delete this._components[id];
    }
    function Sys$_Application$unregisterDisposableObject(object) {
        /// <summary locid="M:J#Sys.Application.unregisterDisposableObject" />
        /// <param name="object" type="Sys.IDisposable"></param>
        var e = Function._validateParams(arguments, [
            {name: "object", type: Sys.IDisposable}
        ]);
        if (e) throw e;
        if (!this._disposing) {
            var i = object.__msdisposeindex;
            if (typeof(i) === "number") {
                var disposableObjects = this._disposableObjects;
                delete disposableObjects[i];
                delete object.__msdisposeindex;
                if (++this._deleteCount > 1000) {
                    var newArray = [];
                    for (var j = 0, l = disposableObjects.length; j < l; j++) {
                        object = disposableObjects[j];
                        if (typeof(object) !== "undefined") {
                            object.__msdisposeindex = newArray.length;
                            newArray.push(object);
                        }
                    }
                    this._disposableObjects = newArray;
                    this._deleteCount = 0;
                }
            }
        }
    }
    function Sys$_Application$_addComponentToSecondPass(component, references) {
        this._secondPassComponents[this._secondPassComponents.length] = {component: component, references: references};
    }
    function Sys$_Application$_disposeComponents(list) {
        if (list) {
            for (var i = list.length - 1; i >= 0; i--) {
                var item = list[i];
                if (typeof(item.dispose) === "function") {
                    item.dispose();
                }
            }
        }
    }
    function Sys$_Application$_domReady() {
        var check, er, app = this;
        function init() { app.initialize(); }
        var onload = function() {
            Sys.UI.DomEvent.removeHandler(window, "load", onload);
            init();
        }
        Sys.UI.DomEvent.addHandler(window, "load", onload);
        
        if (document.addEventListener) {
            try {
                document.addEventListener("DOMContentLoaded", check = function() {
                    document.removeEventListener("DOMContentLoaded", check, false);
                    init();
                }, false);
            }
            catch (er) { }
        }
        else if (document.attachEvent) {
            if ((window == window.top) && document.documentElement.doScroll) {
                var timeout, el = document.createElement("div");
                check = function() {
                    try {
                        el.doScroll("left");
                    }
                    catch (er) {
                        timeout = window.setTimeout(check, 0);
                        return;
                    }
                    el = null;
                    init();
                }
                check();
            }
            else {
		document.attachEvent("onreadystatechange", check = function() {
                    if (document.readyState === "complete") {
                        document.detachEvent("onreadystatechange", check);
                        init();
                    }
                });
            }
        }
    }
    function Sys$_Application$_raiseInit() {
        var handler = this.get_events().getHandler("init");
        if (handler) {
            this.beginCreateComponents();
            handler(this, Sys.EventArgs.Empty);
            this.endCreateComponents();
        }
    }
    function Sys$_Application$_unloadHandler(event) {
        this.dispose();
    }
Sys._Application.prototype = {
    _creatingComponents: false,
    _disposing: false,
    _deleteCount: 0,
    get_isCreatingComponents: Sys$_Application$get_isCreatingComponents,
    get_isDisposing: Sys$_Application$get_isDisposing,
    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_unload: Sys$_Application$add_unload,
    remove_unload: Sys$_Application$remove_unload,
    addComponent: Sys$_Application$addComponent,
    beginCreateComponents: Sys$_Application$beginCreateComponents,
    dispose: Sys$_Application$dispose,
    disposeElement: Sys$_Application$disposeElement,
    endCreateComponents: Sys$_Application$endCreateComponents,
    findComponent: Sys$_Application$findComponent,
    getComponents: Sys$_Application$getComponents,
    initialize: Sys$_Application$initialize,
    notifyScriptLoaded: Sys$_Application$notifyScriptLoaded,
    registerDisposableObject: Sys$_Application$registerDisposableObject,
    raiseLoad: Sys$_Application$raiseLoad,
    removeComponent: Sys$_Application$removeComponent,
    unregisterDisposableObject: Sys$_Application$unregisterDisposableObject,
    _addComponentToSecondPass: Sys$_Application$_addComponentToSecondPass,
    _disposeComponents: Sys$_Application$_disposeComponents,
    _domReady: Sys$_Application$_domReady,
    _raiseInit: Sys$_Application$_raiseInit,
    _unloadHandler: Sys$_Application$_unloadHandler
}
Sys._Application.registerClass('Sys._Application', Sys.Component, Sys.IContainer);
Sys.Application = new Sys._Application();
var $find = Sys.Application.findComponent;
 
Sys.UI.Behavior = function Sys$UI$Behavior(element) {
    /// <summary locid="M:J#Sys.UI.Behavior.#ctor" />
    /// <param name="element" domElement="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    Sys.UI.Behavior.initializeBase(this);
    this._element = element;
    var behaviors = element._behaviors;
    if (!behaviors) {
        element._behaviors = [this];
    }
    else {
        behaviors[behaviors.length] = this;
    }
}
    function Sys$UI$Behavior$get_element() {
        /// <value domElement="true" locid="P:J#Sys.UI.Behavior.element"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._element;
    }
    function Sys$UI$Behavior$get_id() {
        /// <value type="String" locid="P:J#Sys.UI.Behavior.id"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        var baseId = Sys.UI.Behavior.callBaseMethod(this, 'get_id');
        if (baseId) return baseId;
        if (!this._element || !this._element.id) return '';
        return this._element.id + '$' + this.get_name();
    }
    function Sys$UI$Behavior$get_name() {
        /// <value type="String" locid="P:J#Sys.UI.Behavior.name"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this._name) return this._name;
        var name = Object.getTypeName(this);
        var i = name.lastIndexOf('.');
        if (i !== -1) name = name.substr(i + 1);
        if (!this.get_isInitialized()) this._name = name;
        return name;
    }
    function Sys$UI$Behavior$set_name(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        if ((value === '') || (value.charAt(0) === ' ') || (value.charAt(value.length - 1) === ' '))
            throw Error.argument('value', Sys.Res.invalidId);
        if (typeof(this._element[value]) !== 'undefined')
            throw Error.invalidOperation(String.format(Sys.Res.behaviorDuplicateName, value));
        if (this.get_isInitialized()) throw Error.invalidOperation(Sys.Res.cantSetNameAfterInit);
        this._name = value;
    }
    function Sys$UI$Behavior$initialize() {
        Sys.UI.Behavior.callBaseMethod(this, 'initialize');
        var name = this.get_name();
        if (name) this._element[name] = this;
    }
    function Sys$UI$Behavior$dispose() {
        Sys.UI.Behavior.callBaseMethod(this, 'dispose');
        var e = this._element;
        if (e) {
            var name = this.get_name();
            if (name) {
                e[name] = null;
            }
            var behaviors = e._behaviors;
            Array.remove(behaviors, this);
            if (behaviors.length === 0) {
                e._behaviors = null;
            }
            delete this._element;
        }
    }
Sys.UI.Behavior.prototype = {
    _name: null,
    get_element: Sys$UI$Behavior$get_element,
    get_id: Sys$UI$Behavior$get_id,
    get_name: Sys$UI$Behavior$get_name,
    set_name: Sys$UI$Behavior$set_name,
    initialize: Sys$UI$Behavior$initialize,
    dispose: Sys$UI$Behavior$dispose
}
Sys.UI.Behavior.registerClass('Sys.UI.Behavior', Sys.Component);
Sys.UI.Behavior.getBehaviorByName = function Sys$UI$Behavior$getBehaviorByName(element, name) {
    /// <summary locid="M:J#Sys.UI.Behavior.getBehaviorByName" />
    /// <param name="element" domElement="true"></param>
    /// <param name="name" type="String"></param>
    /// <returns type="Sys.UI.Behavior" mayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "name", type: String}
    ]);
    if (e) throw e;
    var b = element[name];
    return (b && Sys.UI.Behavior.isInstanceOfType(b)) ? b : null;
}
Sys.UI.Behavior.getBehaviors = function Sys$UI$Behavior$getBehaviors(element) {
    /// <summary locid="M:J#Sys.UI.Behavior.getBehaviors" />
    /// <param name="element" domElement="true"></param>
    /// <returns type="Array" elementType="Sys.UI.Behavior"></returns>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    if (!element._behaviors) return [];
    return Array.clone(element._behaviors);
}
Sys.UI.Behavior.getBehaviorsByType = function Sys$UI$Behavior$getBehaviorsByType(element, type) {
    /// <summary locid="M:J#Sys.UI.Behavior.getBehaviorsByType" />
    /// <param name="element" domElement="true"></param>
    /// <param name="type" type="Type"></param>
    /// <returns type="Array" elementType="Sys.UI.Behavior"></returns>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "type", type: Type}
    ]);
    if (e) throw e;
    var behaviors = element._behaviors;
    var results = [];
    if (behaviors) {
        for (var i = 0, l = behaviors.length; i < l; i++) {
            if (type.isInstanceOfType(behaviors[i])) {
                results[results.length] = behaviors[i];
            }
        }
    }
    return results;
}
 
Sys.UI.VisibilityMode = function Sys$UI$VisibilityMode() {
    /// <summary locid="M:J#Sys.UI.VisibilityMode.#ctor" />
    /// <field name="hide" type="Number" integer="true" static="true" locid="F:J#Sys.UI.VisibilityMode.hide"></field>
    /// <field name="collapse" type="Number" integer="true" static="true" locid="F:J#Sys.UI.VisibilityMode.collapse"></field>
    if (arguments.length !== 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
Sys.UI.VisibilityMode.prototype = {
    hide: 0,
    collapse: 1
}
Sys.UI.VisibilityMode.registerEnum("Sys.UI.VisibilityMode");
 
Sys.UI.Control = function Sys$UI$Control(element) {
    /// <summary locid="M:J#Sys.UI.Control.#ctor" />
    /// <param name="element" domElement="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    if (element.control !== null && typeof(element.control) !== 'undefined') throw Error.invalidOperation(Sys.Res.controlAlreadyDefined);
    Sys.UI.Control.initializeBase(this);
    this._element = element;
    element.control = this;
    var role = this.get_role();
    if (role) {
        element.setAttribute("role", role);
    }
}
    function Sys$UI$Control$get_element() {
        /// <value domElement="true" locid="P:J#Sys.UI.Control.element"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._element;
    }
    function Sys$UI$Control$get_id() {
        /// <value type="String" locid="P:J#Sys.UI.Control.id"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._element) return '';
        return this._element.id;
    }
    function Sys$UI$Control$set_id(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        throw Error.invalidOperation(Sys.Res.cantSetId);
    }
    function Sys$UI$Control$get_parent() {
        /// <value type="Sys.UI.Control" locid="P:J#Sys.UI.Control.parent"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this._parent) return this._parent;
        if (!this._element) return null;
        
        var parentElement = this._element.parentNode;
        while (parentElement) {
            if (parentElement.control) {
                return parentElement.control;
            }
            parentElement = parentElement.parentNode;
        }
        return null;
    }
    function Sys$UI$Control$set_parent(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Sys.UI.Control}]);
        if (e) throw e;
        if (!this._element) throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
        var parents = [this];
        var current = value;
        while (current) {
            if (Array.contains(parents, current)) throw Error.invalidOperation(Sys.Res.circularParentChain);
            parents[parents.length] = current;
            current = current.get_parent();
        }
        this._parent = value;
    }
    function Sys$UI$Control$get_role() {
        /// <value type="String" locid="P:J#Sys.UI.Control.role"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return null;
    }
    function Sys$UI$Control$get_visibilityMode() {
        /// <value type="Sys.UI.VisibilityMode" locid="P:J#Sys.UI.Control.visibilityMode"></value>
        if (arguments.length !== 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 = 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="Boolean" locid="P:J#Sys.UI.Control.visible"></value>
        if (arguments.length !== 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 = 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="M:J#Sys.UI.Control.addCssClass" />
        /// <param name="className" type="String"></param>
        var e = 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 = null;
            delete this._element;
        }
        if (this._parent) delete this._parent;
    }
    function Sys$UI$Control$onBubbleEvent(source, args) {
        /// <summary locid="M:J#Sys.UI.Control.onBubbleEvent" />
        /// <param name="source"></param>
        /// <param name="args" type="Sys.EventArgs"></param>
        /// <returns type="Boolean"></returns>
        var e = Function._validateParams(arguments, [
            {name: "source"},
            {name: "args", type: Sys.EventArgs}
        ]);
        if (e) throw e;
        return false;
    }
    function Sys$UI$Control$raiseBubbleEvent(source, args) {
        /// <summary locid="M:J#Sys.UI.Control.raiseBubbleEvent" />
        /// <param name="source"></param>
        /// <param name="args" type="Sys.EventArgs"></param>
        var e = Function._validateParams(arguments, [
            {name: "source"},
            {name: "args", type: Sys.EventArgs}
        ]);
        if (e) throw e;
        this._raiseBubbleEvent(source, args);
    }
    function Sys$UI$Control$_raiseBubbleEvent(source, args) {
        var currentTarget = this.get_parent();
        while (currentTarget) {
            if (currentTarget.onBubbleEvent(source, args)) {
                return;
            }
            currentTarget = currentTarget.get_parent();
        }
    }
    function Sys$UI$Control$removeCssClass(className) {
        /// <summary locid="M:J#Sys.UI.Control.removeCssClass" />
        /// <param name="className" type="String"></param>
        var e = 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="M:J#Sys.UI.Control.toggleCssClass" />
        /// <param name="className" type="String"></param>
        var e = 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 = {
    _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_role: Sys$UI$Control$get_role,
    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,
    _raiseBubbleEvent: Sys$UI$Control$_raiseBubbleEvent,
    removeCssClass: Sys$UI$Control$removeCssClass,
    toggleCssClass: Sys$UI$Control$toggleCssClass
}
Sys.UI.Control.registerClass('Sys.UI.Control', Sys.Component);
Sys.HistoryEventArgs = function Sys$HistoryEventArgs(state) {
    /// <summary locid="M:J#Sys.HistoryEventArgs.#ctor" />
    /// <param name="state" type="Object"></param>
    var e = Function._validateParams(arguments, [
        {name: "state", type: Object}
    ]);
    if (e) throw e;
    Sys.HistoryEventArgs.initializeBase(this);
    this._state = state;
}
    function Sys$HistoryEventArgs$get_state() {
        /// <value type="Object" locid="P:J#Sys.HistoryEventArgs.state"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._state;
    }
Sys.HistoryEventArgs.prototype = {
    get_state: Sys$HistoryEventArgs$get_state
}
Sys.HistoryEventArgs.registerClass('Sys.HistoryEventArgs', Sys.EventArgs);
Sys.Application._appLoadHandler = null;
Sys.Application._beginRequestHandler = null;
Sys.Application._clientId = null;
Sys.Application._currentEntry = '';
Sys.Application._endRequestHandler = null;
Sys.Application._history = null;
Sys.Application._enableHistory = false;
Sys.Application._historyEnabledInScriptManager = false;
Sys.Application._historyFrame = null;
Sys.Application._historyInitialized = false;
Sys.Application._historyPointIsNew = false;
Sys.Application._ignoreTimer = false;
Sys.Application._initialState = null;
Sys.Application._state = {};
Sys.Application._timerCookie = 0;
Sys.Application._timerHandler = null;
Sys.Application._uniqueId = null;
Sys._Application.prototype.get_stateString = function Sys$_Application$get_stateString() {
    /// <summary locid="M:J#Sys._Application.get_stateString" />
    if (arguments.length !== 0) throw Error.parameterCount();
    var hash = null;
    
    if (Sys.Browser.agent === Sys.Browser.Firefox) {
        var href = window.location.href;
        var hashIndex = href.indexOf('#');
        if (hashIndex !== -1) {
            hash = href.substring(hashIndex + 1);
        }
        else {
            hash = "";
        }
        return hash;
    }
    else {
        hash = window.location.hash;
    }
    
    if ((hash.length > 0) && (hash.charAt(0) === '#')) {
        hash = hash.substring(1);
    }
    return hash;
};
Sys._Application.prototype.get_enableHistory = function Sys$_Application$get_enableHistory() {
    /// <summary locid="M:J#Sys._Application.get_enableHistory" />
    if (arguments.length !== 0) throw Error.parameterCount();
    return this._enableHistory;
};
Sys._Application.prototype.set_enableHistory = function Sys$_Application$set_enableHistory(value) {
    if (this._initialized && !this._initializing) {
        throw Error.invalidOperation(Sys.Res.historyCannotEnableHistory);
    }
    else if (this._historyEnabledInScriptManager && !value) {
        throw Error.invalidOperation(Sys.Res.invalidHistorySettingCombination);
    }
    this._enableHistory = value;
};
Sys._Application.prototype.add_navigate = function Sys$_Application$add_navigate(handler) {
    /// <summary locid="E:J#Sys.Application.navigate" />
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    this.get_events().addHandler("navigate", handler);
};
Sys._Application.prototype.remove_navigate = function Sys$_Application$remove_navigate(handler) {
    /// <summary locid="M:J#Sys._Application.remove_navigate" />
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    this.get_events().removeHandler("navigate", handler);
};
Sys._Application.prototype.addHistoryPoint = function Sys$_Application$addHistoryPoint(state, title) {
    /// <summary locid="M:J#Sys.Application.addHistoryPoint" />
    /// <param name="state" type="Object"></param>
    /// <param name="title" type="String" optional="true" mayBeNull="true"></param>
    var e = 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.historyCannotAddHistoryPointWithHistoryDisabled);
    for (var n in state) {
        var v = state[n];
        var t = typeof(v);
        if ((v !== null) && ((t === 'object') || (t === 'function') || (t === 'undefined'))) {
            throw Error.argument('state', Sys.Res.stateMustBeStringDictionary);
        }
    }
    this._ensureHistory();
    var initialState = this._state;
    for (var key in state) {
        var value = state[key];
        if (value === null) {
            if (typeof(initialState[key]) !== 'undefined') {
                delete initialState[key];
            }
        }
        else {
            initialState[key] = value;
        }
    }
    var entry = this._serializeState(initialState);
    this._historyPointIsNew = true;
    this._setState(entry, title);
    this._raiseNavigate();
};
Sys._Application.prototype.setServerId = function Sys$_Application$setServerId(clientId, uniqueId) {
    /// <summary locid="M:J#Sys.Application.setServerId" />
    /// <param name="clientId" type="String"></param>
    /// <param name="uniqueId" type="String"></param>
    var e = Function._validateParams(arguments, [
        {name: "clientId", type: String},
        {name: "uniqueId", type: String}
    ]);
    if (e) throw e;
    this._clientId = clientId;
    this._uniqueId = uniqueId;
};
Sys._Application.prototype.setServerState = function Sys$_Application$setServerState(value) {
    /// <summary locid="M:J#Sys.Application.setServerState" />
    /// <param name="value" type="String"></param>
    var e = Function._validateParams(arguments, [
        {name: "value", type: String}
    ]);
    if (e) throw e;
    this._ensureHistory();
    this._state.__s = value;
    this._updateHiddenField(value);
};
Sys._Application.prototype._deserializeState = function Sys$_Application$_deserializeState(entry) {
    var result = {};
    entry = entry || '';
    var serverSeparator = entry.indexOf('&&');
    if ((serverSeparator !== -1) && (serverSeparator + 2 < entry.length)) {
        result.__s = entry.substr(serverSeparator + 2);
        entry = entry.substr(0, serverSeparator);
    }
    var tokens = entry.split('&');
    for (var i = 0, l = tokens.length; i < l; i++) {
        var token = tokens[i];
        var equal = token.indexOf('=');
        if ((equal !== -1) && (equal + 1 < token.length)) {
            var name = token.substr(0, equal);
            var value = token.substr(equal + 1);
            result[name] = decodeURIComponent(value);
        }
    }
    return result;
};
Sys._Application.prototype._enableHistoryInScriptManager = function Sys$_Application$_enableHistoryInScriptManager() {
    this._enableHistory = true;
    this._historyEnabledInScriptManager = true;
};
Sys._Application.prototype._ensureHistory = function Sys$_Application$_ensureHistory() {
    if (!this._historyInitialized && this._enableHistory) {
        if ((Sys.Browser.agent === Sys.Browser.InternetExplorer) && 
            ((!document.documentMode) || document.documentMode < 8)) {
            this._historyFrame = document.getElementById('__historyFrame');
            if (!this._historyFrame) throw Error.invalidOperation(Sys.Res.historyMissingFrame);
            this._ignoreIFrame = true;
        }
        this._timerHandler = Function.createDelegate(this, this._onIdle);
        this._timerCookie = window.setTimeout(this._timerHandler, 100);
        
        try {
            this._initialState = this._deserializeState(this.get_stateString());
        } catch(e) {}
        
        this._historyInitialized = true;
    }
};
Sys._Application.prototype._navigate = function Sys$_Application$_navigate(entry) {
    this._ensureHistory();
    var state = this._deserializeState(entry);
    
    if (this._uniqueId) {
        var oldServerEntry = this._state.__s || '';
        var newServerEntry = state.__s || '';
        if (newServerEntry !== oldServerEntry) {
            this._updateHiddenField(newServerEntry);
            __doPostBack(this._uniqueId, newServerEntry);
            this._state = state;
            return;
        }
    }
    this._setState(entry);
    this._state = state;
    this._raiseNavigate();
};
Sys._Application.prototype._onIdle = function Sys$_Application$_onIdle() {
    delete this._timerCookie;
    
    var entry = this.get_stateString();
    if (entry !== this._currentEntry) {
        if (!this._ignoreTimer) {
            this._historyPointIsNew = false;
            this._navigate(entry);
        }
    }
    else {
        this._ignoreTimer = false;
    }
    this._timerCookie = window.setTimeout(this._timerHandler, 100);
};
Sys._Application.prototype._onIFrameLoad = function Sys$_Application$_onIFrameLoad(entry) {
    if ((!document.documentMode) || document.documentMode < 8 ) {
        this._ensureHistory();
        if (!this._ignoreIFrame) {
            this._historyPointIsNew = false;
            this._navigate(entry);
        }
        this._ignoreIFrame = false;
    }
};
Sys._Application.prototype._onPageRequestManagerBeginRequest = function Sys$_Application$_onPageRequestManagerBeginRequest(sender, args) {
    this._ignoreTimer = true;
    this._originalTitle = document.title;
};
Sys._Application.prototype._onPageRequestManagerEndRequest = function Sys$_Application$_onPageRequestManagerEndRequest(sender, args) {
    var dataItem = args.get_dataItems()[this._clientId];
    var originalTitle = this._originalTitle;
    this._originalTitle = null;
    var eventTarget = document.getElementById("__EVENTTARGET");
    if (eventTarget && eventTarget.value === this._uniqueId) {
        eventTarget.value = '';
    }
    if (typeof(dataItem) !== 'undefined') {
        this.setServerState(dataItem);
        this._historyPointIsNew = true;
    }
    else {
        this._ignoreTimer = false;
    }
    var entry = this._serializeState(this._state);
    if (entry !== this._currentEntry) {
        this._ignoreTimer = true;
        if (typeof(originalTitle) === "string") {
            if (Sys.Browser.agent !== Sys.Browser.InternetExplorer || Sys.Browser.version > 7) {
                var newTitle = document.title;
                document.title = originalTitle;
                this._setState(entry);
                document.title = newTitle;
            }
            else {
                this._setState(entry);
            }
            this._raiseNavigate();
        }
        else {
            this._setState(entry);
            this._raiseNavigate();
        }
    }
};
Sys._Application.prototype._raiseNavigate = function Sys$_Application$_raiseNavigate() {
    var isNew = this._historyPointIsNew;
    var h = this.get_events().getHandler("navigate");
    var stateClone = {};
    for (var key in this._state) {
        if (key !== '__s') {
            stateClone[key] = this._state[key];
        }
    }
    var args = new Sys.HistoryEventArgs(stateClone);
    if (h) {
        h(this, args);
    }
    if (!isNew) {
        var err;
        try {
            if ((Sys.Browser.agent === Sys.Browser.Firefox) && window.location.hash &&
                (!window.frameElement || window.top.location.hash)) {
                (Sys.Browser.version < 3.5) ?
                    window.history.go(0) :
                    location.hash = this.get_stateString();
            }
        }
        catch(err) {
        }
    }
};
Sys._Application.prototype._serializeState = function Sys$_Application$_serializeState(state) {
    var serialized = [];
    for (var key in state) {
        var value = state[key];
        if (key === '__s') {
            var serverState = value;
        }
        else {
            if (key.indexOf('=') !== -1) throw Error.argument('state', Sys.Res.stateFieldNameInvalid);
            serialized[serialized.length] = key + '=' + encodeURIComponent(value);
        }
    }
    return serialized.join('&') + (serverState ? '&&' + serverState : '');
};
Sys._Application.prototype._setState = function Sys$_Application$_setState(entry, title) {
    if (this._enableHistory) {
        entry = entry || '';
        if (entry !== this._currentEntry) {
            if (window.theForm) {
                var action = window.theForm.action;
                var hashIndex = action.indexOf('#');
                window.theForm.action = ((hashIndex !== -1) ? action.substring(0, hashIndex) : action) + '#' + entry;
            }
        
            if (this._historyFrame && this._historyPointIsNew) {
                var newDiv = document.createElement("div");
                newDiv.appendChild(document.createTextNode(title || document.title));
                var htmlEncodedTitle = newDiv.innerHTML;
                this._ignoreIFrame = true;
                var frameDoc = this._historyFrame.contentWindow.document;
                frameDoc.open("javascript:'<html></html>'");
                frameDoc.write("<html><head><title>" + htmlEncodedTitle +
                    "</title><scri" + "pt type=\"text/javascript\">parent.Sys.Application._onIFrameLoad(" + 
                    Sys.Serialization.JavaScriptSerializer.serialize(entry) +
                    ");</scri" + "pt></head><body></body></html>");
                frameDoc.close();
            }
            this._ignoreTimer = false;
            this._currentEntry = entry;
            if (this._historyFrame || this._historyPointIsNew) {
                var currentHash = this.get_stateString();
                if (entry !== currentHash) {
                    var loc = document.location;
                    if (loc.href.length - loc.hash.length + entry.length > 2048) {
                        throw Error.invalidOperation(String.format(Sys.Res.urlTooLong, 2048));
                    }
                    window.location.hash = entry;
                    this._currentEntry = this.get_stateString();
                    if ((typeof(title) !== 'undefined') && (title !== null)) {
                        document.title = title;
                    }
                }
            }
            this._historyPointIsNew = false;
        }
    }
};
Sys._Application.prototype._updateHiddenField = function Sys$_Application$_updateHiddenField(value) {
    if (this._clientId) {
        var serverStateField = document.getElementById(this._clientId);
        if (serverStateField) {
            serverStateField.value = value;
        }
    }
};
 
if (!window.XMLHttpRequest) {
    window.XMLHttpRequest = function window$XMLHttpRequest() {
        var progIDs = [ 'Msxml2.XMLHTTP.3.0', 'Msxml2.XMLHTTP' ];
        for (var i = 0, l = progIDs.length; i < l; i++) {
            try {
                return new ActiveXObject(progIDs[i]);
            }
            catch (ex) {
            }
        }
        return null;
    }
}
Type.registerNamespace('Sys.Net');
 
Sys.Net.WebRequestExecutor = function Sys$Net$WebRequestExecutor() {
    /// <summary locid="M:J#Sys.Net.WebRequestExecutor.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    this._webRequest = null;
    this._resultObject = null;
}
    function Sys$Net$WebRequestExecutor$get_webRequest() {
        /// <value type="Sys.Net.WebRequest" locid="P:J#Sys.Net.WebRequestExecutor.webRequest"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._webRequest;
    }
    function Sys$Net$WebRequestExecutor$_set_webRequest(value) {
        if (this.get_started()) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallOnceStarted, 'set_webRequest'));
        }
        this._webRequest = value;
    }
    function Sys$Net$WebRequestExecutor$get_started() {
        /// <value type="Boolean" locid="P:J#Sys.Net.WebRequestExecutor.started"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_responseAvailable() {
        /// <value type="Boolean" locid="P:J#Sys.Net.WebRequestExecutor.responseAvailable"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_timedOut() {
        /// <value type="Boolean" locid="P:J#Sys.Net.WebRequestExecutor.timedOut"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_aborted() {
        /// <value type="Boolean" locid="P:J#Sys.Net.WebRequestExecutor.aborted"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_responseData() {
        /// <value type="String" locid="P:J#Sys.Net.WebRequestExecutor.responseData"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_statusCode() {
        /// <value type="Number" locid="P:J#Sys.Net.WebRequestExecutor.statusCode"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_statusText() {
        /// <value type="String" locid="P:J#Sys.Net.WebRequestExecutor.statusText"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_xml() {
        /// <value locid="P:J#Sys.Net.WebRequestExecutor.xml"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_object() {
        /// <value locid="P:J#Sys.Net.WebRequestExecutor.object"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._resultObject) {
            this._resultObject = Sys.Serialization.JavaScriptSerializer.deserialize(this.get_responseData());
        }
        return this._resultObject;
    }
    function Sys$Net$WebRequestExecutor$executeRequest() {
        /// <summary locid="M:J#Sys.Net.WebRequestExecutor.executeRequest" />
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$abort() {
        /// <summary locid="M:J#Sys.Net.WebRequestExecutor.abort" />
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$getResponseHeader(header) {
        /// <summary locid="M:J#Sys.Net.WebRequestExecutor.getResponseHeader" />
        /// <param name="header" type="String"></param>
        var e = Function._validateParams(arguments, [
            {name: "header", type: String}
        ]);
        if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$getAllResponseHeaders() {
        /// <summary locid="M:J#Sys.Net.WebRequestExecutor.getAllResponseHeaders" />
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
Sys.Net.WebRequestExecutor.prototype = {
    get_webRequest: Sys$Net$WebRequestExecutor$get_webRequest,
    _set_webRequest: Sys$Net$WebRequestExecutor$_set_webRequest,
    get_started: Sys$Net$WebRequestExecutor$get_started,
    get_responseAvailable: Sys$Net$WebRequestExecutor$get_responseAvailable,
    get_timedOut: Sys$Net$WebRequestExecutor$get_timedOut,
    get_aborted: Sys$Net$WebRequestExecutor$get_aborted,
    get_responseData: Sys$Net$WebRequestExecutor$get_responseData,
    get_statusCode: Sys$Net$WebRequestExecutor$get_statusCode,
    get_statusText: Sys$Net$WebRequestExecutor$get_statusText,
    get_xml: Sys$Net$WebRequestExecutor$get_xml,
    get_object: Sys$Net$WebRequestExecutor$get_object,
    executeRequest: Sys$Net$WebRequestExecutor$executeRequest,
    abort: Sys$Net$WebRequestExecutor$abort,
    getResponseHeader: Sys$Net$WebRequestExecutor$getResponseHeader,
    getAllResponseHeaders: Sys$Net$WebRequestExecutor$getAllResponseHeaders
}
Sys.Net.WebRequestExecutor.registerClass('Sys.Net.WebRequestExecutor');
 
Sys.Net.XMLDOM = function Sys$Net$XMLDOM(markup) {
    /// <summary locid="M:J#Sys.Net.XMLDOM.#ctor" />
    /// <param name="markup" type="String"></param>
    var e = Function._validateParams(arguments, [
        {name: "markup", type: String}
    ]);
    if (e) throw e;
    if (!window.DOMParser) {
        var progIDs = [ 'Msxml2.DOMDocument.3.0', 'Msxml2.DOMDocument' ];
        for (var i = 0, l = progIDs.length; i < l; i++) {
            try {
                var xmlDOM = new ActiveXObject(progIDs[i]);
                xmlDOM.async = false;
                xmlDOM.loadXML(markup);
                xmlDOM.setProperty('SelectionLanguage', 'XPath');
                return xmlDOM;
            }
            catch (ex) {
            }
        }
    }
    else {
        try {
            var domParser = new window.DOMParser();
            return domParser.parseFromString(markup, 'text/xml');
        }
        catch (ex) {
        }
    }
    return null;
}
Sys.Net.XMLHttpExecutor = function Sys$Net$XMLHttpExecutor() {
    /// <summary locid="M:J#Sys.Net.XMLHttpExecutor.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    Sys.Net.XMLHttpExecutor.initializeBase(this);
    var _this = this;
    this._xmlHttpRequest = null;
    this._webRequest = null;
    this._responseAvailable = false;
    this._timedOut = false;
    this._timer = null;
    this._aborted = false;
    this._started = false;
    this._onReadyStateChange = (function () {
        
        if (_this._xmlHttpRequest.readyState === 4 ) {
            try {
                if (typeof(_this._xmlHttpRequest.status) === "undefined" || _this._xmlHttpRequest.status === 0) {
                    return;
                }
            }
            catch(ex) {
                return;
            }
            
            _this._clearTimer();
            _this._responseAvailable = true;
                _this._webRequest.completed(Sys.EventArgs.Empty);
                if (_this._xmlHttpRequest != null) {
                    _this._xmlHttpRequest.onreadystatechange = Function.emptyMethod;
                    _this._xmlHttpRequest = null;
                }
        }
    });
    this._clearTimer = (function() {
        if (_this._timer != null) {
            window.clearTimeout(_this._timer);
            _this._timer = null;
        }
    });
    this._onTimeout = (function() {
        if (!_this._responseAvailable) {
            _this._clearTimer();
            _this._timedOut = true;
            _this._xmlHttpRequest.onreadystatechange = Function.emptyMethod;
            _this._xmlHttpRequest.abort();
            _this._webRequest.completed(Sys.EventArgs.Empty);
            _this._xmlHttpRequest = null;
        }
    });
}
    function Sys$Net$XMLHttpExecutor$get_timedOut() {
        /// <value type="Boolean" locid="P:J#Sys.Net.XMLHttpExecutor.timedOut"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._timedOut;
    }
    function Sys$Net$XMLHttpExecutor$get_started() {
        /// <value type="Boolean" locid="P:J#Sys.Net.XMLHttpExecutor.started"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._started;
    }
    function Sys$Net$XMLHttpExecutor$get_responseAvailable() {
        /// <value type="Boolean" locid="P:J#Sys.Net.XMLHttpExecutor.responseAvailable"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._responseAvailable;
    }
    function Sys$Net$XMLHttpExecutor$get_aborted() {
        /// <value type="Boolean" locid="P:J#Sys.Net.XMLHttpExecutor.aborted"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._aborted;
    }
    function Sys$Net$XMLHttpExecutor$executeRequest() {
        /// <summary locid="M:J#Sys.Net.XMLHttpExecutor.executeRequest" />
        if (arguments.length !== 0) throw Error.parameterCount();
        this._webRequest = this.get_webRequest();
        if (this._started) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallOnceStarted, 'executeRequest'));
        }
        if (this._webRequest === null) {
            throw Error.invalidOperation(Sys.Res.nullWebRequest);
        }
        var body = this._webRequest.get_body();
        var headers = this._webRequest.get_headers();
        this._xmlHttpRequest = new XMLHttpRequest();
        this._xmlHttpRequest.onreadystatechange = this._onReadyStateChange;
        var verb = this._webRequest.get_httpVerb();
        this._xmlHttpRequest.open(verb, this._webRequest.getResolvedUrl(), true );
        this._xmlHttpRequest.setRequestHeader("X-Requested-With", "XMLHttpRequest");
        if (headers) {
            for (var header in headers) {
                var val = headers[header];
                if (typeof(val) !== "function")
                    this._xmlHttpRequest.setRequestHeader(header, val);
            }
        }
        if (verb.toLowerCase() === "post") {
            if ((headers === null) || !headers['Content-Type']) {
                this._xmlHttpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=utf-8');
            }
            if (!body) {
                body = "";
            }
        }
        var timeout = this._webRequest.get_timeout();
        if (timeout > 0) {
            this._timer = window.setTimeout(Function.createDelegate(this, this._onTimeout), timeout);
        }
        this._xmlHttpRequest.send(body);
        this._started = true;
    }
    function Sys$Net$XMLHttpExecutor$getResponseHeader(header) {
        /// <summary locid="M:J#Sys.Net.XMLHttpExecutor.getResponseHeader" />
        /// <param name="header" type="String"></param>
        /// <returns type="String"></returns>
        var e = Function._validateParams(arguments, [
            {name: "header", type: String}
        ]);
        if (e) throw e;
        if (!this._responseAvailable) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'getResponseHeader'));
        }
        if (!this._xmlHttpRequest) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'getResponseHeader'));
        }
        var result;
        try {
            result = this._xmlHttpRequest.getResponseHeader(header);
        } catch (e) {
        }
        if (!result) result = "";
        return result;
    }
    function Sys$Net$XMLHttpExecutor$getAllResponseHeaders() {
        /// <summary locid="M:J#Sys.Net.XMLHttpExecutor.getAllResponseHeaders" />
        /// <returns type="String"></returns>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._responseAvailable) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'getAllResponseHeaders'));
        }
        if (!this._xmlHttpRequest) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'getAllResponseHeaders'));
        }
        return this._xmlHttpRequest.getAllResponseHeaders();
    }
    function Sys$Net$XMLHttpExecutor$get_responseData() {
        /// <value type="String" locid="P:J#Sys.Net.XMLHttpExecutor.responseData"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._responseAvailable) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'get_responseData'));
        }
        if (!this._xmlHttpRequest) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'get_responseData'));
        }
        return this._xmlHttpRequest.responseText;
    }
    function Sys$Net$XMLHttpExecutor$get_statusCode() {
        /// <value type="Number" locid="P:J#Sys.Net.XMLHttpExecutor.statusCode"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._responseAvailable) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'get_statusCode'));
        }
        if (!this._xmlHttpRequest) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'get_statusCode'));
        }
        var result = 0;
        try {
            result = this._xmlHttpRequest.status;
        }
        catch(ex) {
        }
        return result;
    }
    function Sys$Net$XMLHttpExecutor$get_statusText() {
        /// <value type="String" locid="P:J#Sys.Net.XMLHttpExecutor.statusText"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._responseAvailable) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'get_statusText'));
        }
        if (!this._xmlHttpRequest) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'get_statusText'));
        }
        return this._xmlHttpRequest.statusText;
    }
    function Sys$Net$XMLHttpExecutor$get_xml() {
        /// <value locid="P:J#Sys.Net.XMLHttpExecutor.xml"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._responseAvailable) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'get_xml'));
        }
        if (!this._xmlHttpRequest) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'get_xml'));
        }
        var xml = this._xmlHttpRequest.responseXML;
        if (!xml || !xml.documentElement) {
            xml = Sys.Net.XMLDOM(this._xmlHttpRequest.responseText);
            if (!xml || !xml.documentElement)
                return null;
        }
        else if (navigator.userAgent.indexOf('MSIE') !== -1 && typeof(xml.setProperty) != 'undefined') {
            xml.setProperty('SelectionLanguage', 'XPath');
        }
        if (xml.documentElement.namespaceURI === "http://www.mozilla.org/newlayout/xml/parsererror.xml" &&
            xml.documentElement.tagName === "parsererror") {
            return null;
        }
        
        if (xml.documentElement.firstChild && xml.documentElement.firstChild.tagName === "parsererror") {
            return null;
        }
        
        return xml;
    }
    function Sys$Net$XMLHttpExecutor$abort() {
        /// <summary locid="M:J#Sys.Net.XMLHttpExecutor.abort" />
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._started) {
            throw Error.invalidOperation(Sys.Res.cannotAbortBeforeStart);
        }
        if (this._aborted || this._responseAvailable || this._timedOut)
            return;
        this._aborted = true;
        this._clearTimer();
        if (this._xmlHttpRequest && !this._responseAvailable) {
            this._xmlHttpRequest.onreadystatechange = Function.emptyMethod;
            this._xmlHttpRequest.abort();
            
            this._xmlHttpRequest = null;            
            this._webRequest.completed(Sys.EventArgs.Empty);
        }
    }
Sys.Net.XMLHttpExecutor.prototype = {
    get_timedOut: Sys$Net$XMLHttpExecutor$get_timedOut,
    get_started: Sys$Net$XMLHttpExecutor$get_started,
    get_responseAvailable: Sys$Net$XMLHttpExecutor$get_responseAvailable,
    get_aborted: Sys$Net$XMLHttpExecutor$get_aborted,
    executeRequest: Sys$Net$XMLHttpExecutor$executeRequest,
    getResponseHeader: Sys$Net$XMLHttpExecutor$getResponseHeader,
    getAllResponseHeaders: Sys$Net$XMLHttpExecutor$getAllResponseHeaders,
    get_responseData: Sys$Net$XMLHttpExecutor$get_responseData,
    get_statusCode: Sys$Net$XMLHttpExecutor$get_statusCode,
    get_statusText: Sys$Net$XMLHttpExecutor$get_statusText,
    get_xml: Sys$Net$XMLHttpExecutor$get_xml,
    abort: Sys$Net$XMLHttpExecutor$abort
}
Sys.Net.XMLHttpExecutor.registerClass('Sys.Net.XMLHttpExecutor', Sys.Net.WebRequestExecutor);
 
Sys.Net._WebRequestManager = function Sys$Net$_WebRequestManager() {
    /// <summary locid="P:J#Sys.Net.WebRequestManager.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    this._defaultTimeout = 0;
    this._defaultExecutorType = "Sys.Net.XMLHttpExecutor";
}
    function Sys$Net$_WebRequestManager$add_invokingRequest(handler) {
        /// <summary locid="E:J#Sys.Net.WebRequestManager.invokingRequest" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().addHandler("invokingRequest", handler);
    }
    function Sys$Net$_WebRequestManager$remove_invokingRequest(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().removeHandler("invokingRequest", handler);
    }
    function Sys$Net$_WebRequestManager$add_completedRequest(handler) {
        /// <summary locid="E:J#Sys.Net.WebRequestManager.completedRequest" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().addHandler("completedRequest", handler);
    }
    function Sys$Net$_WebRequestManager$remove_completedRequest(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().removeHandler("completedRequest", handler);
    }
    function Sys$Net$_WebRequestManager$_get_eventHandlerList() {
        if (!this._events) {
            this._events = new Sys.EventHandlerList();
        }
        return this._events;
    }
    function Sys$Net$_WebRequestManager$get_defaultTimeout() {
        /// <value type="Number" locid="P:J#Sys.Net.WebRequestManager.defaultTimeout"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._defaultTimeout;
    }
    function Sys$Net$_WebRequestManager$set_defaultTimeout(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Number}]);
        if (e) throw e;
        if (value < 0) {
            throw Error.argumentOutOfRange("value", value, Sys.Res.invalidTimeout);
        }
        this._defaultTimeout = value;
    }
    function Sys$Net$_WebRequestManager$get_defaultExecutorType() {
        /// <value type="String" locid="P:J#Sys.Net.WebRequestManager.defaultExecutorType"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._defaultExecutorType;
    }
    function Sys$Net$_WebRequestManager$set_defaultExecutorType(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        this._defaultExecutorType = value;
    }
    function Sys$Net$_WebRequestManager$executeRequest(webRequest) {
        /// <summary locid="M:J#Sys.Net.WebRequestManager.executeRequest" />
        /// <param name="webRequest" type="Sys.Net.WebRequest"></param>
        var e = Function._validateParams(arguments, [
            {name: "webRequest", type: Sys.Net.WebRequest}
        ]);
        if (e) throw e;
        var executor = webRequest.get_executor();
        if (!executor) {
            var failed = false;
            try {
                var executorType = eval(this._defaultExecutorType);
                executor = new executorType();
            } catch (e) {
                failed = true;
            }
            if (failed  || !Sys.Net.WebRequestExecutor.isInstanceOfType(executor) || !executor) {
                throw Error.argument("defaultExecutorType", String.format(Sys.Res.invalidExecutorType, this._defaultExecutorType));
            }
            webRequest.set_executor(executor);
        }
        if (executor.get_aborted()) {
            return;
        }
        var evArgs = new Sys.Net.NetworkRequestEventArgs(webRequest);
        var handler = this._get_eventHandlerList().getHandler("invokingRequest");
        if (handler) {
            handler(this, evArgs);
        }
        if (!evArgs.get_cancel()) {
            executor.executeRequest();
        }
    }
Sys.Net._WebRequestManager.prototype = {
    add_invokingRequest: Sys$Net$_WebRequestManager$add_invokingRequest,
    remove_invokingRequest: Sys$Net$_WebRequestManager$remove_invokingRequest,
    add_completedRequest: Sys$Net$_WebRequestManager$add_completedRequest,
    remove_completedRequest: Sys$Net$_WebRequestManager$remove_completedRequest,
    _get_eventHandlerList: Sys$Net$_WebRequestManager$_get_eventHandlerList,
    get_defaultTimeout: Sys$Net$_WebRequestManager$get_defaultTimeout,
    set_defaultTimeout: Sys$Net$_WebRequestManager$set_defaultTimeout,
    get_defaultExecutorType: Sys$Net$_WebRequestManager$get_defaultExecutorType,
    set_defaultExecutorType: Sys$Net$_WebRequestManager$set_defaultExecutorType,
    executeRequest: Sys$Net$_WebRequestManager$executeRequest
}
Sys.Net._WebRequestManager.registerClass('Sys.Net._WebRequestManager');
Sys.Net.WebRequestManager = new Sys.Net._WebRequestManager();
 
Sys.Net.NetworkRequestEventArgs = function Sys$Net$NetworkRequestEventArgs(webRequest) {
    /// <summary locid="M:J#Sys.Net.NetworkRequestEventArgs.#ctor" />
    /// <param name="webRequest" type="Sys.Net.WebRequest"></param>
    var e = Function._validateParams(arguments, [
        {name: "webRequest", type: Sys.Net.WebRequest}
    ]);
    if (e) throw e;
    Sys.Net.NetworkRequestEventArgs.initializeBase(this);
    this._webRequest = webRequest;
}
    function Sys$Net$NetworkRequestEventArgs$get_webRequest() {
        /// <value type="Sys.Net.WebRequest" locid="P:J#Sys.Net.NetworkRequestEventArgs.webRequest"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._webRequest;
    }
Sys.Net.NetworkRequestEventArgs.prototype = {
    get_webRequest: Sys$Net$NetworkRequestEventArgs$get_webRequest
}
Sys.Net.NetworkRequestEventArgs.registerClass('Sys.Net.NetworkRequestEventArgs', Sys.CancelEventArgs);
 
Sys.Net.WebRequest = function Sys$Net$WebRequest() {
    /// <summary locid="M:J#Sys.Net.WebRequest.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    this._url = "";
    this._headers = { };
    this._body = null;
    this._userContext = null;
    this._httpVerb = null;
    this._executor = null;
    this._invokeCalled = false;
    this._timeout = 0;
}
    function Sys$Net$WebRequest$add_completed(handler) {
    /// <summary locid="E:J#Sys.Net.WebRequest.completed" />
    var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
    if (e) throw e;
        this._get_eventHandlerList().addHandler("completed", handler);
    }
    function Sys$Net$WebRequest$remove_completed(handler) {
    var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
    if (e) throw e;
        this._get_eventHandlerList().removeHandler("completed", handler);
    }
    function Sys$Net$WebRequest$completed(eventArgs) {
        /// <summary locid="M:J#Sys.Net.WebRequest.completed" />
        /// <param name="eventArgs" type="Sys.EventArgs"></param>
        var e = Function._validateParams(arguments, [
            {name: "eventArgs", type: Sys.EventArgs}
        ]);
        if (e) throw e;
        var handler = Sys.Net.WebRequestManager._get_eventHandlerList().getHandler("completedRequest");
        if (handler) {
            handler(this._executor, eventArgs);
        }
        handler = this._get_eventHandlerList().getHandler("completed");
        if (handler) {
            handler(this._executor, eventArgs);
        }
    }
    function Sys$Net$WebRequest$_get_eventHandlerList() {
        if (!this._events) {
            this._events = new Sys.EventHandlerList();
        }
        return this._events;
    }
    function Sys$Net$WebRequest$get_url() {
        /// <value type="String" locid="P:J#Sys.Net.WebRequest.url"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._url;
    }
    function Sys$Net$WebRequest$set_url(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        this._url = value;
    }
    function Sys$Net$WebRequest$get_headers() {
        /// <value locid="P:J#Sys.Net.WebRequest.headers"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._headers;
    }
    function Sys$Net$WebRequest$get_httpVerb() {
        /// <value type="String" locid="P:J#Sys.Net.WebRequest.httpVerb"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this._httpVerb === null) {
            if (this._body === null) {
                return "GET";
            }
            return "POST";
        }
        return this._httpVerb;
    }
    function Sys$Net$WebRequest$set_httpVerb(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        if (value.length === 0) {
            throw Error.argument('value', Sys.Res.invalidHttpVerb);
        }
        this._httpVerb = value;
    }
    function Sys$Net$WebRequest$get_body() {
        /// <value mayBeNull="true" locid="P:J#Sys.Net.WebRequest.body"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._body;
    }
    function Sys$Net$WebRequest$set_body(value) {
        var e = Function._validateParams(arguments, [{name: "value", mayBeNull: true}]);
        if (e) throw e;
        this._body = value;
    }
    function Sys$Net$WebRequest$get_userContext() {
        /// <value mayBeNull="true" locid="P:J#Sys.Net.WebRequest.userContext"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._userContext;
    }
    function Sys$Net$WebRequest$set_userContext(value) {
        var e = Function._validateParams(arguments, [{name: "value", mayBeNull: true}]);
        if (e) throw e;
        this._userContext = value;
    }
    function Sys$Net$WebRequest$get_executor() {
        /// <value type="Sys.Net.WebRequestExecutor" locid="P:J#Sys.Net.WebRequest.executor"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._executor;
    }
    function Sys$Net$WebRequest$set_executor(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Sys.Net.WebRequestExecutor}]);
        if (e) throw e;
        if (this._executor !== null && this._executor.get_started()) {
            throw Error.invalidOperation(Sys.Res.setExecutorAfterActive);
        }
        this._executor = value;
        this._executor._set_webRequest(this);
    }
    function Sys$Net$WebRequest$get_timeout() {
        /// <value type="Number" locid="P:J#Sys.Net.WebRequest.timeout"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this._timeout === 0) {
            return Sys.Net.WebRequestManager.get_defaultTimeout();
        }
        return this._timeout;
    }
    function Sys$Net$WebRequest$set_timeout(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Number}]);
        if (e) throw e;
        if (value < 0) {
            throw Error.argumentOutOfRange("value", value, Sys.Res.invalidTimeout);
        }
        this._timeout = value;
    }
    function Sys$Net$WebRequest$getResolvedUrl() {
        /// <summary locid="M:J#Sys.Net.WebRequest.getResolvedUrl" />
        /// <returns type="String"></returns>
        if (arguments.length !== 0) throw Error.parameterCount();
        return Sys.Net.WebRequest._resolveUrl(this._url);
    }
    function Sys$Net$WebRequest$invoke() {
        /// <summary locid="M:J#Sys.Net.WebRequest.invoke" />
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this._invokeCalled) {
            throw Error.invalidOperation(Sys.Res.invokeCalledTwice);
        }
        Sys.Net.WebRequestManager.executeRequest(this);
        this._invokeCalled = true;
    }
Sys.Net.WebRequest.prototype = {
    add_completed: Sys$Net$WebRequest$add_completed,
    remove_completed: Sys$Net$WebRequest$remove_completed,
    completed: Sys$Net$WebRequest$completed,
    _get_eventHandlerList: Sys$Net$WebRequest$_get_eventHandlerList,
    get_url: Sys$Net$WebRequest$get_url,
    set_url: Sys$Net$WebRequest$set_url,
    get_headers: Sys$Net$WebRequest$get_headers,
    get_httpVerb: Sys$Net$WebRequest$get_httpVerb,
    set_httpVerb: Sys$Net$WebRequest$set_httpVerb,
    get_body: Sys$Net$WebRequest$get_body,
    set_body: Sys$Net$WebRequest$set_body,
    get_userContext: Sys$Net$WebRequest$get_userContext,
    set_userContext: Sys$Net$WebRequest$set_userContext,
    get_executor: Sys$Net$WebRequest$get_executor,
    set_executor: Sys$Net$WebRequest$set_executor,
    get_timeout: Sys$Net$WebRequest$get_timeout,
    set_timeout: Sys$Net$WebRequest$set_timeout,
    getResolvedUrl: Sys$Net$WebRequest$getResolvedUrl,
    invoke: Sys$Net$WebRequest$invoke
}
Sys.Net.WebRequest._resolveUrl = function Sys$Net$WebRequest$_resolveUrl(url, baseUrl) {
    if (url && url.indexOf('://') !== -1) {
        return url;
    }
    if (!baseUrl || baseUrl.length === 0) {
        var baseElement = document.getElementsByTagName('base')[0];
        if (baseElement && baseElement.href && baseElement.href.length > 0) {
            baseUrl = baseElement.href;
        }
        else {
            baseUrl = document.URL;
        }
    }
    var qsStart = baseUrl.indexOf('?');
    if (qsStart !== -1) {
        baseUrl = baseUrl.substr(0, qsStart);
    }
    qsStart = baseUrl.indexOf('#');
    if (qsStart !== -1) {
        baseUrl = baseUrl.substr(0, qsStart);
    }
    baseUrl = baseUrl.substr(0, baseUrl.lastIndexOf('/') + 1);
    if (!url || url.length === 0) {
        return baseUrl;
    }
    if (url.charAt(0) === '/') {
        var slashslash = baseUrl.indexOf('://');
        if (slashslash === -1) {
            throw Error.argument("baseUrl", Sys.Res.badBaseUrl1);
        }
        var nextSlash = baseUrl.indexOf('/', slashslash + 3);
        if (nextSlash === -1) {
            throw Error.argument("baseUrl", Sys.Res.badBaseUrl2);
        }
        return baseUrl.substr(0, nextSlash) + url;
    }
    else {
        var lastSlash = baseUrl.lastIndexOf('/');
        if (lastSlash === -1) {
            throw Error.argument("baseUrl", Sys.Res.badBaseUrl3);
        }
        return baseUrl.substr(0, lastSlash+1) + url;
    }
}
Sys.Net.WebRequest._createQueryString = function Sys$Net$WebRequest$_createQueryString(queryString, encodeMethod, addParams) {
    encodeMethod = encodeMethod || encodeURIComponent;
    var i = 0, obj, val, arg, sb = new Sys.StringBuilder();
    if (queryString) {
        for (arg in queryString) {
            obj = queryString[arg];
            if (typeof(obj) === "function") continue;
            val = Sys.Serialization.JavaScriptSerializer.serialize(obj);
            if (i++) {
                sb.append('&');
            }
            sb.append(arg);
            sb.append('=');
            sb.append(encodeMethod(val));
        }
    }
    if (addParams) {
        if (i) {
            sb.append('&');
        }
        sb.append(addParams);
    }
    return sb.toString();
}
Sys.Net.WebRequest._createUrl = function Sys$Net$WebRequest$_createUrl(url, queryString, addParams) {
    if (!queryString && !addParams) {
        return url;
    }
    var qs = Sys.Net.WebRequest._createQueryString(queryString, null, addParams);
    return qs.length
        ? url + ((url && url.indexOf('?') >= 0) ? "&" : "?") + qs
        : url;
}
Sys.Net.WebRequest.registerClass('Sys.Net.WebRequest');
 
Sys._ScriptLoaderTask = function Sys$_ScriptLoaderTask(scriptElement, completedCallback) {
    /// <summary locid="M:J#Sys._ScriptLoaderTask.#ctor" />
    /// <param name="scriptElement" domElement="true"></param>
    /// <param name="completedCallback" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "scriptElement", domElement: true},
        {name: "completedCallback", type: Function}
    ]);
    if (e) throw e;
    this._scriptElement = scriptElement;
    this._completedCallback = completedCallback;
}
    function Sys$_ScriptLoaderTask$get_scriptElement() {
        /// <value domElement="true" locid="P:J#Sys._ScriptLoaderTask.scriptElement"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._scriptElement;
    }
    function Sys$_ScriptLoaderTask$dispose() {
        if(this._disposed) {
            return;
        }
        this._disposed = true;
        this._removeScriptElementHandlers();
        Sys._ScriptLoaderTask._clearScript(this._scriptElement);
        this._scriptElement = null;
    }
    function Sys$_ScriptLoaderTask$execute() {
        /// <summary locid="M:J#Sys._ScriptLoaderTask.execute" />
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this._ensureReadyStateLoaded()) {
            this._executeInternal();
        }
    }
    function Sys$_ScriptLoaderTask$_executeInternal() {
        this._addScriptElementHandlers();
        var headElements = document.getElementsByTagName('head');
        if (headElements.length === 0) {
             throw new Error.invalidOperation(Sys.Res.scriptLoadFailedNoHead);
        }
        else {
             headElements[0].appendChild(this._scriptElement);
        }
    }
    function Sys$_ScriptLoaderTask$_ensureReadyStateLoaded() {
        if (this._useReadyState() && this._scriptElement.readyState !== 'loaded' && this._scriptElement.readyState !== 'complete') {
            this._scriptDownloadDelegate = Function.createDelegate(this, this._executeInternal);
            $addHandler(this._scriptElement, 'readystatechange', this._scriptDownloadDelegate);
            return false;
        }
        return true;
    }
    function Sys$_ScriptLoaderTask$_addScriptElementHandlers() {
        if (this._scriptDownloadDelegate) {
            $removeHandler(this._scriptElement, 'readystatechange', this._scriptDownloadDelegate);
            this._scriptDownloadDelegate = null;
        }
        this._scriptLoadDelegate = Function.createDelegate(this, this._scriptLoadHandler);
        if (this._useReadyState()) {
            $addHandler(this._scriptElement, 'readystatechange', this._scriptLoadDelegate);
        } else {
            $addHandler(this._scriptElement, 'load', this._scriptLoadDelegate);
        }
        if (this._scriptElement.addEventListener) {
            this._scriptErrorDelegate = Function.createDelegate(this, this._scriptErrorHandler);
            this._scriptElement.addEventListener('error', this._scriptErrorDelegate, false);
        }
    }
    function Sys$_ScriptLoaderTask$_removeScriptElementHandlers() {
        if(this._scriptLoadDelegate) {
            var scriptElement = this.get_scriptElement();
            if (this._scriptDownloadDelegate) {
                $removeHandler(this._scriptElement, 'readystatechange', this._scriptDownloadDelegate);
                this._scriptDownloadDelegate = null;
            }
            if (this._useReadyState() && this._scriptLoadDelegate) {
                $removeHandler(scriptElement, 'readystatechange', this._scriptLoadDelegate);
            }
            else {
                $removeHandler(scriptElement, 'load', this._scriptLoadDelegate);
            }
            if (this._scriptErrorDelegate) {
                this._scriptElement.removeEventListener('error', this._scriptErrorDelegate, false);
                this._scriptErrorDelegate = null;
            }
            this._scriptLoadDelegate = null;
        }
    }
    function Sys$_ScriptLoaderTask$_scriptErrorHandler() {
        if(this._disposed) {
            return;
        }
        
        this._completedCallback(this.get_scriptElement(), false);
    }
    function Sys$_ScriptLoaderTask$_scriptLoadHandler() {
        if(this._disposed) {
            return;
        }
        var scriptElement = this.get_scriptElement();
        if (this._useReadyState() && scriptElement.readyState !== 'complete') {
            return;
        }
        this._completedCallback(scriptElement, true);
    }
    function Sys$_ScriptLoaderTask$_useReadyState() {
        return (Sys.Browser.agent === Sys.Browser.InternetExplorer && (Sys.Browser.version < 9 || ((document.documentMode || 0) < 9)));
    }
Sys._ScriptLoaderTask.prototype = {
    get_scriptElement: Sys$_ScriptLoaderTask$get_scriptElement,
    dispose: Sys$_ScriptLoaderTask$dispose,
    execute: Sys$_ScriptLoaderTask$execute,
    _executeInternal: Sys$_ScriptLoaderTask$_executeInternal,
    _ensureReadyStateLoaded: Sys$_ScriptLoaderTask$_ensureReadyStateLoaded,
    _addScriptElementHandlers: Sys$_ScriptLoaderTask$_addScriptElementHandlers,    
    _removeScriptElementHandlers: Sys$_ScriptLoaderTask$_removeScriptElementHandlers,    
    _scriptErrorHandler: Sys$_ScriptLoaderTask$_scriptErrorHandler,
    _scriptLoadHandler: Sys$_ScriptLoaderTask$_scriptLoadHandler,
    _useReadyState: Sys$_ScriptLoaderTask$_useReadyState
}
Sys._ScriptLoaderTask.registerClass("Sys._ScriptLoaderTask", null, Sys.IDisposable);
Sys._ScriptLoaderTask._clearScript = function Sys$_ScriptLoaderTask$_clearScript(scriptElement) {
    if (!Sys.Debug.isDebug && scriptElement.parentNode) {
        scriptElement.parentNode.removeChild(scriptElement);
    }
}
Type.registerNamespace('Sys.Net');
 
Sys.Net.WebServiceProxy = function Sys$Net$WebServiceProxy() {
}
    function Sys$Net$WebServiceProxy$get_timeout() {
        /// <value type="Number" locid="P:J#Sys.Net.WebServiceProxy.timeout"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._timeout || 0;
    }
    function Sys$Net$WebServiceProxy$set_timeout(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Number}]);
        if (e) throw e;
        if (value < 0) { throw Error.argumentOutOfRange('value', value, Sys.Res.invalidTimeout); }
        this._timeout = value;
    }
    function Sys$Net$WebServiceProxy$get_defaultUserContext() {
        /// <value mayBeNull="true" locid="P:J#Sys.Net.WebServiceProxy.defaultUserContext"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return (typeof(this._userContext) === "undefined") ? null : this._userContext;
    }
    function Sys$Net$WebServiceProxy$set_defaultUserContext(value) {
        var e = Function._validateParams(arguments, [{name: "value", mayBeNull: true}]);
        if (e) throw e;
        this._userContext = value;
    }
    function Sys$Net$WebServiceProxy$get_defaultSucceededCallback() {
        /// <value type="Function" mayBeNull="true" locid="P:J#Sys.Net.WebServiceProxy.defaultSucceededCallback"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._succeeded || null;
    }
    function Sys$Net$WebServiceProxy$set_defaultSucceededCallback(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Function, mayBeNull: true}]);
        if (e) throw e;
        this._succeeded = value;
    }
    function Sys$Net$WebServiceProxy$get_defaultFailedCallback() {
        /// <value type="Function" mayBeNull="true" locid="P:J#Sys.Net.WebServiceProxy.defaultFailedCallback"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._failed || null;
    }
    function Sys$Net$WebServiceProxy$set_defaultFailedCallback(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Function, mayBeNull: true}]);
        if (e) throw e;
        this._failed = value;
    }
    function Sys$Net$WebServiceProxy$get_enableJsonp() {
        /// <value type="Boolean" locid="P:J#Sys.Net.WebServiceProxy.enableJsonp"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return !!this._jsonp;
    }
    function Sys$Net$WebServiceProxy$set_enableJsonp(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
        if (e) throw e;
        this._jsonp = value;
    }
    function Sys$Net$WebServiceProxy$get_path() {
        /// <value type="String" locid="P:J#Sys.Net.WebServiceProxy.path"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._path || null;
    }
    function Sys$Net$WebServiceProxy$set_path(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        this._path = value;
    }
    function Sys$Net$WebServiceProxy$get_jsonpCallbackParameter() {
        /// <value type="String" locid="P:J#Sys.Net.WebServiceProxy.jsonpCallbackParameter"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._callbackParameter || "callback";
    }
    function Sys$Net$WebServiceProxy$set_jsonpCallbackParameter(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        this._callbackParameter = value;
    }
    function Sys$Net$WebServiceProxy$_invoke(servicePath, methodName, useGet, params, onSuccess, onFailure, userContext) {
        /// <summary locid="M:J#Sys.Net.WebServiceProxy._invoke" />
        /// <param name="servicePath" type="String"></param>
        /// <param name="methodName" type="String"></param>
        /// <param name="useGet" type="Boolean"></param>
        /// <param name="params"></param>
        /// <param name="onSuccess" type="Function" mayBeNull="true" optional="true"></param>
        /// <param name="onFailure" type="Function" mayBeNull="true" optional="true"></param>
        /// <param name="userContext" mayBeNull="true" optional="true"></param>
        /// <returns type="Sys.Net.WebRequest" mayBeNull="true"></returns>
        var e = Function._validateParams(arguments, [
            {name: "servicePath", type: String},
            {name: "methodName", type: String},
            {name: "useGet", type: Boolean},
            {name: "params"},
            {name: "onSuccess", type: Function, mayBeNull: true, optional: true},
            {name: "onFailure", type: Function, mayBeNull: true, optional: true},
            {name: "userContext", mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        onSuccess = onSuccess || this.get_defaultSucceededCallback();
        onFailure = onFailure || this.get_defaultFailedCallback();
        if (userContext === null || typeof userContext === 'undefined') userContext = this.get_defaultUserContext();
        return Sys.Net.WebServiceProxy.invoke(servicePath, methodName, useGet, params, onSuccess, onFailure, userContext, this.get_timeout(), this.get_enableJsonp(), this.get_jsonpCallbackParameter());
    }
Sys.Net.WebServiceProxy.prototype = {
    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_enableJsonp: Sys$Net$WebServiceProxy$get_enableJsonp,
    set_enableJsonp: Sys$Net$WebServiceProxy$set_enableJsonp,
    get_path: Sys$Net$WebServiceProxy$get_path,
    set_path: Sys$Net$WebServiceProxy$set_path,
    get_jsonpCallbackParameter: Sys$Net$WebServiceProxy$get_jsonpCallbackParameter,
    set_jsonpCallbackParameter: Sys$Net$WebServiceProxy$set_jsonpCallbackParameter,
    _invoke: Sys$Net$WebServiceProxy$_invoke
}
Sys.Net.WebServiceProxy.registerClass('Sys.Net.WebServiceProxy');
Sys.Net.WebServiceProxy.invoke = function Sys$Net$WebServiceProxy$invoke(servicePath, methodName, useGet, params, onSuccess, onFailure, userContext, timeout, enableJsonp, jsonpCallbackParameter) {
    /// <summary locid="M:J#Sys.Net.WebServiceProxy.invoke" />
    /// <param name="servicePath" type="String"></param>
    /// <param name="methodName" type="String" mayBeNull="true" optional="true"></param>
    /// <param name="useGet" type="Boolean" optional="true"></param>
    /// <param name="params" mayBeNull="true" optional="true"></param>
    /// <param name="onSuccess" type="Function" mayBeNull="true" optional="true"></param>
    /// <param name="onFailure" type="Function" mayBeNull="true" optional="true"></param>
    /// <param name="userContext" mayBeNull="true" optional="true"></param>
    /// <param name="timeout" type="Number" optional="true"></param>
    /// <param name="enableJsonp" type="Boolean" optional="true" mayBeNull="true"></param>
    /// <param name="jsonpCallbackParameter" type="String" optional="true" mayBeNull="true"></param>
    /// <returns type="Sys.Net.WebRequest" mayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "servicePath", type: String},
        {name: "methodName", type: String, mayBeNull: true, optional: true},
        {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},
        {name: "enableJsonp", type: Boolean, mayBeNull: true, optional: true},
        {name: "jsonpCallbackParameter", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var schemeHost = (enableJsonp !== false) ? Sys.Net.WebServiceProxy._xdomain.exec(servicePath) : null,
        tempCallback, jsonp = schemeHost && (schemeHost.length === 3) && 
            ((schemeHost[1] !== location.protocol) || (schemeHost[2] !== location.host));
    useGet = jsonp || useGet;
    if (jsonp) {
        jsonpCallbackParameter = jsonpCallbackParameter || "callback";
        tempCallback = "_jsonp" + Sys._jsonp++;
    }
    if (!params) params = {};
    var urlParams = params;
    if (!useGet || !urlParams) urlParams = {};
    var script, error, timeoutcookie = null, loader, body = null,
        url = Sys.Net.WebRequest._createUrl(methodName
            ? (servicePath+"/"+encodeURIComponent(methodName))
            : servicePath, urlParams, jsonp ? (jsonpCallbackParameter + "=Sys." + tempCallback) : null);
    if (jsonp) {
        script = document.createElement("script");
        script.src = url;
        loader = new Sys._ScriptLoaderTask(script, function(script, loaded) {
            if (!loaded || tempCallback) {
                jsonpComplete({ Message: String.format(Sys.Res.webServiceFailedNoMsg, methodName) }, -1);
            }
        });
        function jsonpComplete(data, statusCode) {
            if (timeoutcookie !== null) {
                window.clearTimeout(timeoutcookie);
                timeoutcookie = null;
            }
            loader.dispose();
            delete Sys[tempCallback];
            tempCallback = null; 
            if ((typeof(statusCode) !== "undefined") && (statusCode !== 200)) {
                if (onFailure) {
                    error = new Sys.Net.WebServiceError(false,
                            data.Message || String.format(Sys.Res.webServiceFailedNoMsg, methodName),
                            data.StackTrace || null,
                            data.ExceptionType || null,
                            data);
                    error._statusCode = statusCode;
                    onFailure(error, userContext, methodName);
                }
                else {
                    if (data.StackTrace && data.Message) {
                        error = data.StackTrace + "-- " + data.Message;
                    }
                    else {
                        error = data.StackTrace || data.Message;
                    }
                    error = String.format(error ? Sys.Res.webServiceFailed : Sys.Res.webServiceFailedNoMsg, methodName, error);
                    throw Sys.Net.WebServiceProxy._createFailedError(methodName, String.format(Sys.Res.webServiceFailed, methodName, error));
                }
            }
            else if (onSuccess) {
                onSuccess(data, userContext, methodName);
            }
        }
        Sys[tempCallback] = jsonpComplete;
        loader.execute();
        return null;
    }
    var request = new Sys.Net.WebRequest();
    request.set_url(url);
    request.get_headers()['Content-Type'] = 'application/json; charset=utf-8';
    if (!useGet) {
        body = Sys.Serialization.JavaScriptSerializer.serialize(params);
        if (body === "{}") body = "";
    }
    request.set_body(body);
    request.add_completed(onComplete);
    if (timeout && timeout > 0) request.set_timeout(timeout);
    request.invoke();
    
    function onComplete(response, eventArgs) {
        if (response.get_responseAvailable()) {
            var statusCode = response.get_statusCode();
            var result = null;
           
            try {
                var contentType = response.getResponseHeader("Content-Type");
                if (contentType.startsWith("application/json")) {
                    result = response.get_object();
                }
                else if (contentType.startsWith("text/xml")) {
                    result = response.get_xml();
                }
                else {
                    result = response.get_responseData();
                }
            } catch (ex) {
            }
            var error = response.getResponseHeader("jsonerror");
            var errorObj = (error === "true");
            if (errorObj) {
                if (result) {
                    result = new Sys.Net.WebServiceError(false, result.Message, result.StackTrace, result.ExceptionType, result);
                }
            }
            else if (contentType.startsWith("application/json")) {
                result = (!result || (typeof(result.d) === "undefined")) ? result : result.d;
            }
            if (((statusCode < 200) || (statusCode >= 300)) || errorObj) {
                if (onFailure) {
                    if (!result || !errorObj) {
                        result = new Sys.Net.WebServiceError(false , String.format(Sys.Res.webServiceFailedNoMsg, methodName));
                    }
                    result._statusCode = statusCode;
                    onFailure(result, userContext, methodName);
                }
                else {
                    if (result && errorObj) {
                        error = result.get_exceptionType() + "-- " + result.get_message();
                    }
                    else {
                        error = 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 = String.format(Sys.Res.webServiceTimedOut, methodName);
            }
            else {
                msg = String.format(Sys.Res.webServiceFailedNoMsg, methodName)
            }
            if (onFailure) {
                onFailure(new Sys.Net.WebServiceError(response.get_timedOut(), msg, "", ""), userContext, methodName);
            }
            else {
                throw Sys.Net.WebServiceProxy._createFailedError(methodName, msg);
            }
        }
    }
    return request;
}
Sys.Net.WebServiceProxy._createFailedError = function Sys$Net$WebServiceProxy$_createFailedError(methodName, errorMessage) {
    var displayMessage = "Sys.Net.WebServiceFailedException: " + errorMessage;
    var e = Error.create(displayMessage, { 'name': 'Sys.Net.WebServiceFailedException', 'methodName': methodName });
    e.popStackFrame();
    return e;
}
Sys.Net.WebServiceProxy._defaultFailedCallback = function Sys$Net$WebServiceProxy$_defaultFailedCallback(err, methodName) {
    var error = err.get_exceptionType() + "-- " + err.get_message();
    throw Sys.Net.WebServiceProxy._createFailedError(methodName, String.format(Sys.Res.webServiceFailed, methodName, error));
}
Sys.Net.WebServiceProxy._generateTypedConstructor = function Sys$Net$WebServiceProxy$_generateTypedConstructor(type) {
    return function(properties) {
        if (properties) {
            for (var name in properties) {
                this[name] = properties[name];
            }
        }
        this.__type = type;
    }
}
Sys._jsonp = 0;
Sys.Net.WebServiceProxy._xdomain = /^\s*([a-zA-Z0-9\+\-\.]+\:)\/\/([^?#\/]+)/;
 
Sys.Net.WebServiceError = function Sys$Net$WebServiceError(timedOut, message, stackTrace, exceptionType, errorObject) {
    /// <summary locid="M:J#Sys.Net.WebServiceError.#ctor" />
    /// <param name="timedOut" type="Boolean"></param>
    /// <param name="message" type="String" mayBeNull="true"></param>
    /// <param name="stackTrace" type="String" mayBeNull="true" optional="true"></param>
    /// <param name="exceptionType" type="String" mayBeNull="true" optional="true"></param>
    /// <param name="errorObject" type="Object" mayBeNull="true" optional="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "timedOut", type: Boolean},
        {name: "message", type: String, mayBeNull: true},
        {name: "stackTrace", type: String, mayBeNull: true, optional: true},
        {name: "exceptionType", type: String, mayBeNull: true, optional: true},
        {name: "errorObject", type: Object, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    this._timedOut = timedOut;
    this._message = message;
    this._stackTrace = stackTrace;
    this._exceptionType = exceptionType;
    this._errorObject = errorObject;
    this._statusCode = -1;
}
    function Sys$Net$WebServiceError$get_timedOut() {
        /// <value type="Boolean" locid="P:J#Sys.Net.WebServiceError.timedOut"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._timedOut;
    }
    function Sys$Net$WebServiceError$get_statusCode() {
        /// <value type="Number" locid="P:J#Sys.Net.WebServiceError.statusCode"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._statusCode;
    }
    function Sys$Net$WebServiceError$get_message() {
        /// <value type="String" locid="P:J#Sys.Net.WebServiceError.message"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._message;
    }
    function Sys$Net$WebServiceError$get_stackTrace() {
        /// <value type="String" locid="P:J#Sys.Net.WebServiceError.stackTrace"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._stackTrace || "";
    }
    function Sys$Net$WebServiceError$get_exceptionType() {
        /// <value type="String" locid="P:J#Sys.Net.WebServiceError.exceptionType"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._exceptionType || "";
    }
    function Sys$Net$WebServiceError$get_errorObject() {
        /// <value type="Object" locid="P:J#Sys.Net.WebServiceError.errorObject"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._errorObject || null;
    }
Sys.Net.WebServiceError.prototype = {
    get_timedOut: Sys$Net$WebServiceError$get_timedOut,
    get_statusCode: Sys$Net$WebServiceError$get_statusCode,
    get_message: Sys$Net$WebServiceError$get_message,
    get_stackTrace: Sys$Net$WebServiceError$get_stackTrace,
    get_exceptionType: Sys$Net$WebServiceError$get_exceptionType,
    get_errorObject: Sys$Net$WebServiceError$get_errorObject
}
Sys.Net.WebServiceError.registerClass('Sys.Net.WebServiceError');

�u//-----------------------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------
// MicrosoftAjaxApplicationServices.js
// Microsoft AJAX Framework Support for ASP.NET Application Services.
/// <reference name="MicrosoftAjaxWebServices.js" />
Type._registerScript("MicrosoftAjaxApplicationServices.js", ["MicrosoftAjaxWebServices.js"]);
Type.registerNamespace('Sys.Services');
Sys.Services._ProfileService = function Sys$Services$_ProfileService() {
    /// <summary locid="M:J#Sys.Net.ProfileService.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    Sys.Services._ProfileService.initializeBase(this);
    this.properties = {};
}
Sys.Services._ProfileService.DefaultWebServicePath = '';
    function Sys$Services$_ProfileService$get_defaultLoadCompletedCallback() {
        /// <value type="Function" mayBeNull="true" locid="P:J#Sys.Services.ProfileService.defaultLoadCompletedCallback"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._defaultLoadCompletedCallback;
    }
    function Sys$Services$_ProfileService$set_defaultLoadCompletedCallback(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Function, mayBeNull: true}]);
        if (e) throw e;
        this._defaultLoadCompletedCallback = value;
    }
    function Sys$Services$_ProfileService$get_defaultSaveCompletedCallback() {
        /// <value type="Function" mayBeNull="true" locid="P:J#Sys.Services.ProfileService.defaultSaveCompletedCallback"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._defaultSaveCompletedCallback;
    }
    function Sys$Services$_ProfileService$set_defaultSaveCompletedCallback(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Function, mayBeNull: true}]);
        if (e) throw e;
        this._defaultSaveCompletedCallback = value;
    }
    function Sys$Services$_ProfileService$get_path() {
        /// <value type="String" mayBeNull="true" locid="P:J#Sys.Services.ProfileService.path"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._path || '';
    }
    function Sys$Services$_ProfileService$load(propertyNames, loadCompletedCallback, failedCallback, userContext) {
        /// <summary locid="M:J#Sys.Services.ProfileService.load" />
        /// <param name="propertyNames" type="Array" elementType="String" optional="true" elementMayBeNull="false" mayBeNull="true"></param>
        /// <param name="loadCompletedCallback" type="Function" optional="true" mayBeNull="true"></param>
        /// <param name="failedCallback" type="Function" optional="true" mayBeNull="true"></param>
        /// <param name="userContext" optional="true" mayBeNull="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "propertyNames", type: Array, mayBeNull: true, optional: true, elementType: String},
            {name: "loadCompletedCallback", type: Function, mayBeNull: true, optional: true},
            {name: "failedCallback", type: Function, mayBeNull: true, optional: true},
            {name: "userContext", mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        var parameters;
        var methodName;
        if (!propertyNames) {
            methodName = "GetAllPropertiesForCurrentUser";
            parameters = { authenticatedUserOnly: false };
        }
        else {
            methodName = "GetPropertiesForCurrentUser";
            parameters = { 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="M:J#Sys.Services.ProfileService.save" />
        /// <param name="propertyNames" type="Array" elementType="String" optional="true" elementMayBeNull="false" mayBeNull="true"></param>
        /// <param name="saveCompletedCallback" type="Function" optional="true" mayBeNull="true"></param>
        /// <param name="failedCallback" type="Function" optional="true" mayBeNull="true"></param>
        /// <param name="userContext" optional="true" mayBeNull="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "propertyNames", type: Array, mayBeNull: true, optional: true, elementType: String},
            {name: "saveCompletedCallback", type: Function, mayBeNull: true, optional: true},
            {name: "failedCallback", type: Function, mayBeNull: true, optional: true},
            {name: "userContext", mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        var flattenedProperties = this._flattenProperties(propertyNames, this.properties);
        this._invoke(this._get_path(),
                                        "SetPropertiesForCurrentUser",
                                        false,
                                        { values: flattenedProperties.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 = [];
        var seen = {};
        for (var i=0; i < arr.length; i++) {
            var prop = arr[i];
            if(!seen[prop]) { Array.add(nodups, prop); seen[prop]=true; };
        }
        return nodups;
    }
    function Sys$Services$_ProfileService$_flattenProperties(propertyNames, properties, groupName) {
        var flattenedProperties = {};
        var val;
        var key;
        var count = 0;
        if (propertyNames && propertyNames.length === 0) {
            return { value: flattenedProperties, count: 0 };
        }
        for (var property in properties) {
            val = properties[property];
            key = groupName ? groupName + "." + property : property;
            if(Sys.Services.ProfileGroup.isInstanceOfType(val)) {
                var obj = this._flattenProperties(propertyNames, val, key);
                var groupProperties = obj.value;
                count += obj.count; 
                for(var subKey in groupProperties) {
                    var subVal = groupProperties[subKey];
                    flattenedProperties[subKey] = subVal;
                }
            }
            else {
                if(!propertyNames || Array.indexOf(propertyNames, key) !== -1) {
                    flattenedProperties[key] = val;
                    count++; 
                }
            }
        }
        return { value: flattenedProperties, count: count };
    }
    function Sys$Services$_ProfileService$_get_path() {
        var path = this.get_path();
        if (!path.length) {
            path = Sys.Services._ProfileService.DefaultWebServicePath;
        }
        if (!path || !path.length) {
            throw Error.invalidOperation(Sys.Res.servicePathNotSet);
        }
        return path;
    }
    function Sys$Services$_ProfileService$_onLoadComplete(result, context, methodName) {
        if (typeof(result) !== "object") {
            throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType, methodName, "Object"));
        }
        var unflattened = this._unflattenProperties(result);
        for (var name in unflattened) {
            this.properties[name] = unflattened[name];
        }
        
        var callback = context[0] || this.get_defaultLoadCompletedCallback() || this.get_defaultSucceededCallback();
        if (callback) {
            var userContext = context[2] || this.get_defaultUserContext();        
            callback(result.length, userContext, "Sys.Services.ProfileService.load");
        }
    }
    function Sys$Services$_ProfileService$_onLoadFailed(err, context, methodName) {
        var callback = context[1] || this.get_defaultFailedCallback();
        if (callback) {
            var userContext = context[2] || this.get_defaultUserContext();        
            callback(err, userContext, "Sys.Services.ProfileService.load");
        }
        else {
            Sys.Net.WebServiceProxy._defaultFailedCallback(err, methodName);
        }
    }
    function Sys$Services$_ProfileService$_onSaveComplete(result, context, methodName) {
        var count = context[3];
        if (result !== null) { 
            if (result instanceof Array) {
                count -= result.length;
            }
            else if (typeof(result) === 'number') {
                count = result;
            }
            else {
                throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType, methodName, "Array"));
            }
        }
        
        var callback = context[0] || this.get_defaultSaveCompletedCallback() || this.get_defaultSucceededCallback();
        if (callback) {
            var userContext = context[2] || this.get_defaultUserContext();
            callback(count, userContext, "Sys.Services.ProfileService.save");
        }
    }
    function Sys$Services$_ProfileService$_onSaveFailed(err, context, methodName) {
        var callback = context[1] || this.get_defaultFailedCallback();
        if (callback) {
            var userContext = 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 = {};
        var dotIndex;
        var val;
        var count = 0;
        for (var key in properties) {
            count++;
            val = properties[key];
            dotIndex = key.indexOf('.');
            if (dotIndex !== -1) {
                var groupName = key.substr(0, dotIndex);
                key = key.substr(dotIndex+1);
                var group = unflattenedProperties[groupName];
                if (!group || !Sys.Services.ProfileGroup.isInstanceOfType(group)) {
                    group = new Sys.Services.ProfileGroup();
                    unflattenedProperties[groupName] = group;
                }
                group[key] = val;
            }
            else {
                unflattenedProperties[key] = val;
            }
        }
        properties.length = count;
        return unflattenedProperties;
    }
Sys.Services._ProfileService.prototype = {
    _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,    
    _flattenProperties: Sys$Services$_ProfileService$_flattenProperties,
    _get_path: Sys$Services$_ProfileService$_get_path,    
    _onLoadComplete: Sys$Services$_ProfileService$_onLoadComplete,
    _onLoadFailed: Sys$Services$_ProfileService$_onLoadFailed,
    _onSaveComplete: Sys$Services$_ProfileService$_onSaveComplete,
    _onSaveFailed: Sys$Services$_ProfileService$_onSaveFailed,
    _unflattenProperties: Sys$Services$_ProfileService$_unflattenProperties
}
Sys.Services._ProfileService.registerClass('Sys.Services._ProfileService', Sys.Net.WebServiceProxy);
Sys.Services.ProfileService = new Sys.Services._ProfileService();
Sys.Services.ProfileGroup = function Sys$Services$ProfileGroup(properties) {
    /// <summary locid="M:J#Sys.Services.ProfileGroup.#ctor" />
    /// <param name="properties" optional="true" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "properties", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    if (properties) {
        for (var property in properties) {
            this[property] = properties[property];
        }
    }
}
Sys.Services.ProfileGroup.registerClass('Sys.Services.ProfileGroup');
Sys.Services._AuthenticationService = function Sys$Services$_AuthenticationService() {
    /// <summary locid="M:J#Sys.Services.AuthenticationService.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    Sys.Services._AuthenticationService.initializeBase(this);
}
Sys.Services._AuthenticationService.DefaultWebServicePath = '';
    function Sys$Services$_AuthenticationService$get_defaultLoginCompletedCallback() {
        /// <value type="Function" mayBeNull="true" locid="P:J#Sys.Services.AuthenticationService.defaultLoginCompletedCallback"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._defaultLoginCompletedCallback;
    }
    function Sys$Services$_AuthenticationService$set_defaultLoginCompletedCallback(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Function, mayBeNull: true}]);
        if (e) throw e;
        this._defaultLoginCompletedCallback = value;
    }
    function Sys$Services$_AuthenticationService$get_defaultLogoutCompletedCallback() {
        /// <value type="Function" mayBeNull="true" locid="P:J#Sys.Services.AuthenticationService.defaultLogoutCompletedCallback"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._defaultLogoutCompletedCallback;
    }
    function Sys$Services$_AuthenticationService$set_defaultLogoutCompletedCallback(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Function, mayBeNull: true}]);
        if (e) throw e;
        this._defaultLogoutCompletedCallback = value;
    }
    function Sys$Services$_AuthenticationService$get_isLoggedIn() {
        /// <value type="Boolean" locid="P:J#Sys.Services.AuthenticationService.isLoggedIn"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._authenticated;
    }
    function Sys$Services$_AuthenticationService$get_path() {
        /// <value type="String" mayBeNull="true" locid="P:J#Sys.Services.AuthenticationService.path"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._path || '';
    }
    function Sys$Services$_AuthenticationService$login(username, password, isPersistent, customInfo, redirectUrl, loginCompletedCallback, failedCallback, userContext) {
        /// <summary locid="M:J#Sys.Services.AuthenticationService.login" />
        /// <param name="username" type="String" mayBeNull="false"></param>
        /// <param name="password" type="String" mayBeNull="true"></param>
        /// <param name="isPersistent" type="Boolean" optional="true" mayBeNull="true"></param>
        /// <param name="customInfo" type="String" optional="true" mayBeNull="true"></param>
        /// <param name="redirectUrl" type="String" optional="true" mayBeNull="true"></param>
        /// <param name="loginCompletedCallback" type="Function" optional="true" mayBeNull="true"></param>
        /// <param name="failedCallback" type="Function" optional="true" mayBeNull="true"></param>
        /// <param name="userContext" optional="true" mayBeNull="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "username", type: String},
            {name: "password", type: String, mayBeNull: true},
            {name: "isPersistent", type: Boolean, mayBeNull: true, optional: true},
            {name: "customInfo", type: String, mayBeNull: true, optional: true},
            {name: "redirectUrl", type: String, mayBeNull: true, optional: true},
            {name: "loginCompletedCallback", type: Function, mayBeNull: true, optional: true},
            {name: "failedCallback", type: Function, mayBeNull: true, optional: true},
            {name: "userContext", mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        this._invoke(this._get_path(), "Login", false,
                                        { userName: username, password: password, createPersistentCookie: isPersistent },
                                        Function.createDelegate(this, this._onLoginComplete),
                                        Function.createDelegate(this, this._onLoginFailed),
                                        [username, password, isPersistent, customInfo, redirectUrl, loginCompletedCallback, failedCallback, userContext]);
    }
    function Sys$Services$_AuthenticationService$logout(redirectUrl, logoutCompletedCallback, failedCallback, userContext) {
        /// <summary locid="M:J#Sys.Services.AuthenticationService.logout" />
        /// <param name="redirectUrl" type="String" optional="true" mayBeNull="true"></param>
        /// <param name="logoutCompletedCallback" type="Function" optional="true" mayBeNull="true"></param>
        /// <param name="failedCallback" type="Function" optional="true" mayBeNull="true"></param>
        /// <param name="userContext" optional="true" mayBeNull="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "redirectUrl", type: String, mayBeNull: true, optional: true},
            {name: "logoutCompletedCallback", type: Function, mayBeNull: true, optional: true},
            {name: "failedCallback", type: Function, mayBeNull: true, optional: true},
            {name: "userContext", mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        this._invoke(this._get_path(), "Logout", false, {}, 
                                        Function.createDelegate(this, this._onLogoutComplete),
                                        Function.createDelegate(this, this._onLogoutFailed),
                                        [redirectUrl, logoutCompletedCallback, failedCallback, userContext]);
    }
    function Sys$Services$_AuthenticationService$_get_path() {
        var path = this.get_path();
        if(!path.length) {
            path = Sys.Services._AuthenticationService.DefaultWebServicePath;
        }
        if(!path || !path.length) {
            throw Error.invalidOperation(Sys.Res.servicePathNotSet);
        }
        return path;
    }
    function Sys$Services$_AuthenticationService$_onLoginComplete(result, context, methodName) {
        if(typeof(result) !== "boolean") {
            throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType, methodName, "Boolean"));
        }
        
        var redirectUrl = context[4];
        var userContext = context[7] || this.get_defaultUserContext();
        var callback = context[5] || this.get_defaultLoginCompletedCallback() || this.get_defaultSucceededCallback();
        
        if(result) {
            this._authenticated = true;
            if (callback) {
                callback(true, userContext, "Sys.Services.AuthenticationService.login");
            }
            
            if (typeof(redirectUrl) !== "undefined" && redirectUrl !== null) {
                window.location.href = redirectUrl;
            }
        }
        else if (callback) {
            callback(false, userContext, "Sys.Services.AuthenticationService.login");
        }
    }
    function Sys$Services$_AuthenticationService$_onLoginFailed(err, context, methodName) {
        var callback = context[6] || this.get_defaultFailedCallback();
        if (callback) {
            var userContext = 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 !== null) {
            throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType, methodName, "null"));
        }
        
        var redirectUrl = context[0];
        var userContext = context[3] || this.get_defaultUserContext();
        var callback = context[1] || this.get_defaultLogoutCompletedCallback() || this.get_defaultSucceededCallback();
        this._authenticated = false;
        
        if (callback) {
            callback(null, userContext, "Sys.Services.AuthenticationService.logout");
        }
        
        if(!redirectUrl) {
            window.location.reload();
        }
        else {
            window.location.href = redirectUrl;
        }
    }
    function Sys$Services$_AuthenticationService$_onLogoutFailed(err, context, methodName) {
        var callback = 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 = authenticated;
    }
Sys.Services._AuthenticationService.prototype = {
    _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,  
    login: Sys$Services$_AuthenticationService$login,
    logout: Sys$Services$_AuthenticationService$logout,
    _get_path: Sys$Services$_AuthenticationService$_get_path,
    _onLoginComplete: Sys$Services$_AuthenticationService$_onLoginComplete,
    _onLoginFailed: Sys$Services$_AuthenticationService$_onLoginFailed,
    _onLogoutComplete: Sys$Services$_AuthenticationService$_onLogoutComplete,
    _onLogoutFailed: Sys$Services$_AuthenticationService$_onLogoutFailed,
    _setAuthenticated: Sys$Services$_AuthenticationService$_setAuthenticated    
}
Sys.Services._AuthenticationService.registerClass('Sys.Services._AuthenticationService', Sys.Net.WebServiceProxy);
Sys.Services.AuthenticationService = new Sys.Services._AuthenticationService();
Sys.Services._RoleService = function Sys$Services$_RoleService() {
    /// <summary locid="M:J#Sys.Services.RoleService.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    Sys.Services._RoleService.initializeBase(this);
    this._roles = [];
}
Sys.Services._RoleService.DefaultWebServicePath = '';
    function Sys$Services$_RoleService$get_defaultLoadCompletedCallback() {
        /// <value type="Function" mayBeNull="true" locid="P:J#Sys.Services.RoleService.defaultLoadCompletedCallback"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._defaultLoadCompletedCallback;
    }
    function Sys$Services$_RoleService$set_defaultLoadCompletedCallback(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Function, mayBeNull: true}]);
        if (e) throw e;
        this._defaultLoadCompletedCallback = value;
    }
    function Sys$Services$_RoleService$get_path() {
        /// <value type="String" mayBeNull="true" locid="P:J#Sys.Services.RoleService.path"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._path || '';
    }
    function Sys$Services$_RoleService$get_roles() {
        /// <value type="Array" elementType="String" mayBeNull="false" locid="P:J#Sys.Services.RoleService.roles"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return Array.clone(this._roles);
    }
    function Sys$Services$_RoleService$isUserInRole(role) {
        /// <summary locid="M:J#Sys.Services.RoleService.isUserInRole" />
        /// <param name="role" type="String" mayBeNull="false"></param>
        /// <returns type="Boolean"></returns>
        var e = Function._validateParams(arguments, [
            {name: "role", type: String}
        ]);
        if (e) throw e;
        var v = this._get_rolesIndex()[role.trim().toLowerCase()];
        return !!v;
    }
    function Sys$Services$_RoleService$load(loadCompletedCallback, failedCallback, userContext) {
        /// <summary locid="M:J#Sys.Services.RoleService.load" />
        /// <param name="loadCompletedCallback" type="Function" optional="true" mayBeNull="true"></param>
        /// <param name="failedCallback" type="Function" optional="true" mayBeNull="true"></param>
        /// <param name="userContext" optional="true" mayBeNull="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "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 = this.get_path();
        if(!path || !path.length) {
            path = 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 = {};
            for(var i=0; i < this._roles.length; i++) {
                index[this._roles[i].toLowerCase()] = true;
            }
            this._rolesIndex = 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 = result;
        this._rolesIndex = null;
        var callback = context[0] || this.get_defaultLoadCompletedCallback() || this.get_defaultSucceededCallback();
        if (callback) {
            var userContext = context[2] || this.get_defaultUserContext();
            var clonedResult = Array.clone(result);
            callback(clonedResult, userContext, "Sys.Services.RoleService.load");
        }
    }
    function Sys$Services$_RoleService$_onLoadFailed(err, context, methodName) {
        var callback = context[1] || this.get_defaultFailedCallback();
        if (callback) {
            var userContext = context[2] || this.get_defaultUserContext();
            callback(err, userContext, "Sys.Services.RoleService.load");
        }
        else {
            Sys.Net.WebServiceProxy._defaultFailedCallback(err, methodName);
        }
    }
Sys.Services._RoleService.prototype = {
    _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,  
    _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 = new Sys.Services._RoleService();
�P//-----------------------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------
// MicrosoftAjaxComponentModel.js
// Microsoft AJAX Framework Component Model.
/// <reference name="MicrosoftAjaxCore.js" />
Type._registerScript("MicrosoftAjaxComponentModel.js", ["MicrosoftAjaxCore.js"]);
Type.registerNamespace('Sys.UI');
Sys.CommandEventArgs = function Sys$CommandEventArgs(commandName, commandArgument, commandSource) {
    /// <summary locid="M:J#Sys.CommandEventArgs.#ctor" />
    /// <param name="commandName" type="String"></param>
    /// <param name="commandArgument" mayBeNull="true"></param>
    /// <param name="commandSource" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "commandName", type: String},
        {name: "commandArgument", mayBeNull: true},
        {name: "commandSource", mayBeNull: true}
    ]);
    if (e) throw e;
    Sys.CommandEventArgs.initializeBase(this);
    this._commandName = commandName;
    this._commandArgument = commandArgument;
    this._commandSource = commandSource;
}
    function Sys$CommandEventArgs$get_commandName() {
        /// <value type="String" locid="P:J#Sys.CommandEventArgs.commandName"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._commandName;
    }
    function Sys$CommandEventArgs$get_commandArgument() {
        /// <value mayBeNull="true" locid="P:J#Sys.CommandEventArgs.commandArgument"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._commandArgument;
    }
    function Sys$CommandEventArgs$get_commandSource() {
        /// <value mayBeNull="true" locid="P:J#Sys.CommandEventArgs.commandSource"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._commandSource;
    }
Sys.CommandEventArgs.prototype = {
    _commandName: null,
    _commandArgument: null,
    _commandSource: null,
    get_commandName: Sys$CommandEventArgs$get_commandName,
    get_commandArgument: Sys$CommandEventArgs$get_commandArgument,
    get_commandSource: Sys$CommandEventArgs$get_commandSource
}
Sys.CommandEventArgs.registerClass("Sys.CommandEventArgs", Sys.CancelEventArgs);
 
Sys.INotifyDisposing = function Sys$INotifyDisposing() {
    /// <summary locid="M:J#Sys.INotifyDisposing.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
    function Sys$INotifyDisposing$add_disposing(handler) {
    /// <summary locid="E:J#Sys.INotifyDisposing.disposing" />
    var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
    if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$INotifyDisposing$remove_disposing(handler) {
    var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
    if (e) throw e;
        throw Error.notImplemented();
    }
Sys.INotifyDisposing.prototype = {
    add_disposing: Sys$INotifyDisposing$add_disposing,
    remove_disposing: Sys$INotifyDisposing$remove_disposing
}
Sys.INotifyDisposing.registerInterface("Sys.INotifyDisposing");
 
Sys.Component = function Sys$Component() {
    /// <summary locid="M:J#Sys.Component.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    if (Sys.Application) Sys.Application.registerDisposableObject(this);
}
    function Sys$Component$get_events() {
        /// <value type="Sys.EventHandlerList" locid="P:J#Sys.Component.events"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._events) {
            this._events = new Sys.EventHandlerList();
        }
        return this._events;
    }
    function Sys$Component$get_id() {
        /// <value type="String" locid="P:J#Sys.Component.id"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._id;
    }
    function Sys$Component$set_id(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        if (this._idSet) throw Error.invalidOperation(Sys.Res.componentCantSetIdTwice);
        this._idSet = true;
        var oldId = this.get_id();
        if (oldId && Sys.Application.findComponent(oldId)) throw Error.invalidOperation(Sys.Res.componentCantSetIdAfterAddedToApp);
        this._id = value;
    }
    function Sys$Component$get_isInitialized() {
        /// <value type="Boolean" locid="P:J#Sys.Component.isInitialized"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._initialized;
    }
    function Sys$Component$get_isUpdating() {
        /// <value type="Boolean" locid="P:J#Sys.Component.isUpdating"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._updating;
    }
    function Sys$Component$add_disposing(handler) {
        /// <summary locid="E:J#Sys.Component.disposing" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().addHandler("disposing", handler);
    }
    function Sys$Component$remove_disposing(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().removeHandler("disposing", handler);
    }
    function Sys$Component$add_propertyChanged(handler) {
        /// <summary locid="E:J#Sys.Component.propertyChanged" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().addHandler("propertyChanged", handler);
    }
    function Sys$Component$remove_propertyChanged(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().removeHandler("propertyChanged", handler);
    }
    function Sys$Component$beginUpdate() {
        this._updating = true;
    }
    function Sys$Component$dispose() {
        if (this._events) {
            var handler = this._events.getHandler("disposing");
            if (handler) {
                handler(this, Sys.EventArgs.Empty);
            }
        }
        delete this._events;
        Sys.Application.unregisterDisposableObject(this);
        Sys.Application.removeComponent(this);
    }
    function Sys$Component$endUpdate() {
        this._updating = false;
        if (!this._initialized) this.initialize();
        this.updated();
    }
    function Sys$Component$initialize() {
        this._initialized = true;
    }
    function Sys$Component$raisePropertyChanged(propertyName) {
        /// <summary locid="M:J#Sys.Component.raisePropertyChanged" />
        /// <param name="propertyName" type="String"></param>
        var e = Function._validateParams(arguments, [
            {name: "propertyName", type: String}
        ]);
        if (e) throw e;
        if (!this._events) return;
        var handler = this._events.getHandler("propertyChanged");
        if (handler) {
            handler(this, new Sys.PropertyChangedEventArgs(propertyName));
        }
    }
    function Sys$Component$updated() {
    }
Sys.Component.prototype = {
    _id: null,
    _idSet: false,
    _initialized: false,
    _updating: false,
    get_events: Sys$Component$get_events,
    get_id: Sys$Component$get_id,
    set_id: Sys$Component$set_id,
    get_isInitialized: Sys$Component$get_isInitialized,
    get_isUpdating: Sys$Component$get_isUpdating,
    add_disposing: Sys$Component$add_disposing,
    remove_disposing: Sys$Component$remove_disposing,
    add_propertyChanged: Sys$Component$add_propertyChanged,
    remove_propertyChanged: Sys$Component$remove_propertyChanged,
    beginUpdate: Sys$Component$beginUpdate,
    dispose: Sys$Component$dispose,
    endUpdate: Sys$Component$endUpdate,
    initialize: Sys$Component$initialize,
    raisePropertyChanged: Sys$Component$raisePropertyChanged,
    updated: Sys$Component$updated
}
Sys.Component.registerClass('Sys.Component', null, Sys.IDisposable, Sys.INotifyPropertyChange, Sys.INotifyDisposing);
function Sys$Component$_setProperties(target, properties) {
    /// <summary locid="M:J#Sys.Component._setProperties" />
    /// <param name="target"></param>
    /// <param name="properties"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"},
        {name: "properties"}
    ]);
    if (e) throw e;
    var current;
    var targetType = Object.getType(target);
    var isObject = (targetType === Object) || (targetType === Sys.UI.DomElement);
    var isComponent = Sys.Component.isInstanceOfType(target) && !target.get_isUpdating();
    if (isComponent) target.beginUpdate();
    for (var name in properties) {
        var val = properties[name];
        var getter = isObject ? null : target["get_" + name];
        if (isObject || typeof(getter) !== 'function') {
            var targetVal = target[name];
            if (!isObject && typeof(targetVal) === 'undefined') throw Error.invalidOperation(String.format(Sys.Res.propertyUndefined, name));
            if (!val || (typeof(val) !== 'object') || (isObject && !targetVal)) {
                target[name] = val;
            }
            else {
                Sys$Component$_setProperties(targetVal, val);
            }
        }
        else {
            var setter = target["set_" + name];
            if (typeof(setter) === 'function') {
                setter.apply(target, [val]);
            }
            else if (val instanceof Array) {
                current = getter.apply(target);
                if (!(current instanceof Array)) throw new Error.invalidOperation(String.format(Sys.Res.propertyNotAnArray, name));
                for (var i = 0, j = current.length, l= val.length; i < l; i++, j++) {
                    current[j] = val[i];
                }
            }
            else if ((typeof(val) === 'object') && (Object.getType(val) === Object)) {
                current = getter.apply(target);
                if ((typeof(current) === 'undefined') || (current === null)) throw new Error.invalidOperation(String.format(Sys.Res.propertyNullOrUndefined, name));
                Sys$Component$_setProperties(current, val);
            }
            else {
                throw new Error.invalidOperation(String.format(Sys.Res.propertyNotWritable, name));
            }
        }
    }
    if (isComponent) target.endUpdate();
}
function Sys$Component$_setReferences(component, references) {
    for (var name in references) {
        var setter = component["set_" + name];
        var reference = $find(references[name]);
        if (typeof(setter) !== 'function') throw new Error.invalidOperation(String.format(Sys.Res.propertyNotWritable, name));
        if (!reference) throw Error.invalidOperation(String.format(Sys.Res.referenceNotFound, references[name]));
        setter.apply(component, [reference]);
    }
}
var $create = Sys.Component.create = function Sys$Component$create(type, properties, events, references, element) {
    /// <summary locid="M:J#Sys.Component.create" />
    /// <param name="type" type="Type"></param>
    /// <param name="properties" optional="true" mayBeNull="true"></param>
    /// <param name="events" optional="true" mayBeNull="true"></param>
    /// <param name="references" optional="true" mayBeNull="true"></param>
    /// <param name="element" domElement="true" optional="true" mayBeNull="true"></param>
    /// <returns type="Sys.UI.Component"></returns>
    var e = Function._validateParams(arguments, [
        {name: "type", type: Type},
        {name: "properties", mayBeNull: true, optional: true},
        {name: "events", mayBeNull: true, optional: true},
        {name: "references", mayBeNull: true, optional: true},
        {name: "element", mayBeNull: true, domElement: true, optional: true}
    ]);
    if (e) throw e;
    if (!type.inheritsFrom(Sys.Component)) {
        throw Error.argument('type', String.format(Sys.Res.createNotComponent, type.getName()));
    }
    if (type.inheritsFrom(Sys.UI.Behavior) || type.inheritsFrom(Sys.UI.Control)) {
        if (!element) throw Error.argument('element', Sys.Res.createNoDom);
    }
    else if (element) throw Error.argument('element', Sys.Res.createComponentOnDom);
    var component = (element ? new type(element): new type());
    var app = Sys.Application;
    var creatingComponents = app.get_isCreatingComponents();
    component.beginUpdate();
    if (properties) {
        Sys$Component$_setProperties(component, properties);
    }
    if (events) {
        for (var name in events) {
            if (!(component["add_" + name] instanceof Function)) throw new Error.invalidOperation(String.format(Sys.Res.undefinedEvent, name));
            if (!(events[name] instanceof Function)) throw new Error.invalidOperation(Sys.Res.eventHandlerNotFunction);
            component["add_" + name](events[name]);
        }
    }
    if (component.get_id()) {
        app.addComponent(component);
    }
    if (creatingComponents) {
        app._createdComponents[app._createdComponents.length] = component;
        if (references) {
            app._addComponentToSecondPass(component, references);
        }
        else {
            component.endUpdate();
        }
    }
    else {
        if (references) {
            Sys$Component$_setReferences(component, references);
        }
        component.endUpdate();
    }
    return component;
}
 
Sys.UI.MouseButton = function Sys$UI$MouseButton() {
    /// <summary locid="M:J#Sys.UI.MouseButton.#ctor" />
    /// <field name="leftButton" type="Number" integer="true" static="true" locid="F:J#Sys.UI.MouseButton.leftButton"></field>
    /// <field name="middleButton" type="Number" integer="true" static="true" locid="F:J#Sys.UI.MouseButton.middleButton"></field>
    /// <field name="rightButton" type="Number" integer="true" static="true" locid="F:J#Sys.UI.MouseButton.rightButton"></field>
    if (arguments.length !== 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
Sys.UI.MouseButton.prototype = {
    leftButton: 0,
    middleButton: 1,
    rightButton: 2
}
Sys.UI.MouseButton.registerEnum("Sys.UI.MouseButton");
 
Sys.UI.Key = function Sys$UI$Key() {
    /// <summary locid="M:J#Sys.UI.Key.#ctor" />
    /// <field name="backspace" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.backspace"></field>
    /// <field name="tab" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.tab"></field>
    /// <field name="enter" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.enter"></field>
    /// <field name="esc" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.esc"></field>
    /// <field name="space" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.space"></field>
    /// <field name="pageUp" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.pageUp"></field>
    /// <field name="pageDown" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.pageDown"></field>
    /// <field name="end" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.end"></field>
    /// <field name="home" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.home"></field>
    /// <field name="left" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.left"></field>
    /// <field name="up" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.up"></field>
    /// <field name="right" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.right"></field>
    /// <field name="down" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.down"></field>
    /// <field name="del" type="Number" integer="true" static="true" locid="F:J#Sys.UI.Key.del"></field>
    if (arguments.length !== 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
Sys.UI.Key.prototype = {
    backspace: 8,
    tab: 9,
    enter: 13,
    esc: 27,
    space: 32,
    pageUp: 33,
    pageDown: 34,
    end: 35,
    home: 36,
    left: 37,
    up: 38,
    right: 39,
    down: 40,
    del: 127
}
Sys.UI.Key.registerEnum("Sys.UI.Key");
 
Sys.UI.Point = function Sys$UI$Point(x, y) {
    /// <summary locid="M:J#Sys.UI.Point.#ctor" />
    /// <param name="x" type="Number"></param>
    /// <param name="y" type="Number"></param>
    /// <field name="x" type="Number" integer="true" locid="F:J#Sys.UI.Point.x"></field>
    /// <field name="y" type="Number" integer="true" locid="F:J#Sys.UI.Point.y"></field>
    /// <field name="rawX" type="Number" locid="F:J#Sys.UI.Point.rawX"></field>
    /// <field name="rawY" type="Number" locid="F:J#Sys.UI.Point.rawY"></field>
    var e = Function._validateParams(arguments, [
        {name: "x", type: Number},
        {name: "y", type: Number}
    ]);
    if (e) throw e;
    this.rawX = x;
    this.rawY = y;
    this.x = Math.round(x);
    this.y = Math.round(y);
}
Sys.UI.Point.registerClass('Sys.UI.Point');
 
Sys.UI.Bounds = function Sys$UI$Bounds(x, y, width, height) {
    /// <summary locid="M:J#Sys.UI.Bounds.#ctor" />
    /// <param name="x" type="Number" integer="true"></param>
    /// <param name="y" type="Number" integer="true"></param>
    /// <param name="width" type="Number" integer="true"></param>
    /// <param name="height" type="Number" integer="true"></param>
    /// <field name="x" type="Number" integer="true" locid="F:J#Sys.UI.Bounds.x"></field>
    /// <field name="y" type="Number" integer="true" locid="F:J#Sys.UI.Bounds.y"></field>
    /// <field name="width" type="Number" integer="true" locid="F:J#Sys.UI.Bounds.width"></field>
    /// <field name="height" type="Number" integer="true" locid="F:J#Sys.UI.Bounds.height"></field>
    var e = Function._validateParams(arguments, [
        {name: "x", type: Number, integer: true},
        {name: "y", type: Number, integer: true},
        {name: "width", type: Number, integer: true},
        {name: "height", type: Number, integer: true}
    ]);
    if (e) throw e;
    this.x = x;
    this.y = y;
    this.height = height;
    this.width = width;
}
Sys.UI.Bounds.registerClass('Sys.UI.Bounds');
 
Sys.UI.DomEvent = function Sys$UI$DomEvent(eventObject) {
    /// <summary locid="M:J#Sys.UI.DomEvent.#ctor" />
    /// <param name="eventObject"></param>
    /// <field name="altKey" type="Boolean" locid="F:J#Sys.UI.DomEvent.altKey"></field>
    /// <field name="button" type="Sys.UI.MouseButton" locid="F:J#Sys.UI.DomEvent.button"></field>
    /// <field name="charCode" type="Number" integer="true" locid="F:J#Sys.UI.DomEvent.charCode"></field>
    /// <field name="clientX" type="Number" integer="true" locid="F:J#Sys.UI.DomEvent.clientX"></field>
    /// <field name="clientY" type="Number" integer="true" locid="F:J#Sys.UI.DomEvent.clientY"></field>
    /// <field name="ctrlKey" type="Boolean" locid="F:J#Sys.UI.DomEvent.ctrlKey"></field>
    /// <field name="keyCode" type="Number" integer="true" locid="F:J#Sys.UI.DomEvent.keyCode"></field>
    /// <field name="offsetX" type="Number" integer="true" locid="F:J#Sys.UI.DomEvent.offsetX"></field>
    /// <field name="offsetY" type="Number" integer="true" locid="F:J#Sys.UI.DomEvent.offsetY"></field>
    /// <field name="screenX" type="Number" integer="true" locid="F:J#Sys.UI.DomEvent.screenX"></field>
    /// <field name="screenY" type="Number" integer="true" locid="F:J#Sys.UI.DomEvent.screenY"></field>
    /// <field name="shiftKey" type="Boolean" locid="F:J#Sys.UI.DomEvent.shiftKey"></field>
    /// <field name="target" locid="F:J#Sys.UI.DomEvent.target"></field>
    /// <field name="type" type="String" locid="F:J#Sys.UI.DomEvent.type"></field>
    var e = Function._validateParams(arguments, [
        {name: "eventObject"}
    ]);
    if (e) throw e;
    var ev = eventObject;
    var etype = this.type = ev.type.toLowerCase();
    this.rawEvent = ev;
    this.altKey = ev.altKey;
    if (typeof(ev.button) !== 'undefined') {
        this.button = (typeof(ev.which) !== 'undefined') ? ev.button :
            (ev.button === 4) ? Sys.UI.MouseButton.middleButton :
            (ev.button === 2) ? Sys.UI.MouseButton.rightButton :
            Sys.UI.MouseButton.leftButton;
    }
    if (etype === 'keypress') {
        this.charCode = ev.charCode || ev.keyCode;
    }
    else if (ev.keyCode && (ev.keyCode === 46)) {
        this.keyCode = 127;
    }
    else {
        this.keyCode = ev.keyCode;
    }
    this.clientX = ev.clientX;
    this.clientY = ev.clientY;
    this.ctrlKey = ev.ctrlKey;
    this.target = ev.target ? ev.target : ev.srcElement;
    if (!etype.startsWith('key')) {
        if ((typeof(ev.offsetX) !== 'undefined') && (typeof(ev.offsetY) !== 'undefined')) {
            this.offsetX = ev.offsetX;
            this.offsetY = ev.offsetY;
        }
        else if (this.target && (this.target.nodeType !== 3) && (typeof(ev.clientX) === 'number')) {
            var loc = Sys.UI.DomElement.getLocation(this.target);
            var w = Sys.UI.DomElement._getWindow(this.target);
            this.offsetX = (w.pageXOffset || 0) + ev.clientX - loc.x;
            this.offsetY = (w.pageYOffset || 0) + ev.clientY - loc.y;
        }
    }
    this.screenX = ev.screenX;
    this.screenY = ev.screenY;
    this.shiftKey = ev.shiftKey;
}
    function Sys$UI$DomEvent$preventDefault() {
        /// <summary locid="M:J#Sys.UI.DomEvent.preventDefault" />
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this.rawEvent.preventDefault) {
            this.rawEvent.preventDefault();
        }
        else if (window.event) {
            this.rawEvent.returnValue = false;
        }
    }
    function Sys$UI$DomEvent$stopPropagation() {
        /// <summary locid="M:J#Sys.UI.DomEvent.stopPropagation" />
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this.rawEvent.stopPropagation) {
            this.rawEvent.stopPropagation();
        }
        else if (window.event) {
            this.rawEvent.cancelBubble = true;
        }
    }
Sys.UI.DomEvent.prototype = {
    preventDefault: Sys$UI$DomEvent$preventDefault,
    stopPropagation: Sys$UI$DomEvent$stopPropagation
}
Sys.UI.DomEvent.registerClass('Sys.UI.DomEvent');
var $addHandler = Sys.UI.DomEvent.addHandler = function Sys$UI$DomEvent$addHandler(element, eventName, handler, autoRemove) {
    /// <summary locid="M:J#Sys.UI.DomEvent.addHandler" />
    /// <param name="element"></param>
    /// <param name="eventName" type="String"></param>
    /// <param name="handler" type="Function"></param>
    /// <param name="autoRemove" type="Boolean" optional="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "element"},
        {name: "eventName", type: String},
        {name: "handler", type: Function},
        {name: "autoRemove", type: Boolean, optional: true}
    ]);
    if (e) throw e;
    Sys.UI.DomEvent._ensureDomNode(element);
    if (eventName === "error") throw Error.invalidOperation(Sys.Res.addHandlerCantBeUsedForError);
    if (!element._events) {
        element._events = {};
    }
    var eventCache = element._events[eventName];
    if (!eventCache) {
        element._events[eventName] = eventCache = [];
    }
    var browserHandler;
    if (element.addEventListener) {
        browserHandler = function(e) {
            return handler.call(element, new Sys.UI.DomEvent(e));
        }
        element.addEventListener(eventName, browserHandler, false);
    }
    else if (element.attachEvent) {
        browserHandler = function() {
            var e = {};
            try {e = 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] = {handler: handler, browserHandler: browserHandler, autoRemove: autoRemove };
    if (autoRemove) {
        var d = element.dispose;
        if (d !== Sys.UI.DomEvent._disposeHandlers) {
            element.dispose = Sys.UI.DomEvent._disposeHandlers;
            if (typeof(d) !== "undefined") {
                element._chainDispose = d;
            }
        }
    }
}
var $addHandlers = Sys.UI.DomEvent.addHandlers = function Sys$UI$DomEvent$addHandlers(element, events, handlerOwner, autoRemove) {
    /// <summary locid="M:J#Sys.UI.DomEvent.addHandlers" />
    /// <param name="element"></param>
    /// <param name="events" type="Object"></param>
    /// <param name="handlerOwner" optional="true"></param>
    /// <param name="autoRemove" type="Boolean" optional="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "element"},
        {name: "events", type: Object},
        {name: "handlerOwner", optional: true},
        {name: "autoRemove", type: Boolean, optional: true}
    ]);
    if (e) throw e;
    Sys.UI.DomEvent._ensureDomNode(element);
    for (var name in events) {
        var handler = events[name];
        if (typeof(handler) !== 'function') throw Error.invalidOperation(Sys.Res.cantAddNonFunctionhandler);
        if (handlerOwner) {
            handler = Function.createDelegate(handlerOwner, handler);
        }
        $addHandler(element, name, handler, autoRemove || false);
    }
}
var $clearHandlers = Sys.UI.DomEvent.clearHandlers = function Sys$UI$DomEvent$clearHandlers(element) {
    /// <summary locid="M:J#Sys.UI.DomEvent.clearHandlers" />
    /// <param name="element"></param>
    var e = Function._validateParams(arguments, [
        {name: "element"}
    ]);
    if (e) throw e;
    Sys.UI.DomEvent._ensureDomNode(element);
    Sys.UI.DomEvent._clearHandlers(element, false);
}
Sys.UI.DomEvent._clearHandlers = function Sys$UI$DomEvent$_clearHandlers(element, autoRemoving) {
    if (element._events) {
        var cache = element._events;
        for (var name in cache) {
            var handlers = cache[name];
            for (var i = handlers.length - 1; i >= 0; i--) {
                var entry = handlers[i];
                if (!autoRemoving || entry.autoRemove) {
                    $removeHandler(element, name, entry.handler);
                }
            }
        }
        element._events = null;
    }
}
Sys.UI.DomEvent._disposeHandlers = function Sys$UI$DomEvent$_disposeHandlers() {
    Sys.UI.DomEvent._clearHandlers(this, true);
    var d = this._chainDispose, type = typeof(d);
    if (type !== "undefined") {
        this.dispose = d;
        this._chainDispose = null;
        if (type === "function") {
            this.dispose();
        }
    }
}
var $removeHandler = Sys.UI.DomEvent.removeHandler = function Sys$UI$DomEvent$removeHandler(element, eventName, handler) {
    /// <summary locid="M:J#Sys.UI.DomEvent.removeHandler" />
    /// <param name="element"></param>
    /// <param name="eventName" type="String"></param>
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "element"},
        {name: "eventName", type: String},
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    Sys.UI.DomEvent._removeHandler(element, eventName, handler);
}
Sys.UI.DomEvent._removeHandler = function Sys$UI$DomEvent$_removeHandler(element, eventName, handler) {
    Sys.UI.DomEvent._ensureDomNode(element);
    var browserHandler = null;
    if ((typeof(element._events) !== 'object') || !element._events) throw Error.invalidOperation(Sys.Res.eventHandlerInvalid);
    var cache = element._events[eventName];
    if (!(cache instanceof Array)) throw Error.invalidOperation(Sys.Res.eventHandlerInvalid);
    for (var i = 0, l = cache.length; i < l; i++) {
        if (cache[i].handler === handler) {
            browserHandler = cache[i].browserHandler;
            break;
        }
    }
    if (typeof(browserHandler) !== 'function') throw Error.invalidOperation(Sys.Res.eventHandlerInvalid);
    if (element.removeEventListener) {
        element.removeEventListener(eventName, browserHandler, false);
    }
    else if (element.detachEvent) {
        element.detachEvent('on' + eventName, browserHandler);
    }
    cache.splice(i, 1);
}
Sys.UI.DomEvent._ensureDomNode = function Sys$UI$DomEvent$_ensureDomNode(element) {
    if (element.tagName && (element.tagName.toUpperCase() === "SCRIPT")) return;
    
    var doc = element.ownerDocument || element.document || element;
    if ((typeof(element.document) !== 'object') && (element != doc) && (typeof(element.nodeType) !== 'number')) {
        throw Error.argument("element", Sys.Res.argumentDomNode);
    }
}
 
Sys.UI.DomElement = function Sys$UI$DomElement() {
    /// <summary locid="M:J#Sys.UI.DomElement.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
Sys.UI.DomElement.registerClass('Sys.UI.DomElement');
Sys.UI.DomElement.addCssClass = function Sys$UI$DomElement$addCssClass(element, className) {
    /// <summary locid="M:J#Sys.UI.DomElement.addCssClass" />
    /// <param name="element" domElement="true"></param>
    /// <param name="className" type="String"></param>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "className", type: String}
    ]);
    if (e) throw e;
    if (!Sys.UI.DomElement.containsCssClass(element, className)) {
        if (element.className === '') {
            element.className = className;
        }
        else {
            element.className += ' ' + className;
        }
    }
}
Sys.UI.DomElement.containsCssClass = function Sys$UI$DomElement$containsCssClass(element, className) {
    /// <summary locid="M:J#Sys.UI.DomElement.containsCssClass" />
    /// <param name="element" domElement="true"></param>
    /// <param name="className" type="String"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "className", type: String}
    ]);
    if (e) throw e;
    return Array.contains(element.className.split(' '), className);
}
Sys.UI.DomElement.getBounds = function Sys$UI$DomElement$getBounds(element) {
    /// <summary locid="M:J#Sys.UI.DomElement.getBounds" />
    /// <param name="element" domElement="true"></param>
    /// <returns type="Sys.UI.Bounds"></returns>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    var offset = Sys.UI.DomElement.getLocation(element);
    return new Sys.UI.Bounds(offset.x, offset.y, element.offsetWidth || 0, element.offsetHeight || 0);
}
var $get = Sys.UI.DomElement.getElementById = function Sys$UI$DomElement$getElementById(id, element) {
    /// <summary locid="M:J#Sys.UI.DomElement.getElementById" />
    /// <param name="id" type="String"></param>
    /// <param name="element" domElement="true" optional="true" mayBeNull="true"></param>
    /// <returns domElement="true" mayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "id", type: String},
        {name: "element", mayBeNull: true, domElement: true, optional: true}
    ]);
    if (e) throw e;
    if (!element) return document.getElementById(id);
    if (element.getElementById) return element.getElementById(id);
    var nodeQueue = [];
    var childNodes = element.childNodes;
    for (var i = 0; i < childNodes.length; i++) {
        var node = childNodes[i];
        if (node.nodeType == 1) {
            nodeQueue[nodeQueue.length] = node;
        }
    }
    while (nodeQueue.length) {
        node = nodeQueue.shift();
        if (node.id == id) {
            return node;
        }
        childNodes = node.childNodes;
        for (i = 0; i < childNodes.length; i++) {
            node = childNodes[i];
            if (node.nodeType == 1) {
                nodeQueue[nodeQueue.length] = node;
            }
        }
    }
    return null;
}
if (document.documentElement.getBoundingClientRect) {
    Sys.UI.DomElement.getLocation = function Sys$UI$DomElement$getLocation(element) {
        /// <summary locid="M:J#Sys.UI.DomElement.getLocation" />
        /// <param name="element" domElement="true"></param>
        /// <returns type="Sys.UI.Point"></returns>
        var e = Function._validateParams(arguments, [
            {name: "element", domElement: true}
        ]);
        if (e) throw e;
        if (element.self || element.nodeType === 9 || 
            (element === document.documentElement) || 
            (element.parentNode === element.ownerDocument.documentElement)) { 
            return new Sys.UI.Point(0, 0);
        }        
        
        var clientRect = element.getBoundingClientRect();
        if (!clientRect) {
            return new Sys.UI.Point(0,0);
        }
        var documentElement = element.ownerDocument.documentElement;
        var bodyElement = element.ownerDocument.body;
        var ex,
            offsetX = Math.round(clientRect.left) + (documentElement.scrollLeft || bodyElement.scrollLeft),
            offsetY = Math.round(clientRect.top) + (documentElement.scrollTop || bodyElement.scrollTop);
        if (Sys.Browser.agent === Sys.Browser.InternetExplorer) {
            try {
                var f = element.ownerDocument.parentWindow.frameElement || null;
                if (f) {
                    var offset = (f.frameBorder === "0" || f.frameBorder === "no") ? 2 : 0;
                    offsetX += offset;
                    offsetY += offset;
                }
            }
            catch(ex) {
            }
            if (Sys.Browser.version === 7 && !document.documentMode) {
                var body = document.body,
                    rect = body.getBoundingClientRect(),
                    zoom = (rect.right-rect.left) / body.clientWidth;
                zoom = Math.round(zoom * 100);
                zoom = (zoom - zoom % 5) / 100;
                if (!isNaN(zoom) && (zoom !== 1)) {
                    offsetX = Math.round(offsetX / zoom);
                    offsetY = Math.round(offsetY / zoom);
                }
            }        
            if ((document.documentMode || 0) < 8) {
                offsetX -= documentElement.clientLeft;
                offsetY -= documentElement.clientTop;
            }
        }
        return new Sys.UI.Point(offsetX, offsetY);
    }
}
else if (Sys.Browser.agent === Sys.Browser.Safari) {
    Sys.UI.DomElement.getLocation = function Sys$UI$DomElement$getLocation(element) {
        /// <summary locid="M:J#Sys.UI.DomElement.getLocation" />
        /// <param name="element" domElement="true"></param>
        /// <returns type="Sys.UI.Point"></returns>
        var e = Function._validateParams(arguments, [
            {name: "element", domElement: true}
        ]);
        if (e) throw e;
        if ((element.window && (element.window === element)) || element.nodeType === 9) return new Sys.UI.Point(0,0);
        var offsetX = 0, offsetY = 0,
            parent,
            previous = null,
            previousStyle = null,
            currentStyle;
        for (parent = element; parent; previous = parent, previousStyle = currentStyle, parent = parent.offsetParent) {
            currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
            var tagName = parent.tagName ? parent.tagName.toUpperCase() : null;
            if ((parent.offsetLeft || parent.offsetTop) &&
                ((tagName !== "BODY") || (!previousStyle || previousStyle.position !== "absolute"))) {
                offsetX += parent.offsetLeft;
                offsetY += parent.offsetTop;
            }
            if (previous && Sys.Browser.version >= 3) {
                offsetX += parseInt(currentStyle.borderLeftWidth);
                offsetY += parseInt(currentStyle.borderTopWidth);
            }
        }
        currentStyle = Sys.UI.DomElement._getCurrentStyle(element);
        var elementPosition = currentStyle ? currentStyle.position : null;
        if (!elementPosition || (elementPosition !== "absolute")) {
            for (parent = element.parentNode; parent; parent = parent.parentNode) {
                tagName = parent.tagName ? parent.tagName.toUpperCase() : null;
                if ((tagName !== "BODY") && (tagName !== "HTML") && (parent.scrollLeft || parent.scrollTop)) {
                    offsetX -= (parent.scrollLeft || 0);
                    offsetY -= (parent.scrollTop || 0);
                }
                currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
                var parentPosition = currentStyle ? currentStyle.position : null;
                if (parentPosition && (parentPosition === "absolute")) break;
            }
        }
        return new Sys.UI.Point(offsetX, offsetY);
    }
}
else {
    Sys.UI.DomElement.getLocation = function Sys$UI$DomElement$getLocation(element) {
        /// <summary locid="M:J#Sys.UI.DomElement.getLocation" />
        /// <param name="element" domElement="true"></param>
        /// <returns type="Sys.UI.Point"></returns>
        var e = Function._validateParams(arguments, [
            {name: "element", domElement: true}
        ]);
        if (e) throw e;
        if ((element.window && (element.window === element)) || element.nodeType === 9) return new Sys.UI.Point(0,0);
        var offsetX = 0, offsetY = 0,
            parent,
            previous = null,
            previousStyle = null,
            currentStyle = null;
        for (parent = element; parent; previous = parent, previousStyle = currentStyle, parent = parent.offsetParent) {
            var tagName = parent.tagName ? parent.tagName.toUpperCase() : null;
            currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
            if ((parent.offsetLeft || parent.offsetTop) &&
                !((tagName === "BODY") &&
                (!previousStyle || previousStyle.position !== "absolute"))) {
                offsetX += parent.offsetLeft;
                offsetY += parent.offsetTop;
            }
            if (previous !== null && currentStyle) {
                if ((tagName !== "TABLE") && (tagName !== "TD") && (tagName !== "HTML")) {
                    offsetX += parseInt(currentStyle.borderLeftWidth) || 0;
                    offsetY += parseInt(currentStyle.borderTopWidth) || 0;
                }
                if (tagName === "TABLE" &&
                    (currentStyle.position === "relative" || currentStyle.position === "absolute")) {
                    offsetX += parseInt(currentStyle.marginLeft) || 0;
                    offsetY += parseInt(currentStyle.marginTop) || 0;
                }
            }
        }
        currentStyle = Sys.UI.DomElement._getCurrentStyle(element);
        var elementPosition = currentStyle ? currentStyle.position : null;
        if (!elementPosition || (elementPosition !== "absolute")) {
            for (parent = element.parentNode; parent; parent = parent.parentNode) {
                tagName = parent.tagName ? parent.tagName.toUpperCase() : null;
                if ((tagName !== "BODY") && (tagName !== "HTML") && (parent.scrollLeft || parent.scrollTop)) {
                    offsetX -= (parent.scrollLeft || 0);
                    offsetY -= (parent.scrollTop || 0);
                    currentStyle = Sys.UI.DomElement._getCurrentStyle(parent);
                    if (currentStyle) {
                        offsetX += parseInt(currentStyle.borderLeftWidth) || 0;
                        offsetY += parseInt(currentStyle.borderTopWidth) || 0;
                    }
                }
            }
        }
        return new Sys.UI.Point(offsetX, offsetY);
    }
}
Sys.UI.DomElement.isDomElement = function Sys$UI$DomElement$isDomElement(obj) {
    /// <summary locid="M:J#Sys.UI.DomElement.isDomElement" />
    /// <param name="obj"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "obj"}
    ]);
    if (e) throw e;
    return Sys._isDomElement(obj);
}
Sys.UI.DomElement.removeCssClass = function Sys$UI$DomElement$removeCssClass(element, className) {
    /// <summary locid="M:J#Sys.UI.DomElement.removeCssClass" />
    /// <param name="element" domElement="true"></param>
    /// <param name="className" type="String"></param>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "className", type: String}
    ]);
    if (e) throw e;
    var currentClassName = ' ' + element.className + ' ';
    var index = currentClassName.indexOf(' ' + className + ' ');
    if (index >= 0) {
        element.className = (currentClassName.substr(0, index) + ' ' +
            currentClassName.substring(index + className.length + 1, currentClassName.length)).trim();
    }
}
Sys.UI.DomElement.resolveElement = function Sys$UI$DomElement$resolveElement(elementOrElementId, containerElement) {
    /// <summary locid="M:J#Sys.UI.DomElement.resolveElement" />
    /// <param name="elementOrElementId" mayBeNull="true"></param>
    /// <param name="containerElement" domElement="true" optional="true" mayBeNull="true"></param>
    /// <returns domElement="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "elementOrElementId", mayBeNull: true},
        {name: "containerElement", mayBeNull: true, domElement: true, optional: true}
    ]);
    if (e) throw e;
    var el = elementOrElementId;
    if (!el) return null;
    if (typeof(el) === "string") {
        el = Sys.UI.DomElement.getElementById(el, containerElement);
        if (!el) {
            throw Error.argument("elementOrElementId", String.format(Sys.Res.elementNotFound, elementOrElementId));
        }
    }
    else if(!Sys.UI.DomElement.isDomElement(el)) {
        throw Error.argument("elementOrElementId", Sys.Res.expectedElementOrId);
    }
    return el;
}
Sys.UI.DomElement.raiseBubbleEvent = function Sys$UI$DomElement$raiseBubbleEvent(source, args) {
    /// <summary locid="M:J#Sys.UI.DomElement.raiseBubbleEvent" />
    /// <param name="source" domElement="true"></param>
    /// <param name="args" type="Sys.EventArgs"></param>
    var e = Function._validateParams(arguments, [
        {name: "source", domElement: true},
        {name: "args", type: Sys.EventArgs}
    ]);
    if (e) throw e;
    var target = source;
    while (target) {
        var control = target.control;
        if (control && control.onBubbleEvent && control.raiseBubbleEvent) {
            Sys.UI.DomElement._raiseBubbleEventFromControl(control, source, args);
            return;
        }
        target = target.parentNode;
    }
}
Sys.UI.DomElement._raiseBubbleEventFromControl = function Sys$UI$DomElement$_raiseBubbleEventFromControl(control, source, args) {
    if (!control.onBubbleEvent(source, args)) {
        control._raiseBubbleEvent(source, args);
    }
}
Sys.UI.DomElement.setLocation = function Sys$UI$DomElement$setLocation(element, x, y) {
    /// <summary locid="M:J#Sys.UI.DomElement.setLocation" />
    /// <param name="element" domElement="true"></param>
    /// <param name="x" type="Number" integer="true"></param>
    /// <param name="y" type="Number" integer="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "x", type: Number, integer: true},
        {name: "y", type: Number, integer: true}
    ]);
    if (e) throw e;
    var style = element.style;
    style.position = 'absolute';
    style.left = x + "px";
    style.top = y + "px";
}
Sys.UI.DomElement.toggleCssClass = function Sys$UI$DomElement$toggleCssClass(element, className) {
    /// <summary locid="M:J#Sys.UI.DomElement.toggleCssClass" />
    /// <param name="element" domElement="true"></param>
    /// <param name="className" type="String"></param>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "className", type: String}
    ]);
    if (e) throw e;
    if (Sys.UI.DomElement.containsCssClass(element, className)) {
        Sys.UI.DomElement.removeCssClass(element, className);
    }
    else {
        Sys.UI.DomElement.addCssClass(element, className);
    }
}
Sys.UI.DomElement.getVisibilityMode = function Sys$UI$DomElement$getVisibilityMode(element) {
    /// <summary locid="M:J#Sys.UI.DomElement.getVisibilityMode" />
    /// <param name="element" domElement="true"></param>
    /// <returns type="Sys.UI.VisibilityMode"></returns>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    return (element._visibilityMode === Sys.UI.VisibilityMode.hide) ?
        Sys.UI.VisibilityMode.hide :
        Sys.UI.VisibilityMode.collapse;
}
Sys.UI.DomElement.setVisibilityMode = function Sys$UI$DomElement$setVisibilityMode(element, value) {
    /// <summary locid="M:J#Sys.UI.DomElement.setVisibilityMode" />
    /// <param name="element" domElement="true"></param>
    /// <param name="value" type="Sys.UI.VisibilityMode"></param>
    var e = 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 !== value) {
        element._visibilityMode = value;
        if (Sys.UI.DomElement.getVisible(element) === false) {
            if (element._visibilityMode === Sys.UI.VisibilityMode.hide) {
                element.style.display = element._oldDisplayMode;
            }
            else {
                element.style.display = 'none';
            }
        }
        element._visibilityMode = value;
    }
}
Sys.UI.DomElement.getVisible = function Sys$UI$DomElement$getVisible(element) {
    /// <summary locid="M:J#Sys.UI.DomElement.getVisible" />
    /// <param name="element" domElement="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    var style = element.currentStyle || Sys.UI.DomElement._getCurrentStyle(element);
    if (!style) return true;
    return (style.visibility !== 'hidden') && (style.display !== 'none');
}
Sys.UI.DomElement.setVisible = function Sys$UI$DomElement$setVisible(element, value) {
    /// <summary locid="M:J#Sys.UI.DomElement.setVisible" />
    /// <param name="element" domElement="true"></param>
    /// <param name="value" type="Boolean"></param>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "value", type: Boolean}
    ]);
    if (e) throw e;
    if (value !== Sys.UI.DomElement.getVisible(element)) {
        Sys.UI.DomElement._ensureOldDisplayMode(element);
        element.style.visibility = value ? 'visible' : 'hidden';
        if (value || (element._visibilityMode === Sys.UI.VisibilityMode.hide)) {
            element.style.display = element._oldDisplayMode;
        }
        else {
            element.style.display = 'none';
        }
    }
}
Sys.UI.DomElement._ensureOldDisplayMode = function Sys$UI$DomElement$_ensureOldDisplayMode(element) {
    if (!element._oldDisplayMode) {
        var style = element.currentStyle || Sys.UI.DomElement._getCurrentStyle(element);
        element._oldDisplayMode = style ? style.display : null;
        if (!element._oldDisplayMode || element._oldDisplayMode === '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 = 'block';
                    break;
                case 'LI':
                    element._oldDisplayMode = 'list-item';
                    break;
                default:
                    element._oldDisplayMode = 'inline';
            }
        }
    }
}
Sys.UI.DomElement._getWindow = function Sys$UI$DomElement$_getWindow(element) {
    var doc = element.ownerDocument || element.document || element;
    return doc.defaultView || doc.parentWindow;
}
Sys.UI.DomElement._getCurrentStyle = function Sys$UI$DomElement$_getCurrentStyle(element) {
    if (element.nodeType === 3) return null;
    var w = Sys.UI.DomElement._getWindow(element);
    if (element.documentElement) element = element.documentElement;
    var computedStyle = (w && (element !== w) && w.getComputedStyle) ?
        w.getComputedStyle(element, null) :
        element.currentStyle || element.style;
    if (!computedStyle && (Sys.Browser.agent === Sys.Browser.Safari) && element.style) {
        var oldDisplay = element.style.display;
        var oldPosition = element.style.position;
        element.style.position = 'absolute';
        element.style.display = 'block';
        var style = w.getComputedStyle(element, null);
        element.style.display = oldDisplay;
        element.style.position = oldPosition;
        computedStyle = {};
        for (var n in style) {
            computedStyle[n] = style[n];
        }
        computedStyle.display = 'none';
    }
    return computedStyle;
}
 
Sys.IContainer = function Sys$IContainer() {
    throw Error.notImplemented();
}
    function Sys$IContainer$addComponent(component) {
        /// <summary locid="M:J#Sys.IContainer.addComponent" />
        /// <param name="component" type="Sys.Component"></param>
        var e = Function._validateParams(arguments, [
            {name: "component", type: Sys.Component}
        ]);
        if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$IContainer$removeComponent(component) {
        /// <summary locid="M:J#Sys.IContainer.removeComponent" />
        /// <param name="component" type="Sys.Component"></param>
        var e = Function._validateParams(arguments, [
            {name: "component", type: Sys.Component}
        ]);
        if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$IContainer$findComponent(id) {
        /// <summary locid="M:J#Sys.IContainer.findComponent" />
        /// <param name="id" type="String"></param>
        /// <returns type="Sys.Component"></returns>
        var e = Function._validateParams(arguments, [
            {name: "id", type: String}
        ]);
        if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$IContainer$getComponents() {
        /// <summary locid="M:J#Sys.IContainer.getComponents" />
        /// <returns type="Array" elementType="Sys.Component"></returns>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
Sys.IContainer.prototype = {
    addComponent: Sys$IContainer$addComponent,
    removeComponent: Sys$IContainer$removeComponent,
    findComponent: Sys$IContainer$findComponent,
    getComponents: Sys$IContainer$getComponents
}
Sys.IContainer.registerInterface("Sys.IContainer");
 
Sys.ApplicationLoadEventArgs = function Sys$ApplicationLoadEventArgs(components, isPartialLoad) {
    /// <summary locid="M:J#Sys.ApplicationLoadEventArgs.#ctor" />
    /// <param name="components" type="Array" elementType="Sys.Component"></param>
    /// <param name="isPartialLoad" type="Boolean"></param>
    var e = Function._validateParams(arguments, [
        {name: "components", type: Array, elementType: Sys.Component},
        {name: "isPartialLoad", type: Boolean}
    ]);
    if (e) throw e;
    Sys.ApplicationLoadEventArgs.initializeBase(this);
    this._components = components;
    this._isPartialLoad = isPartialLoad;
}
 
    function Sys$ApplicationLoadEventArgs$get_components() {
        /// <value type="Array" elementType="Sys.Component" locid="P:J#Sys.ApplicationLoadEventArgs.components"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._components;
    }
    function Sys$ApplicationLoadEventArgs$get_isPartialLoad() {
        /// <value type="Boolean" locid="P:J#Sys.ApplicationLoadEventArgs.isPartialLoad"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._isPartialLoad;
    }
Sys.ApplicationLoadEventArgs.prototype = {
    get_components: Sys$ApplicationLoadEventArgs$get_components,
    get_isPartialLoad: Sys$ApplicationLoadEventArgs$get_isPartialLoad
}
Sys.ApplicationLoadEventArgs.registerClass('Sys.ApplicationLoadEventArgs', Sys.EventArgs);
 
Sys._Application = function Sys$_Application() {
    /// <summary locid="M:J#Sys.Application.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    Sys._Application.initializeBase(this);
    this._disposableObjects = [];
    this._components = {};
    this._createdComponents = [];
    this._secondPassComponents = [];
    this._unloadHandlerDelegate = Function.createDelegate(this, this._unloadHandler);
    Sys.UI.DomEvent.addHandler(window, "unload", this._unloadHandlerDelegate);
    this._domReady();
}
    function Sys$_Application$get_isCreatingComponents() {
        /// <value type="Boolean" locid="P:J#Sys.Application.isCreatingComponents"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._creatingComponents;
    }
    function Sys$_Application$get_isDisposing() {
        /// <value type="Boolean" locid="P:J#Sys.Application.isDisposing"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._disposing;
    }
    function Sys$_Application$add_init(handler) {
        /// <summary locid="E:J#Sys.Application.init" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        if (this._initialized) {
            handler(this, Sys.EventArgs.Empty);
        }
        else {
            this.get_events().addHandler("init", handler);
        }
    }
    function Sys$_Application$remove_init(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().removeHandler("init", handler);
    }
    function Sys$_Application$add_load(handler) {
        /// <summary locid="E:J#Sys.Application.load" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().addHandler("load", handler);
    }
    function Sys$_Application$remove_load(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().removeHandler("load", handler);
    }
    function Sys$_Application$add_unload(handler) {
        /// <summary locid="E:J#Sys.Application.unload" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().addHandler("unload", handler);
    }
    function Sys$_Application$remove_unload(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this.get_events().removeHandler("unload", handler);
    }
    function Sys$_Application$addComponent(component) {
        /// <summary locid="M:J#Sys.Application.addComponent" />
        /// <param name="component" type="Sys.Component"></param>
        var e = Function._validateParams(arguments, [
            {name: "component", type: Sys.Component}
        ]);
        if (e) throw e;
        var id = component.get_id();
        if (!id) throw Error.invalidOperation(Sys.Res.cantAddWithoutId);
        if (typeof(this._components[id]) !== 'undefined') throw Error.invalidOperation(String.format(Sys.Res.appDuplicateComponent, id));
        this._components[id] = component;
    }
    function Sys$_Application$beginCreateComponents() {
        /// <summary locid="M:J#Sys.Application.beginCreateComponents" />
        if (arguments.length !== 0) throw Error.parameterCount();
        this._creatingComponents = true;
    }
    function Sys$_Application$dispose() {
        /// <summary locid="M:J#Sys.Application.dispose" />
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._disposing) {
            this._disposing = true;
            if (this._timerCookie) {
                window.clearTimeout(this._timerCookie);
                delete this._timerCookie;
            }
            if (this._endRequestHandler) {
                Sys.WebForms.PageRequestManager.getInstance().remove_endRequest(this._endRequestHandler);
                delete this._endRequestHandler;
            }
            if (this._beginRequestHandler) {
                Sys.WebForms.PageRequestManager.getInstance().remove_beginRequest(this._beginRequestHandler);
                delete this._beginRequestHandler;
            }
            if (window.pageUnload) {
                window.pageUnload(this, Sys.EventArgs.Empty);
            }
            var unloadHandler = this.get_events().getHandler("unload");
            if (unloadHandler) {
                unloadHandler(this, Sys.EventArgs.Empty);
            }
            var disposableObjects = Array.clone(this._disposableObjects);
            for (var i = 0, l = disposableObjects.length; i < l; i++) {
                var object = disposableObjects[i];
                if (typeof(object) !== "undefined") {
                    object.dispose();
                }
            }
            Array.clear(this._disposableObjects);
            Sys.UI.DomEvent.removeHandler(window, "unload", this._unloadHandlerDelegate);
            if (Sys._ScriptLoader) {
                var sl = Sys._ScriptLoader.getInstance();
                if(sl) {
                    sl.dispose();
                }
            }
            Sys._Application.callBaseMethod(this, 'dispose');
        }
    }
    function Sys$_Application$disposeElement(element, childNodesOnly) {
        /// <summary locid="M:J#Sys._Application.disposeElement" />
        /// <param name="element"></param>
        /// <param name="childNodesOnly" type="Boolean"></param>
        var e = Function._validateParams(arguments, [
            {name: "element"},
            {name: "childNodesOnly", type: Boolean}
        ]);
        if (e) throw e;
        if (element.nodeType === 1) {
            var i, allElements = element.getElementsByTagName("*"),
                length = allElements.length,
                children = new Array(length);
            for (i = 0; i < length; i++) {
                children[i] = allElements[i];
            }
            for (i = length - 1; i >= 0; i--) {
                var child = children[i];
                var d = child.dispose;
                if (d && typeof(d) === "function") {
                    child.dispose();
                }
                else {
                    var c = child.control;
                    if (c && typeof(c.dispose) === "function") {
                        c.dispose();
                    }
                }
                var list = child._behaviors;
                if (list) {
                    this._disposeComponents(list);
                }
                list = child._components;
                if (list) {
                    this._disposeComponents(list);
                    child._components = null;
                }
            }
            if (!childNodesOnly) {
                var d = element.dispose;
                if (d && typeof(d) === "function") {
                    element.dispose();
                }
                else {
                    var c = element.control;
                    if (c && typeof(c.dispose) === "function") {
                        c.dispose();
                    }
                }
                var list = element._behaviors;
                if (list) {
                    this._disposeComponents(list);
                }
                list = element._components;
                if (list) {
                    this._disposeComponents(list);
                    element._components = null;
                }
            }
        }
    }
    function Sys$_Application$endCreateComponents() {
        /// <summary locid="M:J#Sys.Application.endCreateComponents" />
        if (arguments.length !== 0) throw Error.parameterCount();
        var components = this._secondPassComponents;
        for (var i = 0, l = components.length; i < l; i++) {
            var component = components[i].component;
            Sys$Component$_setReferences(component, components[i].references);
            component.endUpdate();
        }
        this._secondPassComponents = [];
        this._creatingComponents = false;
    }
    function Sys$_Application$findComponent(id, parent) {
        /// <summary locid="M:J#Sys.Application.findComponent" />
        /// <param name="id" type="String"></param>
        /// <param name="parent" optional="true" mayBeNull="true"></param>
        /// <returns type="Sys.Component" mayBeNull="true"></returns>
        var e = Function._validateParams(arguments, [
            {name: "id", type: String},
            {name: "parent", mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        return (parent ?
            ((Sys.IContainer.isInstanceOfType(parent)) ?
                parent.findComponent(id) :
                parent[id] || null) :
            Sys.Application._components[id] || null);
    }
    function Sys$_Application$getComponents() {
        /// <summary locid="M:J#Sys.Application.getComponents" />
        /// <returns type="Array" elementType="Sys.Component"></returns>
        if (arguments.length !== 0) throw Error.parameterCount();
        var res = [];
        var components = this._components;
        for (var name in components) {
            res[res.length] = components[name];
        }
        return res;
    }
    function Sys$_Application$initialize() {
        /// <summary locid="M:J#Sys.Application.initialize" />
        if (arguments.length !== 0) throw Error.parameterCount();
        if(!this.get_isInitialized() && !this._disposing) {
            Sys._Application.callBaseMethod(this, 'initialize');
            this._raiseInit();
            if (this.get_stateString) {
                if (Sys.WebForms && Sys.WebForms.PageRequestManager) {
                    this._beginRequestHandler = Function.createDelegate(this, this._onPageRequestManagerBeginRequest);
                    Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(this._beginRequestHandler);
                    this._endRequestHandler = Function.createDelegate(this, this._onPageRequestManagerEndRequest);
                    Sys.WebForms.PageRequestManager.getInstance().add_endRequest(this._endRequestHandler);
                }
                var loadedEntry = this.get_stateString();
                if (loadedEntry !== this._currentEntry) {
                    this._navigate(loadedEntry);
                }
                else {
                    this._ensureHistory();
                }
            }
            this.raiseLoad();
        }
    }
    function Sys$_Application$notifyScriptLoaded() {
        /// <summary locid="M:J#Sys.Application.notifyScriptLoaded" />
        if (arguments.length !== 0) throw Error.parameterCount();
    }
    function Sys$_Application$registerDisposableObject(object) {
        /// <summary locid="M:J#Sys.Application.registerDisposableObject" />
        /// <param name="object" type="Sys.IDisposable"></param>
        var e = Function._validateParams(arguments, [
            {name: "object", type: Sys.IDisposable}
        ]);
        if (e) throw e;
        if (!this._disposing) {
            var objects = this._disposableObjects,
                i = objects.length;
            objects[i] = object;
            object.__msdisposeindex = i;
        }
    }
    function Sys$_Application$raiseLoad() {
        /// <summary locid="M:J#Sys.Application.raiseLoad" />
        if (arguments.length !== 0) throw Error.parameterCount();
        var h = this.get_events().getHandler("load");
        var args = new Sys.ApplicationLoadEventArgs(Array.clone(this._createdComponents), !!this._loaded);
        this._loaded = true;
        if (h) {
            h(this, args);
        }
        if (window.pageLoad) {
            window.pageLoad(this, args);
        }
        this._createdComponents = [];
    }
    function Sys$_Application$removeComponent(component) {
        /// <summary locid="M:J#Sys.Application.removeComponent" />
        /// <param name="component" type="Sys.Component"></param>
        var e = Function._validateParams(arguments, [
            {name: "component", type: Sys.Component}
        ]);
        if (e) throw e;
        var id = component.get_id();
        if (id) delete this._components[id];
    }
    function Sys$_Application$unregisterDisposableObject(object) {
        /// <summary locid="M:J#Sys.Application.unregisterDisposableObject" />
        /// <param name="object" type="Sys.IDisposable"></param>
        var e = Function._validateParams(arguments, [
            {name: "object", type: Sys.IDisposable}
        ]);
        if (e) throw e;
        if (!this._disposing) {
            var i = object.__msdisposeindex;
            if (typeof(i) === "number") {
                var disposableObjects = this._disposableObjects;
                delete disposableObjects[i];
                delete object.__msdisposeindex;
                if (++this._deleteCount > 1000) {
                    var newArray = [];
                    for (var j = 0, l = disposableObjects.length; j < l; j++) {
                        object = disposableObjects[j];
                        if (typeof(object) !== "undefined") {
                            object.__msdisposeindex = newArray.length;
                            newArray.push(object);
                        }
                    }
                    this._disposableObjects = newArray;
                    this._deleteCount = 0;
                }
            }
        }
    }
    function Sys$_Application$_addComponentToSecondPass(component, references) {
        this._secondPassComponents[this._secondPassComponents.length] = {component: component, references: references};
    }
    function Sys$_Application$_disposeComponents(list) {
        if (list) {
            for (var i = list.length - 1; i >= 0; i--) {
                var item = list[i];
                if (typeof(item.dispose) === "function") {
                    item.dispose();
                }
            }
        }
    }
    function Sys$_Application$_domReady() {
        var check, er, app = this;
        function init() { app.initialize(); }
        var onload = function() {
            Sys.UI.DomEvent.removeHandler(window, "load", onload);
            init();
        }
        Sys.UI.DomEvent.addHandler(window, "load", onload);
        
        if (document.addEventListener) {
            try {
                document.addEventListener("DOMContentLoaded", check = function() {
                    document.removeEventListener("DOMContentLoaded", check, false);
                    init();
                }, false);
            }
            catch (er) { }
        }
        else if (document.attachEvent) {
            if ((window == window.top) && document.documentElement.doScroll) {
                var timeout, el = document.createElement("div");
                check = function() {
                    try {
                        el.doScroll("left");
                    }
                    catch (er) {
                        timeout = window.setTimeout(check, 0);
                        return;
                    }
                    el = null;
                    init();
                }
                check();
            }
            else {
		document.attachEvent("onreadystatechange", check = function() {
                    if (document.readyState === "complete") {
                        document.detachEvent("onreadystatechange", check);
                        init();
                    }
                });
            }
        }
    }
    function Sys$_Application$_raiseInit() {
        var handler = this.get_events().getHandler("init");
        if (handler) {
            this.beginCreateComponents();
            handler(this, Sys.EventArgs.Empty);
            this.endCreateComponents();
        }
    }
    function Sys$_Application$_unloadHandler(event) {
        this.dispose();
    }
Sys._Application.prototype = {
    _creatingComponents: false,
    _disposing: false,
    _deleteCount: 0,
    get_isCreatingComponents: Sys$_Application$get_isCreatingComponents,
    get_isDisposing: Sys$_Application$get_isDisposing,
    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_unload: Sys$_Application$add_unload,
    remove_unload: Sys$_Application$remove_unload,
    addComponent: Sys$_Application$addComponent,
    beginCreateComponents: Sys$_Application$beginCreateComponents,
    dispose: Sys$_Application$dispose,
    disposeElement: Sys$_Application$disposeElement,
    endCreateComponents: Sys$_Application$endCreateComponents,
    findComponent: Sys$_Application$findComponent,
    getComponents: Sys$_Application$getComponents,
    initialize: Sys$_Application$initialize,
    notifyScriptLoaded: Sys$_Application$notifyScriptLoaded,
    registerDisposableObject: Sys$_Application$registerDisposableObject,
    raiseLoad: Sys$_Application$raiseLoad,
    removeComponent: Sys$_Application$removeComponent,
    unregisterDisposableObject: Sys$_Application$unregisterDisposableObject,
    _addComponentToSecondPass: Sys$_Application$_addComponentToSecondPass,
    _disposeComponents: Sys$_Application$_disposeComponents,
    _domReady: Sys$_Application$_domReady,
    _raiseInit: Sys$_Application$_raiseInit,
    _unloadHandler: Sys$_Application$_unloadHandler
}
Sys._Application.registerClass('Sys._Application', Sys.Component, Sys.IContainer);
Sys.Application = new Sys._Application();
var $find = Sys.Application.findComponent;
 
Sys.UI.Behavior = function Sys$UI$Behavior(element) {
    /// <summary locid="M:J#Sys.UI.Behavior.#ctor" />
    /// <param name="element" domElement="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    Sys.UI.Behavior.initializeBase(this);
    this._element = element;
    var behaviors = element._behaviors;
    if (!behaviors) {
        element._behaviors = [this];
    }
    else {
        behaviors[behaviors.length] = this;
    }
}
    function Sys$UI$Behavior$get_element() {
        /// <value domElement="true" locid="P:J#Sys.UI.Behavior.element"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._element;
    }
    function Sys$UI$Behavior$get_id() {
        /// <value type="String" locid="P:J#Sys.UI.Behavior.id"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        var baseId = Sys.UI.Behavior.callBaseMethod(this, 'get_id');
        if (baseId) return baseId;
        if (!this._element || !this._element.id) return '';
        return this._element.id + '$' + this.get_name();
    }
    function Sys$UI$Behavior$get_name() {
        /// <value type="String" locid="P:J#Sys.UI.Behavior.name"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this._name) return this._name;
        var name = Object.getTypeName(this);
        var i = name.lastIndexOf('.');
        if (i !== -1) name = name.substr(i + 1);
        if (!this.get_isInitialized()) this._name = name;
        return name;
    }
    function Sys$UI$Behavior$set_name(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        if ((value === '') || (value.charAt(0) === ' ') || (value.charAt(value.length - 1) === ' '))
            throw Error.argument('value', Sys.Res.invalidId);
        if (typeof(this._element[value]) !== 'undefined')
            throw Error.invalidOperation(String.format(Sys.Res.behaviorDuplicateName, value));
        if (this.get_isInitialized()) throw Error.invalidOperation(Sys.Res.cantSetNameAfterInit);
        this._name = value;
    }
    function Sys$UI$Behavior$initialize() {
        Sys.UI.Behavior.callBaseMethod(this, 'initialize');
        var name = this.get_name();
        if (name) this._element[name] = this;
    }
    function Sys$UI$Behavior$dispose() {
        Sys.UI.Behavior.callBaseMethod(this, 'dispose');
        var e = this._element;
        if (e) {
            var name = this.get_name();
            if (name) {
                e[name] = null;
            }
            var behaviors = e._behaviors;
            Array.remove(behaviors, this);
            if (behaviors.length === 0) {
                e._behaviors = null;
            }
            delete this._element;
        }
    }
Sys.UI.Behavior.prototype = {
    _name: null,
    get_element: Sys$UI$Behavior$get_element,
    get_id: Sys$UI$Behavior$get_id,
    get_name: Sys$UI$Behavior$get_name,
    set_name: Sys$UI$Behavior$set_name,
    initialize: Sys$UI$Behavior$initialize,
    dispose: Sys$UI$Behavior$dispose
}
Sys.UI.Behavior.registerClass('Sys.UI.Behavior', Sys.Component);
Sys.UI.Behavior.getBehaviorByName = function Sys$UI$Behavior$getBehaviorByName(element, name) {
    /// <summary locid="M:J#Sys.UI.Behavior.getBehaviorByName" />
    /// <param name="element" domElement="true"></param>
    /// <param name="name" type="String"></param>
    /// <returns type="Sys.UI.Behavior" mayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "name", type: String}
    ]);
    if (e) throw e;
    var b = element[name];
    return (b && Sys.UI.Behavior.isInstanceOfType(b)) ? b : null;
}
Sys.UI.Behavior.getBehaviors = function Sys$UI$Behavior$getBehaviors(element) {
    /// <summary locid="M:J#Sys.UI.Behavior.getBehaviors" />
    /// <param name="element" domElement="true"></param>
    /// <returns type="Array" elementType="Sys.UI.Behavior"></returns>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    if (!element._behaviors) return [];
    return Array.clone(element._behaviors);
}
Sys.UI.Behavior.getBehaviorsByType = function Sys$UI$Behavior$getBehaviorsByType(element, type) {
    /// <summary locid="M:J#Sys.UI.Behavior.getBehaviorsByType" />
    /// <param name="element" domElement="true"></param>
    /// <param name="type" type="Type"></param>
    /// <returns type="Array" elementType="Sys.UI.Behavior"></returns>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true},
        {name: "type", type: Type}
    ]);
    if (e) throw e;
    var behaviors = element._behaviors;
    var results = [];
    if (behaviors) {
        for (var i = 0, l = behaviors.length; i < l; i++) {
            if (type.isInstanceOfType(behaviors[i])) {
                results[results.length] = behaviors[i];
            }
        }
    }
    return results;
}
 
Sys.UI.VisibilityMode = function Sys$UI$VisibilityMode() {
    /// <summary locid="M:J#Sys.UI.VisibilityMode.#ctor" />
    /// <field name="hide" type="Number" integer="true" static="true" locid="F:J#Sys.UI.VisibilityMode.hide"></field>
    /// <field name="collapse" type="Number" integer="true" static="true" locid="F:J#Sys.UI.VisibilityMode.collapse"></field>
    if (arguments.length !== 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
Sys.UI.VisibilityMode.prototype = {
    hide: 0,
    collapse: 1
}
Sys.UI.VisibilityMode.registerEnum("Sys.UI.VisibilityMode");
 
Sys.UI.Control = function Sys$UI$Control(element) {
    /// <summary locid="M:J#Sys.UI.Control.#ctor" />
    /// <param name="element" domElement="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "element", domElement: true}
    ]);
    if (e) throw e;
    if (element.control !== null && typeof(element.control) !== 'undefined') throw Error.invalidOperation(Sys.Res.controlAlreadyDefined);
    Sys.UI.Control.initializeBase(this);
    this._element = element;
    element.control = this;
    var role = this.get_role();
    if (role) {
        element.setAttribute("role", role);
    }
}
    function Sys$UI$Control$get_element() {
        /// <value domElement="true" locid="P:J#Sys.UI.Control.element"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._element;
    }
    function Sys$UI$Control$get_id() {
        /// <value type="String" locid="P:J#Sys.UI.Control.id"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._element) return '';
        return this._element.id;
    }
    function Sys$UI$Control$set_id(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        throw Error.invalidOperation(Sys.Res.cantSetId);
    }
    function Sys$UI$Control$get_parent() {
        /// <value type="Sys.UI.Control" locid="P:J#Sys.UI.Control.parent"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this._parent) return this._parent;
        if (!this._element) return null;
        
        var parentElement = this._element.parentNode;
        while (parentElement) {
            if (parentElement.control) {
                return parentElement.control;
            }
            parentElement = parentElement.parentNode;
        }
        return null;
    }
    function Sys$UI$Control$set_parent(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Sys.UI.Control}]);
        if (e) throw e;
        if (!this._element) throw Error.invalidOperation(Sys.Res.cantBeCalledAfterDispose);
        var parents = [this];
        var current = value;
        while (current) {
            if (Array.contains(parents, current)) throw Error.invalidOperation(Sys.Res.circularParentChain);
            parents[parents.length] = current;
            current = current.get_parent();
        }
        this._parent = value;
    }
    function Sys$UI$Control$get_role() {
        /// <value type="String" locid="P:J#Sys.UI.Control.role"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return null;
    }
    function Sys$UI$Control$get_visibilityMode() {
        /// <value type="Sys.UI.VisibilityMode" locid="P:J#Sys.UI.Control.visibilityMode"></value>
        if (arguments.length !== 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 = 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="Boolean" locid="P:J#Sys.UI.Control.visible"></value>
        if (arguments.length !== 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 = 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="M:J#Sys.UI.Control.addCssClass" />
        /// <param name="className" type="String"></param>
        var e = 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 = null;
            delete this._element;
        }
        if (this._parent) delete this._parent;
    }
    function Sys$UI$Control$onBubbleEvent(source, args) {
        /// <summary locid="M:J#Sys.UI.Control.onBubbleEvent" />
        /// <param name="source"></param>
        /// <param name="args" type="Sys.EventArgs"></param>
        /// <returns type="Boolean"></returns>
        var e = Function._validateParams(arguments, [
            {name: "source"},
            {name: "args", type: Sys.EventArgs}
        ]);
        if (e) throw e;
        return false;
    }
    function Sys$UI$Control$raiseBubbleEvent(source, args) {
        /// <summary locid="M:J#Sys.UI.Control.raiseBubbleEvent" />
        /// <param name="source"></param>
        /// <param name="args" type="Sys.EventArgs"></param>
        var e = Function._validateParams(arguments, [
            {name: "source"},
            {name: "args", type: Sys.EventArgs}
        ]);
        if (e) throw e;
        this._raiseBubbleEvent(source, args);
    }
    function Sys$UI$Control$_raiseBubbleEvent(source, args) {
        var currentTarget = this.get_parent();
        while (currentTarget) {
            if (currentTarget.onBubbleEvent(source, args)) {
                return;
            }
            currentTarget = currentTarget.get_parent();
        }
    }
    function Sys$UI$Control$removeCssClass(className) {
        /// <summary locid="M:J#Sys.UI.Control.removeCssClass" />
        /// <param name="className" type="String"></param>
        var e = 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="M:J#Sys.UI.Control.toggleCssClass" />
        /// <param name="className" type="String"></param>
        var e = 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 = {
    _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_role: Sys$UI$Control$get_role,
    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,
    _raiseBubbleEvent: Sys$UI$Control$_raiseBubbleEvent,
    removeCssClass: Sys$UI$Control$removeCssClass,
    toggleCssClass: Sys$UI$Control$toggleCssClass
}
Sys.UI.Control.registerClass('Sys.UI.Control', Sys.Component);
��//-----------------------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------
// MicrosoftAjaxCore.js
// Microsoft AJAX Framework Core Type System and Extensions.
 
Function.__typeName = 'Function';
Function.__class = true;
Function.createCallback = function Function$createCallback(method, context) {
    /// <summary locid="M:J#Function.createCallback" />
    /// <param name="method" type="Function"></param>
    /// <param name="context" mayBeNull="true"></param>
    /// <returns type="Function"></returns>
    var e = Function._validateParams(arguments, [
        {name: "method", type: Function},
        {name: "context", mayBeNull: true}
    ]);
    if (e) throw e;
    return function() {
        var l = arguments.length;
        if (l > 0) {
            var args = [];
            for (var i = 0; i < l; i++) {
                args[i] = arguments[i];
            }
            args[l] = context;
            return method.apply(this, args);
        }
        return method.call(this, context);
    }
}
Function.createDelegate = function Function$createDelegate(instance, method) {
    /// <summary locid="M:J#Function.createDelegate" />
    /// <param name="instance" mayBeNull="true"></param>
    /// <param name="method" type="Function"></param>
    /// <returns type="Function"></returns>
    var e = Function._validateParams(arguments, [
        {name: "instance", mayBeNull: true},
        {name: "method", type: Function}
    ]);
    if (e) throw e;
    return function() {
        return method.apply(instance, arguments);
    }
}
Function.emptyFunction = Function.emptyMethod = function Function$emptyMethod() {
    /// <summary locid="M:J#Function.emptyMethod" />
}
Function.validateParameters = function Function$validateParameters(parameters, expectedParameters, validateParameterCount) {
    /// <summary locid="M:J#Function.validateParameters" />
    /// <param name="parameters"></param>
    /// <param name="expectedParameters"></param>
    /// <param name="validateParameterCount" type="Boolean" optional="true"></param>
    /// <returns type="Error" mayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "parameters"},
        {name: "expectedParameters"},
        {name: "validateParameterCount", type: Boolean, optional: true}
    ]);
    if (e) throw e;
    return Function._validateParams(parameters, expectedParameters, validateParameterCount);
}
Function._validateParams = function Function$_validateParams(params, expectedParams, validateParameterCount) {
    var e, expectedLength = expectedParams.length;
    validateParameterCount = validateParameterCount || (typeof(validateParameterCount) === "undefined");
    e = Function._validateParameterCount(params, expectedParams, validateParameterCount);
    if (e) {
        e.popStackFrame();
        return e;
    }
    for (var i = 0, l = params.length; i < l; i++) {
        var expectedParam = expectedParams[Math.min(i, expectedLength - 1)],
            paramName = expectedParam.name;
        if (expectedParam.parameterArray) {
            paramName += "[" + (i - expectedLength + 1) + "]";
        }
        else if (!validateParameterCount && (i >= expectedLength)) {
            break;
        }
        e = Function._validateParameter(params[i], expectedParam, paramName);
        if (e) {
            e.popStackFrame();
            return e;
        }
    }
    return null;
}
Function._validateParameterCount = function Function$_validateParameterCount(params, expectedParams, validateParameterCount) {
    var i, error,
        expectedLen = expectedParams.length,
        actualLen = params.length;
    if (actualLen < expectedLen) {
        var minParams = expectedLen;
        for (i = 0; i < expectedLen; i++) {
            var param = expectedParams[i];
            if (param.optional || param.parameterArray) {
                minParams--;
            }
        }        
        if (actualLen < minParams) {
            error = true;
        }
    }
    else if (validateParameterCount && (actualLen > expectedLen)) {
        error = true;      
        for (i = 0; i < expectedLen; i++) {
            if (expectedParams[i].parameterArray) {
                error = false; 
                break;
            }
        }  
    }
    if (error) {
        var e = Error.parameterCount();
        e.popStackFrame();
        return e;
    }
    return null;
}
Function._validateParameter = function Function$_validateParameter(param, expectedParam, paramName) {
    var e,
        expectedType = expectedParam.type,
        expectedInteger = !!expectedParam.integer,
        expectedDomElement = !!expectedParam.domElement,
        mayBeNull = !!expectedParam.mayBeNull;
    e = Function._validateParameterType(param, expectedType, expectedInteger, expectedDomElement, mayBeNull, paramName);
    if (e) {
        e.popStackFrame();
        return e;
    }
    var expectedElementType = expectedParam.elementType,
        elementMayBeNull = !!expectedParam.elementMayBeNull;
    if (expectedType === Array && typeof(param) !== "undefined" && param !== null &&
        (expectedElementType || !elementMayBeNull)) {
        var expectedElementInteger = !!expectedParam.elementInteger,
            expectedElementDomElement = !!expectedParam.elementDomElement;
        for (var i=0; i < param.length; i++) {
            var elem = param[i];
            e = Function._validateParameterType(elem, expectedElementType,
                expectedElementInteger, expectedElementDomElement, elementMayBeNull,
                paramName + "[" + i + "]");
            if (e) {
                e.popStackFrame();
                return e;
            }
        }
    }
    return null;
}
Function._validateParameterType = function Function$_validateParameterType(param, expectedType, expectedInteger, expectedDomElement, mayBeNull, paramName) {
    var e, i;
    if (typeof(param) === "undefined") {
        if (mayBeNull) {
            return null;
        }
        else {
            e = Error.argumentUndefined(paramName);
            e.popStackFrame();
            return e;
        }
    }
    if (param === null) {
        if (mayBeNull) {
            return null;
        }
        else {
            e = Error.argumentNull(paramName);
            e.popStackFrame();
            return e;
        }
    }
    if (expectedType && expectedType.__enum) {
        if (typeof(param) !== 'number') {
            e = Error.argumentType(paramName, Object.getType(param), expectedType);
            e.popStackFrame();
            return e;
        }
        if ((param % 1) === 0) {
            var values = expectedType.prototype;
            if (!expectedType.__flags || (param === 0)) {
                for (i in values) {
                    if (values[i] === param) return null;
                }
            }
            else {
                var v = param;
                for (i in values) {
                    var vali = values[i];
                    if (vali === 0) continue;
                    if ((vali & param) === vali) {
                        v -= vali;
                    }
                    if (v === 0) return null;
                }
            }
        }
        e = Error.argumentOutOfRange(paramName, param, String.format(Sys.Res.enumInvalidValue, param, expectedType.getName()));
        e.popStackFrame();
        return e;
    }
    if (expectedDomElement && (!Sys._isDomElement(param) || (param.nodeType === 3))) {
        e = Error.argument(paramName, Sys.Res.argumentDomElement);
        e.popStackFrame();
        return e;
    }
    if (expectedType && !Sys._isInstanceOfType(expectedType, param)) {
        e = Error.argumentType(paramName, Object.getType(param), expectedType);
        e.popStackFrame();
        return e;
    }
    if (expectedType === Number && expectedInteger) {
        if ((param % 1) !== 0) {
            e = Error.argumentOutOfRange(paramName, param, Sys.Res.argumentInteger);
            e.popStackFrame();
            return e;
        }
    }
    return null;
}
 
Error.__typeName = 'Error';
Error.__class = true;
Error.create = function Error$create(message, errorInfo) {
    /// <summary locid="M:J#Error.create" />
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <param name="errorInfo" optional="true" mayBeNull="true"></param>
    /// <returns type="Error"></returns>
    var e = Function._validateParams(arguments, [
        {name: "message", type: String, mayBeNull: true, optional: true},
        {name: "errorInfo", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var err = new Error(message);
    err.message = message;
    if (errorInfo) {
        for (var v in errorInfo) {
            err[v] = errorInfo[v];
        }
    }
    err.popStackFrame();
    return err;
}
Error.argument = function Error$argument(paramName, message) {
    /// <summary locid="M:J#Error.argument" />
    /// <param name="paramName" type="String" optional="true" mayBeNull="true"></param>
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "paramName", type: String, mayBeNull: true, optional: true},
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.ArgumentException: " + (message ? message : Sys.Res.argument);
    if (paramName) {
        displayMessage += "\n" + String.format(Sys.Res.paramName, paramName);
    }
    var err = Error.create(displayMessage, { name: "Sys.ArgumentException", paramName: paramName });
    err.popStackFrame();
    return err;
}
Error.argumentNull = function Error$argumentNull(paramName, message) {
    /// <summary locid="M:J#Error.argumentNull" />
    /// <param name="paramName" type="String" optional="true" mayBeNull="true"></param>
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "paramName", type: String, mayBeNull: true, optional: true},
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.ArgumentNullException: " + (message ? message : Sys.Res.argumentNull);
    if (paramName) {
        displayMessage += "\n" + String.format(Sys.Res.paramName, paramName);
    }
    var err = Error.create(displayMessage, { name: "Sys.ArgumentNullException", paramName: paramName });
    err.popStackFrame();
    return err;
}
Error.argumentOutOfRange = function Error$argumentOutOfRange(paramName, actualValue, message) {
    /// <summary locid="M:J#Error.argumentOutOfRange" />
    /// <param name="paramName" type="String" optional="true" mayBeNull="true"></param>
    /// <param name="actualValue" optional="true" mayBeNull="true"></param>
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "paramName", type: String, mayBeNull: true, optional: true},
        {name: "actualValue", mayBeNull: true, optional: true},
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.ArgumentOutOfRangeException: " + (message ? message : Sys.Res.argumentOutOfRange);
    if (paramName) {
        displayMessage += "\n" + String.format(Sys.Res.paramName, paramName);
    }
    if (typeof(actualValue) !== "undefined" && actualValue !== null) {
        displayMessage += "\n" + String.format(Sys.Res.actualValue, actualValue);
    }
    var err = Error.create(displayMessage, {
        name: "Sys.ArgumentOutOfRangeException",
        paramName: paramName,
        actualValue: actualValue
    });
    err.popStackFrame();
    return err;
}
Error.argumentType = function Error$argumentType(paramName, actualType, expectedType, message) {
    /// <summary locid="M:J#Error.argumentType" />
    /// <param name="paramName" type="String" optional="true" mayBeNull="true"></param>
    /// <param name="actualType" type="Type" optional="true" mayBeNull="true"></param>
    /// <param name="expectedType" type="Type" optional="true" mayBeNull="true"></param>
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "paramName", type: String, mayBeNull: true, optional: true},
        {name: "actualType", type: Type, mayBeNull: true, optional: true},
        {name: "expectedType", type: Type, mayBeNull: true, optional: true},
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.ArgumentTypeException: ";
    if (message) {
        displayMessage += message;
    }
    else if (actualType && expectedType) {
        displayMessage +=
            String.format(Sys.Res.argumentTypeWithTypes, actualType.getName(), expectedType.getName());
    }
    else {
        displayMessage += Sys.Res.argumentType;
    }
    if (paramName) {
        displayMessage += "\n" + String.format(Sys.Res.paramName, paramName);
    }
    var err = Error.create(displayMessage, {
        name: "Sys.ArgumentTypeException",
        paramName: paramName,
        actualType: actualType,
        expectedType: expectedType
    });
    err.popStackFrame();
    return err;
}
Error.argumentUndefined = function Error$argumentUndefined(paramName, message) {
    /// <summary locid="M:J#Error.argumentUndefined" />
    /// <param name="paramName" type="String" optional="true" mayBeNull="true"></param>
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "paramName", type: String, mayBeNull: true, optional: true},
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.ArgumentUndefinedException: " + (message ? message : Sys.Res.argumentUndefined);
    if (paramName) {
        displayMessage += "\n" + String.format(Sys.Res.paramName, paramName);
    }
    var err = Error.create(displayMessage, { name: "Sys.ArgumentUndefinedException", paramName: paramName });
    err.popStackFrame();
    return err;
}
Error.format = function Error$format(message) {
    /// <summary locid="M:J#Error.format" />
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.FormatException: " + (message ? message : Sys.Res.format);
    var err = Error.create(displayMessage, {name: 'Sys.FormatException'});
    err.popStackFrame();
    return err;
}
Error.invalidOperation = function Error$invalidOperation(message) {
    /// <summary locid="M:J#Error.invalidOperation" />
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.InvalidOperationException: " + (message ? message : Sys.Res.invalidOperation);
    var err = Error.create(displayMessage, {name: 'Sys.InvalidOperationException'});
    err.popStackFrame();
    return err;
}
Error.notImplemented = function Error$notImplemented(message) {
    /// <summary locid="M:J#Error.notImplemented" />
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.NotImplementedException: " + (message ? message : Sys.Res.notImplemented);
    var err = Error.create(displayMessage, {name: 'Sys.NotImplementedException'});
    err.popStackFrame();
    return err;
}
Error.parameterCount = function Error$parameterCount(message) {
    /// <summary locid="M:J#Error.parameterCount" />
    /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "message", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var displayMessage = "Sys.ParameterCountException: " + (message ? message : Sys.Res.parameterCount);
    var err = Error.create(displayMessage, {name: 'Sys.ParameterCountException'});
    err.popStackFrame();
    return err;
}
Error.prototype.popStackFrame = function Error$popStackFrame() {
    /// <summary locid="M:J#checkParam" />
    if (arguments.length !== 0) throw Error.parameterCount();
    if (typeof(this.stack) === "undefined" || this.stack === null ||
        typeof(this.fileName) === "undefined" || this.fileName === null ||
        typeof(this.lineNumber) === "undefined" || this.lineNumber === null) {
        return;
    }
    var stackFrames = this.stack.split("\n");
    var currentFrame = stackFrames[0];
    var pattern = this.fileName + ":" + this.lineNumber;
    while(typeof(currentFrame) !== "undefined" &&
          currentFrame !== null &&
          currentFrame.indexOf(pattern) === -1) {
        stackFrames.shift();
        currentFrame = stackFrames[0];
    }
    var nextFrame = stackFrames[1];
    if (typeof(nextFrame) === "undefined" || nextFrame === null) {
        return;
    }
    var nextFrameParts = nextFrame.match(/@(.*):(\d+)$/);
    if (typeof(nextFrameParts) === "undefined" || nextFrameParts === null) {
        return;
    }
    this.fileName = nextFrameParts[1];
    this.lineNumber = parseInt(nextFrameParts[2]);
    stackFrames.shift();
    this.stack = stackFrames.join("\n");
}
 
Object.__typeName = 'Object';
Object.__class = true;
Object.getType = function Object$getType(instance) {
    /// <summary locid="M:J#Object.getType" />
    /// <param name="instance"></param>
    /// <returns type="Type"></returns>
    var e = Function._validateParams(arguments, [
        {name: "instance"}
    ]);
    if (e) throw e;
    var ctor = instance.constructor;
    if (!ctor || (typeof(ctor) !== "function") || !ctor.__typeName || (ctor.__typeName === 'Object')) {
        return Object;
    }
    return ctor;
}
Object.getTypeName = function Object$getTypeName(instance) {
    /// <summary locid="M:J#Object.getTypeName" />
    /// <param name="instance"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "instance"}
    ]);
    if (e) throw e;
    return Object.getType(instance).getName();
}
 
String.__typeName = 'String';
String.__class = true;
String.prototype.endsWith = function String$endsWith(suffix) {
    /// <summary locid="M:J#String.endsWith" />
    /// <param name="suffix" type="String"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "suffix", type: String}
    ]);
    if (e) throw e;
    return (this.substr(this.length - suffix.length) === suffix);
}
String.prototype.startsWith = function String$startsWith(prefix) {
    /// <summary locid="M:J#String.startsWith" />
    /// <param name="prefix" type="String"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "prefix", type: String}
    ]);
    if (e) throw e;
    return (this.substr(0, prefix.length) === prefix);
}
String.prototype.trim = function String$trim() {
    /// <summary locid="M:J#String.trim" />
    /// <returns type="String"></returns>
    if (arguments.length !== 0) throw Error.parameterCount();
    return this.replace(/^\s+|\s+$/g, '');
}
String.prototype.trimEnd = function String$trimEnd() {
    /// <summary locid="M:J#String.trimEnd" />
    /// <returns type="String"></returns>
    if (arguments.length !== 0) throw Error.parameterCount();
    return this.replace(/\s+$/, '');
}
String.prototype.trimStart = function String$trimStart() {
    /// <summary locid="M:J#String.trimStart" />
    /// <returns type="String"></returns>
    if (arguments.length !== 0) throw Error.parameterCount();
    return this.replace(/^\s+/, '');
}
String.format = function String$format(format, args) {
    /// <summary locid="M:J#String.format" />
    /// <param name="format" type="String"></param>
    /// <param name="args" parameterArray="true" mayBeNull="true"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "format", type: String},
        {name: "args", mayBeNull: true, parameterArray: true}
    ]);
    if (e) throw e;
    return String._toFormattedString(false, arguments);
}
String._toFormattedString = function String$_toFormattedString(useLocale, args) {
    var result = '';
    var format = args[0];
    for (var i=0;;) {
        var open = format.indexOf('{', i);
        var close = format.indexOf('}', i);
        if ((open < 0) && (close < 0)) {
            result += format.slice(i);
            break;
        }
        if ((close > 0) && ((close < open) || (open < 0))) {
            if (format.charAt(close + 1) !== '}') {
                throw Error.argument('format', Sys.Res.stringFormatBraceMismatch);
            }
            result += format.slice(i, close + 1);
            i = close + 2;
            continue;
        }
        result += format.slice(i, open);
        i = open + 1;
        if (format.charAt(i) === '{') {
            result += '{';
            i++;
            continue;
        }
        if (close < 0) throw Error.argument('format', Sys.Res.stringFormatBraceMismatch);
        var brace = format.substring(i, close);
        var colonIndex = brace.indexOf(':');
        var argNumber = parseInt((colonIndex < 0)? brace : brace.substring(0, colonIndex), 10) + 1;
        if (isNaN(argNumber)) throw Error.argument('format', Sys.Res.stringFormatInvalid);
        var argFormat = (colonIndex < 0)? '' : brace.substring(colonIndex + 1);
        var arg = args[argNumber];
        if (typeof(arg) === "undefined" || arg === null) {
            arg = '';
        }
        if (arg.toFormattedString) {
            result += arg.toFormattedString(argFormat);
        }
        else if (useLocale && arg.localeFormat) {
            result += arg.localeFormat(argFormat);
        }
        else if (arg.format) {
            result += arg.format(argFormat);
        }
        else
            result += arg.toString();
        i = close + 1;
    }
    return result;
}
 
Boolean.__typeName = 'Boolean';
Boolean.__class = true;
Boolean.parse = function Boolean$parse(value) {
    /// <summary locid="M:J#Boolean.parse" />
    /// <param name="value" type="String"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "value", type: String}
    ], false);
    if (e) throw e;
    var v = value.trim().toLowerCase();
    if (v === 'false') return false;
    if (v === 'true') return true;
    throw Error.argumentOutOfRange('value', value, Sys.Res.boolTrueOrFalse);
}
 
Date.__typeName = 'Date';
Date.__class = true;
 
Number.__typeName = 'Number';
Number.__class = true;
 
RegExp.__typeName = 'RegExp';
RegExp.__class = true;
 
if (!window) this.window = this;
window.Type = Function;
Type.__fullyQualifiedIdentifierRegExp = new RegExp("^[^.0-9 \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]([^ \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]*[^. \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\])?$", "i");
Type.__identifierRegExp = new RegExp("^[^.0-9 \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\][^. \\s|,;:&*=+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]*$", "i");
Type.prototype.callBaseMethod = function Type$callBaseMethod(instance, name, baseArguments) {
    /// <summary locid="M:J#Type.callBaseMethod" />
    /// <param name="instance"></param>
    /// <param name="name" type="String"></param>
    /// <param name="baseArguments" type="Array" optional="true" mayBeNull="true" elementMayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "instance"},
        {name: "name", type: String},
        {name: "baseArguments", type: Array, mayBeNull: true, optional: true, elementMayBeNull: true}
    ]);
    if (e) throw e;
    var baseMethod = Sys._getBaseMethod(this, instance, name);
    if (!baseMethod) throw Error.invalidOperation(String.format(Sys.Res.methodNotFound, name));
    if (!baseArguments) {
        return baseMethod.apply(instance);
    }
    else {
        return baseMethod.apply(instance, baseArguments);
    }
}
Type.prototype.getBaseMethod = function Type$getBaseMethod(instance, name) {
    /// <summary locid="M:J#Type.getBaseMethod" />
    /// <param name="instance"></param>
    /// <param name="name" type="String"></param>
    /// <returns type="Function" mayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "instance"},
        {name: "name", type: String}
    ]);
    if (e) throw e;
    return Sys._getBaseMethod(this, instance, name);
}
Type.prototype.getBaseType = function Type$getBaseType() {
    /// <summary locid="M:J#Type.getBaseType" />
    /// <returns type="Type" mayBeNull="true"></returns>
    if (arguments.length !== 0) throw Error.parameterCount();
    return (typeof(this.__baseType) === "undefined") ? null : this.__baseType;
}
Type.prototype.getInterfaces = function Type$getInterfaces() {
    /// <summary locid="M:J#Type.getInterfaces" />
    /// <returns type="Array" elementType="Type" mayBeNull="false" elementMayBeNull="false"></returns>
    if (arguments.length !== 0) throw Error.parameterCount();
    var result = [];
    var type = this;
    while(type) {
        var interfaces = type.__interfaces;
        if (interfaces) {
            for (var i = 0, l = interfaces.length; i < l; i++) {
                var interfaceType = interfaces[i];
                if (!Array.contains(result, interfaceType)) {
                    result[result.length] = interfaceType;
                }
            }
        }
        type = type.__baseType;
    }
    return result;
}
Type.prototype.getName = function Type$getName() {
    /// <summary locid="M:J#Type.getName" />
    /// <returns type="String"></returns>
    if (arguments.length !== 0) throw Error.parameterCount();
    return (typeof(this.__typeName) === "undefined") ? "" : this.__typeName;
}
Type.prototype.implementsInterface = function Type$implementsInterface(interfaceType) {
    /// <summary locid="M:J#Type.implementsInterface" />
    /// <param name="interfaceType" type="Type"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "interfaceType", type: Type}
    ]);
    if (e) throw e;
    this.resolveInheritance();
    var interfaceName = interfaceType.getName();
    var cache = this.__interfaceCache;
    if (cache) {
        var cacheEntry = cache[interfaceName];
        if (typeof(cacheEntry) !== 'undefined') return cacheEntry;
    }
    else {
        cache = this.__interfaceCache = {};
    }
    var baseType = this;
    while (baseType) {
        var interfaces = baseType.__interfaces;
        if (interfaces) {
            if (Array.indexOf(interfaces, interfaceType) !== -1) {
                return cache[interfaceName] = true;
            }
        }
        baseType = baseType.__baseType;
    }
    return cache[interfaceName] = false;
}
Type.prototype.inheritsFrom = function Type$inheritsFrom(parentType) {
    /// <summary locid="M:J#Type.inheritsFrom" />
    /// <param name="parentType" type="Type"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "parentType", type: Type}
    ]);
    if (e) throw e;
    this.resolveInheritance();
    var baseType = this.__baseType;
    while (baseType) {
        if (baseType === parentType) {
            return true;
        }
        baseType = baseType.__baseType;
    }
    return false;
}
Type.prototype.initializeBase = function Type$initializeBase(instance, baseArguments) {
    /// <summary locid="M:J#Type.initializeBase" />
    /// <param name="instance"></param>
    /// <param name="baseArguments" type="Array" optional="true" mayBeNull="true" elementMayBeNull="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "instance"},
        {name: "baseArguments", type: Array, mayBeNull: true, optional: true, elementMayBeNull: true}
    ]);
    if (e) throw e;
    if (!Sys._isInstanceOfType(this, instance)) throw Error.argumentType('instance', Object.getType(instance), this);
    this.resolveInheritance();
    if (this.__baseType) {
        if (!baseArguments) {
            this.__baseType.apply(instance);
        }
        else {
            this.__baseType.apply(instance, baseArguments);
        }
    }
    return instance;
}
Type.prototype.isImplementedBy = function Type$isImplementedBy(instance) {
    /// <summary locid="M:J#Type.isImplementedBy" />
    /// <param name="instance" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "instance", mayBeNull: true}
    ]);
    if (e) throw e;
    if (typeof(instance) === "undefined" || instance === null) return false;
    var instanceType = Object.getType(instance);
    return !!(instanceType.implementsInterface && instanceType.implementsInterface(this));
}
Type.prototype.isInstanceOfType = function Type$isInstanceOfType(instance) {
    /// <summary locid="M:J#Type.isInstanceOfType" />
    /// <param name="instance" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "instance", mayBeNull: true}
    ]);
    if (e) throw e;
    return Sys._isInstanceOfType(this, instance);
}
Type.prototype.registerClass = function Type$registerClass(typeName, baseType, interfaceTypes) {
    /// <summary locid="M:J#Type.registerClass" />
    /// <param name="typeName" type="String"></param>
    /// <param name="baseType" type="Type" optional="true" mayBeNull="true"></param>
    /// <param name="interfaceTypes" parameterArray="true" type="Type"></param>
    /// <returns type="Type"></returns>
    var e = Function._validateParams(arguments, [
        {name: "typeName", type: String},
        {name: "baseType", type: Type, mayBeNull: true, optional: true},
        {name: "interfaceTypes", type: Type, parameterArray: true}
    ]);
    if (e) throw e;
    if (!Type.__fullyQualifiedIdentifierRegExp.test(typeName)) throw Error.argument('typeName', Sys.Res.notATypeName);
    var parsedName;
    try {
        parsedName = eval(typeName);
    }
    catch(e) {
        throw Error.argument('typeName', Sys.Res.argumentTypeName);
    }
    if (parsedName !== this) throw Error.argument('typeName', Sys.Res.badTypeName);
    if (Sys.__registeredTypes[typeName]) throw Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice, typeName));
    if ((arguments.length > 1) && (typeof(baseType) === 'undefined')) throw Error.argumentUndefined('baseType');
    if (baseType && !baseType.__class) throw Error.argument('baseType', Sys.Res.baseNotAClass);
    this.prototype.constructor = this;
    this.__typeName = typeName;
    this.__class = true;
    if (baseType) {
        this.__baseType = baseType;
        this.__basePrototypePending = true;
    }
    Sys.__upperCaseTypes[typeName.toUpperCase()] = this;
    if (interfaceTypes) {
        this.__interfaces = [];
        this.resolveInheritance();
        for (var i = 2, l = arguments.length; i < l; i++) {
            var interfaceType = arguments[i];
            if (!interfaceType.__interface) throw Error.argument('interfaceTypes[' + (i - 2) + ']', Sys.Res.notAnInterface);
            for (var methodName in interfaceType.prototype) {
                var method = interfaceType.prototype[methodName];
                if (!this.prototype[methodName]) {
                    this.prototype[methodName] = method;
                }
            }
            this.__interfaces.push(interfaceType);
        }
    }
    Sys.__registeredTypes[typeName] = true;
    return this;
}
Type.prototype.registerInterface = function Type$registerInterface(typeName) {
    /// <summary locid="M:J#Type.registerInterface" />
    /// <param name="typeName" type="String"></param>
    /// <returns type="Type"></returns>
    var e = Function._validateParams(arguments, [
        {name: "typeName", type: String}
    ]);
    if (e) throw e;
    if (!Type.__fullyQualifiedIdentifierRegExp.test(typeName)) throw Error.argument('typeName', Sys.Res.notATypeName);
    var parsedName;
    try {
        parsedName = eval(typeName);
    }
    catch(e) {
        throw Error.argument('typeName', Sys.Res.argumentTypeName);
    }
    if (parsedName !== this) throw Error.argument('typeName', Sys.Res.badTypeName);
    if (Sys.__registeredTypes[typeName]) throw Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice, typeName));
    Sys.__upperCaseTypes[typeName.toUpperCase()] = this;
    this.prototype.constructor = this;
    this.__typeName = typeName;
    this.__interface = true;
    Sys.__registeredTypes[typeName] = true;
    return this;
}
Type.prototype.resolveInheritance = function Type$resolveInheritance() {
    /// <summary locid="M:J#Type.resolveInheritance" />
    if (arguments.length !== 0) throw Error.parameterCount();
    if (this.__basePrototypePending) {
        var baseType = this.__baseType;
        baseType.resolveInheritance();
        for (var memberName in baseType.prototype) {
            var memberValue = baseType.prototype[memberName];
            if (!this.prototype[memberName]) {
                this.prototype[memberName] = memberValue;
            }
        }
        delete this.__basePrototypePending;
    }
}
Type.getRootNamespaces = function Type$getRootNamespaces() {
    /// <summary locid="M:J#Type.getRootNamespaces" />
    /// <returns type="Array"></returns>
    if (arguments.length !== 0) throw Error.parameterCount();
    return Array.clone(Sys.__rootNamespaces);
}
Type.isClass = function Type$isClass(type) {
    /// <summary locid="M:J#Type.isClass" />
    /// <param name="type" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "type", mayBeNull: true}
    ]);
    if (e) throw e;
    if ((typeof(type) === 'undefined') || (type === null)) return false;
    return !!type.__class;
}
Type.isInterface = function Type$isInterface(type) {
    /// <summary locid="M:J#Type.isInterface" />
    /// <param name="type" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "type", mayBeNull: true}
    ]);
    if (e) throw e;
    if ((typeof(type) === 'undefined') || (type === null)) return false;
    return !!type.__interface;
}
Type.isNamespace = function Type$isNamespace(object) {
    /// <summary locid="M:J#Type.isNamespace" />
    /// <param name="object" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "object", mayBeNull: true}
    ]);
    if (e) throw e;
    if ((typeof(object) === 'undefined') || (object === null)) return false;
    return !!object.__namespace;
}
Type.parse = function Type$parse(typeName, ns) {
    /// <summary locid="M:J#Type.parse" />
    /// <param name="typeName" type="String" mayBeNull="true"></param>
    /// <param name="ns" optional="true" mayBeNull="true"></param>
    /// <returns type="Type" mayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "typeName", type: String, mayBeNull: true},
        {name: "ns", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var fn;
    if (ns) {
        fn = Sys.__upperCaseTypes[ns.getName().toUpperCase() + '.' + typeName.toUpperCase()];
        return fn || null;
    }
    if (!typeName) return null;
    if (!Type.__htClasses) {
        Type.__htClasses = {};
    }
    fn = Type.__htClasses[typeName];
    if (!fn) {
        fn = eval(typeName);
        if (typeof(fn) !== 'function') throw Error.argument('typeName', Sys.Res.notATypeName);
        Type.__htClasses[typeName] = fn;
    }
    return fn;
}
Type.registerNamespace = function Type$registerNamespace(namespacePath) {
    /// <summary locid="M:J#Type.registerNamespace" />
    /// <param name="namespacePath" type="String"></param>
    var e = Function._validateParams(arguments, [
        {name: "namespacePath", type: String}
    ]);
    if (e) throw e;
    Type._registerNamespace(namespacePath);
}
Type._registerNamespace = function Type$_registerNamespace(namespacePath) {
    if (!Type.__fullyQualifiedIdentifierRegExp.test(namespacePath)) throw Error.argument('namespacePath', Sys.Res.invalidNameSpace);
    var rootObject = window;
    var namespaceParts = namespacePath.split('.');
    for (var i = 0; i < namespaceParts.length; i++) {
        var currentPart = namespaceParts[i];
        var ns = rootObject[currentPart];
        var nsType = typeof(ns);
        if ((nsType !== "undefined") && (ns !== null)) {
            if (nsType === "function") {
                throw Error.invalidOperation(String.format(Sys.Res.namespaceContainsClass, namespaceParts.splice(0, i + 1).join('.')));
            }
            if ((typeof(ns) !== "object") || (ns instanceof Array)) {
                throw Error.invalidOperation(String.format(Sys.Res.namespaceContainsNonObject, namespaceParts.splice(0, i + 1).join('.')));
            }
        }
        if (!ns) {
            ns = rootObject[currentPart] = {};
        }
        if (!ns.__namespace) {
            if ((i === 0) && (namespacePath !== "Sys")) {
                Sys.__rootNamespaces[Sys.__rootNamespaces.length] = ns;
            }
            ns.__namespace = true;
            ns.__typeName = namespaceParts.slice(0, i + 1).join('.');
            var parsedName;
            try {
                parsedName = eval(ns.__typeName);
            }
            catch(e) {
                parsedName = null;
            }
            if (parsedName !== ns) {
                delete rootObject[currentPart];
                throw Error.argument('namespacePath', Sys.Res.invalidNameSpace);
            }
            ns.getName = function ns$getName() {return this.__typeName;}
        }
        rootObject = ns;
    }
}
Type._checkDependency = function Type$_checkDependency(dependency, featureName) {
    var scripts = Type._registerScript._scripts, isDependent = (scripts ? (!!scripts[dependency]) : false);
    if ((typeof(featureName) !== 'undefined') && !isDependent) {
        throw Error.invalidOperation(String.format(Sys.Res.requiredScriptReferenceNotIncluded, 
        featureName, dependency));
    }
    return isDependent;
}
Type._registerScript = function Type$_registerScript(scriptName, dependencies) {
    var scripts = Type._registerScript._scripts;
    if (!scripts) {
        Type._registerScript._scripts = scripts = {};
    }
    if (scripts[scriptName]) {
        throw Error.invalidOperation(String.format(Sys.Res.scriptAlreadyLoaded, scriptName));
    }
    scripts[scriptName] = true;
    if (dependencies) {
        for (var i = 0, l = dependencies.length; i < l; i++) {
            var dependency = dependencies[i];
            if (!Type._checkDependency(dependency)) {
                throw Error.invalidOperation(String.format(Sys.Res.scriptDependencyNotFound, scriptName, dependency));
            }
        }
    }
}
Type._registerNamespace("Sys");
Sys.__upperCaseTypes = {};
Sys.__rootNamespaces = [Sys];
Sys.__registeredTypes = {};
Sys._isInstanceOfType = function Sys$_isInstanceOfType(type, instance) {
    if (typeof(instance) === "undefined" || instance === null) return false;
    if (instance instanceof type) return true;
    var instanceType = Object.getType(instance);
    return !!(instanceType === type) ||
           (instanceType.inheritsFrom && instanceType.inheritsFrom(type)) ||
           (instanceType.implementsInterface && instanceType.implementsInterface(type));
}
Sys._getBaseMethod = function Sys$_getBaseMethod(type, instance, name) {
    if (!Sys._isInstanceOfType(type, instance)) throw Error.argumentType('instance', Object.getType(instance), type);
    var baseType = type.getBaseType();
    if (baseType) {
        var baseMethod = baseType.prototype[name];
        return (baseMethod instanceof Function) ? baseMethod : null;
    }
    return null;
}
Sys._isDomElement = function Sys$_isDomElement(obj) {
    var val = false;
    if (typeof (obj.nodeType) !== 'number') {
        var doc = obj.ownerDocument || obj.document || obj;
        if (doc != obj) {
            var w = doc.defaultView || doc.parentWindow;
            val = (w != obj);
        }
        else {
            val = (typeof (doc.body) === 'undefined');
        }
    }
    return !val;
}
 
Array.__typeName = 'Array';
Array.__class = true;
Array.add = Array.enqueue = function Array$enqueue(array, item) {
    /// <summary locid="M:J#Array.enqueue" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <param name="item" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    array[array.length] = item;
}
Array.addRange = function Array$addRange(array, items) {
    /// <summary locid="M:J#Array.addRange" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <param name="items" type="Array" elementMayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "items", type: Array, elementMayBeNull: true}
    ]);
    if (e) throw e;
    array.push.apply(array, items);
}
Array.clear = function Array$clear(array) {
    /// <summary locid="M:J#Array.clear" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true}
    ]);
    if (e) throw e;
    array.length = 0;
}
Array.clone = function Array$clone(array) {
    /// <summary locid="M:J#Array.clone" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <returns type="Array" elementMayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true}
    ]);
    if (e) throw e;
    if (array.length === 1) {
        return [array[0]];
    }
    else {
        return Array.apply(null, array);
    }
}
Array.contains = function Array$contains(array, item) {
    /// <summary locid="M:J#Array.contains" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <param name="item" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    return (Sys._indexOf(array, item) >= 0);
}
Array.dequeue = function Array$dequeue(array) {
    /// <summary locid="M:J#Array.dequeue" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <returns mayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true}
    ]);
    if (e) throw e;
    return array.shift();
}
Array.forEach = function Array$forEach(array, method, instance) {
    /// <summary locid="M:J#Array.forEach" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <param name="method" type="Function"></param>
    /// <param name="instance" optional="true" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "method", type: Function},
        {name: "instance", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    for (var i = 0, l = array.length; i < l; i++) {
        var elt = array[i];
        if (typeof(elt) !== 'undefined') method.call(instance, elt, i, array);
    }
}
Array.indexOf = function Array$indexOf(array, item, start) {
    /// <summary locid="M:J#Array.indexOf" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <param name="item" optional="true" mayBeNull="true"></param>
    /// <param name="start" optional="true" mayBeNull="true"></param>
    /// <returns type="Number"></returns>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "item", mayBeNull: true, optional: true},
        {name: "start", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    return Sys._indexOf(array, item, start);
}
Array.insert = function Array$insert(array, index, item) {
    /// <summary locid="M:J#Array.insert" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <param name="index" mayBeNull="true"></param>
    /// <param name="item" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "index", mayBeNull: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    array.splice(index, 0, item);
}
Array.parse = function Array$parse(value) {
    /// <summary locid="M:J#Array.parse" />
    /// <param name="value" type="String" mayBeNull="true"></param>
    /// <returns type="Array" elementMayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "value", type: String, mayBeNull: true}
    ]);
    if (e) throw e;
    if (!value) return [];
    var v = eval(value);
    if (!Array.isInstanceOfType(v)) throw Error.argument('value', Sys.Res.arrayParseBadFormat);
    return v;
}
Array.remove = function Array$remove(array, item) {
    /// <summary locid="M:J#Array.remove" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <param name="item" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    var index = Sys._indexOf(array, item);
    if (index >= 0) {
        array.splice(index, 1);
    }
    return (index >= 0);
}
Array.removeAt = function Array$removeAt(array, index) {
    /// <summary locid="M:J#Array.removeAt" />
    /// <param name="array" type="Array" elementMayBeNull="true"></param>
    /// <param name="index" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "array", type: Array, elementMayBeNull: true},
        {name: "index", mayBeNull: true}
    ]);
    if (e) throw e;
    array.splice(index, 1);
}
Sys._indexOf = function Sys$_indexOf(array, item, start) {
    if (typeof(item) === "undefined") return -1;
    var length = array.length;
    if (length !== 0) {
        start = start - 0;
        if (isNaN(start)) {
            start = 0;
        }
        else {
            if (isFinite(start)) {
                start = start - (start % 1);
            }
            if (start < 0) {
                start = Math.max(0, length + start);
            }
        }
        for (var i = start; i < length; i++) {
            if ((typeof(array[i]) !== "undefined") && (array[i] === item)) {
                return i;
            }
        }
    }
    return -1;
}
Type._registerScript("MicrosoftAjaxCore.js");
 
Sys.IDisposable = function Sys$IDisposable() {
    throw Error.notImplemented();
}
    function Sys$IDisposable$dispose() {
        throw Error.notImplemented();
    }
Sys.IDisposable.prototype = {
    dispose: Sys$IDisposable$dispose
}
Sys.IDisposable.registerInterface('Sys.IDisposable');
 
Sys.StringBuilder = function Sys$StringBuilder(initialText) {
    /// <summary locid="M:J#Sys.StringBuilder.#ctor" />
    /// <param name="initialText" optional="true" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "initialText", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    this._parts = (typeof(initialText) !== 'undefined' && initialText !== null && initialText !== '') ?
        [initialText.toString()] : [];
    this._value = {};
    this._len = 0;
}
    function Sys$StringBuilder$append(text) {
        /// <summary locid="M:J#Sys.StringBuilder.append" />
        /// <param name="text" mayBeNull="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "text", mayBeNull: true}
        ]);
        if (e) throw e;
        this._parts[this._parts.length] = text;
    }
    function Sys$StringBuilder$appendLine(text) {
        /// <summary locid="M:J#Sys.StringBuilder.appendLine" />
        /// <param name="text" optional="true" mayBeNull="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "text", mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        this._parts[this._parts.length] =
            ((typeof(text) === 'undefined') || (text === null) || (text === '')) ?
            '\r\n' : text + '\r\n';
    }
    function Sys$StringBuilder$clear() {
        /// <summary locid="M:J#Sys.StringBuilder.clear" />
        if (arguments.length !== 0) throw Error.parameterCount();
        this._parts = [];
        this._value = {};
        this._len = 0;
    }
    function Sys$StringBuilder$isEmpty() {
        /// <summary locid="M:J#Sys.StringBuilder.isEmpty" />
        /// <returns type="Boolean"></returns>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this._parts.length === 0) return true;
        return this.toString() === '';
    }
    function Sys$StringBuilder$toString(separator) {
        /// <summary locid="M:J#Sys.StringBuilder.toString" />
        /// <param name="separator" type="String" optional="true" mayBeNull="true"></param>
        /// <returns type="String"></returns>
        var e = Function._validateParams(arguments, [
            {name: "separator", type: String, mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        separator = separator || '';
        var parts = this._parts;
        if (this._len !== parts.length) {
            this._value = {};
            this._len = parts.length;
        }
        var val = this._value;
        if (typeof(val[separator]) === 'undefined') {
            if (separator !== '') {
                for (var i = 0; i < parts.length;) {
                    if ((typeof(parts[i]) === 'undefined') || (parts[i] === '') || (parts[i] === null)) {
                        parts.splice(i, 1);
                    }
                    else {
                        i++;
                    }
                }
            }
            val[separator] = this._parts.join(separator);
        }
        return val[separator];
    }
Sys.StringBuilder.prototype = {
    append: Sys$StringBuilder$append,
    appendLine: Sys$StringBuilder$appendLine,
    clear: Sys$StringBuilder$clear,
    isEmpty: Sys$StringBuilder$isEmpty,
    toString: Sys$StringBuilder$toString
}
Sys.StringBuilder.registerClass('Sys.StringBuilder');
 
Sys.Browser = {};
Sys.Browser.InternetExplorer = {};
Sys.Browser.Firefox = {};
Sys.Browser.Safari = {};
Sys.Browser.Opera = {};
Sys.Browser.agent = null;
Sys.Browser.hasDebuggerStatement = false;
Sys.Browser.name = navigator.appName;
Sys.Browser.version = parseFloat(navigator.appVersion);
Sys.Browser.documentMode = 0;
if (navigator.userAgent.indexOf(' MSIE ') > -1) {
    Sys.Browser.agent = Sys.Browser.InternetExplorer;
    Sys.Browser.version = parseFloat(navigator.userAgent.match(/MSIE (\d+\.\d+)/)[1]);
    if (Sys.Browser.version >= 8) {
        if (document.documentMode >= 7) {
            Sys.Browser.documentMode = document.documentMode;    
        }
    }
    Sys.Browser.hasDebuggerStatement = true;
}
else if (navigator.userAgent.indexOf(' Firefox/') > -1) {
    Sys.Browser.agent = Sys.Browser.Firefox;
    Sys.Browser.version = parseFloat(navigator.userAgent.match(/ Firefox\/(\d+\.\d+)/)[1]);
    Sys.Browser.name = 'Firefox';
    Sys.Browser.hasDebuggerStatement = true;
}
else if (navigator.userAgent.indexOf(' AppleWebKit/') > -1) {
    Sys.Browser.agent = Sys.Browser.Safari;
    Sys.Browser.version = parseFloat(navigator.userAgent.match(/ AppleWebKit\/(\d+(\.\d+)?)/)[1]);
    Sys.Browser.name = 'Safari';
}
else if (navigator.userAgent.indexOf('Opera/') > -1) {
    Sys.Browser.agent = Sys.Browser.Opera;
}
 
Sys.EventArgs = function Sys$EventArgs() {
    /// <summary locid="M:J#Sys.EventArgs.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
}
Sys.EventArgs.registerClass('Sys.EventArgs');
Sys.EventArgs.Empty = new Sys.EventArgs();
 
Sys.CancelEventArgs = function Sys$CancelEventArgs() {
    /// <summary locid="M:J#Sys.CancelEventArgs.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    Sys.CancelEventArgs.initializeBase(this);
    this._cancel = false;
}
    function Sys$CancelEventArgs$get_cancel() {
        /// <value type="Boolean" locid="P:J#Sys.CancelEventArgs.cancel"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._cancel;
    }
    function Sys$CancelEventArgs$set_cancel(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
        if (e) throw e;
        this._cancel = value;
    }
Sys.CancelEventArgs.prototype = {
    get_cancel: Sys$CancelEventArgs$get_cancel,
    set_cancel: Sys$CancelEventArgs$set_cancel
}
Sys.CancelEventArgs.registerClass('Sys.CancelEventArgs', Sys.EventArgs);
 
Sys.EventHandlerList = function Sys$EventHandlerList() {
    /// <summary locid="M:J#Sys.EventHandlerList.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    this._list = {};
}
    function Sys$EventHandlerList$_addHandler(id, handler) {
        Array.add(this._getEvent(id, true), handler);
    }
    function Sys$EventHandlerList$addHandler(id, handler) {
        /// <summary locid="M:J#Sys.EventHandlerList.addHandler" />
        /// <param name="id" type="String"></param>
        /// <param name="handler" type="Function"></param>
        var e = Function._validateParams(arguments, [
            {name: "id", type: String},
            {name: "handler", type: Function}
        ]);
        if (e) throw e;
        this._addHandler(id, handler);
    }
    function Sys$EventHandlerList$_removeHandler(id, handler) {
        var evt = this._getEvent(id);
        if (!evt) return;
        Array.remove(evt, handler);
    }
    function Sys$EventHandlerList$removeHandler(id, handler) {
        /// <summary locid="M:J#Sys.EventHandlerList.removeHandler" />
        /// <param name="id" type="String"></param>
        /// <param name="handler" type="Function"></param>
        var e = Function._validateParams(arguments, [
            {name: "id", type: String},
            {name: "handler", type: Function}
        ]);
        if (e) throw e;
        this._removeHandler(id, handler);
    }
    function Sys$EventHandlerList$getHandler(id) {
        /// <summary locid="M:J#Sys.EventHandlerList.getHandler" />
        /// <param name="id" type="String"></param>
        /// <returns type="Function"></returns>
        var e = Function._validateParams(arguments, [
            {name: "id", type: String}
        ]);
        if (e) throw e;
        var evt = this._getEvent(id);
        if (!evt || (evt.length === 0)) return null;
        evt = Array.clone(evt);
        return function(source, args) {
            for (var i = 0, l = 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] = [];
        }
        return this._list[id];
    }
Sys.EventHandlerList.prototype = {
    _addHandler: Sys$EventHandlerList$_addHandler,
    addHandler: Sys$EventHandlerList$addHandler,
    _removeHandler: Sys$EventHandlerList$_removeHandler,
    removeHandler: Sys$EventHandlerList$removeHandler,
    getHandler: Sys$EventHandlerList$getHandler,
    _getEvent: Sys$EventHandlerList$_getEvent
}
Sys.EventHandlerList.registerClass('Sys.EventHandlerList');
Type.registerNamespace('Sys.UI');
 
Sys._Debug = function Sys$_Debug() {
    /// <summary locid="M:J#Sys.Debug.#ctor" />
    /// <field name="isDebug" type="Boolean" locid="F:J#Sys.Debug.isDebug"></field>
    if (arguments.length !== 0) throw Error.parameterCount();
}
    function Sys$_Debug$_appendConsole(text) {
        if ((typeof(Debug) !== 'undefined') && Debug.writeln) {
            Debug.writeln(text);
        }
        if (window.console && window.console.log) {
            window.console.log(text);
        }
        if (window.opera) {
            window.opera.postError(text);
        }
        if (window.debugService) {
            window.debugService.trace(text);
        }
    }
    function Sys$_Debug$_appendTrace(text) {
        var traceElement = document.getElementById('TraceConsole');
        if (traceElement && (traceElement.tagName.toUpperCase() === 'TEXTAREA')) {
            traceElement.value += text + '\n';
        }
    }
    function Sys$_Debug$assert(condition, message, displayCaller) {
        /// <summary locid="M:J#Sys.Debug.assert" />
        /// <param name="condition" type="Boolean"></param>
        /// <param name="message" type="String" optional="true" mayBeNull="true"></param>
        /// <param name="displayCaller" type="Boolean" optional="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "condition", type: Boolean},
            {name: "message", type: String, mayBeNull: true, optional: true},
            {name: "displayCaller", type: Boolean, optional: true}
        ]);
        if (e) throw e;
        if (!condition) {
            message = (displayCaller && this.assert.caller) ?
                String.format(Sys.Res.assertFailedCaller, message, this.assert.caller) :
                String.format(Sys.Res.assertFailed, message);
            if (confirm(String.format(Sys.Res.breakIntoDebugger, message))) {
                this.fail(message);
            }
        }
    }
    function Sys$_Debug$clearTrace() {
        /// <summary locid="M:J#Sys.Debug.clearTrace" />
        if (arguments.length !== 0) throw Error.parameterCount();
        var traceElement = document.getElementById('TraceConsole');
        if (traceElement && (traceElement.tagName.toUpperCase() === 'TEXTAREA')) {
            traceElement.value = '';
        }
    }
    function Sys$_Debug$fail(message) {
        /// <summary locid="M:J#Sys.Debug.fail" />
        /// <param name="message" type="String" mayBeNull="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "message", type: String, mayBeNull: true}
        ]);
        if (e) throw e;
        this._appendConsole(message);
        if (Sys.Browser.hasDebuggerStatement) {
            eval('debugger');
        }
    }
    function Sys$_Debug$trace(text) {
        /// <summary locid="M:J#Sys.Debug.trace" />
        /// <param name="text"></param>
        var e = Function._validateParams(arguments, [
            {name: "text"}
        ]);
        if (e) throw e;
        this._appendConsole(text);
        this._appendTrace(text);
    }
    function Sys$_Debug$traceDump(object, name) {
        /// <summary locid="M:J#Sys.Debug.traceDump" />
        /// <param name="object" mayBeNull="true"></param>
        /// <param name="name" type="String" mayBeNull="true" optional="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "object", mayBeNull: true},
            {name: "name", type: String, mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        var text = this._traceDump(object, name, true);
    }
    function Sys$_Debug$_traceDump(object, name, recursive, indentationPadding, loopArray) {
        name = name? name : 'traceDump';
        indentationPadding = indentationPadding? indentationPadding : '';
        if (object === null) {
            this.trace(indentationPadding + name + ': null');
            return;
        }
        switch(typeof(object)) {
            case 'undefined':
                this.trace(indentationPadding + name + ': Undefined');
                break;
            case 'number': case 'string': case 'boolean':
                this.trace(indentationPadding + name + ': ' + object);
                break;
            default:
                if (Date.isInstanceOfType(object) || RegExp.isInstanceOfType(object)) {
                    this.trace(indentationPadding + name + ': ' + object.toString());
                    break;
                }
                if (!loopArray) {
                    loopArray = [];
                }
                else if (Array.contains(loopArray, object)) {
                    this.trace(indentationPadding + name + ': ...');
                    return;
                }
                Array.add(loopArray, object);
                if ((object == window) || (object === document) ||
                    (window.HTMLElement && (object instanceof HTMLElement)) ||
                    (typeof(object.nodeName) === 'string')) {
                    var tag = object.tagName? object.tagName : 'DomElement';
                    if (object.id) {
                        tag += ' - ' + object.id;
                    }
                    this.trace(indentationPadding + name + ' {' +  tag + '}');
                }
                else {
                    var typeName = Object.getTypeName(object);
                    this.trace(indentationPadding + name + (typeof(typeName) === 'string' ? ' {' + typeName + '}' : ''));
                    if ((indentationPadding === '') || recursive) {
                        indentationPadding += "    ";
                        var i, length, properties, p, v;
                        if (Array.isInstanceOfType(object)) {
                            length = object.length;
                            for (i = 0; i < length; i++) {
                                this._traceDump(object[i], '[' + i + ']', recursive, indentationPadding, loopArray);
                            }
                        }
                        else {
                            for (p in object) {
                                v = object[p];
                                if (!Function.isInstanceOfType(v)) {
                                    this._traceDump(v, p, recursive, indentationPadding, loopArray);
                                }
                            }
                        }
                    }
                }
                Array.remove(loopArray, object);
        }
    }
Sys._Debug.prototype = {
    _appendConsole: Sys$_Debug$_appendConsole,
    _appendTrace: Sys$_Debug$_appendTrace,
    assert: Sys$_Debug$assert,
    clearTrace: Sys$_Debug$clearTrace,
    fail: Sys$_Debug$fail,
    trace: Sys$_Debug$trace,
    traceDump: Sys$_Debug$traceDump,
    _traceDump: Sys$_Debug$_traceDump
}
Sys._Debug.registerClass('Sys._Debug');
Sys.Debug = new Sys._Debug();
    Sys.Debug.isDebug = true;
 
function Sys$Enum$parse(value, ignoreCase) {
    /// <summary locid="M:J#Sys.Enum.parse" />
    /// <param name="value" type="String"></param>
    /// <param name="ignoreCase" type="Boolean" optional="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "value", type: String},
        {name: "ignoreCase", type: Boolean, optional: true}
    ]);
    if (e) throw e;
    var values, parsed, val;
    if (ignoreCase) {
        values = this.__lowerCaseValues;
        if (!values) {
            this.__lowerCaseValues = values = {};
            var prototype = this.prototype;
            for (var name in prototype) {
                values[name.toLowerCase()] = prototype[name];
            }
        }
    }
    else {
        values = this.prototype;
    }
    if (!this.__flags) {
        val = (ignoreCase ? value.toLowerCase() : value);
        parsed = values[val.trim()];
        if (typeof(parsed) !== 'number') throw Error.argument('value', String.format(Sys.Res.enumInvalidValue, value, this.__typeName));
        return parsed;
    }
    else {
        var parts = (ignoreCase ? value.toLowerCase() : value).split(',');
        var v = 0;
        for (var i = parts.length - 1; i >= 0; i--) {
            var part = parts[i].trim();
            parsed = values[part];
            if (typeof(parsed) !== 'number') throw Error.argument('value', String.format(Sys.Res.enumInvalidValue, value.split(',')[i].trim(), this.__typeName));
            v |= parsed;
        }
        return v;
    }
}
function Sys$Enum$toString(value) {
    /// <summary locid="M:J#Sys.Enum.toString" />
    /// <param name="value" optional="true" mayBeNull="true"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "value", mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    if ((typeof(value) === 'undefined') || (value === null)) return this.__string;
    if ((typeof(value) != 'number') || ((value % 1) !== 0)) throw Error.argumentType('value', Object.getType(value), this);
    var values = this.prototype;
    var i;
    if (!this.__flags || (value === 0)) {
        for (i in values) {
            if (values[i] === value) {
                return i;
            }
        }
    }
    else {
        var sorted = this.__sortedValues;
        if (!sorted) {
            sorted = [];
            for (i in values) {
                sorted[sorted.length] = {key: i, value: values[i]};
            }
            sorted.sort(function(a, b) {
                return a.value - b.value;
            });
            this.__sortedValues = sorted;
        }
        var parts = [];
        var v = value;
        for (i = sorted.length - 1; i >= 0; i--) {
            var kvp = sorted[i];
            var vali = kvp.value;
            if (vali === 0) continue;
            if ((vali & value) === vali) {
                parts[parts.length] = kvp.key;
                v -= vali;
                if (v === 0) break;
            }
        }
        if (parts.length && v === 0) return parts.reverse().join(', ');
    }
    throw Error.argumentOutOfRange('value', value, String.format(Sys.Res.enumInvalidValue, value, this.__typeName));
}
Type.prototype.registerEnum = function Type$registerEnum(name, flags) {
    /// <summary locid="M:J#Sys.UI.LineType.#ctor" />
    /// <param name="name" type="String"></param>
    /// <param name="flags" type="Boolean" optional="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "name", type: String},
        {name: "flags", type: Boolean, optional: true}
    ]);
    if (e) throw e;
    if (!Type.__fullyQualifiedIdentifierRegExp.test(name)) throw Error.argument('name', Sys.Res.notATypeName);
    var parsedName;
    try {
        parsedName = eval(name);
    }
    catch(e) {
        throw Error.argument('name', Sys.Res.argumentTypeName);
    }
    if (parsedName !== this) throw Error.argument('name', Sys.Res.badTypeName);
    if (Sys.__registeredTypes[name]) throw Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice, name));
    for (var j in this.prototype) {
        var val = this.prototype[j];
        if (!Type.__identifierRegExp.test(j)) throw Error.invalidOperation(String.format(Sys.Res.enumInvalidValueName, j));
        if (typeof(val) !== 'number' || (val % 1) !== 0) throw Error.invalidOperation(Sys.Res.enumValueNotInteger);
        if (typeof(this[j]) !== 'undefined') throw Error.invalidOperation(String.format(Sys.Res.enumReservedName, j));
    }
    Sys.__upperCaseTypes[name.toUpperCase()] = this;
    for (var i in this.prototype) {
        this[i] = this.prototype[i];
    }
    this.__typeName = name;
    this.parse = Sys$Enum$parse;
    this.__string = this.toString();
    this.toString = Sys$Enum$toString;
    this.__flags = flags;
    this.__enum = true;
    Sys.__registeredTypes[name] = true;
}
Type.isEnum = function Type$isEnum(type) {
    /// <summary locid="M:J#Type.isEnum" />
    /// <param name="type" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "type", mayBeNull: true}
    ]);
    if (e) throw e;
    if ((typeof(type) === 'undefined') || (type === null)) return false;
    return !!type.__enum;
}
Type.isFlags = function Type$isFlags(type) {
    /// <summary locid="M:J#Type.isFlags" />
    /// <param name="type" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "type", mayBeNull: true}
    ]);
    if (e) throw e;
    if ((typeof(type) === 'undefined') || (type === null)) return false;
    return !!type.__flags;
}
Sys.CollectionChange = function Sys$CollectionChange(action, newItems, newStartingIndex, oldItems, oldStartingIndex) {
    /// <summary locid="M:J#Sys.CollectionChange.#ctor" />
    /// <param name="action" type="Sys.NotifyCollectionChangedAction"></param>
    /// <param name="newItems" optional="true" mayBeNull="true"></param>
    /// <param name="newStartingIndex" type="Number" integer="true" optional="true" mayBeNull="true"></param>
    /// <param name="oldItems" optional="true" mayBeNull="true"></param>
    /// <param name="oldStartingIndex" type="Number" integer="true" optional="true" mayBeNull="true"></param>
    /// <field name="action" type="Sys.NotifyCollectionChangedAction" locid="F:J#Sys.CollectionChange.action"></field>
    /// <field name="newItems" type="Array" mayBeNull="true" elementMayBeNull="true" locid="F:J#Sys.CollectionChange.newItems"></field>
    /// <field name="newStartingIndex" type="Number" integer="true" locid="F:J#Sys.CollectionChange.newStartingIndex"></field>
    /// <field name="oldItems" type="Array" mayBeNull="true" elementMayBeNull="true" locid="F:J#Sys.CollectionChange.oldItems"></field>
    /// <field name="oldStartingIndex" type="Number" integer="true" locid="F:J#Sys.CollectionChange.oldStartingIndex"></field>
    var e = Function._validateParams(arguments, [
        {name: "action", type: Sys.NotifyCollectionChangedAction},
        {name: "newItems", mayBeNull: true, optional: true},
        {name: "newStartingIndex", type: Number, mayBeNull: true, integer: true, optional: true},
        {name: "oldItems", mayBeNull: true, optional: true},
        {name: "oldStartingIndex", type: Number, mayBeNull: true, integer: true, optional: true}
    ]);
    if (e) throw e;
    this.action = action;
    if (newItems) {
        if (!(newItems instanceof Array)) {
            newItems = [newItems];
        }
    }
    this.newItems = newItems || null;
    if (typeof newStartingIndex !== "number") {
        newStartingIndex = -1;
    }
    this.newStartingIndex = newStartingIndex;
    if (oldItems) {
        if (!(oldItems instanceof Array)) {
            oldItems = [oldItems];
        }
    }
    this.oldItems = oldItems || null;
    if (typeof oldStartingIndex !== "number") {
        oldStartingIndex = -1;
    }
    this.oldStartingIndex = oldStartingIndex;
}
Sys.CollectionChange.registerClass("Sys.CollectionChange");
Sys.NotifyCollectionChangedAction = function Sys$NotifyCollectionChangedAction() {
    /// <summary locid="M:J#Sys.NotifyCollectionChangedAction.#ctor" />
    /// <field name="add" type="Number" integer="true" static="true" locid="F:J#Sys.NotifyCollectionChangedAction.add"></field>
    /// <field name="remove" type="Number" integer="true" static="true" locid="F:J#Sys.NotifyCollectionChangedAction.remove"></field>
    /// <field name="reset" type="Number" integer="true" static="true" locid="F:J#Sys.NotifyCollectionChangedAction.reset"></field>
    if (arguments.length !== 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
Sys.NotifyCollectionChangedAction.prototype = {
    add: 0,
    remove: 1,
    reset: 2
}
Sys.NotifyCollectionChangedAction.registerEnum('Sys.NotifyCollectionChangedAction');
Sys.NotifyCollectionChangedEventArgs = function Sys$NotifyCollectionChangedEventArgs(changes) {
    /// <summary locid="M:J#Sys.NotifyCollectionChangedEventArgs.#ctor" />
    /// <param name="changes" type="Array" elementType="Sys.CollectionChange"></param>
    var e = Function._validateParams(arguments, [
        {name: "changes", type: Array, elementType: Sys.CollectionChange}
    ]);
    if (e) throw e;
    this._changes = changes;
    Sys.NotifyCollectionChangedEventArgs.initializeBase(this);
}
    function Sys$NotifyCollectionChangedEventArgs$get_changes() {
        /// <value type="Array" elementType="Sys.CollectionChange" locid="P:J#Sys.NotifyCollectionChangedEventArgs.changes"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._changes || [];
    }
Sys.NotifyCollectionChangedEventArgs.prototype = {
    get_changes: Sys$NotifyCollectionChangedEventArgs$get_changes
}
Sys.NotifyCollectionChangedEventArgs.registerClass("Sys.NotifyCollectionChangedEventArgs", Sys.EventArgs);
 
Sys.INotifyPropertyChange = function Sys$INotifyPropertyChange() {
    /// <summary locid="M:J#Sys.INotifyPropertyChange.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    throw Error.notImplemented();
}
    function Sys$INotifyPropertyChange$add_propertyChanged(handler) {
    /// <summary locid="E:J#Sys.INotifyPropertyChange.propertyChanged" />
    var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
    if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$INotifyPropertyChange$remove_propertyChanged(handler) {
    var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
    if (e) throw e;
        throw Error.notImplemented();
    }
Sys.INotifyPropertyChange.prototype = {
    add_propertyChanged: Sys$INotifyPropertyChange$add_propertyChanged,
    remove_propertyChanged: Sys$INotifyPropertyChange$remove_propertyChanged
}
Sys.INotifyPropertyChange.registerInterface('Sys.INotifyPropertyChange');
 
Sys.PropertyChangedEventArgs = function Sys$PropertyChangedEventArgs(propertyName) {
    /// <summary locid="M:J#Sys.PropertyChangedEventArgs.#ctor" />
    /// <param name="propertyName" type="String"></param>
    var e = Function._validateParams(arguments, [
        {name: "propertyName", type: String}
    ]);
    if (e) throw e;
    Sys.PropertyChangedEventArgs.initializeBase(this);
    this._propertyName = propertyName;
}
 
    function Sys$PropertyChangedEventArgs$get_propertyName() {
        /// <value type="String" locid="P:J#Sys.PropertyChangedEventArgs.propertyName"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._propertyName;
    }
Sys.PropertyChangedEventArgs.prototype = {
    get_propertyName: Sys$PropertyChangedEventArgs$get_propertyName
}
Sys.PropertyChangedEventArgs.registerClass('Sys.PropertyChangedEventArgs', Sys.EventArgs);
Sys.Observer = function Sys$Observer() {
    throw Error.invalidOperation();
}
Sys.Observer.registerClass("Sys.Observer");
Sys.Observer.makeObservable = function Sys$Observer$makeObservable(target) {
    /// <summary locid="M:J#Sys.Observer.makeObservable" />
    /// <param name="target" mayBeNull="false"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "target"}
    ]);
    if (e) throw e;
    var isArray = target instanceof Array,
        o = Sys.Observer;
    Sys.Observer._ensureObservable(target);
    if (target.setValue === o._observeMethods.setValue) return target;
    o._addMethods(target, o._observeMethods);
    if (isArray) {
        o._addMethods(target, o._arrayMethods);
    }
    return target;
}
Sys.Observer._ensureObservable = function Sys$Observer$_ensureObservable(target) {
    var type = typeof target;
    if ((type === "string") || (type === "number") || (type === "boolean") || (type === "date")) {
        throw Error.invalidOperation(String.format(Sys.Res.notObservable, type));
    }
}
Sys.Observer._addMethods = function Sys$Observer$_addMethods(target, methods) {
    for (var m in methods) {
        if (target[m] && (target[m] !== methods[m])) {
            throw Error.invalidOperation(String.format(Sys.Res.observableConflict, m));
        }
        target[m] = methods[m];
    }
}
Sys.Observer._addEventHandler = function Sys$Observer$_addEventHandler(target, eventName, handler) {
    Sys.Observer._getContext(target, true).events._addHandler(eventName, handler);
}
Sys.Observer.addEventHandler = function Sys$Observer$addEventHandler(target, eventName, handler) {
    /// <summary locid="M:J#Sys.Observer.addEventHandler" />
    /// <param name="target"></param>
    /// <param name="eventName" type="String"></param>
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"},
        {name: "eventName", type: String},
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    Sys.Observer._addEventHandler(target, eventName, handler);
}
Sys.Observer._removeEventHandler = function Sys$Observer$_removeEventHandler(target, eventName, handler) {
    Sys.Observer._getContext(target, true).events._removeHandler(eventName, handler);
}
Sys.Observer.removeEventHandler = function Sys$Observer$removeEventHandler(target, eventName, handler) {
    /// <summary locid="M:J#Sys.Observer.removeEventHandler" />
    /// <param name="target"></param>
    /// <param name="eventName" type="String"></param>
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"},
        {name: "eventName", type: String},
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    Sys.Observer._removeEventHandler(target, eventName, handler);
}
Sys.Observer.raiseEvent = function Sys$Observer$raiseEvent(target, eventName, eventArgs) {
    /// <summary locid="M:J#Sys.Observer.raiseEvent" />
    /// <param name="target"></param>
    /// <param name="eventName" type="String"></param>
    /// <param name="eventArgs" type="Sys.EventArgs"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"},
        {name: "eventName", type: String},
        {name: "eventArgs", type: Sys.EventArgs}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    var ctx = Sys.Observer._getContext(target);
    if (!ctx) return;
    var handler = ctx.events.getHandler(eventName);
    if (handler) {
        handler(target, eventArgs);
    }
}
Sys.Observer.addPropertyChanged = function Sys$Observer$addPropertyChanged(target, handler) {
    /// <summary locid="M:J#Sys.Observer.addPropertyChanged" />
    /// <param name="target" mayBeNull="false"></param>
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"},
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    Sys.Observer._addEventHandler(target, "propertyChanged", handler);
}
Sys.Observer.removePropertyChanged = function Sys$Observer$removePropertyChanged(target, handler) {
    /// <summary locid="M:J#Sys.Observer.removePropertyChanged" />
    /// <param name="target" mayBeNull="false"></param>
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"},
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    Sys.Observer._removeEventHandler(target, "propertyChanged", handler);
}
Sys.Observer.beginUpdate = function Sys$Observer$beginUpdate(target) {
    /// <summary locid="M:J#Sys.Observer.beginUpdate" />
    /// <param name="target" mayBeNull="false"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    Sys.Observer._getContext(target, true).updating = true;
}
Sys.Observer.endUpdate = function Sys$Observer$endUpdate(target) {
    /// <summary locid="M:J#Sys.Observer.endUpdate" />
    /// <param name="target" mayBeNull="false"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    var ctx = Sys.Observer._getContext(target);
    if (!ctx || !ctx.updating) return;
    ctx.updating = false;
    var dirty = ctx.dirty;
    ctx.dirty = false;
    if (dirty) {
        if (target instanceof Array) {
            var changes = ctx.changes;
            ctx.changes = null;
            Sys.Observer.raiseCollectionChanged(target, changes);
        }
        Sys.Observer.raisePropertyChanged(target, "");
    }
}
Sys.Observer.isUpdating = function Sys$Observer$isUpdating(target) {
    /// <summary locid="M:J#Sys.Observer.isUpdating" />
    /// <param name="target" mayBeNull="false"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "target"}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    var ctx = Sys.Observer._getContext(target);
    return ctx ? ctx.updating : false;
}
Sys.Observer._setValue = function Sys$Observer$_setValue(target, propertyName, value) {
    var getter, setter, mainTarget = target, path = propertyName.split('.');
    for (var i = 0, l = (path.length - 1); i < l ; i++) {
        var name = path[i];
        getter = target["get_" + name]; 
        if (typeof (getter) === "function") {
            target = getter.call(target);
        }
        else {
            target = target[name];
        }
        var type = typeof (target);
        if ((target === null) || (type === "undefined")) {
            throw Error.invalidOperation(String.format(Sys.Res.nullReferenceInPath, propertyName));
        }
    }    
    var currentValue, lastPath = path[l];
    getter = target["get_" + lastPath];
    setter = target["set_" + lastPath];
    if (typeof(getter) === 'function') {
        currentValue = getter.call(target);
    }
    else {
        currentValue = target[lastPath];
    }
    if (typeof(setter) === 'function') {
        setter.call(target, value);
    }
    else {
        target[lastPath] = value;
    }
    if (currentValue !== value) {
        var ctx = Sys.Observer._getContext(mainTarget);
        if (ctx && ctx.updating) {
            ctx.dirty = true;
            return;
        };
        Sys.Observer.raisePropertyChanged(mainTarget, path[0]);
    }
}
Sys.Observer.setValue = function Sys$Observer$setValue(target, propertyName, value) {
    /// <summary locid="M:J#Sys.Observer.setValue" />
    /// <param name="target" mayBeNull="false"></param>
    /// <param name="propertyName" type="String"></param>
    /// <param name="value" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "target"},
        {name: "propertyName", type: String},
        {name: "value", mayBeNull: true}
    ]);
    if (e) throw e;
    Sys.Observer._ensureObservable(target);
    Sys.Observer._setValue(target, propertyName, value);
}
Sys.Observer.raisePropertyChanged = function Sys$Observer$raisePropertyChanged(target, propertyName) {
    /// <summary locid="M:J#Sys.Observer.raisePropertyChanged" />
    /// <param name="target" mayBeNull="false"></param>
    /// <param name="propertyName" type="String"></param>
    Sys.Observer.raiseEvent(target, "propertyChanged", new Sys.PropertyChangedEventArgs(propertyName));
}
Sys.Observer.addCollectionChanged = function Sys$Observer$addCollectionChanged(target, handler) {
    /// <summary locid="M:J#Sys.Observer.addCollectionChanged" />
    /// <param name="target" type="Array" elementMayBeNull="true"></param>
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "target", type: Array, elementMayBeNull: true},
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    Sys.Observer._addEventHandler(target, "collectionChanged", handler);
}
Sys.Observer.removeCollectionChanged = function Sys$Observer$removeCollectionChanged(target, handler) {
    /// <summary locid="M:J#Sys.Observer.removeCollectionChanged" />
    /// <param name="target" type="Array" elementMayBeNull="true"></param>
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "target", type: Array, elementMayBeNull: true},
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    Sys.Observer._removeEventHandler(target, "collectionChanged", handler);
}
Sys.Observer._collectionChange = function Sys$Observer$_collectionChange(target, change) {
    var ctx = Sys.Observer._getContext(target);
    if (ctx && ctx.updating) {
        ctx.dirty = true;
        var changes = ctx.changes;
        if (!changes) {
            ctx.changes = changes = [change];
        }
        else {
            changes.push(change);
        }
    }
    else {
        Sys.Observer.raiseCollectionChanged(target, [change]);
        Sys.Observer.raisePropertyChanged(target, 'length');
    }
}
Sys.Observer.add = function Sys$Observer$add(target, item) {
    /// <summary locid="M:J#Sys.Observer.add" />
    /// <param name="target" type="Array" elementMayBeNull="true"></param>
    /// <param name="item" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "target", type: Array, elementMayBeNull: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    var change = new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.add, [item], target.length);
    Array.add(target, item);
    Sys.Observer._collectionChange(target, change);
}
Sys.Observer.addRange = function Sys$Observer$addRange(target, items) {
    /// <summary locid="M:J#Sys.Observer.addRange" />
    /// <param name="target" type="Array" elementMayBeNull="true"></param>
    /// <param name="items" type="Array" elementMayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "target", type: Array, elementMayBeNull: true},
        {name: "items", type: Array, elementMayBeNull: true}
    ]);
    if (e) throw e;
    var change = new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.add, items, target.length);
    Array.addRange(target, items);
    Sys.Observer._collectionChange(target, change);
}
Sys.Observer.clear = function Sys$Observer$clear(target) {
    /// <summary locid="M:J#Sys.Observer.clear" />
    /// <param name="target" type="Array" elementMayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "target", type: Array, elementMayBeNull: true}
    ]);
    if (e) throw e;
    var oldItems = Array.clone(target);
    Array.clear(target);
    Sys.Observer._collectionChange(target, new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.reset, null, -1, oldItems, 0));
}
Sys.Observer.insert = function Sys$Observer$insert(target, index, item) {
    /// <summary locid="M:J#Sys.Observer.insert" />
    /// <param name="target" type="Array" elementMayBeNull="true"></param>
    /// <param name="index" type="Number" integer="true"></param>
    /// <param name="item" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "target", type: Array, elementMayBeNull: true},
        {name: "index", type: Number, integer: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    Array.insert(target, index, item);
    Sys.Observer._collectionChange(target, new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.add, [item], index));
}
Sys.Observer.remove = function Sys$Observer$remove(target, item) {
    /// <summary locid="M:J#Sys.Observer.remove" />
    /// <param name="target" type="Array" elementMayBeNull="true"></param>
    /// <param name="item" mayBeNull="true"></param>
    /// <returns type="Boolean"></returns>
    var e = Function._validateParams(arguments, [
        {name: "target", type: Array, elementMayBeNull: true},
        {name: "item", mayBeNull: true}
    ]);
    if (e) throw e;
    var index = Array.indexOf(target, item);
    if (index !== -1) {
        Array.remove(target, item);
        Sys.Observer._collectionChange(target, new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.remove, null, -1, [item], index));
        return true;
    }
    return false;
}
Sys.Observer.removeAt = function Sys$Observer$removeAt(target, index) {
    /// <summary locid="M:J#Sys.Observer.removeAt" />
    /// <param name="target" type="Array" elementMayBeNull="true"></param>
    /// <param name="index" type="Number" integer="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "target", type: Array, elementMayBeNull: true},
        {name: "index", type: Number, integer: true}
    ]);
    if (e) throw e;
    if ((index > -1) && (index < target.length)) {
        var item = target[index];
        Array.removeAt(target, index);
        Sys.Observer._collectionChange(target, new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.remove, null, -1, [item], index));
    }
}
Sys.Observer.raiseCollectionChanged = function Sys$Observer$raiseCollectionChanged(target, changes) {
    /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
    /// <param name="target"></param>
    /// <param name="changes" type="Array" elementType="Sys.CollectionChange"></param>
    Sys.Observer.raiseEvent(target, "collectionChanged", new Sys.NotifyCollectionChangedEventArgs(changes));
}
Sys.Observer._observeMethods = {
    add_propertyChanged: function(handler) {
        Sys.Observer._addEventHandler(this, "propertyChanged", handler);
    },
    remove_propertyChanged: function(handler) {
        Sys.Observer._removeEventHandler(this, "propertyChanged", handler);
    },
    addEventHandler: function(eventName, handler) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="eventName" type="String"></param>
        /// <param name="handler" type="Function"></param>
        var e = Function._validateParams(arguments, [
            {name: "eventName", type: String},
            {name: "handler", type: Function}
        ]);
        if (e) throw e;
        Sys.Observer._addEventHandler(this, eventName, handler);
    },
    removeEventHandler: function(eventName, handler) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="eventName" type="String"></param>
        /// <param name="handler" type="Function"></param>
        var e = Function._validateParams(arguments, [
            {name: "eventName", type: String},
            {name: "handler", type: Function}
        ]);
        if (e) throw e;
        Sys.Observer._removeEventHandler(this, eventName, handler);
    },
    get_isUpdating: function() {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <returns type="Boolean"></returns>
        return Sys.Observer.isUpdating(this);
    },
    beginUpdate: function() {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        Sys.Observer.beginUpdate(this);
    },
    endUpdate: function() {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        Sys.Observer.endUpdate(this);
    },
    setValue: function(name, value) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="name" type="String"></param>
        /// <param name="value" mayBeNull="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "name", type: String},
            {name: "value", mayBeNull: true}
        ]);
        if (e) throw e;
        Sys.Observer._setValue(this, name, value);
    },
    raiseEvent: function(eventName, eventArgs) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="eventName" type="String"></param>
        /// <param name="eventArgs" type="Sys.EventArgs"></param>
        Sys.Observer.raiseEvent(this, eventName, eventArgs);
    },
    raisePropertyChanged: function(name) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="name" type="String"></param>
        Sys.Observer.raiseEvent(this, "propertyChanged", new Sys.PropertyChangedEventArgs(name));
    }
}
Sys.Observer._arrayMethods = {
    add_collectionChanged: function(handler) {
        Sys.Observer._addEventHandler(this, "collectionChanged", handler);
    },
    remove_collectionChanged: function(handler) {
        Sys.Observer._removeEventHandler(this, "collectionChanged", handler);
    },
    add: function(item) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="item" mayBeNull="true"></param>
        Sys.Observer.add(this, item);
    },
    addRange: function(items) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="items" type="Array" elementMayBeNull="true"></param>
        Sys.Observer.addRange(this, items);
    },
    clear: function() {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        Sys.Observer.clear(this);
    },
    insert: function(index, item) { 
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="index" type="Number" integer="true"></param>
        /// <param name="item" mayBeNull="true"></param>
        Sys.Observer.insert(this, index, item);
    },
    remove: function(item) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="item" mayBeNull="true"></param>
        /// <returns type="Boolean"></returns>
        return Sys.Observer.remove(this, item);
    },
    removeAt: function(index) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="index" type="Number" integer="true"></param>
        Sys.Observer.removeAt(this, index);
    },
    raiseCollectionChanged: function(changes) {
        /// <summary locid="M:J#Sys.Observer.raiseCollectionChanged" />
        /// <param name="changes" type="Array" elementType="Sys.CollectionChange"></param>
        Sys.Observer.raiseEvent(this, "collectionChanged", new Sys.NotifyCollectionChangedEventArgs(changes));
    }
}
Sys.Observer._getContext = function Sys$Observer$_getContext(obj, create) {
    var ctx = obj._observerContext;
    if (ctx) return ctx();
    if (create) {
        return (obj._observerContext = Sys.Observer._createContext())();
    }
    return null;
}
Sys.Observer._createContext = function Sys$Observer$_createContext() {
    var ctx = {
        events: new Sys.EventHandlerList()
    };
    return function() {
        return ctx;
    }
}
&�//-----------------------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------
// MicrosoftAjaxSerialization.js
// Microsoft AJAX Framework Globalization.
/// <reference name="MicrosoftAjaxCore.js" />
Type._registerScript("MicrosoftAjaxGlobalization.js", ["MicrosoftAjaxCore.js"]);
Date._appendPreOrPostMatch = function Date$_appendPreOrPostMatch(preMatch, strBuilder) {
    var quoteCount = 0;
    var escaped = false;
    for (var i = 0, il = preMatch.length; i < il; i++) {
        var c = preMatch.charAt(i);
        switch (c) {
        case '\'':
            if (escaped) strBuilder.append("'");
            else quoteCount++;
            escaped = false;
            break;
        case '\\':
            if (escaped) strBuilder.append("\\");
            escaped = !escaped;
            break;
        default:
            strBuilder.append(c);
            escaped = false;
            break;
        }
    }
    return quoteCount;
}
Date._expandFormat = function Date$_expandFormat(dtf, format) {
    if (!format) {
        format = "F";
    }
    var len = format.length;
    if (len === 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.LongDatePattern + " " + dtf.ShortTimePattern;
        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);
        }
    }
    else if ((len === 2) && (format.charAt(0) === "%")) {
        format = format.charAt(1);
    }
    return format;
}
Date._expandYear = function Date$_expandYear(dtf, year) {
    var now = new Date(),
        era = Date._getEra(now);
    if (year < 100) {
        var curr = Date._getEraYear(now, dtf, era);
        year += curr - (curr % 100);
        if (year > dtf.Calendar.TwoDigitYearMax) {
            year -= 100;
        }
    }
    return year;
}
Date._getEra = function Date$_getEra(date, eras) {
    if (!eras) return 0;
    var start, ticks = date.getTime();
    for (var i = 0, l = eras.length; i < l; i += 4) {
        start = eras[i+2];
        if ((start === null) || (ticks >= start)) {
            return i;
        }
    }
    return 0;
}
Date._getEraYear = function Date$_getEraYear(date, dtf, era, sortable) {
    var year = date.getFullYear();
    if (!sortable && dtf.eras) {
        year -= dtf.eras[era + 3];
    }    
    return year;
}
Date._getParseRegExp = function Date$_getParseRegExp(dtf, format) {
    if (!dtf._parseRegExp) {
        dtf._parseRegExp = {};
    }
    else if (dtf._parseRegExp[format]) {
        return dtf._parseRegExp[format];
    }
    var expFormat = Date._expandFormat(dtf, format);
    expFormat = expFormat.replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g, "\\\\$1");
    var regexp = new Sys.StringBuilder("^");
    var groups = [];
    var index = 0;
    var quoteCount = 0;
    var tokenRegExp = Date._getTokenRegExp();
    var match;
    while ((match = tokenRegExp.exec(expFormat)) !== null) {
        var preMatch = expFormat.slice(index, match.index);
        index = tokenRegExp.lastIndex;
        quoteCount += Date._appendPreOrPostMatch(preMatch, regexp);
        if ((quoteCount%2) === 1) {
            regexp.append(match[0]);
            continue;
        }
        switch (match[0]) {
            case 'dddd': case 'ddd':
            case 'MMMM': case 'MMM':
            case 'gg': case 'g':
                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;
            case '/':
                regexp.append("(\\" + dtf.DateSeparator + ")");
                break;
        }
        Array.add(groups, match[0]);
    }
    Date._appendPreOrPostMatch(expFormat.slice(index), regexp);
    regexp.append("$");
    var regexpStr = regexp.toString().replace(/\s+/g, "\\s+");
    var parseRegExp = {'regExp': regexpStr, 'groups': groups};
    dtf._parseRegExp[format] = parseRegExp;
    return parseRegExp;
}
Date._getTokenRegExp = function Date$_getTokenRegExp() {
    return /\/|dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z|gg|g/g;
}
Date.parseLocale = function Date$parseLocale(value, formats) {
    /// <summary locid="M:J#Date.parseLocale" />
    /// <param name="value" type="String"></param>
    /// <param name="formats" parameterArray="true" optional="true" mayBeNull="true"></param>
    /// <returns type="Date"></returns>
    var e = Function._validateParams(arguments, [
        {name: "value", type: String},
        {name: "formats", mayBeNull: true, optional: true, parameterArray: true}
    ]);
    if (e) throw e;
    return Date._parse(value, Sys.CultureInfo.CurrentCulture, arguments);
}
Date.parseInvariant = function Date$parseInvariant(value, formats) {
    /// <summary locid="M:J#Date.parseInvariant" />
    /// <param name="value" type="String"></param>
    /// <param name="formats" parameterArray="true" optional="true" mayBeNull="true"></param>
    /// <returns type="Date"></returns>
    var e = Function._validateParams(arguments, [
        {name: "value", type: String},
        {name: "formats", mayBeNull: true, optional: true, parameterArray: true}
    ]);
    if (e) throw e;
    return Date._parse(value, Sys.CultureInfo.InvariantCulture, arguments);
}
Date._parse = function Date$_parse(value, cultureInfo, args) {
    var i, l, date, format, formats, custom = false;
    for (i = 1, l = args.length; i < l; i++) {
        format = args[i];
        if (format) {
            custom = true;
            date = Date._parseExact(value, format, cultureInfo);
            if (date) return date;
        }
    }
    if (! custom) {
        formats = cultureInfo._getDateTimeFormats();
        for (i = 0, l = formats.length; i < l; i++) {
            date = Date._parseExact(value, formats[i], cultureInfo);
            if (date) return date;
        }
    }
    return null;
}
Date._parseExact = function Date$_parseExact(value, format, cultureInfo) {
    value = value.trim();
    var dtf = cultureInfo.dateTimeFormat,
        parseInfo = Date._getParseRegExp(dtf, format),
        match = new RegExp(parseInfo.regExp).exec(value);
    if (match === null) return null;
    
    var groups = parseInfo.groups,
        era = null, year = null, month = null, date = null, weekDay = null,
        hour = 0, hourOffset, min = 0, sec = 0, msec = 0, tzMinOffset = null,
        pmHour = false;
    for (var j = 0, jl = groups.length; j < jl; j++) {
        var matchGroup = match[j+1];
        if (matchGroup) {
            switch (groups[j]) {
                case 'dd': case 'd':
                    date = parseInt(matchGroup, 10);
                    if ((date < 1) || (date > 31)) return null;
                    break;
                case 'MMMM':
                    month = cultureInfo._getMonthIndex(matchGroup);
                    if ((month < 0) || (month > 11)) return null;
                    break;
                case 'MMM':
                    month = cultureInfo._getAbbrMonthIndex(matchGroup);
                    if ((month < 0) || (month > 11)) return null;
                    break;
                case 'M': case 'MM':
                    month = parseInt(matchGroup, 10) - 1;
                    if ((month < 0) || (month > 11)) return null;
                    break;
                case 'y': case 'yy':
                    year = Date._expandYear(dtf,parseInt(matchGroup, 10));
                    if ((year < 0) || (year > 9999)) return null;
                    break;
                case 'yyyy':
                    year = parseInt(matchGroup, 10);
                    if ((year < 0) || (year > 9999)) return null;
                    break;
                case 'h': case 'hh':
                    hour = parseInt(matchGroup, 10);
                    if (hour === 12) hour = 0;
                    if ((hour < 0) || (hour > 11)) return null;
                    break;
                case 'H': case 'HH':
                    hour = parseInt(matchGroup, 10);
                    if ((hour < 0) || (hour > 23)) return null;
                    break;
                case 'm': case 'mm':
                    min = parseInt(matchGroup, 10);
                    if ((min < 0) || (min > 59)) return null;
                    break;
                case 's': case 'ss':
                    sec = parseInt(matchGroup, 10);
                    if ((sec < 0) || (sec > 59)) return null;
                    break;
                case 'tt': case 't':
                    var upperToken = matchGroup.toUpperCase();
                    pmHour = (upperToken === dtf.PMDesignator.toUpperCase());
                    if (!pmHour && (upperToken !== dtf.AMDesignator.toUpperCase())) return null;
                    break;
                case 'f':
                    msec = parseInt(matchGroup, 10) * 100;
                    if ((msec < 0) || (msec > 999)) return null;
                    break;
                case 'ff':
                    msec = parseInt(matchGroup, 10) * 10;
                    if ((msec < 0) || (msec > 999)) return null;
                    break;
                case 'fff':
                    msec = parseInt(matchGroup, 10);
                    if ((msec < 0) || (msec > 999)) return null;
                    break;
                case 'dddd':
                    weekDay = cultureInfo._getDayIndex(matchGroup);
                    if ((weekDay < 0) || (weekDay > 6)) return null;
                    break;
                case 'ddd':
                    weekDay = cultureInfo._getAbbrDayIndex(matchGroup);
                    if ((weekDay < 0) || (weekDay > 6)) return null;
                    break;
                case 'zzz':
                    var offsets = matchGroup.split(/:/);
                    if (offsets.length !== 2) return null;
                    hourOffset = parseInt(offsets[0], 10);
                    if ((hourOffset < -12) || (hourOffset > 13)) return null;
                    var minOffset = parseInt(offsets[1], 10);
                    if ((minOffset < 0) || (minOffset > 59)) return null;
                    tzMinOffset = (hourOffset * 60) + (matchGroup.startsWith('-')? -minOffset : minOffset);
                    break;
                case 'z': case 'zz':
                    hourOffset = parseInt(matchGroup, 10);
                    if ((hourOffset < -12) || (hourOffset > 13)) return null;
                    tzMinOffset = hourOffset * 60;
                    break;
                case 'g': case 'gg':
                    var eraName = matchGroup;
                    if (!eraName || !dtf.eras) return null;
                    eraName = eraName.toLowerCase().trim();
                    for (var i = 0, l = dtf.eras.length; i < l; i += 4) {
                        if (eraName === dtf.eras[i + 1].toLowerCase()) {
                            era = i;
                            break;
                        }
                    }
                    if (era === null) return null;
                    break;
            }
        }
    }
    var result = new Date(), defaultYear, convert = dtf.Calendar.convert;
    if (convert) {
        defaultYear = convert.fromGregorian(result)[0];
    }
    else {
        defaultYear = result.getFullYear();
    }
    if (year === null) {
        year = defaultYear;
    }
    else if (dtf.eras) {
        year += dtf.eras[(era || 0) + 3];
    }
    if (month === null) {
        month = 0;
    }
    if (date === null) {
        date = 1;
    }
    if (convert) {
        result = convert.toGregorian(year, month, date);
        if (result === null) return null;
    }
    else {
        result.setFullYear(year, month, date);
        if (result.getDate() !== date) return null;
        if ((weekDay !== null) && (result.getDay() !== weekDay)) {
            return null;
        }
    }
    if (pmHour && (hour < 12)) {
        hour += 12;
    }
    result.setHours(hour, min, sec, msec);
    if (tzMinOffset !== null) {
        var adjustedMin = result.getMinutes() - (tzMinOffset + result.getTimezoneOffset());
        result.setHours(result.getHours() + parseInt(adjustedMin/60, 10), adjustedMin%60);
    }
    return result;
}
Date.prototype.format = function Date$format(format) {
    /// <summary locid="M:J#Date.format" />
    /// <param name="format" type="String"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "format", type: String}
    ]);
    if (e) throw e;
    return this._toFormattedString(format, Sys.CultureInfo.InvariantCulture);
}
Date.prototype.localeFormat = function Date$localeFormat(format) {
    /// <summary locid="M:J#Date.localeFormat" />
    /// <param name="format" type="String"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "format", type: String}
    ]);
    if (e) throw e;
    return this._toFormattedString(format, Sys.CultureInfo.CurrentCulture);
}
Date.prototype._toFormattedString = function Date$_toFormattedString(format, cultureInfo) {
    var dtf = cultureInfo.dateTimeFormat,
        convert = dtf.Calendar.convert;
    if (!format || !format.length || (format === 'i')) {
        if (cultureInfo && cultureInfo.name.length) {
            if (convert) {
                return this._toFormattedString(dtf.FullDateTimePattern, cultureInfo);
            }
            else {
                var eraDate = new Date(this.getTime());
                var era = Date._getEra(this, dtf.eras);
                eraDate.setFullYear(Date._getEraYear(this, dtf, era));
                return eraDate.toLocaleString();
            }
        }
        else {
            return this.toString();
        }
    }
    var eras = dtf.eras,
        sortable = (format === "s");
    format = Date._expandFormat(dtf, format);
    var ret = new Sys.StringBuilder();
    var hour;
    function addLeadingZero(num) {
        if (num < 10) {
            return '0' + num;
        }
        return num.toString();
    }
    function addLeadingZeros(num) {
        if (num < 10) {
            return '00' + num;
        }
        if (num < 100) {
            return '0' + num;
        }
        return num.toString();
    }
    function padYear(year) {
        if (year < 10) {
            return '000' + year;
        }
        else if (year < 100) {
            return '00' + year;
        }
        else if (year < 1000) {
            return '0' + year;
        }
        return year.toString();
    }
    
    var foundDay, checkedDay, dayPartRegExp = /([^d]|^)(d|dd)([^d]|$)/g;
    function hasDay() {
        if (foundDay || checkedDay) {
            return foundDay;
        }
        foundDay = dayPartRegExp.test(format);
        checkedDay = true;
        return foundDay;
    }
    
    var quoteCount = 0,
        tokenRegExp = Date._getTokenRegExp(),
        converted;
    if (!sortable && convert) {
        converted = convert.fromGregorian(this);
    }
    for (;;) {
        var index = tokenRegExp.lastIndex;
        var ar = tokenRegExp.exec(format);
        var preMatch = format.slice(index, ar ? ar.index : format.length);
        quoteCount += Date._appendPreOrPostMatch(preMatch, ret);
        if (!ar) break;
        if ((quoteCount%2) === 1) {
            ret.append(ar[0]);
            continue;
        }
        
        function getPart(date, part) {
            if (converted) {
                return converted[part];
            }
            switch (part) {
                case 0: return date.getFullYear();
                case 1: return date.getMonth();
                case 2: return date.getDate();
            }
        }
        switch (ar[0]) {
        case "dddd":
            ret.append(dtf.DayNames[this.getDay()]);
            break;
        case "ddd":
            ret.append(dtf.AbbreviatedDayNames[this.getDay()]);
            break;
        case "dd":
            foundDay = true;
            ret.append(addLeadingZero(getPart(this, 2)));
            break;
        case "d":
            foundDay = true;
            ret.append(getPart(this, 2));
            break;
        case "MMMM":
            ret.append((dtf.MonthGenitiveNames && hasDay())
                ? dtf.MonthGenitiveNames[getPart(this, 1)]
                : dtf.MonthNames[getPart(this, 1)]);
            break;
        case "MMM":
            ret.append((dtf.AbbreviatedMonthGenitiveNames && hasDay())
                ? dtf.AbbreviatedMonthGenitiveNames[getPart(this, 1)]
                : dtf.AbbreviatedMonthNames[getPart(this, 1)]);
            break;
        case "MM":
            ret.append(addLeadingZero(getPart(this, 1) + 1));
            break;
        case "M":
            ret.append(getPart(this, 1) + 1);
            break;
        case "yyyy":
            ret.append(padYear(converted ? converted[0] : Date._getEraYear(this, dtf, Date._getEra(this, eras), sortable)));
            break;
        case "yy":
            ret.append(addLeadingZero((converted ? converted[0] : Date._getEraYear(this, dtf, Date._getEra(this, eras), sortable)) % 100));
            break;
        case "y":
            ret.append((converted ? converted[0] : Date._getEraYear(this, dtf, Date._getEra(this, eras), sortable)) % 100);
            break;
        case "hh":
            hour = this.getHours() % 12;
            if (hour === 0) hour = 12;
            ret.append(addLeadingZero(hour));
            break;
        case "h":
            hour = this.getHours() % 12;
            if (hour === 0) hour = 12;
            ret.append(hour);
            break;
        case "HH":
            ret.append(addLeadingZero(this.getHours()));
            break;
        case "H":
            ret.append(this.getHours());
            break;
        case "mm":
            ret.append(addLeadingZero(this.getMinutes()));
            break;
        case "m":
            ret.append(this.getMinutes());
            break;
        case "ss":
            ret.append(addLeadingZero(this.getSeconds()));
            break;
        case "s":
            ret.append(this.getSeconds());
            break;
        case "tt":
            ret.append((this.getHours() < 12) ? dtf.AMDesignator : dtf.PMDesignator);
            break;
        case "t":
            ret.append(((this.getHours() < 12) ? dtf.AMDesignator : dtf.PMDesignator).charAt(0));
            break;
        case "f":
            ret.append(addLeadingZeros(this.getMilliseconds()).charAt(0));
            break;
        case "ff":
            ret.append(addLeadingZeros(this.getMilliseconds()).substr(0, 2));
            break;
        case "fff":
            ret.append(addLeadingZeros(this.getMilliseconds()));
            break;
        case "z":
            hour = this.getTimezoneOffset() / 60;
            ret.append(((hour <= 0) ? '+' : '-') + Math.floor(Math.abs(hour)));
            break;
        case "zz":
            hour = this.getTimezoneOffset() / 60;
            ret.append(((hour <= 0) ? '+' : '-') + addLeadingZero(Math.floor(Math.abs(hour))));
            break;
        case "zzz":
            hour = this.getTimezoneOffset() / 60;
            ret.append(((hour <= 0) ? '+' : '-') + addLeadingZero(Math.floor(Math.abs(hour))) +
                ":" + addLeadingZero(Math.abs(this.getTimezoneOffset() % 60)));
            break;
        case "g":
        case "gg":
            if (dtf.eras) {
                ret.append(dtf.eras[Date._getEra(this, eras) + 1]);
            }
            break;
        case "/":
            ret.append(dtf.DateSeparator);
            break;
        }
    }
    return ret.toString();
}
String.localeFormat = function String$localeFormat(format, args) {
    /// <summary locid="M:J#String.localeFormat" />
    /// <param name="format" type="String"></param>
    /// <param name="args" parameterArray="true" mayBeNull="true"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "format", type: String},
        {name: "args", mayBeNull: true, parameterArray: true}
    ]);
    if (e) throw e;
    return String._toFormattedString(true, arguments);
}
Number.parseLocale = function Number$parseLocale(value) {
    /// <summary locid="M:J#Number.parseLocale" />
    /// <param name="value" type="String"></param>
    /// <returns type="Number"></returns>
    var e = Function._validateParams(arguments, [
        {name: "value", type: String}
    ], false);
    if (e) throw e;
    return Number._parse(value, Sys.CultureInfo.CurrentCulture);
}
Number.parseInvariant = function Number$parseInvariant(value) {
    /// <summary locid="M:J#Number.parseInvariant" />
    /// <param name="value" type="String"></param>
    /// <returns type="Number"></returns>
    var e = Function._validateParams(arguments, [
        {name: "value", type: String}
    ], false);
    if (e) throw e;
    return Number._parse(value, Sys.CultureInfo.InvariantCulture);
}
Number._parse = function Number$_parse(value, cultureInfo) {
    value = value.trim();
    
    if (value.match(/^[+-]?infinity$/i)) {
        return parseFloat(value);
    }
    if (value.match(/^0x[a-f0-9]+$/i)) {
        return parseInt(value);
    }
    var numFormat = cultureInfo.numberFormat;
    var signInfo = Number._parseNumberNegativePattern(value, numFormat, numFormat.NumberNegativePattern);
    var sign = signInfo[0];
    var num = signInfo[1];
    
    if ((sign === '') && (numFormat.NumberNegativePattern !== 1)) {
        signInfo = Number._parseNumberNegativePattern(value, numFormat, 1);
        sign = signInfo[0];
        num = signInfo[1];
    }
    if (sign === '') sign = '+';
    
    var exponent;
    var intAndFraction;
    var exponentPos = num.indexOf('e');
    if (exponentPos < 0) exponentPos = num.indexOf('E');
    if (exponentPos < 0) {
        intAndFraction = num;
        exponent = null;
    }
    else {
        intAndFraction = num.substr(0, exponentPos);
        exponent = num.substr(exponentPos + 1);
    }
    
    var integer;
    var fraction;
    var decimalPos = intAndFraction.indexOf(numFormat.NumberDecimalSeparator);
    if (decimalPos < 0) {
        integer = intAndFraction;
        fraction = null;
    }
    else {
        integer = intAndFraction.substr(0, decimalPos);
        fraction = intAndFraction.substr(decimalPos + numFormat.NumberDecimalSeparator.length);
    }
    
    integer = integer.split(numFormat.NumberGroupSeparator).join('');
    var altNumGroupSeparator = numFormat.NumberGroupSeparator.replace(/\u00A0/g, " ");
    if (numFormat.NumberGroupSeparator !== altNumGroupSeparator) {
        integer = integer.split(altNumGroupSeparator).join('');
    }
    
    var p = sign + integer;
    if (fraction !== null) {
        p += '.' + fraction;
    }
    if (exponent !== null) {
        var expSignInfo = Number._parseNumberNegativePattern(exponent, numFormat, 1);
        if (expSignInfo[0] === '') {
            expSignInfo[0] = '+';
        }
        p += 'e' + expSignInfo[0] + expSignInfo[1];
    }
    if (p.match(/^[+-]?\d*\.?\d*(e[+-]?\d+)?$/)) {
        return parseFloat(p);
    }
    return Number.NaN;
}
Number._parseNumberNegativePattern = function Number$_parseNumberNegativePattern(value, numFormat, numberNegativePattern) {
    var neg = numFormat.NegativeSign;
    var pos = numFormat.PositiveSign;    
    switch (numberNegativePattern) {
        case 4: 
            neg = ' ' + neg;
            pos = ' ' + pos;
        case 3: 
            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: 
            neg += ' ';
            pos += ' ';
        case 1: 
            if (value.startsWith(neg)) {
                return ['-', value.substr(neg.length)];
            }
            else if (value.startsWith(pos)) {
                return ['+', value.substr(pos.length)];
            }
            break;
        case 0: 
            if (value.startsWith('(') && value.endsWith(')')) {
                return ['-', value.substr(1, value.length - 2)];
            }
            break;
    }
    return ['', value];
}
Number.prototype.format = function Number$format(format) {
    /// <summary locid="M:J#Number.format" />
    /// <param name="format" type="String"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "format", type: String}
    ]);
    if (e) throw e;
    return this._toFormattedString(format, Sys.CultureInfo.InvariantCulture);
}
Number.prototype.localeFormat = function Number$localeFormat(format) {
    /// <summary locid="M:J#Number.localeFormat" />
    /// <param name="format" type="String"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "format", type: String}
    ]);
    if (e) throw e;
    return this._toFormattedString(format, Sys.CultureInfo.CurrentCulture);
}
Number.prototype._toFormattedString = function Number$_toFormattedString(format, cultureInfo) {
    if (!format || (format.length === 0) || (format === 'i')) {
        if (cultureInfo && (cultureInfo.name.length > 0)) {
            return this.toLocaleString();
        }
        else {
            return this.toString();
        }
    }
    
    var _percentPositivePattern = ["n %", "n%", "%n" ];
    var _percentNegativePattern = ["-n %", "-n%", "-%n"];
    var _numberNegativePattern = ["(n)","-n","- n","n-","n -"];
    var _currencyPositivePattern = ["$n","n$","$ n","n $"];
    var _currencyNegativePattern = ["($n)","-$n","$-n","$n-","(n$)","-n$","n-$","n$-","-n $","-$ n","n $-","$ n-","$ -n","n- $","($ n)","(n $)"];
    function zeroPad(str, count, left) {
        for (var l=str.length; l < count; l++) {
            str = (left ? ('0' + str) : (str + '0'));
        }
        return str;
    }
    
    function expandNumber(number, precision, groupSizes, sep, decimalChar) {
        
        var curSize = groupSizes[0];
        var curGroupIndex = 1;
        var factor = Math.pow(10, precision);
        var rounded = (Math.round(number * factor) / factor);
        if (!isFinite(rounded)) {
            rounded = number;
        }
        number = rounded;
        
        var numberString = number.toString();
        var right = "";
        var exponent;
        
        
        var split = numberString.split(/e/i);
        numberString = split[0];
        exponent = (split.length > 1 ? parseInt(split[1]) : 0);
        split = numberString.split('.');
        numberString = split[0];
        right = split.length > 1 ? split[1] : "";
        
        var l;
        if (exponent > 0) {
            right = zeroPad(right, exponent, false);
            numberString += right.slice(0, exponent);
            right = right.substr(exponent);
        }
        else if (exponent < 0) {
            exponent = -exponent;
            numberString = zeroPad(numberString, exponent+1, true);
            right = numberString.slice(-exponent, numberString.length) + right;
            numberString = numberString.slice(0, -exponent);
        }
        if (precision > 0) {
            if (right.length > precision) {
                right = right.slice(0, precision);
            }
            else {
                right = zeroPad(right, precision, false);
            }
            right = decimalChar + right;
        }
        else { 
            right = "";
        }
        var stringIndex = numberString.length-1;
        var ret = "";
        while (stringIndex >= 0) {
            if (curSize === 0 || curSize > stringIndex) {
                if (ret.length > 0)
                    return numberString.slice(0, stringIndex + 1) + sep + ret + right;
                else
                    return numberString.slice(0, stringIndex + 1) + right;
            }
            if (ret.length > 0)
                ret = numberString.slice(stringIndex - curSize + 1, stringIndex+1) + sep + ret;
            else
                ret = numberString.slice(stringIndex - curSize + 1, stringIndex+1);
            stringIndex -= curSize;
            if (curGroupIndex < groupSizes.length) {
                curSize = groupSizes[curGroupIndex];
                curGroupIndex++;
            }
        }
        return numberString.slice(0, stringIndex + 1) + sep + ret + right;
    }
    var nf = cultureInfo.numberFormat;
    var number = Math.abs(this);
    if (!format)
        format = "D";
    var precision = -1;
    if (format.length > 1) precision = parseInt(format.slice(1), 10);
    var pattern;
    switch (format.charAt(0)) {
    case "d":
    case "D":
        pattern = 'n';
        if (precision !== -1) {
            number = zeroPad(""+number, precision, true);
        }
        if (this < 0) number = -number;
        break;
    case "c":
    case "C":
        if (this < 0) pattern = _currencyNegativePattern[nf.CurrencyNegativePattern];
        else pattern = _currencyPositivePattern[nf.CurrencyPositivePattern];
        if (precision === -1) precision = nf.CurrencyDecimalDigits;
        number = expandNumber(Math.abs(this), precision, nf.CurrencyGroupSizes, nf.CurrencyGroupSeparator, nf.CurrencyDecimalSeparator);
        break;
    case "n":
    case "N":
        if (this < 0) pattern = _numberNegativePattern[nf.NumberNegativePattern];
        else pattern = 'n';
        if (precision === -1) precision = nf.NumberDecimalDigits;
        number = expandNumber(Math.abs(this), precision, nf.NumberGroupSizes, nf.NumberGroupSeparator, nf.NumberDecimalSeparator);
        break;
    case "p":
    case "P":
        if (this < 0) pattern = _percentNegativePattern[nf.PercentNegativePattern];
        else pattern = _percentPositivePattern[nf.PercentPositivePattern];
        if (precision === -1) precision = nf.PercentDecimalDigits;
        number = expandNumber(Math.abs(this) * 100, precision, nf.PercentGroupSizes, nf.PercentGroupSeparator, nf.PercentDecimalSeparator);
        break;
    default:
        throw Error.format(Sys.Res.formatBadFormatSpecifier);
    }
    var regex = /n|\$|-|%/g;
    var ret = "";
    for (;;) {
        var index = regex.lastIndex;
        var ar = regex.exec(pattern);
        ret += pattern.slice(index, ar ? ar.index : pattern.length);
        if (!ar)
            break;
        switch (ar[0]) {
        case "n":
            ret += number;
            break;
        case "$":
            ret += nf.CurrencySymbol;
            break;
        case "-":
            if (/[1-9]/.test(number)) {
                ret += nf.NegativeSign;
            }
            break;
        case "%":
            ret += nf.PercentSymbol;
            break;
        }
    }
    return ret;
}
 
Sys.CultureInfo = function Sys$CultureInfo(name, numberFormat, dateTimeFormat) {
    /// <summary locid="M:J#Sys.CultureInfo.#ctor" />
    /// <param name="name" type="String"></param>
    /// <param name="numberFormat" type="Object"></param>
    /// <param name="dateTimeFormat" type="Object"></param>
    var e = Function._validateParams(arguments, [
        {name: "name", type: String},
        {name: "numberFormat", type: Object},
        {name: "dateTimeFormat", type: Object}
    ]);
    if (e) throw e;
    this.name = name;
    this.numberFormat = numberFormat;
    this.dateTimeFormat = dateTimeFormat;
}
    function Sys$CultureInfo$_getDateTimeFormats() {
        if (! this._dateTimeFormats) {
            var dtf = this.dateTimeFormat;
            this._dateTimeFormats =
              [ dtf.MonthDayPattern,
                dtf.YearMonthPattern,
                dtf.ShortDatePattern,
                dtf.ShortTimePattern,
                dtf.LongDatePattern,
                dtf.LongTimePattern,
                dtf.FullDateTimePattern,
                dtf.RFC1123Pattern,
                dtf.SortableDateTimePattern,
                dtf.UniversalSortableDateTimePattern ];
        }
        return this._dateTimeFormats;
    }
    function Sys$CultureInfo$_getIndex(value, a1, a2) {
        var upper = this._toUpper(value),
            i = Array.indexOf(a1, upper);
        if (i === -1) {
            i = Array.indexOf(a2, upper);
        }
        return i;
    }
    function Sys$CultureInfo$_getMonthIndex(value) {
        if (!this._upperMonths) {
            this._upperMonths = this._toUpperArray(this.dateTimeFormat.MonthNames);
            this._upperMonthsGenitive = this._toUpperArray(this.dateTimeFormat.MonthGenitiveNames);
        }
        return this._getIndex(value, this._upperMonths, this._upperMonthsGenitive);
    }
    function Sys$CultureInfo$_getAbbrMonthIndex(value) {
        if (!this._upperAbbrMonths) {
            this._upperAbbrMonths = this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthNames);
            this._upperAbbrMonthsGenitive = this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthGenitiveNames);
        }
        return this._getIndex(value, this._upperAbbrMonths, this._upperAbbrMonthsGenitive);
    }
    function Sys$CultureInfo$_getDayIndex(value) {
        if (!this._upperDays) {
            this._upperDays = this._toUpperArray(this.dateTimeFormat.DayNames);
        }
        return Array.indexOf(this._upperDays, this._toUpper(value));
    }
    function Sys$CultureInfo$_getAbbrDayIndex(value) {
        if (!this._upperAbbrDays) {
            this._upperAbbrDays = this._toUpperArray(this.dateTimeFormat.AbbreviatedDayNames);
        }
        return Array.indexOf(this._upperAbbrDays, this._toUpper(value));
    }
    function Sys$CultureInfo$_toUpperArray(arr) {
        var result = [];
        for (var i = 0, il = arr.length; i < il; i++) {
            result[i] = this._toUpper(arr[i]);
        }
        return result;
    }
    function Sys$CultureInfo$_toUpper(value) {
        return value.split("\u00A0").join(' ').toUpperCase();
    }
Sys.CultureInfo.prototype = {
    _getDateTimeFormats: Sys$CultureInfo$_getDateTimeFormats,
    _getIndex: Sys$CultureInfo$_getIndex,
    _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.registerClass('Sys.CultureInfo');
Sys.CultureInfo._parse = function Sys$CultureInfo$_parse(value) {
    var dtf = value.dateTimeFormat;
    if (dtf && !dtf.eras) {
        dtf.eras = value.eras;
    }
    return new Sys.CultureInfo(value.name, value.numberFormat, dtf);
}
Sys.CultureInfo.InvariantCulture = Sys.CultureInfo._parse({"name":"","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":true,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"\u00A4","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":true},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\':\'mm\':\'ss \'GMT\'","ShortDatePattern":"MM/dd/yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\'-\'MM\'-\'dd HH\':\'mm\':\'ss\'Z\'","YearMonthPattern":"yyyy MMMM","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":true,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]},"eras":[1,"A.D.",null,0]});
if (typeof(__cultureInfo) === "object") {
    Sys.CultureInfo.CurrentCulture = Sys.CultureInfo._parse(__cultureInfo);
    delete __cultureInfo;    
}
else {
    Sys.CultureInfo.CurrentCulture = Sys.CultureInfo._parse({"name":"en-US","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, MMMM dd, yyyy h:mm:ss tt","LongDatePattern":"dddd, MMMM dd, yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH\':\'mm\':\'ss \'GMT\'","ShortDatePattern":"M/d/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\'-\'MM\'-\'dd HH\':\'mm\':\'ss\'Z\'","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]},"eras":[1,"A.D.",null,0]});
}
<//-----------------------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------
// MicrosoftAjaxHistory.js
// Microsoft AJAX Framework Application History.
/// <reference name="MicrosoftAjaxComponentModel.js" />
/// <reference name="MicrosoftAjaxSerialization.js" />
Type._registerScript("MicrosoftAjaxHistory.js", ["MicrosoftAjaxComponentModel.js", "MicrosoftAjaxSerialization.js"]);
Sys.HistoryEventArgs = function Sys$HistoryEventArgs(state) {
    /// <summary locid="M:J#Sys.HistoryEventArgs.#ctor" />
    /// <param name="state" type="Object"></param>
    var e = Function._validateParams(arguments, [
        {name: "state", type: Object}
    ]);
    if (e) throw e;
    Sys.HistoryEventArgs.initializeBase(this);
    this._state = state;
}
    function Sys$HistoryEventArgs$get_state() {
        /// <value type="Object" locid="P:J#Sys.HistoryEventArgs.state"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._state;
    }
Sys.HistoryEventArgs.prototype = {
    get_state: Sys$HistoryEventArgs$get_state
}
Sys.HistoryEventArgs.registerClass('Sys.HistoryEventArgs', Sys.EventArgs);
Sys.Application._appLoadHandler = null;
Sys.Application._beginRequestHandler = null;
Sys.Application._clientId = null;
Sys.Application._currentEntry = '';
Sys.Application._endRequestHandler = null;
Sys.Application._history = null;
Sys.Application._enableHistory = false;
Sys.Application._historyEnabledInScriptManager = false;
Sys.Application._historyFrame = null;
Sys.Application._historyInitialized = false;
Sys.Application._historyPointIsNew = false;
Sys.Application._ignoreTimer = false;
Sys.Application._initialState = null;
Sys.Application._state = {};
Sys.Application._timerCookie = 0;
Sys.Application._timerHandler = null;
Sys.Application._uniqueId = null;
Sys._Application.prototype.get_stateString = function Sys$_Application$get_stateString() {
    /// <summary locid="M:J#Sys._Application.get_stateString" />
    if (arguments.length !== 0) throw Error.parameterCount();
    var hash = null;
    
    if (Sys.Browser.agent === Sys.Browser.Firefox) {
        var href = window.location.href;
        var hashIndex = href.indexOf('#');
        if (hashIndex !== -1) {
            hash = href.substring(hashIndex + 1);
        }
        else {
            hash = "";
        }
        return hash;
    }
    else {
        hash = window.location.hash;
    }
    
    if ((hash.length > 0) && (hash.charAt(0) === '#')) {
        hash = hash.substring(1);
    }
    return hash;
};
Sys._Application.prototype.get_enableHistory = function Sys$_Application$get_enableHistory() {
    /// <summary locid="M:J#Sys._Application.get_enableHistory" />
    if (arguments.length !== 0) throw Error.parameterCount();
    return this._enableHistory;
};
Sys._Application.prototype.set_enableHistory = function Sys$_Application$set_enableHistory(value) {
    if (this._initialized && !this._initializing) {
        throw Error.invalidOperation(Sys.Res.historyCannotEnableHistory);
    }
    else if (this._historyEnabledInScriptManager && !value) {
        throw Error.invalidOperation(Sys.Res.invalidHistorySettingCombination);
    }
    this._enableHistory = value;
};
Sys._Application.prototype.add_navigate = function Sys$_Application$add_navigate(handler) {
    /// <summary locid="E:J#Sys.Application.navigate" />
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    this.get_events().addHandler("navigate", handler);
};
Sys._Application.prototype.remove_navigate = function Sys$_Application$remove_navigate(handler) {
    /// <summary locid="M:J#Sys._Application.remove_navigate" />
    /// <param name="handler" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "handler", type: Function}
    ]);
    if (e) throw e;
    this.get_events().removeHandler("navigate", handler);
};
Sys._Application.prototype.addHistoryPoint = function Sys$_Application$addHistoryPoint(state, title) {
    /// <summary locid="M:J#Sys.Application.addHistoryPoint" />
    /// <param name="state" type="Object"></param>
    /// <param name="title" type="String" optional="true" mayBeNull="true"></param>
    var e = 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.historyCannotAddHistoryPointWithHistoryDisabled);
    for (var n in state) {
        var v = state[n];
        var t = typeof(v);
        if ((v !== null) && ((t === 'object') || (t === 'function') || (t === 'undefined'))) {
            throw Error.argument('state', Sys.Res.stateMustBeStringDictionary);
        }
    }
    this._ensureHistory();
    var initialState = this._state;
    for (var key in state) {
        var value = state[key];
        if (value === null) {
            if (typeof(initialState[key]) !== 'undefined') {
                delete initialState[key];
            }
        }
        else {
            initialState[key] = value;
        }
    }
    var entry = this._serializeState(initialState);
    this._historyPointIsNew = true;
    this._setState(entry, title);
    this._raiseNavigate();
};
Sys._Application.prototype.setServerId = function Sys$_Application$setServerId(clientId, uniqueId) {
    /// <summary locid="M:J#Sys.Application.setServerId" />
    /// <param name="clientId" type="String"></param>
    /// <param name="uniqueId" type="String"></param>
    var e = Function._validateParams(arguments, [
        {name: "clientId", type: String},
        {name: "uniqueId", type: String}
    ]);
    if (e) throw e;
    this._clientId = clientId;
    this._uniqueId = uniqueId;
};
Sys._Application.prototype.setServerState = function Sys$_Application$setServerState(value) {
    /// <summary locid="M:J#Sys.Application.setServerState" />
    /// <param name="value" type="String"></param>
    var e = Function._validateParams(arguments, [
        {name: "value", type: String}
    ]);
    if (e) throw e;
    this._ensureHistory();
    this._state.__s = value;
    this._updateHiddenField(value);
};
Sys._Application.prototype._deserializeState = function Sys$_Application$_deserializeState(entry) {
    var result = {};
    entry = entry || '';
    var serverSeparator = entry.indexOf('&&');
    if ((serverSeparator !== -1) && (serverSeparator + 2 < entry.length)) {
        result.__s = entry.substr(serverSeparator + 2);
        entry = entry.substr(0, serverSeparator);
    }
    var tokens = entry.split('&');
    for (var i = 0, l = tokens.length; i < l; i++) {
        var token = tokens[i];
        var equal = token.indexOf('=');
        if ((equal !== -1) && (equal + 1 < token.length)) {
            var name = token.substr(0, equal);
            var value = token.substr(equal + 1);
            result[name] = decodeURIComponent(value);
        }
    }
    return result;
};
Sys._Application.prototype._enableHistoryInScriptManager = function Sys$_Application$_enableHistoryInScriptManager() {
    this._enableHistory = true;
    this._historyEnabledInScriptManager = true;
};
Sys._Application.prototype._ensureHistory = function Sys$_Application$_ensureHistory() {
    if (!this._historyInitialized && this._enableHistory) {
        if ((Sys.Browser.agent === Sys.Browser.InternetExplorer) && 
            ((!document.documentMode) || document.documentMode < 8)) {
            this._historyFrame = document.getElementById('__historyFrame');
            if (!this._historyFrame) throw Error.invalidOperation(Sys.Res.historyMissingFrame);
            this._ignoreIFrame = true;
        }
        this._timerHandler = Function.createDelegate(this, this._onIdle);
        this._timerCookie = window.setTimeout(this._timerHandler, 100);
        
        try {
            this._initialState = this._deserializeState(this.get_stateString());
        } catch(e) {}
        
        this._historyInitialized = true;
    }
};
Sys._Application.prototype._navigate = function Sys$_Application$_navigate(entry) {
    this._ensureHistory();
    var state = this._deserializeState(entry);
    
    if (this._uniqueId) {
        var oldServerEntry = this._state.__s || '';
        var newServerEntry = state.__s || '';
        if (newServerEntry !== oldServerEntry) {
            this._updateHiddenField(newServerEntry);
            __doPostBack(this._uniqueId, newServerEntry);
            this._state = state;
            return;
        }
    }
    this._setState(entry);
    this._state = state;
    this._raiseNavigate();
};
Sys._Application.prototype._onIdle = function Sys$_Application$_onIdle() {
    delete this._timerCookie;
    
    var entry = this.get_stateString();
    if (entry !== this._currentEntry) {
        if (!this._ignoreTimer) {
            this._historyPointIsNew = false;
            this._navigate(entry);
        }
    }
    else {
        this._ignoreTimer = false;
    }
    this._timerCookie = window.setTimeout(this._timerHandler, 100);
};
Sys._Application.prototype._onIFrameLoad = function Sys$_Application$_onIFrameLoad(entry) {
    if ((!document.documentMode) || document.documentMode < 8 ) {
        this._ensureHistory();
        if (!this._ignoreIFrame) {
            this._historyPointIsNew = false;
            this._navigate(entry);
        }
        this._ignoreIFrame = false;
    }
};
Sys._Application.prototype._onPageRequestManagerBeginRequest = function Sys$_Application$_onPageRequestManagerBeginRequest(sender, args) {
    this._ignoreTimer = true;
    this._originalTitle = document.title;
};
Sys._Application.prototype._onPageRequestManagerEndRequest = function Sys$_Application$_onPageRequestManagerEndRequest(sender, args) {
    var dataItem = args.get_dataItems()[this._clientId];
    var originalTitle = this._originalTitle;
    this._originalTitle = null;
    var eventTarget = document.getElementById("__EVENTTARGET");
    if (eventTarget && eventTarget.value === this._uniqueId) {
        eventTarget.value = '';
    }
    if (typeof(dataItem) !== 'undefined') {
        this.setServerState(dataItem);
        this._historyPointIsNew = true;
    }
    else {
        this._ignoreTimer = false;
    }
    var entry = this._serializeState(this._state);
    if (entry !== this._currentEntry) {
        this._ignoreTimer = true;
        if (typeof(originalTitle) === "string") {
            if (Sys.Browser.agent !== Sys.Browser.InternetExplorer || Sys.Browser.version > 7) {
                var newTitle = document.title;
                document.title = originalTitle;
                this._setState(entry);
                document.title = newTitle;
            }
            else {
                this._setState(entry);
            }
            this._raiseNavigate();
        }
        else {
            this._setState(entry);
            this._raiseNavigate();
        }
    }
};
Sys._Application.prototype._raiseNavigate = function Sys$_Application$_raiseNavigate() {
    var isNew = this._historyPointIsNew;
    var h = this.get_events().getHandler("navigate");
    var stateClone = {};
    for (var key in this._state) {
        if (key !== '__s') {
            stateClone[key] = this._state[key];
        }
    }
    var args = new Sys.HistoryEventArgs(stateClone);
    if (h) {
        h(this, args);
    }
    if (!isNew) {
        var err;
        try {
            if ((Sys.Browser.agent === Sys.Browser.Firefox) && window.location.hash &&
                (!window.frameElement || window.top.location.hash)) {
                (Sys.Browser.version < 3.5) ?
                    window.history.go(0) :
                    location.hash = this.get_stateString();
            }
        }
        catch(err) {
        }
    }
};
Sys._Application.prototype._serializeState = function Sys$_Application$_serializeState(state) {
    var serialized = [];
    for (var key in state) {
        var value = state[key];
        if (key === '__s') {
            var serverState = value;
        }
        else {
            if (key.indexOf('=') !== -1) throw Error.argument('state', Sys.Res.stateFieldNameInvalid);
            serialized[serialized.length] = key + '=' + encodeURIComponent(value);
        }
    }
    return serialized.join('&') + (serverState ? '&&' + serverState : '');
};
Sys._Application.prototype._setState = function Sys$_Application$_setState(entry, title) {
    if (this._enableHistory) {
        entry = entry || '';
        if (entry !== this._currentEntry) {
            if (window.theForm) {
                var action = window.theForm.action;
                var hashIndex = action.indexOf('#');
                window.theForm.action = ((hashIndex !== -1) ? action.substring(0, hashIndex) : action) + '#' + entry;
            }
        
            if (this._historyFrame && this._historyPointIsNew) {
                var newDiv = document.createElement("div");
                newDiv.appendChild(document.createTextNode(title || document.title));
                var htmlEncodedTitle = newDiv.innerHTML;
                this._ignoreIFrame = true;
                var frameDoc = this._historyFrame.contentWindow.document;
                frameDoc.open("javascript:'<html></html>'");
                frameDoc.write("<html><head><title>" + htmlEncodedTitle +
                    "</title><scri" + "pt type=\"text/javascript\">parent.Sys.Application._onIFrameLoad(" + 
                    Sys.Serialization.JavaScriptSerializer.serialize(entry) +
                    ");</scri" + "pt></head><body></body></html>");
                frameDoc.close();
            }
            this._ignoreTimer = false;
            this._currentEntry = entry;
            if (this._historyFrame || this._historyPointIsNew) {
                var currentHash = this.get_stateString();
                if (entry !== currentHash) {
                    var loc = document.location;
                    if (loc.href.length - loc.hash.length + entry.length > 2048) {
                        throw Error.invalidOperation(String.format(Sys.Res.urlTooLong, 2048));
                    }
                    window.location.hash = entry;
                    this._currentEntry = this.get_stateString();
                    if ((typeof(title) !== 'undefined') && (title !== null)) {
                        document.title = title;
                    }
                }
            }
            this._historyPointIsNew = false;
        }
    }
};
Sys._Application.prototype._updateHiddenField = function Sys$_Application$_updateHiddenField(value) {
    if (this._clientId) {
        var serverStateField = document.getElementById(this._clientId);
        if (serverStateField) {
            serverStateField.value = value;
        }
    }
};
>�//-----------------------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------
// MicrosoftAjaxNetwork.js
// Microsoft AJAX Framework Networking.
/// <reference name="MicrosoftAjaxSerialization.js" />
Type._registerScript("MicrosoftAjaxNetwork.js", ["MicrosoftAjaxSerialization.js"]);
 
if (!window.XMLHttpRequest) {
    window.XMLHttpRequest = function window$XMLHttpRequest() {
        var progIDs = [ 'Msxml2.XMLHTTP.3.0', 'Msxml2.XMLHTTP' ];
        for (var i = 0, l = progIDs.length; i < l; i++) {
            try {
                return new ActiveXObject(progIDs[i]);
            }
            catch (ex) {
            }
        }
        return null;
    }
}
Type.registerNamespace('Sys.Net');
 
Sys.Net.WebRequestExecutor = function Sys$Net$WebRequestExecutor() {
    /// <summary locid="M:J#Sys.Net.WebRequestExecutor.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    this._webRequest = null;
    this._resultObject = null;
}
    function Sys$Net$WebRequestExecutor$get_webRequest() {
        /// <value type="Sys.Net.WebRequest" locid="P:J#Sys.Net.WebRequestExecutor.webRequest"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._webRequest;
    }
    function Sys$Net$WebRequestExecutor$_set_webRequest(value) {
        if (this.get_started()) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallOnceStarted, 'set_webRequest'));
        }
        this._webRequest = value;
    }
    function Sys$Net$WebRequestExecutor$get_started() {
        /// <value type="Boolean" locid="P:J#Sys.Net.WebRequestExecutor.started"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_responseAvailable() {
        /// <value type="Boolean" locid="P:J#Sys.Net.WebRequestExecutor.responseAvailable"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_timedOut() {
        /// <value type="Boolean" locid="P:J#Sys.Net.WebRequestExecutor.timedOut"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_aborted() {
        /// <value type="Boolean" locid="P:J#Sys.Net.WebRequestExecutor.aborted"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_responseData() {
        /// <value type="String" locid="P:J#Sys.Net.WebRequestExecutor.responseData"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_statusCode() {
        /// <value type="Number" locid="P:J#Sys.Net.WebRequestExecutor.statusCode"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_statusText() {
        /// <value type="String" locid="P:J#Sys.Net.WebRequestExecutor.statusText"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_xml() {
        /// <value locid="P:J#Sys.Net.WebRequestExecutor.xml"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$get_object() {
        /// <value locid="P:J#Sys.Net.WebRequestExecutor.object"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._resultObject) {
            this._resultObject = Sys.Serialization.JavaScriptSerializer.deserialize(this.get_responseData());
        }
        return this._resultObject;
    }
    function Sys$Net$WebRequestExecutor$executeRequest() {
        /// <summary locid="M:J#Sys.Net.WebRequestExecutor.executeRequest" />
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$abort() {
        /// <summary locid="M:J#Sys.Net.WebRequestExecutor.abort" />
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$getResponseHeader(header) {
        /// <summary locid="M:J#Sys.Net.WebRequestExecutor.getResponseHeader" />
        /// <param name="header" type="String"></param>
        var e = Function._validateParams(arguments, [
            {name: "header", type: String}
        ]);
        if (e) throw e;
        throw Error.notImplemented();
    }
    function Sys$Net$WebRequestExecutor$getAllResponseHeaders() {
        /// <summary locid="M:J#Sys.Net.WebRequestExecutor.getAllResponseHeaders" />
        if (arguments.length !== 0) throw Error.parameterCount();
        throw Error.notImplemented();
    }
Sys.Net.WebRequestExecutor.prototype = {
    get_webRequest: Sys$Net$WebRequestExecutor$get_webRequest,
    _set_webRequest: Sys$Net$WebRequestExecutor$_set_webRequest,
    get_started: Sys$Net$WebRequestExecutor$get_started,
    get_responseAvailable: Sys$Net$WebRequestExecutor$get_responseAvailable,
    get_timedOut: Sys$Net$WebRequestExecutor$get_timedOut,
    get_aborted: Sys$Net$WebRequestExecutor$get_aborted,
    get_responseData: Sys$Net$WebRequestExecutor$get_responseData,
    get_statusCode: Sys$Net$WebRequestExecutor$get_statusCode,
    get_statusText: Sys$Net$WebRequestExecutor$get_statusText,
    get_xml: Sys$Net$WebRequestExecutor$get_xml,
    get_object: Sys$Net$WebRequestExecutor$get_object,
    executeRequest: Sys$Net$WebRequestExecutor$executeRequest,
    abort: Sys$Net$WebRequestExecutor$abort,
    getResponseHeader: Sys$Net$WebRequestExecutor$getResponseHeader,
    getAllResponseHeaders: Sys$Net$WebRequestExecutor$getAllResponseHeaders
}
Sys.Net.WebRequestExecutor.registerClass('Sys.Net.WebRequestExecutor');
 
Sys.Net.XMLDOM = function Sys$Net$XMLDOM(markup) {
    /// <summary locid="M:J#Sys.Net.XMLDOM.#ctor" />
    /// <param name="markup" type="String"></param>
    var e = Function._validateParams(arguments, [
        {name: "markup", type: String}
    ]);
    if (e) throw e;
    if (!window.DOMParser) {
        var progIDs = [ 'Msxml2.DOMDocument.3.0', 'Msxml2.DOMDocument' ];
        for (var i = 0, l = progIDs.length; i < l; i++) {
            try {
                var xmlDOM = new ActiveXObject(progIDs[i]);
                xmlDOM.async = false;
                xmlDOM.loadXML(markup);
                xmlDOM.setProperty('SelectionLanguage', 'XPath');
                return xmlDOM;
            }
            catch (ex) {
            }
        }
    }
    else {
        try {
            var domParser = new window.DOMParser();
            return domParser.parseFromString(markup, 'text/xml');
        }
        catch (ex) {
        }
    }
    return null;
}
Sys.Net.XMLHttpExecutor = function Sys$Net$XMLHttpExecutor() {
    /// <summary locid="M:J#Sys.Net.XMLHttpExecutor.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    Sys.Net.XMLHttpExecutor.initializeBase(this);
    var _this = this;
    this._xmlHttpRequest = null;
    this._webRequest = null;
    this._responseAvailable = false;
    this._timedOut = false;
    this._timer = null;
    this._aborted = false;
    this._started = false;
    this._onReadyStateChange = (function () {
        
        if (_this._xmlHttpRequest.readyState === 4 ) {
            try {
                if (typeof(_this._xmlHttpRequest.status) === "undefined" || _this._xmlHttpRequest.status === 0) {
                    return;
                }
            }
            catch(ex) {
                return;
            }
            
            _this._clearTimer();
            _this._responseAvailable = true;
                _this._webRequest.completed(Sys.EventArgs.Empty);
                if (_this._xmlHttpRequest != null) {
                    _this._xmlHttpRequest.onreadystatechange = Function.emptyMethod;
                    _this._xmlHttpRequest = null;
                }
        }
    });
    this._clearTimer = (function() {
        if (_this._timer != null) {
            window.clearTimeout(_this._timer);
            _this._timer = null;
        }
    });
    this._onTimeout = (function() {
        if (!_this._responseAvailable) {
            _this._clearTimer();
            _this._timedOut = true;
            _this._xmlHttpRequest.onreadystatechange = Function.emptyMethod;
            _this._xmlHttpRequest.abort();
            _this._webRequest.completed(Sys.EventArgs.Empty);
            _this._xmlHttpRequest = null;
        }
    });
}
    function Sys$Net$XMLHttpExecutor$get_timedOut() {
        /// <value type="Boolean" locid="P:J#Sys.Net.XMLHttpExecutor.timedOut"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._timedOut;
    }
    function Sys$Net$XMLHttpExecutor$get_started() {
        /// <value type="Boolean" locid="P:J#Sys.Net.XMLHttpExecutor.started"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._started;
    }
    function Sys$Net$XMLHttpExecutor$get_responseAvailable() {
        /// <value type="Boolean" locid="P:J#Sys.Net.XMLHttpExecutor.responseAvailable"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._responseAvailable;
    }
    function Sys$Net$XMLHttpExecutor$get_aborted() {
        /// <value type="Boolean" locid="P:J#Sys.Net.XMLHttpExecutor.aborted"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._aborted;
    }
    function Sys$Net$XMLHttpExecutor$executeRequest() {
        /// <summary locid="M:J#Sys.Net.XMLHttpExecutor.executeRequest" />
        if (arguments.length !== 0) throw Error.parameterCount();
        this._webRequest = this.get_webRequest();
        if (this._started) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallOnceStarted, 'executeRequest'));
        }
        if (this._webRequest === null) {
            throw Error.invalidOperation(Sys.Res.nullWebRequest);
        }
        var body = this._webRequest.get_body();
        var headers = this._webRequest.get_headers();
        this._xmlHttpRequest = new XMLHttpRequest();
        this._xmlHttpRequest.onreadystatechange = this._onReadyStateChange;
        var verb = this._webRequest.get_httpVerb();
        this._xmlHttpRequest.open(verb, this._webRequest.getResolvedUrl(), true );
        this._xmlHttpRequest.setRequestHeader("X-Requested-With", "XMLHttpRequest");
        if (headers) {
            for (var header in headers) {
                var val = headers[header];
                if (typeof(val) !== "function")
                    this._xmlHttpRequest.setRequestHeader(header, val);
            }
        }
        if (verb.toLowerCase() === "post") {
            if ((headers === null) || !headers['Content-Type']) {
                this._xmlHttpRequest.setRequestHeader('Content-Type', 'application/x-www-form-urlencoded; charset=utf-8');
            }
            if (!body) {
                body = "";
            }
        }
        var timeout = this._webRequest.get_timeout();
        if (timeout > 0) {
            this._timer = window.setTimeout(Function.createDelegate(this, this._onTimeout), timeout);
        }
        this._xmlHttpRequest.send(body);
        this._started = true;
    }
    function Sys$Net$XMLHttpExecutor$getResponseHeader(header) {
        /// <summary locid="M:J#Sys.Net.XMLHttpExecutor.getResponseHeader" />
        /// <param name="header" type="String"></param>
        /// <returns type="String"></returns>
        var e = Function._validateParams(arguments, [
            {name: "header", type: String}
        ]);
        if (e) throw e;
        if (!this._responseAvailable) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'getResponseHeader'));
        }
        if (!this._xmlHttpRequest) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'getResponseHeader'));
        }
        var result;
        try {
            result = this._xmlHttpRequest.getResponseHeader(header);
        } catch (e) {
        }
        if (!result) result = "";
        return result;
    }
    function Sys$Net$XMLHttpExecutor$getAllResponseHeaders() {
        /// <summary locid="M:J#Sys.Net.XMLHttpExecutor.getAllResponseHeaders" />
        /// <returns type="String"></returns>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._responseAvailable) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'getAllResponseHeaders'));
        }
        if (!this._xmlHttpRequest) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'getAllResponseHeaders'));
        }
        return this._xmlHttpRequest.getAllResponseHeaders();
    }
    function Sys$Net$XMLHttpExecutor$get_responseData() {
        /// <value type="String" locid="P:J#Sys.Net.XMLHttpExecutor.responseData"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._responseAvailable) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'get_responseData'));
        }
        if (!this._xmlHttpRequest) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'get_responseData'));
        }
        return this._xmlHttpRequest.responseText;
    }
    function Sys$Net$XMLHttpExecutor$get_statusCode() {
        /// <value type="Number" locid="P:J#Sys.Net.XMLHttpExecutor.statusCode"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._responseAvailable) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'get_statusCode'));
        }
        if (!this._xmlHttpRequest) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'get_statusCode'));
        }
        var result = 0;
        try {
            result = this._xmlHttpRequest.status;
        }
        catch(ex) {
        }
        return result;
    }
    function Sys$Net$XMLHttpExecutor$get_statusText() {
        /// <value type="String" locid="P:J#Sys.Net.XMLHttpExecutor.statusText"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._responseAvailable) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'get_statusText'));
        }
        if (!this._xmlHttpRequest) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'get_statusText'));
        }
        return this._xmlHttpRequest.statusText;
    }
    function Sys$Net$XMLHttpExecutor$get_xml() {
        /// <value locid="P:J#Sys.Net.XMLHttpExecutor.xml"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._responseAvailable) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, 'get_xml'));
        }
        if (!this._xmlHttpRequest) {
            throw Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, 'get_xml'));
        }
        var xml = this._xmlHttpRequest.responseXML;
        if (!xml || !xml.documentElement) {
            xml = Sys.Net.XMLDOM(this._xmlHttpRequest.responseText);
            if (!xml || !xml.documentElement)
                return null;
        }
        else if (navigator.userAgent.indexOf('MSIE') !== -1 && typeof(xml.setProperty) != 'undefined') {
            xml.setProperty('SelectionLanguage', 'XPath');
        }
        if (xml.documentElement.namespaceURI === "http://www.mozilla.org/newlayout/xml/parsererror.xml" &&
            xml.documentElement.tagName === "parsererror") {
            return null;
        }
        
        if (xml.documentElement.firstChild && xml.documentElement.firstChild.tagName === "parsererror") {
            return null;
        }
        
        return xml;
    }
    function Sys$Net$XMLHttpExecutor$abort() {
        /// <summary locid="M:J#Sys.Net.XMLHttpExecutor.abort" />
        if (arguments.length !== 0) throw Error.parameterCount();
        if (!this._started) {
            throw Error.invalidOperation(Sys.Res.cannotAbortBeforeStart);
        }
        if (this._aborted || this._responseAvailable || this._timedOut)
            return;
        this._aborted = true;
        this._clearTimer();
        if (this._xmlHttpRequest && !this._responseAvailable) {
            this._xmlHttpRequest.onreadystatechange = Function.emptyMethod;
            this._xmlHttpRequest.abort();
            
            this._xmlHttpRequest = null;            
            this._webRequest.completed(Sys.EventArgs.Empty);
        }
    }
Sys.Net.XMLHttpExecutor.prototype = {
    get_timedOut: Sys$Net$XMLHttpExecutor$get_timedOut,
    get_started: Sys$Net$XMLHttpExecutor$get_started,
    get_responseAvailable: Sys$Net$XMLHttpExecutor$get_responseAvailable,
    get_aborted: Sys$Net$XMLHttpExecutor$get_aborted,
    executeRequest: Sys$Net$XMLHttpExecutor$executeRequest,
    getResponseHeader: Sys$Net$XMLHttpExecutor$getResponseHeader,
    getAllResponseHeaders: Sys$Net$XMLHttpExecutor$getAllResponseHeaders,
    get_responseData: Sys$Net$XMLHttpExecutor$get_responseData,
    get_statusCode: Sys$Net$XMLHttpExecutor$get_statusCode,
    get_statusText: Sys$Net$XMLHttpExecutor$get_statusText,
    get_xml: Sys$Net$XMLHttpExecutor$get_xml,
    abort: Sys$Net$XMLHttpExecutor$abort
}
Sys.Net.XMLHttpExecutor.registerClass('Sys.Net.XMLHttpExecutor', Sys.Net.WebRequestExecutor);
 
Sys.Net._WebRequestManager = function Sys$Net$_WebRequestManager() {
    /// <summary locid="P:J#Sys.Net.WebRequestManager.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    this._defaultTimeout = 0;
    this._defaultExecutorType = "Sys.Net.XMLHttpExecutor";
}
    function Sys$Net$_WebRequestManager$add_invokingRequest(handler) {
        /// <summary locid="E:J#Sys.Net.WebRequestManager.invokingRequest" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().addHandler("invokingRequest", handler);
    }
    function Sys$Net$_WebRequestManager$remove_invokingRequest(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().removeHandler("invokingRequest", handler);
    }
    function Sys$Net$_WebRequestManager$add_completedRequest(handler) {
        /// <summary locid="E:J#Sys.Net.WebRequestManager.completedRequest" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().addHandler("completedRequest", handler);
    }
    function Sys$Net$_WebRequestManager$remove_completedRequest(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().removeHandler("completedRequest", handler);
    }
    function Sys$Net$_WebRequestManager$_get_eventHandlerList() {
        if (!this._events) {
            this._events = new Sys.EventHandlerList();
        }
        return this._events;
    }
    function Sys$Net$_WebRequestManager$get_defaultTimeout() {
        /// <value type="Number" locid="P:J#Sys.Net.WebRequestManager.defaultTimeout"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._defaultTimeout;
    }
    function Sys$Net$_WebRequestManager$set_defaultTimeout(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Number}]);
        if (e) throw e;
        if (value < 0) {
            throw Error.argumentOutOfRange("value", value, Sys.Res.invalidTimeout);
        }
        this._defaultTimeout = value;
    }
    function Sys$Net$_WebRequestManager$get_defaultExecutorType() {
        /// <value type="String" locid="P:J#Sys.Net.WebRequestManager.defaultExecutorType"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._defaultExecutorType;
    }
    function Sys$Net$_WebRequestManager$set_defaultExecutorType(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        this._defaultExecutorType = value;
    }
    function Sys$Net$_WebRequestManager$executeRequest(webRequest) {
        /// <summary locid="M:J#Sys.Net.WebRequestManager.executeRequest" />
        /// <param name="webRequest" type="Sys.Net.WebRequest"></param>
        var e = Function._validateParams(arguments, [
            {name: "webRequest", type: Sys.Net.WebRequest}
        ]);
        if (e) throw e;
        var executor = webRequest.get_executor();
        if (!executor) {
            var failed = false;
            try {
                var executorType = eval(this._defaultExecutorType);
                executor = new executorType();
            } catch (e) {
                failed = true;
            }
            if (failed  || !Sys.Net.WebRequestExecutor.isInstanceOfType(executor) || !executor) {
                throw Error.argument("defaultExecutorType", String.format(Sys.Res.invalidExecutorType, this._defaultExecutorType));
            }
            webRequest.set_executor(executor);
        }
        if (executor.get_aborted()) {
            return;
        }
        var evArgs = new Sys.Net.NetworkRequestEventArgs(webRequest);
        var handler = this._get_eventHandlerList().getHandler("invokingRequest");
        if (handler) {
            handler(this, evArgs);
        }
        if (!evArgs.get_cancel()) {
            executor.executeRequest();
        }
    }
Sys.Net._WebRequestManager.prototype = {
    add_invokingRequest: Sys$Net$_WebRequestManager$add_invokingRequest,
    remove_invokingRequest: Sys$Net$_WebRequestManager$remove_invokingRequest,
    add_completedRequest: Sys$Net$_WebRequestManager$add_completedRequest,
    remove_completedRequest: Sys$Net$_WebRequestManager$remove_completedRequest,
    _get_eventHandlerList: Sys$Net$_WebRequestManager$_get_eventHandlerList,
    get_defaultTimeout: Sys$Net$_WebRequestManager$get_defaultTimeout,
    set_defaultTimeout: Sys$Net$_WebRequestManager$set_defaultTimeout,
    get_defaultExecutorType: Sys$Net$_WebRequestManager$get_defaultExecutorType,
    set_defaultExecutorType: Sys$Net$_WebRequestManager$set_defaultExecutorType,
    executeRequest: Sys$Net$_WebRequestManager$executeRequest
}
Sys.Net._WebRequestManager.registerClass('Sys.Net._WebRequestManager');
Sys.Net.WebRequestManager = new Sys.Net._WebRequestManager();
 
Sys.Net.NetworkRequestEventArgs = function Sys$Net$NetworkRequestEventArgs(webRequest) {
    /// <summary locid="M:J#Sys.Net.NetworkRequestEventArgs.#ctor" />
    /// <param name="webRequest" type="Sys.Net.WebRequest"></param>
    var e = Function._validateParams(arguments, [
        {name: "webRequest", type: Sys.Net.WebRequest}
    ]);
    if (e) throw e;
    Sys.Net.NetworkRequestEventArgs.initializeBase(this);
    this._webRequest = webRequest;
}
    function Sys$Net$NetworkRequestEventArgs$get_webRequest() {
        /// <value type="Sys.Net.WebRequest" locid="P:J#Sys.Net.NetworkRequestEventArgs.webRequest"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._webRequest;
    }
Sys.Net.NetworkRequestEventArgs.prototype = {
    get_webRequest: Sys$Net$NetworkRequestEventArgs$get_webRequest
}
Sys.Net.NetworkRequestEventArgs.registerClass('Sys.Net.NetworkRequestEventArgs', Sys.CancelEventArgs);
 
Sys.Net.WebRequest = function Sys$Net$WebRequest() {
    /// <summary locid="M:J#Sys.Net.WebRequest.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
    this._url = "";
    this._headers = { };
    this._body = null;
    this._userContext = null;
    this._httpVerb = null;
    this._executor = null;
    this._invokeCalled = false;
    this._timeout = 0;
}
    function Sys$Net$WebRequest$add_completed(handler) {
    /// <summary locid="E:J#Sys.Net.WebRequest.completed" />
    var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
    if (e) throw e;
        this._get_eventHandlerList().addHandler("completed", handler);
    }
    function Sys$Net$WebRequest$remove_completed(handler) {
    var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
    if (e) throw e;
        this._get_eventHandlerList().removeHandler("completed", handler);
    }
    function Sys$Net$WebRequest$completed(eventArgs) {
        /// <summary locid="M:J#Sys.Net.WebRequest.completed" />
        /// <param name="eventArgs" type="Sys.EventArgs"></param>
        var e = Function._validateParams(arguments, [
            {name: "eventArgs", type: Sys.EventArgs}
        ]);
        if (e) throw e;
        var handler = Sys.Net.WebRequestManager._get_eventHandlerList().getHandler("completedRequest");
        if (handler) {
            handler(this._executor, eventArgs);
        }
        handler = this._get_eventHandlerList().getHandler("completed");
        if (handler) {
            handler(this._executor, eventArgs);
        }
    }
    function Sys$Net$WebRequest$_get_eventHandlerList() {
        if (!this._events) {
            this._events = new Sys.EventHandlerList();
        }
        return this._events;
    }
    function Sys$Net$WebRequest$get_url() {
        /// <value type="String" locid="P:J#Sys.Net.WebRequest.url"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._url;
    }
    function Sys$Net$WebRequest$set_url(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        this._url = value;
    }
    function Sys$Net$WebRequest$get_headers() {
        /// <value locid="P:J#Sys.Net.WebRequest.headers"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._headers;
    }
    function Sys$Net$WebRequest$get_httpVerb() {
        /// <value type="String" locid="P:J#Sys.Net.WebRequest.httpVerb"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this._httpVerb === null) {
            if (this._body === null) {
                return "GET";
            }
            return "POST";
        }
        return this._httpVerb;
    }
    function Sys$Net$WebRequest$set_httpVerb(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        if (value.length === 0) {
            throw Error.argument('value', Sys.Res.invalidHttpVerb);
        }
        this._httpVerb = value;
    }
    function Sys$Net$WebRequest$get_body() {
        /// <value mayBeNull="true" locid="P:J#Sys.Net.WebRequest.body"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._body;
    }
    function Sys$Net$WebRequest$set_body(value) {
        var e = Function._validateParams(arguments, [{name: "value", mayBeNull: true}]);
        if (e) throw e;
        this._body = value;
    }
    function Sys$Net$WebRequest$get_userContext() {
        /// <value mayBeNull="true" locid="P:J#Sys.Net.WebRequest.userContext"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._userContext;
    }
    function Sys$Net$WebRequest$set_userContext(value) {
        var e = Function._validateParams(arguments, [{name: "value", mayBeNull: true}]);
        if (e) throw e;
        this._userContext = value;
    }
    function Sys$Net$WebRequest$get_executor() {
        /// <value type="Sys.Net.WebRequestExecutor" locid="P:J#Sys.Net.WebRequest.executor"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._executor;
    }
    function Sys$Net$WebRequest$set_executor(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Sys.Net.WebRequestExecutor}]);
        if (e) throw e;
        if (this._executor !== null && this._executor.get_started()) {
            throw Error.invalidOperation(Sys.Res.setExecutorAfterActive);
        }
        this._executor = value;
        this._executor._set_webRequest(this);
    }
    function Sys$Net$WebRequest$get_timeout() {
        /// <value type="Number" locid="P:J#Sys.Net.WebRequest.timeout"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this._timeout === 0) {
            return Sys.Net.WebRequestManager.get_defaultTimeout();
        }
        return this._timeout;
    }
    function Sys$Net$WebRequest$set_timeout(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Number}]);
        if (e) throw e;
        if (value < 0) {
            throw Error.argumentOutOfRange("value", value, Sys.Res.invalidTimeout);
        }
        this._timeout = value;
    }
    function Sys$Net$WebRequest$getResolvedUrl() {
        /// <summary locid="M:J#Sys.Net.WebRequest.getResolvedUrl" />
        /// <returns type="String"></returns>
        if (arguments.length !== 0) throw Error.parameterCount();
        return Sys.Net.WebRequest._resolveUrl(this._url);
    }
    function Sys$Net$WebRequest$invoke() {
        /// <summary locid="M:J#Sys.Net.WebRequest.invoke" />
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this._invokeCalled) {
            throw Error.invalidOperation(Sys.Res.invokeCalledTwice);
        }
        Sys.Net.WebRequestManager.executeRequest(this);
        this._invokeCalled = true;
    }
Sys.Net.WebRequest.prototype = {
    add_completed: Sys$Net$WebRequest$add_completed,
    remove_completed: Sys$Net$WebRequest$remove_completed,
    completed: Sys$Net$WebRequest$completed,
    _get_eventHandlerList: Sys$Net$WebRequest$_get_eventHandlerList,
    get_url: Sys$Net$WebRequest$get_url,
    set_url: Sys$Net$WebRequest$set_url,
    get_headers: Sys$Net$WebRequest$get_headers,
    get_httpVerb: Sys$Net$WebRequest$get_httpVerb,
    set_httpVerb: Sys$Net$WebRequest$set_httpVerb,
    get_body: Sys$Net$WebRequest$get_body,
    set_body: Sys$Net$WebRequest$set_body,
    get_userContext: Sys$Net$WebRequest$get_userContext,
    set_userContext: Sys$Net$WebRequest$set_userContext,
    get_executor: Sys$Net$WebRequest$get_executor,
    set_executor: Sys$Net$WebRequest$set_executor,
    get_timeout: Sys$Net$WebRequest$get_timeout,
    set_timeout: Sys$Net$WebRequest$set_timeout,
    getResolvedUrl: Sys$Net$WebRequest$getResolvedUrl,
    invoke: Sys$Net$WebRequest$invoke
}
Sys.Net.WebRequest._resolveUrl = function Sys$Net$WebRequest$_resolveUrl(url, baseUrl) {
    if (url && url.indexOf('://') !== -1) {
        return url;
    }
    if (!baseUrl || baseUrl.length === 0) {
        var baseElement = document.getElementsByTagName('base')[0];
        if (baseElement && baseElement.href && baseElement.href.length > 0) {
            baseUrl = baseElement.href;
        }
        else {
            baseUrl = document.URL;
        }
    }
    var qsStart = baseUrl.indexOf('?');
    if (qsStart !== -1) {
        baseUrl = baseUrl.substr(0, qsStart);
    }
    qsStart = baseUrl.indexOf('#');
    if (qsStart !== -1) {
        baseUrl = baseUrl.substr(0, qsStart);
    }
    baseUrl = baseUrl.substr(0, baseUrl.lastIndexOf('/') + 1);
    if (!url || url.length === 0) {
        return baseUrl;
    }
    if (url.charAt(0) === '/') {
        var slashslash = baseUrl.indexOf('://');
        if (slashslash === -1) {
            throw Error.argument("baseUrl", Sys.Res.badBaseUrl1);
        }
        var nextSlash = baseUrl.indexOf('/', slashslash + 3);
        if (nextSlash === -1) {
            throw Error.argument("baseUrl", Sys.Res.badBaseUrl2);
        }
        return baseUrl.substr(0, nextSlash) + url;
    }
    else {
        var lastSlash = baseUrl.lastIndexOf('/');
        if (lastSlash === -1) {
            throw Error.argument("baseUrl", Sys.Res.badBaseUrl3);
        }
        return baseUrl.substr(0, lastSlash+1) + url;
    }
}
Sys.Net.WebRequest._createQueryString = function Sys$Net$WebRequest$_createQueryString(queryString, encodeMethod, addParams) {
    encodeMethod = encodeMethod || encodeURIComponent;
    var i = 0, obj, val, arg, sb = new Sys.StringBuilder();
    if (queryString) {
        for (arg in queryString) {
            obj = queryString[arg];
            if (typeof(obj) === "function") continue;
            val = Sys.Serialization.JavaScriptSerializer.serialize(obj);
            if (i++) {
                sb.append('&');
            }
            sb.append(arg);
            sb.append('=');
            sb.append(encodeMethod(val));
        }
    }
    if (addParams) {
        if (i) {
            sb.append('&');
        }
        sb.append(addParams);
    }
    return sb.toString();
}
Sys.Net.WebRequest._createUrl = function Sys$Net$WebRequest$_createUrl(url, queryString, addParams) {
    if (!queryString && !addParams) {
        return url;
    }
    var qs = Sys.Net.WebRequest._createQueryString(queryString, null, addParams);
    return qs.length
        ? url + ((url && url.indexOf('?') >= 0) ? "&" : "?") + qs
        : url;
}
Sys.Net.WebRequest.registerClass('Sys.Net.WebRequest');
 
Sys._ScriptLoaderTask = function Sys$_ScriptLoaderTask(scriptElement, completedCallback) {
    /// <summary locid="M:J#Sys._ScriptLoaderTask.#ctor" />
    /// <param name="scriptElement" domElement="true"></param>
    /// <param name="completedCallback" type="Function"></param>
    var e = Function._validateParams(arguments, [
        {name: "scriptElement", domElement: true},
        {name: "completedCallback", type: Function}
    ]);
    if (e) throw e;
    this._scriptElement = scriptElement;
    this._completedCallback = completedCallback;
}
    function Sys$_ScriptLoaderTask$get_scriptElement() {
        /// <value domElement="true" locid="P:J#Sys._ScriptLoaderTask.scriptElement"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._scriptElement;
    }
    function Sys$_ScriptLoaderTask$dispose() {
        if(this._disposed) {
            return;
        }
        this._disposed = true;
        this._removeScriptElementHandlers();
        Sys._ScriptLoaderTask._clearScript(this._scriptElement);
        this._scriptElement = null;
    }
    function Sys$_ScriptLoaderTask$execute() {
        /// <summary locid="M:J#Sys._ScriptLoaderTask.execute" />
        if (arguments.length !== 0) throw Error.parameterCount();
        if (this._ensureReadyStateLoaded()) {
            this._executeInternal();
        }
    }
    function Sys$_ScriptLoaderTask$_executeInternal() {
        this._addScriptElementHandlers();
        var headElements = document.getElementsByTagName('head');
        if (headElements.length === 0) {
             throw new Error.invalidOperation(Sys.Res.scriptLoadFailedNoHead);
        }
        else {
             headElements[0].appendChild(this._scriptElement);
        }
    }
    function Sys$_ScriptLoaderTask$_ensureReadyStateLoaded() {
        if (this._useReadyState() && this._scriptElement.readyState !== 'loaded' && this._scriptElement.readyState !== 'complete') {
            this._scriptDownloadDelegate = Function.createDelegate(this, this._executeInternal);
            $addHandler(this._scriptElement, 'readystatechange', this._scriptDownloadDelegate);
            return false;
        }
        return true;
    }
    function Sys$_ScriptLoaderTask$_addScriptElementHandlers() {
        if (this._scriptDownloadDelegate) {
            $removeHandler(this._scriptElement, 'readystatechange', this._scriptDownloadDelegate);
            this._scriptDownloadDelegate = null;
        }
        this._scriptLoadDelegate = Function.createDelegate(this, this._scriptLoadHandler);
        if (this._useReadyState()) {
            $addHandler(this._scriptElement, 'readystatechange', this._scriptLoadDelegate);
        } else {
            $addHandler(this._scriptElement, 'load', this._scriptLoadDelegate);
        }
        if (this._scriptElement.addEventListener) {
            this._scriptErrorDelegate = Function.createDelegate(this, this._scriptErrorHandler);
            this._scriptElement.addEventListener('error', this._scriptErrorDelegate, false);
        }
    }
    function Sys$_ScriptLoaderTask$_removeScriptElementHandlers() {
        if(this._scriptLoadDelegate) {
            var scriptElement = this.get_scriptElement();
            if (this._scriptDownloadDelegate) {
                $removeHandler(this._scriptElement, 'readystatechange', this._scriptDownloadDelegate);
                this._scriptDownloadDelegate = null;
            }
            if (this._useReadyState() && this._scriptLoadDelegate) {
                $removeHandler(scriptElement, 'readystatechange', this._scriptLoadDelegate);
            }
            else {
                $removeHandler(scriptElement, 'load', this._scriptLoadDelegate);
            }
            if (this._scriptErrorDelegate) {
                this._scriptElement.removeEventListener('error', this._scriptErrorDelegate, false);
                this._scriptErrorDelegate = null;
            }
            this._scriptLoadDelegate = null;
        }
    }
    function Sys$_ScriptLoaderTask$_scriptErrorHandler() {
        if(this._disposed) {
            return;
        }
        
        this._completedCallback(this.get_scriptElement(), false);
    }
    function Sys$_ScriptLoaderTask$_scriptLoadHandler() {
        if(this._disposed) {
            return;
        }
        var scriptElement = this.get_scriptElement();
        if (this._useReadyState() && scriptElement.readyState !== 'complete') {
            return;
        }
        this._completedCallback(scriptElement, true);
    }
    function Sys$_ScriptLoaderTask$_useReadyState() {
        return (Sys.Browser.agent === Sys.Browser.InternetExplorer && (Sys.Browser.version < 9 || ((document.documentMode || 0) < 9)));
    }
Sys._ScriptLoaderTask.prototype = {
    get_scriptElement: Sys$_ScriptLoaderTask$get_scriptElement,
    dispose: Sys$_ScriptLoaderTask$dispose,
    execute: Sys$_ScriptLoaderTask$execute,
    _executeInternal: Sys$_ScriptLoaderTask$_executeInternal,
    _ensureReadyStateLoaded: Sys$_ScriptLoaderTask$_ensureReadyStateLoaded,
    _addScriptElementHandlers: Sys$_ScriptLoaderTask$_addScriptElementHandlers,    
    _removeScriptElementHandlers: Sys$_ScriptLoaderTask$_removeScriptElementHandlers,    
    _scriptErrorHandler: Sys$_ScriptLoaderTask$_scriptErrorHandler,
    _scriptLoadHandler: Sys$_ScriptLoaderTask$_scriptLoadHandler,
    _useReadyState: Sys$_ScriptLoaderTask$_useReadyState
}
Sys._ScriptLoaderTask.registerClass("Sys._ScriptLoaderTask", null, Sys.IDisposable);
Sys._ScriptLoaderTask._clearScript = function Sys$_ScriptLoaderTask$_clearScript(scriptElement) {
    if (!Sys.Debug.isDebug && scriptElement.parentNode) {
        scriptElement.parentNode.removeChild(scriptElement);
    }
}
~,//-----------------------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------
// MicrosoftAjaxSerialization.js
// Microsoft AJAX Framework Serialization.
/// <reference name="MicrosoftAjaxCore.js" />
Type._registerScript("MicrosoftAjaxSerialization.js", ["MicrosoftAjaxCore.js"]);
Type.registerNamespace('Sys.Serialization');
Sys.Serialization.JavaScriptSerializer = function Sys$Serialization$JavaScriptSerializer() {
    /// <summary locid="M:J#Sys.Serialization.JavaScriptSerializer.#ctor" />
    if (arguments.length !== 0) throw Error.parameterCount();
}
Sys.Serialization.JavaScriptSerializer.registerClass('Sys.Serialization.JavaScriptSerializer');
Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs = [];
Sys.Serialization.JavaScriptSerializer._charsToEscape = [];
Sys.Serialization.JavaScriptSerializer._dateRegEx = new RegExp('(^|[^\\\\])\\"\\\\/Date\\((-?[0-9]+)(?:[a-zA-Z]|(?:\\+|-)[0-9]{4})?\\)\\\\/\\"', 'g');
Sys.Serialization.JavaScriptSerializer._escapeChars = {};
Sys.Serialization.JavaScriptSerializer._escapeRegEx = new RegExp('["\\\\\\x00-\\x1F]', 'i');
Sys.Serialization.JavaScriptSerializer._escapeRegExGlobal = new RegExp('["\\\\\\x00-\\x1F]', 'g');
Sys.Serialization.JavaScriptSerializer._jsonRegEx = new RegExp('[^,:{}\\[\\]0-9.\\-+Eaeflnr-u \\n\\r\\t]', 'g');
Sys.Serialization.JavaScriptSerializer._jsonStringRegEx = new RegExp('"(\\\\.|[^"\\\\])*"', 'g');
Sys.Serialization.JavaScriptSerializer._serverTypeFieldName = '__type';
Sys.Serialization.JavaScriptSerializer._init = function Sys$Serialization$JavaScriptSerializer$_init() {
    var replaceChars = ['\\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] = '\\';
    Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs['\\'] = new RegExp('\\\\', 'g');
    Sys.Serialization.JavaScriptSerializer._escapeChars['\\'] = '\\\\';
    Sys.Serialization.JavaScriptSerializer._charsToEscape[1] = '"';
    Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs['"'] = new RegExp('"', 'g');
    Sys.Serialization.JavaScriptSerializer._escapeChars['"'] = '\\"';
    for (var i = 0; i < 32; i++) {
        var c = String.fromCharCode(i);
        Sys.Serialization.JavaScriptSerializer._charsToEscape[i+2] = c;
        Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs[c] = new RegExp(c, 'g');
        Sys.Serialization.JavaScriptSerializer._escapeChars[c] = replaceChars[i];
    }
}
Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder = function Sys$Serialization$JavaScriptSerializer$_serializeBooleanWithBuilder(object, stringBuilder) {
    stringBuilder.append(object.toString());
}
Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder = 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 = function Sys$Serialization$JavaScriptSerializer$_serializeStringWithBuilder(string, stringBuilder) {
    stringBuilder.append('"');
    if (Sys.Serialization.JavaScriptSerializer._escapeRegEx.test(string)) {
        if (Sys.Serialization.JavaScriptSerializer._charsToEscape.length === 0) {
            Sys.Serialization.JavaScriptSerializer._init();
        }
        if (string.length < 128) {
            string = string.replace(Sys.Serialization.JavaScriptSerializer._escapeRegExGlobal,
                function(x) { return Sys.Serialization.JavaScriptSerializer._escapeChars[x]; });
        }
        else {
            for (var i = 0; i < 34; i++) {
                var c = Sys.Serialization.JavaScriptSerializer._charsToEscape[i];
                if (string.indexOf(c) !== -1) {
                    if (Sys.Browser.agent === Sys.Browser.Opera || Sys.Browser.agent === Sys.Browser.FireFox) {
                        string = string.split(c).join(Sys.Serialization.JavaScriptSerializer._escapeChars[c]);
                    }
                    else {
                        string = string.replace(Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs[c],
                            Sys.Serialization.JavaScriptSerializer._escapeChars[c]);
                    }
                }
            }
       }
    }
    stringBuilder.append(string);
    stringBuilder.append('"');
}
Sys.Serialization.JavaScriptSerializer._serializeWithBuilder = function Sys$Serialization$JavaScriptSerializer$_serializeWithBuilder(object, stringBuilder, sort, prevObjects) {
    var i;
    switch (typeof object) {
    case 'object':
        if (object) {
            if (prevObjects){
                for( var j = 0; j < prevObjects.length; j++) {
                    if (prevObjects[j] === object) {
                        throw Error.invalidOperation(Sys.Res.cannotSerializeObjectWithCycle);
                    }
                }
            }
            else {
                prevObjects = new Array();
            }
            try {
                Array.add(prevObjects, object);
                
                if (Number.isInstanceOfType(object)){
                    Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder(object, stringBuilder);
                }
                else if (Boolean.isInstanceOfType(object)){
                    Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder(object, stringBuilder);
                }
                else if (String.isInstanceOfType(object)){
                    Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder(object, stringBuilder);
                }
            
                else if (Array.isInstanceOfType(object)) {
                    stringBuilder.append('[');
                   
                    for (i = 0; i < object.length; ++i) {
                        if (i > 0) {
                            stringBuilder.append(',');
                        }
                        Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(object[i], stringBuilder,false,prevObjects);
                    }
                    stringBuilder.append(']');
                }
                else {
                    if (Date.isInstanceOfType(object)) {
                        stringBuilder.append('"\\/Date(');
                        stringBuilder.append(object.getTime());
                        stringBuilder.append(')\\/"');
                        break;
                    }
                    var properties = [];
                    var propertyCount = 0;
                    for (var name in object) {
                        if (name.startsWith('$')) {
                            continue;
                        }
                        if (name === Sys.Serialization.JavaScriptSerializer._serverTypeFieldName && propertyCount !== 0){
                            properties[propertyCount++] = properties[0];
                            properties[0] = name;
                        }
                        else{
                            properties[propertyCount++] = name;
                        }
                    }
                    if (sort) properties.sort();
                    stringBuilder.append('{');
                    var needComma = false;
                     
                    for (i=0; i<propertyCount; i++) {
                        var value = object[properties[i]];
                        if (typeof value !== 'undefined' && typeof value !== 'function') {
                            if (needComma) {
                                stringBuilder.append(',');
                            }
                            else {
                                needComma = true;
                            }
                           
                            Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(properties[i], stringBuilder, sort, prevObjects);
                            stringBuilder.append(':');
                            Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(value, stringBuilder, sort, prevObjects);
                          
                        }
                    }
                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(object, stringBuilder);
        break;
    default:
        stringBuilder.append('null');
        break;
    }
}
Sys.Serialization.JavaScriptSerializer.serialize = function Sys$Serialization$JavaScriptSerializer$serialize(object) {
    /// <summary locid="M:J#Sys.Serialization.JavaScriptSerializer.serialize" />
    /// <param name="object" mayBeNull="true"></param>
    /// <returns type="String"></returns>
    var e = Function._validateParams(arguments, [
        {name: "object", mayBeNull: true}
    ]);
    if (e) throw e;
    var stringBuilder = new Sys.StringBuilder();
    Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(object, stringBuilder, false);
    return stringBuilder.toString();
}
Sys.Serialization.JavaScriptSerializer.deserialize = function Sys$Serialization$JavaScriptSerializer$deserialize(data, secure) {
    /// <summary locid="M:J#Sys.Serialization.JavaScriptSerializer.deserialize" />
    /// <param name="data" type="String"></param>
    /// <param name="secure" type="Boolean" optional="true"></param>
    /// <returns></returns>
    var e = Function._validateParams(arguments, [
        {name: "data", type: String},
        {name: "secure", type: Boolean, optional: true}
    ]);
    if (e) throw e;
    
    if (data.length === 0) throw Error.argument('data', Sys.Res.cannotDeserializeEmptyString);
    try {    
        var exp = data.replace(Sys.Serialization.JavaScriptSerializer._dateRegEx, "$1new Date($2)");
        
        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);
    }
}
�//-----------------------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------
// MicrosoftAjaxTimer.js
// Sys.UI._Timer component
Type._registerScript("Timer.js", ["MicrosoftAjaxComponentModel.js"]);
Sys.UI._Timer = function Sys$UI$_Timer(element) {
    Sys.UI._Timer.initializeBase(this,[element]);
    this._interval = 60000;
    this._enabled = true;
    this._postbackPending = false;
    this._raiseTickDelegate = null;
    this._endRequestHandlerDelegate = null;
    this._timer = null;
    this._pageRequestManager = null;
    this._uniqueID = null;
}
    function Sys$UI$_Timer$get_enabled() {
        /// <value type="Boolean" locid="P:J#Sys.UI._Timer.enabled"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._enabled;
    }
    function Sys$UI$_Timer$set_enabled(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
        if (e) throw e;
        this._enabled = value;
    }
    function Sys$UI$_Timer$get_interval() {
        /// <value type="Number" locid="P:J#Sys.UI._Timer.interval"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._interval;
    }
    function Sys$UI$_Timer$set_interval(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Number}]);
        if (e) throw e;
        this._interval = value;
    }
    function Sys$UI$_Timer$get_uniqueID(){
        /// <value type="String" locid="P:J#Sys.UI._Timer.uniqueID"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._uniqueID;
    }
    function Sys$UI$_Timer$set_uniqueID(value){
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        this._uniqueID = value;
    }
    function Sys$UI$_Timer$dispose(){
       this._stopTimer();
       if(this._pageRequestManager !== null){
           this._pageRequestManager.remove_endRequest(this._endRequestHandlerDelegate);
       }
       Sys.UI._Timer.callBaseMethod(this,"dispose");
    }
    function Sys$UI$_Timer$_doPostback(){
        __doPostBack(this.get_uniqueID(),'');
    }
    function Sys$UI$_Timer$_handleEndRequest(sender, arg){
        var dataItem = arg.get_dataItems()[this.get_id()];
	    if (dataItem){
            this._update(dataItem[0],dataItem[1]);
	  	}
	  
	    if ((this._postbackPending === true) && (this._pageRequestManager !== null)&&(this._pageRequestManager.get_isInAsyncPostBack() === false)){
    	   	this._postbackPending = false;
            this._doPostback();
        }
	   
    }
    function Sys$UI$_Timer$initialize(){
        Sys.UI._Timer.callBaseMethod(this, 'initialize');
    	this._raiseTickDelegate = Function.createDelegate(this,this._raiseTick);
    	this._endRequestHandlerDelegate = Function.createDelegate(this,this._handleEndRequest);
    	if (Sys.WebForms && Sys.WebForms.PageRequestManager){
           this._pageRequestManager = Sys.WebForms.PageRequestManager.getInstance();  
    	}
    	if (this._pageRequestManager !== null ){
    	    this._pageRequestManager.add_endRequest(this._endRequestHandlerDelegate);
    	}
        if(this.get_enabled()) {
            this._startTimer();
        }
    }
    function Sys$UI$_Timer$_raiseTick() {
        this._startTimer();
        if ((this._pageRequestManager === null) || (!this._pageRequestManager.get_isInAsyncPostBack())){
            this._doPostback();
            this._postbackPending = false;
        } 
        else {
            this._postbackPending = true;
        }
    }
    function Sys$UI$_Timer$_startTimer(){
        this._timer = window.setTimeout(Function.createDelegate(this,this._raiseTick),this.get_interval());
    }
    function Sys$UI$_Timer$_stopTimer(){
	    if (this._timer !== null){
	 	    window.clearTimeout(this._timer);
		    this._timer = null;
       } 	
    }
    function Sys$UI$_Timer$_update(enabled,interval) {
        var stopped = !this.get_enabled();
        var intervalChanged= (this.get_interval() !== interval);
	    if ((!stopped) && ((!enabled)||(intervalChanged))){
    	  	this._stopTimer();
    		stopped = true;
       	} 
    	this.set_enabled(enabled);
    	this.set_interval(interval);
    	if ((this.get_enabled()) && (stopped)){
    	    this._startTimer();
    	}
    }
Sys.UI._Timer.prototype = {
    get_enabled: Sys$UI$_Timer$get_enabled,
    set_enabled: Sys$UI$_Timer$set_enabled,
    get_interval: Sys$UI$_Timer$get_interval,
    set_interval: Sys$UI$_Timer$set_interval,
    get_uniqueID: Sys$UI$_Timer$get_uniqueID,
    set_uniqueID: Sys$UI$_Timer$set_uniqueID,
    dispose: Sys$UI$_Timer$dispose,
    _doPostback: Sys$UI$_Timer$_doPostback,
    _handleEndRequest: Sys$UI$_Timer$_handleEndRequest,
    initialize: Sys$UI$_Timer$initialize,
    _raiseTick: Sys$UI$_Timer$_raiseTick,
    _startTimer: Sys$UI$_Timer$_startTimer,
    _stopTimer: Sys$UI$_Timer$_stopTimer,
    _update: Sys$UI$_Timer$_update
}
Sys.UI._Timer.registerClass('Sys.UI._Timer', Sys.UI.Control);

��//-----------------------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------
// MicrosoftAjaxWebForms.js
// Microsoft AJAX ASP.NET WebForms Framework.
Type._registerScript("MicrosoftAjaxWebForms.js", [
	"MicrosoftAjaxCore.js",
	"MicrosoftAjaxSerialization.js",
	"MicrosoftAjaxNetwork.js",
	"MicrosoftAjaxComponentModel.js"]);
Type.registerNamespace('Sys.WebForms');
Sys.WebForms.BeginRequestEventArgs = function Sys$WebForms$BeginRequestEventArgs(request, postBackElement, updatePanelsToUpdate) {
    /// <summary locid="M:J#Sys.WebForms.BeginRequestEventArgs.#ctor" />
    /// <param name="request" type="Sys.Net.WebRequest"></param>
    /// <param name="postBackElement" domElement="true" mayBeNull="true"></param>
    /// <param name="updatePanelsToUpdate" type="Array" elementType="String" mayBeNull="true" optional="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "request", type: Sys.Net.WebRequest},
        {name: "postBackElement", mayBeNull: true, domElement: true},
        {name: "updatePanelsToUpdate", type: Array, mayBeNull: true, optional: true, elementType: String}
    ]);
    if (e) throw e;
    Sys.WebForms.BeginRequestEventArgs.initializeBase(this);
    this._request = request;
    this._postBackElement = postBackElement;
    this._updatePanelsToUpdate = updatePanelsToUpdate;
}
    function Sys$WebForms$BeginRequestEventArgs$get_postBackElement() {
        /// <value domElement="true" mayBeNull="true" locid="P:J#Sys.WebForms.BeginRequestEventArgs.postBackElement"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._postBackElement;
    }
    function Sys$WebForms$BeginRequestEventArgs$get_request() {
        /// <value type="Sys.Net.WebRequest" locid="P:J#Sys.WebForms.BeginRequestEventArgs.request"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._request;
    }
    function Sys$WebForms$BeginRequestEventArgs$get_updatePanelsToUpdate() {
        /// <value type="Array" elementType="String" locid="P:J#Sys.WebForms.BeginRequestEventArgs.updatePanelsToUpdate"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._updatePanelsToUpdate ? Array.clone(this._updatePanelsToUpdate) : [];
    }
Sys.WebForms.BeginRequestEventArgs.prototype = {
    get_postBackElement: Sys$WebForms$BeginRequestEventArgs$get_postBackElement,
    get_request: Sys$WebForms$BeginRequestEventArgs$get_request,
    get_updatePanelsToUpdate: Sys$WebForms$BeginRequestEventArgs$get_updatePanelsToUpdate
}
Sys.WebForms.BeginRequestEventArgs.registerClass('Sys.WebForms.BeginRequestEventArgs', Sys.EventArgs);
 
Sys.WebForms.EndRequestEventArgs = function Sys$WebForms$EndRequestEventArgs(error, dataItems, response) {
    /// <summary locid="M:J#Sys.WebForms.EndRequestEventArgs.#ctor" />
    /// <param name="error" type="Error" mayBeNull="true"></param>
    /// <param name="dataItems" type="Object" mayBeNull="true"></param>
    /// <param name="response" type="Sys.Net.WebRequestExecutor"></param>
    var e = Function._validateParams(arguments, [
        {name: "error", type: Error, mayBeNull: true},
        {name: "dataItems", type: Object, mayBeNull: true},
        {name: "response", type: Sys.Net.WebRequestExecutor}
    ]);
    if (e) throw e;
    Sys.WebForms.EndRequestEventArgs.initializeBase(this);
    this._errorHandled = false;
    this._error = error;
    this._dataItems = dataItems || new Object();
    this._response = response;
}
    function Sys$WebForms$EndRequestEventArgs$get_dataItems() {
        /// <value type="Object" locid="P:J#Sys.WebForms.EndRequestEventArgs.dataItems"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._dataItems;
    }
    function Sys$WebForms$EndRequestEventArgs$get_error() {
        /// <value type="Error" locid="P:J#Sys.WebForms.EndRequestEventArgs.error"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._error;
    }
    function Sys$WebForms$EndRequestEventArgs$get_errorHandled() {
        /// <value type="Boolean" locid="P:J#Sys.WebForms.EndRequestEventArgs.errorHandled"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._errorHandled;
    }
    function Sys$WebForms$EndRequestEventArgs$set_errorHandled(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
        if (e) throw e;
        this._errorHandled = value;
    }
    function Sys$WebForms$EndRequestEventArgs$get_response() {
        /// <value type="Sys.Net.WebRequestExecutor" locid="P:J#Sys.WebForms.EndRequestEventArgs.response"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._response;
    }
Sys.WebForms.EndRequestEventArgs.prototype = {
    get_dataItems: Sys$WebForms$EndRequestEventArgs$get_dataItems,
    get_error: Sys$WebForms$EndRequestEventArgs$get_error,
    get_errorHandled: Sys$WebForms$EndRequestEventArgs$get_errorHandled,
    set_errorHandled: Sys$WebForms$EndRequestEventArgs$set_errorHandled,
    get_response: Sys$WebForms$EndRequestEventArgs$get_response
}
Sys.WebForms.EndRequestEventArgs.registerClass('Sys.WebForms.EndRequestEventArgs', Sys.EventArgs);
Sys.WebForms.InitializeRequestEventArgs = function Sys$WebForms$InitializeRequestEventArgs(request, postBackElement, updatePanelsToUpdate) {
    /// <summary locid="M:J#Sys.WebForms.InitializeRequestEventArgs.#ctor" />
    /// <param name="request" type="Sys.Net.WebRequest"></param>
    /// <param name="postBackElement" domElement="true" mayBeNull="true"></param>
    /// <param name="updatePanelsToUpdate" type="Array" elementType="String" mayBeNull="true" optional="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "request", type: Sys.Net.WebRequest},
        {name: "postBackElement", mayBeNull: true, domElement: true},
        {name: "updatePanelsToUpdate", type: Array, mayBeNull: true, optional: true, elementType: String}
    ]);
    if (e) throw e;
    Sys.WebForms.InitializeRequestEventArgs.initializeBase(this);
    this._request = request;
    this._postBackElement = postBackElement;
    this._updatePanelsToUpdate = updatePanelsToUpdate;
}
    function Sys$WebForms$InitializeRequestEventArgs$get_postBackElement() {
        /// <value domElement="true" mayBeNull="true" locid="P:J#Sys.WebForms.InitializeRequestEventArgs.postBackElement"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._postBackElement;
    }
    function Sys$WebForms$InitializeRequestEventArgs$get_request() {
        /// <value type="Sys.Net.WebRequest" locid="P:J#Sys.WebForms.InitializeRequestEventArgs.request"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._request;
    }
    function Sys$WebForms$InitializeRequestEventArgs$get_updatePanelsToUpdate() {
        /// <value type="Array" elementType="String" locid="P:J#Sys.WebForms.InitializeRequestEventArgs.updatePanelsToUpdate"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._updatePanelsToUpdate ? Array.clone(this._updatePanelsToUpdate) : [];
    }
    function Sys$WebForms$InitializeRequestEventArgs$set_updatePanelsToUpdate(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Array, elementType: String}]);
        if (e) throw e;
        this._updated = true;
        this._updatePanelsToUpdate = value;
    }
Sys.WebForms.InitializeRequestEventArgs.prototype = {
    get_postBackElement: Sys$WebForms$InitializeRequestEventArgs$get_postBackElement,
    get_request: Sys$WebForms$InitializeRequestEventArgs$get_request,
    get_updatePanelsToUpdate: Sys$WebForms$InitializeRequestEventArgs$get_updatePanelsToUpdate,
    set_updatePanelsToUpdate: Sys$WebForms$InitializeRequestEventArgs$set_updatePanelsToUpdate
}
Sys.WebForms.InitializeRequestEventArgs.registerClass('Sys.WebForms.InitializeRequestEventArgs', Sys.CancelEventArgs);
 
Sys.WebForms.PageLoadedEventArgs = function Sys$WebForms$PageLoadedEventArgs(panelsUpdated, panelsCreated, dataItems) {
    /// <summary locid="M:J#Sys.WebForms.PageLoadedEventArgs.#ctor" />
    /// <param name="panelsUpdated" type="Array"></param>
    /// <param name="panelsCreated" type="Array"></param>
    /// <param name="dataItems" type="Object" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "panelsUpdated", type: Array},
        {name: "panelsCreated", type: Array},
        {name: "dataItems", type: Object, mayBeNull: true}
    ]);
    if (e) throw e;
    Sys.WebForms.PageLoadedEventArgs.initializeBase(this);
    this._panelsUpdated = panelsUpdated;
    this._panelsCreated = panelsCreated;
    this._dataItems = dataItems || new Object();
}
    function Sys$WebForms$PageLoadedEventArgs$get_dataItems() {
        /// <value type="Object" locid="P:J#Sys.WebForms.PageLoadedEventArgs.dataItems"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._dataItems;
    }
    function Sys$WebForms$PageLoadedEventArgs$get_panelsCreated() {
        /// <value type="Array" locid="P:J#Sys.WebForms.PageLoadedEventArgs.panelsCreated"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._panelsCreated;
    }
    function Sys$WebForms$PageLoadedEventArgs$get_panelsUpdated() {
        /// <value type="Array" locid="P:J#Sys.WebForms.PageLoadedEventArgs.panelsUpdated"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._panelsUpdated;
    }
Sys.WebForms.PageLoadedEventArgs.prototype = {
    get_dataItems: Sys$WebForms$PageLoadedEventArgs$get_dataItems,
    get_panelsCreated: Sys$WebForms$PageLoadedEventArgs$get_panelsCreated,
    get_panelsUpdated: Sys$WebForms$PageLoadedEventArgs$get_panelsUpdated
}
Sys.WebForms.PageLoadedEventArgs.registerClass('Sys.WebForms.PageLoadedEventArgs', Sys.EventArgs);
Sys.WebForms.PageLoadingEventArgs = function Sys$WebForms$PageLoadingEventArgs(panelsUpdating, panelsDeleting, dataItems) {
    /// <summary locid="M:J#Sys.WebForms.PageLoadingEventArgs.#ctor" />
    /// <param name="panelsUpdating" type="Array"></param>
    /// <param name="panelsDeleting" type="Array"></param>
    /// <param name="dataItems" type="Object" mayBeNull="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "panelsUpdating", type: Array},
        {name: "panelsDeleting", type: Array},
        {name: "dataItems", type: Object, mayBeNull: true}
    ]);
    if (e) throw e;
    Sys.WebForms.PageLoadingEventArgs.initializeBase(this);
    this._panelsUpdating = panelsUpdating;
    this._panelsDeleting = panelsDeleting;
    this._dataItems = dataItems || new Object();
}
    function Sys$WebForms$PageLoadingEventArgs$get_dataItems() {
        /// <value type="Object" locid="P:J#Sys.WebForms.PageLoadingEventArgs.dataItems"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._dataItems;
    }
    function Sys$WebForms$PageLoadingEventArgs$get_panelsDeleting() {
        /// <value type="Array" locid="P:J#Sys.WebForms.PageLoadingEventArgs.panelsDeleting"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._panelsDeleting;
    }
    function Sys$WebForms$PageLoadingEventArgs$get_panelsUpdating() {
        /// <value type="Array" locid="P:J#Sys.WebForms.PageLoadingEventArgs.panelsUpdating"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._panelsUpdating;
    }
Sys.WebForms.PageLoadingEventArgs.prototype = {
    get_dataItems: Sys$WebForms$PageLoadingEventArgs$get_dataItems,
    get_panelsDeleting: Sys$WebForms$PageLoadingEventArgs$get_panelsDeleting,
    get_panelsUpdating: Sys$WebForms$PageLoadingEventArgs$get_panelsUpdating
}
Sys.WebForms.PageLoadingEventArgs.registerClass('Sys.WebForms.PageLoadingEventArgs', Sys.EventArgs);
 
Sys._ScriptLoader = function Sys$_ScriptLoader() {
    this._scriptsToLoad = null;
    this._sessions = [];
    this._scriptLoadedDelegate = Function.createDelegate(this, this._scriptLoadedHandler);
}
    function Sys$_ScriptLoader$dispose() {
        this._stopSession();
        this._loading = false;
        if(this._events) {
            delete this._events;
        }
        this._sessions = null;
        this._currentSession = null;
        this._scriptLoadedDelegate = null;        
    }
    function Sys$_ScriptLoader$loadScripts(scriptTimeout, allScriptsLoadedCallback, scriptLoadFailedCallback, scriptLoadTimeoutCallback) {
        /// <summary locid="M:J#Sys._ScriptLoader.loadScripts" />
        /// <param name="scriptTimeout" type="Number" integer="true"></param>
        /// <param name="allScriptsLoadedCallback" type="Function" mayBeNull="true"></param>
        /// <param name="scriptLoadFailedCallback" type="Function" mayBeNull="true"></param>
        /// <param name="scriptLoadTimeoutCallback" type="Function" mayBeNull="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "scriptTimeout", type: Number, integer: true},
            {name: "allScriptsLoadedCallback", type: Function, mayBeNull: true},
            {name: "scriptLoadFailedCallback", type: Function, mayBeNull: true},
            {name: "scriptLoadTimeoutCallback", type: Function, mayBeNull: true}
        ]);
        if (e) throw e;
        var session = {
            allScriptsLoadedCallback: allScriptsLoadedCallback,
            scriptLoadFailedCallback: scriptLoadFailedCallback,
            scriptLoadTimeoutCallback: scriptLoadTimeoutCallback,
            scriptsToLoad: this._scriptsToLoad,
            scriptTimeout: scriptTimeout };
        this._scriptsToLoad = null;
        this._sessions[this._sessions.length] = session;
        
        if (!this._loading) {
            this._nextSession();
        }
    }
    function Sys$_ScriptLoader$queueCustomScriptTag(scriptAttributes) {
        /// <summary locid="M:J#Sys._ScriptLoader.queueCustomScriptTag" />
        /// <param name="scriptAttributes" mayBeNull="false"></param>
        var e = Function._validateParams(arguments, [
            {name: "scriptAttributes"}
        ]);
        if (e) throw e;
        if(!this._scriptsToLoad) {
            this._scriptsToLoad = [];
        }
        Array.add(this._scriptsToLoad, scriptAttributes);
    }
    function Sys$_ScriptLoader$queueScriptBlock(scriptContent) {
        /// <summary locid="M:J#Sys._ScriptLoader.queueScriptBlock" />
        /// <param name="scriptContent" type="String" mayBeNull="false"></param>
        var e = Function._validateParams(arguments, [
            {name: "scriptContent", type: String}
        ]);
        if (e) throw e;
        if(!this._scriptsToLoad) {
            this._scriptsToLoad = [];
        }
        Array.add(this._scriptsToLoad, {text: scriptContent});
    }
    function Sys$_ScriptLoader$queueScriptReference(scriptUrl, fallback) {
        /// <summary locid="M:J#Sys._ScriptLoader.queueScriptReference" />
        /// <param name="scriptUrl" type="String" mayBeNull="false"></param>
        /// <param name="fallback" mayBeNull="true" optional="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "scriptUrl", type: String},
            {name: "fallback", mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        if(!this._scriptsToLoad) {
            this._scriptsToLoad = [];
        }
        Array.add(this._scriptsToLoad, {src: scriptUrl, fallback: fallback});
    }
    function Sys$_ScriptLoader$_createScriptElement(queuedScript) {
        var scriptElement = document.createElement('script');
        scriptElement.type = 'text/javascript';
        for (var attr in queuedScript) {
            scriptElement[attr] = queuedScript[attr];
        }
        
        return scriptElement;
    }
    function Sys$_ScriptLoader$_loadScriptsInternal() {
        var session = this._currentSession;
        if (session.scriptsToLoad && session.scriptsToLoad.length > 0) {
            var nextScript = Array.dequeue(session.scriptsToLoad);
            var onLoad = this._scriptLoadedDelegate;
            if (nextScript.fallback) {
                var fallback = nextScript.fallback;
                delete nextScript.fallback;
                
                var self = this;
                onLoad = function(scriptElement, loaded) {
                    loaded || (function() {
                        var fallbackScriptElement = self._createScriptElement({src: fallback});
                        self._currentTask = new Sys._ScriptLoaderTask(fallbackScriptElement, self._scriptLoadedDelegate);
                        self._currentTask.execute();
                    })();
                };
            }            
            var scriptElement = this._createScriptElement(nextScript);
            
            if (scriptElement.text && Sys.Browser.agent === Sys.Browser.Safari) {
                scriptElement.innerHTML = scriptElement.text;
                delete scriptElement.text;
            }            
            if (typeof(nextScript.src) === "string") {
                this._currentTask = new Sys._ScriptLoaderTask(scriptElement, onLoad);
                this._currentTask.execute();
            }
            else {
                var headElements = document.getElementsByTagName('head');
                if (headElements.length === 0) {
                     throw new Error.invalidOperation(Sys.Res.scriptLoadFailedNoHead);
                }
                else {
                     headElements[0].appendChild(scriptElement);
                }
                
                
                Sys._ScriptLoaderTask._clearScript(scriptElement);
                this._loadScriptsInternal();
            }
        }
        else {
            this._stopSession();
            var callback = session.allScriptsLoadedCallback;
            if(callback) {
                callback(this);
            }
            this._nextSession();
        }
    }
    function Sys$_ScriptLoader$_nextSession() {
        if (this._sessions.length === 0) {
            this._loading = false;
            this._currentSession = null;
            return;
        }
        this._loading = true;
        
        var session = Array.dequeue(this._sessions);
        this._currentSession = session;
        this._loadScriptsInternal();
    }
    function Sys$_ScriptLoader$_raiseError() {
        var callback = this._currentSession.scriptLoadFailedCallback;
        var scriptElement = this._currentTask.get_scriptElement();
        this._stopSession();
        
        if(callback) {
            callback(this, scriptElement);
            this._nextSession();
        }
        else {
            this._loading = false;
            throw Sys._ScriptLoader._errorScriptLoadFailed(scriptElement.src);
        }
    }
    function Sys$_ScriptLoader$_scriptLoadedHandler(scriptElement, loaded) {
        if (loaded) {
            Array.add(Sys._ScriptLoader._getLoadedScripts(), scriptElement.src);
            this._currentTask.dispose();
            this._currentTask = null;
            this._loadScriptsInternal();
        }
        else {
            this._raiseError();
        }
    }
    function Sys$_ScriptLoader$_stopSession() {
        if(this._currentTask) {
            this._currentTask.dispose();
            this._currentTask = null;
        }
    }
Sys._ScriptLoader.prototype = {
    dispose: Sys$_ScriptLoader$dispose,
    loadScripts: Sys$_ScriptLoader$loadScripts,
    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,
    _stopSession: Sys$_ScriptLoader$_stopSession    
}
Sys._ScriptLoader.registerClass('Sys._ScriptLoader', null, Sys.IDisposable);
Sys._ScriptLoader.getInstance = function Sys$_ScriptLoader$getInstance() {
    var sl = Sys._ScriptLoader._activeInstance;
    if(!sl) {
        sl = Sys._ScriptLoader._activeInstance = new Sys._ScriptLoader();
    }
    return sl;
}
Sys._ScriptLoader.isScriptLoaded = function Sys$_ScriptLoader$isScriptLoaded(scriptSrc) {
    var dummyScript = document.createElement('script');
    dummyScript.src = scriptSrc;
    return Array.contains(Sys._ScriptLoader._getLoadedScripts(), dummyScript.src);
}
Sys._ScriptLoader.readLoadedScripts = function Sys$_ScriptLoader$readLoadedScripts() {
    if(!Sys._ScriptLoader._referencedScripts) {
        var referencedScripts = Sys._ScriptLoader._referencedScripts = [];
        var existingScripts = document.getElementsByTagName('script');
        for (var i = existingScripts.length - 1; i >= 0; i--) {
            var scriptNode = existingScripts[i];
            var scriptSrc = scriptNode.src;
            if (scriptSrc.length) {
                if (!Array.contains(referencedScripts, scriptSrc)) {
                    Array.add(referencedScripts, scriptSrc);
                }
            }
        }
    }
}
Sys._ScriptLoader._errorScriptLoadFailed = function Sys$_ScriptLoader$_errorScriptLoadFailed(scriptUrl) {
    var errorMessage;
    errorMessage = Sys.Res.scriptLoadFailedDebug;
    var displayMessage = "Sys.ScriptLoadFailedException: " + String.format(errorMessage, scriptUrl);
    var e = Error.create(displayMessage, {name: 'Sys.ScriptLoadFailedException', 'scriptUrl': scriptUrl });
    e.popStackFrame();
    return e;
}
Sys._ScriptLoader._getLoadedScripts = function Sys$_ScriptLoader$_getLoadedScripts() {
    if(!Sys._ScriptLoader._referencedScripts) {
        Sys._ScriptLoader._referencedScripts = [];
        Sys._ScriptLoader.readLoadedScripts();
    }
    return Sys._ScriptLoader._referencedScripts;
}
 
Sys.WebForms.PageRequestManager = function Sys$WebForms$PageRequestManager() {
    this._form = null;
    this._activeDefaultButton = null;
    this._activeDefaultButtonClicked = false;
    this._updatePanelIDs = null;
    this._updatePanelClientIDs = null;
    this._updatePanelHasChildrenAsTriggers = null;
    this._asyncPostBackControlIDs = null;
    this._asyncPostBackControlClientIDs = null;
    this._postBackControlIDs = null;
    this._postBackControlClientIDs = null;
    this._scriptManagerID = null;
    this._pageLoadedHandler = null;
    this._additionalInput = null;
    this._onsubmit = null;
    this._onSubmitStatements = [];
    this._originalDoPostBack = null;
    this._originalDoPostBackWithOptions = null;
    this._originalFireDefaultButton = null;
    this._originalDoCallback = null;
    this._isCrossPost = false;
    this._postBackSettings = null;
    this._request = null;
    this._onFormSubmitHandler = null;
    this._onFormElementClickHandler = null;
    this._onWindowUnloadHandler = null;
    this._asyncPostBackTimeout = null;
    this._controlIDToFocus = null;
    this._scrollPosition = null;
    this._processingRequest = false;
    this._scriptDisposes = {};
    
    this._transientFields = ["__VIEWSTATEENCRYPTED", "__VIEWSTATEFIELDCOUNT"];
    this._textTypes = /^(text|password|hidden|search|tel|url|email|number|range|color|datetime|date|month|week|time|datetime-local)$/i;
}
    function Sys$WebForms$PageRequestManager$_get_eventHandlerList() {
        if (!this._events) {
            this._events = new Sys.EventHandlerList();
        }
        return this._events;
    }
    function Sys$WebForms$PageRequestManager$get_isInAsyncPostBack() {
        /// <value type="Boolean" locid="P:J#Sys.WebForms.PageRequestManager.isInAsyncPostBack"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._request !== null;
    }
    function Sys$WebForms$PageRequestManager$add_beginRequest(handler) {
        /// <summary locid="E:J#Sys.WebForms.PageRequestManager.beginRequest" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().addHandler("beginRequest", handler);
    }
    function Sys$WebForms$PageRequestManager$remove_beginRequest(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().removeHandler("beginRequest", handler);
    }
    function Sys$WebForms$PageRequestManager$add_endRequest(handler) {
        /// <summary locid="E:J#Sys.WebForms.PageRequestManager.endRequest" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().addHandler("endRequest", handler);
    }
    function Sys$WebForms$PageRequestManager$remove_endRequest(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().removeHandler("endRequest", handler);
    }
    function Sys$WebForms$PageRequestManager$add_initializeRequest(handler) {
        /// <summary locid="E:J#Sys.WebForms.PageRequestManager.initializeRequest" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().addHandler("initializeRequest", handler);
    }
    function Sys$WebForms$PageRequestManager$remove_initializeRequest(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().removeHandler("initializeRequest", handler);
    }
    function Sys$WebForms$PageRequestManager$add_pageLoaded(handler) {
        /// <summary locid="E:J#Sys.WebForms.PageRequestManager.pageLoaded" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().addHandler("pageLoaded", handler);
    }
    function Sys$WebForms$PageRequestManager$remove_pageLoaded(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().removeHandler("pageLoaded", handler);
    }
    function Sys$WebForms$PageRequestManager$add_pageLoading(handler) {
        /// <summary locid="E:J#Sys.WebForms.PageRequestManager.pageLoading" />
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().addHandler("pageLoading", handler);
    }
    function Sys$WebForms$PageRequestManager$remove_pageLoading(handler) {
        var e = Function._validateParams(arguments, [{name: "handler", type: Function}]);
        if (e) throw e;
        this._get_eventHandlerList().removeHandler("pageLoading", handler);
    }
    function Sys$WebForms$PageRequestManager$abortPostBack() {
        if (!this._processingRequest && this._request) {
            this._request.get_executor().abort();
            this._request = null;
        }
    }
    function Sys$WebForms$PageRequestManager$beginAsyncPostBack(updatePanelsToUpdate, eventTarget, eventArgument, causesValidation, validationGroup) {
        /// <summary locid="M:J#Sys.WebForms.PageRequestManager.beginAsyncPostBack" />
        /// <param name="updatePanelsToUpdate" type="Array" elementType="String" mayBeNull="true" optional="true"></param>
        /// <param name="eventTarget" type="String" mayBeNull="true" optional="true"></param>
        /// <param name="eventArgument" type="String" mayBeNull="true" optional="true"></param>
        /// <param name="causesValidation" type="Boolean" mayBeNull="true" optional="true"></param>
        /// <param name="validationGroup" type="String" mayBeNull="true" optional="true"></param>
        var e = Function._validateParams(arguments, [
            {name: "updatePanelsToUpdate", type: Array, mayBeNull: true, optional: true, elementType: String},
            {name: "eventTarget", type: String, mayBeNull: true, optional: true},
            {name: "eventArgument", type: String, mayBeNull: true, optional: true},
            {name: "causesValidation", type: Boolean, mayBeNull: true, optional: true},
            {name: "validationGroup", type: String, mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        if (causesValidation && (typeof(Page_ClientValidate) === 'function') && !Page_ClientValidate(validationGroup || null)) {
            return;
        }
        this._postBackSettings = this._createPostBackSettings(true, updatePanelsToUpdate, eventTarget);
        var form = this._form;
        form.__EVENTTARGET.value = (eventTarget || "");
        form.__EVENTARGUMENT.value = (eventArgument || "");
        this._isCrossPost = false;
        this._additionalInput = null;
        this._onFormSubmit();
    }
    function Sys$WebForms$PageRequestManager$_cancelPendingCallbacks() {
        for (var i = 0, l = window.__pendingCallbacks.length; i < l; i++) {
            var callback = window.__pendingCallbacks[i];
            if (callback) {
                if (!callback.async) {
                    window.__synchronousCallBackIndex = -1;
                }
                window.__pendingCallbacks[i] = null;
                var callbackFrameID = "__CALLBACKFRAME" + i;
                var xmlRequestFrame = document.getElementById(callbackFrameID);
                if (xmlRequestFrame) {
                    xmlRequestFrame.parentNode.removeChild(xmlRequestFrame);
                }
            }
        }
    }
    function Sys$WebForms$PageRequestManager$_commitControls(updatePanelData, asyncPostBackTimeout) {
        if (updatePanelData) {
            this._updatePanelIDs = updatePanelData.updatePanelIDs;
            this._updatePanelClientIDs = updatePanelData.updatePanelClientIDs;
            this._updatePanelHasChildrenAsTriggers = updatePanelData.updatePanelHasChildrenAsTriggers;
            this._asyncPostBackControlIDs = updatePanelData.asyncPostBackControlIDs;
            this._asyncPostBackControlClientIDs = updatePanelData.asyncPostBackControlClientIDs;
            this._postBackControlIDs = updatePanelData.postBackControlIDs;
            this._postBackControlClientIDs = updatePanelData.postBackControlClientIDs;
        }
        if (typeof(asyncPostBackTimeout) !== 'undefined' && asyncPostBackTimeout !== null) {
            this._asyncPostBackTimeout = asyncPostBackTimeout * 1000;
        }
    }
    function Sys$WebForms$PageRequestManager$_createHiddenField(id, value) {
        var container, field = document.getElementById(id);
        if (field) {
            if (!field._isContained) {
                field.parentNode.removeChild(field);
            }
            else {
                container = field.parentNode;
            }
        }
        if (!container) {
            container = document.createElement('span');
            container.style.cssText = "display:none !important";
            this._form.appendChild(container);
        }
        container.innerHTML = "<input type='hidden' />";
        field = container.childNodes[0];
        field._isContained = true;
        field.id = field.name = id;
        field.value = value;
    }
    function Sys$WebForms$PageRequestManager$_createPageRequestManagerTimeoutError() {
        var displayMessage = "Sys.WebForms.PageRequestManagerTimeoutException: " + Sys.WebForms.Res.PRM_TimeoutError;
        var e = Error.create(displayMessage, {name: 'Sys.WebForms.PageRequestManagerTimeoutException'});
        e.popStackFrame();
        return e;
    }
    function Sys$WebForms$PageRequestManager$_createPageRequestManagerServerError(httpStatusCode, message) {
        var displayMessage = "Sys.WebForms.PageRequestManagerServerErrorException: " +
            (message || String.format(Sys.WebForms.Res.PRM_ServerError, httpStatusCode));
        var e = Error.create(displayMessage, {
            name: 'Sys.WebForms.PageRequestManagerServerErrorException',
            httpStatusCode: httpStatusCode
        });
        e.popStackFrame();
        return e;
    }
    function Sys$WebForms$PageRequestManager$_createPageRequestManagerParserError(parserErrorMessage) {
        var displayMessage = "Sys.WebForms.PageRequestManagerParserErrorException: " + String.format(Sys.WebForms.Res.PRM_ParserError, parserErrorMessage);
        var e = Error.create(displayMessage, {name: 'Sys.WebForms.PageRequestManagerParserErrorException'});
        e.popStackFrame();
        return e;
    }
    function Sys$WebForms$PageRequestManager$_createPanelID(panelsToUpdate, postBackSettings) {
        var asyncTarget = postBackSettings.asyncTarget,
            toUpdate = this._ensureUniqueIds(panelsToUpdate || postBackSettings.panelsToUpdate),
            panelArg = (toUpdate instanceof Array)
                ? toUpdate.join(',')
                : (toUpdate || this._scriptManagerID);
        if (asyncTarget) {
            panelArg += "|" + asyncTarget;
        }
        return encodeURIComponent(this._scriptManagerID) + '=' + encodeURIComponent(panelArg) + '&';
    }
    function Sys$WebForms$PageRequestManager$_createPostBackSettings(async, panelsToUpdate, asyncTarget, sourceElement) {
        return { async:async, asyncTarget: asyncTarget, panelsToUpdate: panelsToUpdate, sourceElement: sourceElement };
    }
    function Sys$WebForms$PageRequestManager$_convertToClientIDs(source, destinationIDs, destinationClientIDs, version4) {
        if (source) {
            for (var i = 0, l = source.length; i < l; i += (version4 ? 2 : 1)) {
                var uniqueID = source[i],
                    clientID = (version4 ? source[i+1] : "") || this._uniqueIDToClientID(uniqueID);
                Array.add(destinationIDs, uniqueID);
                Array.add(destinationClientIDs, clientID);
            }
        }
    }
    function Sys$WebForms$PageRequestManager$dispose() {
        if (this._form) {
            Sys.UI.DomEvent.removeHandler(this._form, 'submit', this._onFormSubmitHandler);
            Sys.UI.DomEvent.removeHandler(this._form, 'click', this._onFormElementClickHandler);
            Sys.UI.DomEvent.removeHandler(window, 'unload', this._onWindowUnloadHandler);
            Sys.UI.DomEvent.removeHandler(window, 'load', this._pageLoadedHandler);
        }
        if (this._originalDoPostBack) {
            window.__doPostBack = this._originalDoPostBack;
            this._originalDoPostBack = null;
        }
        if (this._originalDoPostBackWithOptions) {
            window.WebForm_DoPostBackWithOptions = this._originalDoPostBackWithOptions;
            this._originalDoPostBackWithOptions = null;
        }
        if (this._originalFireDefaultButton) {
            window.WebForm_FireDefaultButton = this._originalFireDefaultButton;
            this._originalFireDefaultButton = null;
        }
        if (this._originalDoCallback) {
            window.WebForm_DoCallback = this._originalDoCallback;
            this._originalDoCallback = null;
        }
        this._form = null;
        this._updatePanelIDs = null;
        this._updatePanelClientIDs = null;
        this._asyncPostBackControlIDs = null;
        this._asyncPostBackControlClientIDs = null;
        this._postBackControlIDs = null;
        this._postBackControlClientIDs = null;
        this._asyncPostBackTimeout = null;
        this._scrollPosition = null;
        this._activeElement = null;
    }
    function Sys$WebForms$PageRequestManager$_doCallback(eventTarget, eventArgument, eventCallback, context, errorCallback, useAsync) {
        if (!this.get_isInAsyncPostBack()) {
            this._originalDoCallback(eventTarget, eventArgument, eventCallback, context, errorCallback, useAsync);
        }
    }
    function Sys$WebForms$PageRequestManager$_doPostBack(eventTarget, eventArgument) {
        var event = window.event;
        if (!event) {
            var caller = arguments.callee ? arguments.callee.caller : null;
            if (caller) {
                var recursionLimit = 30;
                while (caller.arguments.callee.caller && --recursionLimit) {
                    caller = caller.arguments.callee.caller;
                }
                event = (recursionLimit && caller.arguments.length) ? caller.arguments[0] : null;
            }
        }
        this._additionalInput = null;
        var form = this._form;
        if ((eventTarget === null) || (typeof(eventTarget) === "undefined") || (this._isCrossPost)) {
            this._postBackSettings = this._createPostBackSettings(false);
            this._isCrossPost = false;
        }
        else {
            var mpUniqueID = this._masterPageUniqueID;
            var clientID = this._uniqueIDToClientID(eventTarget);
            var postBackElement = document.getElementById(clientID);
            if (!postBackElement && mpUniqueID) {
                if (eventTarget.indexOf(mpUniqueID + "$") === 0) {
                    postBackElement = document.getElementById(clientID.substr(mpUniqueID.length + 1));
                }
            }
            if (!postBackElement) {
                if (Array.contains(this._asyncPostBackControlIDs, eventTarget)) {
                    this._postBackSettings = this._createPostBackSettings(true, null, eventTarget);
                }
                else {
                    if (Array.contains(this._postBackControlIDs, eventTarget)) {
                        this._postBackSettings = this._createPostBackSettings(false);
                    }
                    else {
                        var nearestUniqueIDMatch = this._findNearestElement(eventTarget);
                        if (nearestUniqueIDMatch) {
                            this._postBackSettings = this._getPostBackSettings(nearestUniqueIDMatch, eventTarget);
                        }
                        else {
                            if (mpUniqueID) {
                                mpUniqueID += "$";
                                if (eventTarget.indexOf(mpUniqueID) === 0) {
                                    nearestUniqueIDMatch = this._findNearestElement(eventTarget.substr(mpUniqueID.length));
                                }
                            }
                            if (nearestUniqueIDMatch) {
                                this._postBackSettings = this._getPostBackSettings(nearestUniqueIDMatch, eventTarget);
                            }
                            else {
                                var activeElement;
                                try {
                                    activeElement = event ? (event.target || event.srcElement) : null;
                                }
                                catch(ex) {
                                }
                                activeElement = activeElement || this._activeElement;
                                var causesPostback = /__doPostBack\(|WebForm_DoPostBackWithOptions\(/;
                                function testCausesPostBack(attr) {
                                    attr = attr ? attr.toString() : "";
                                    return (causesPostback.test(attr) &&
                                        (attr.indexOf("'" + eventTarget + "'") !== -1) || (attr.indexOf('"' + eventTarget + '"') !== -1));
                                }
                                if (activeElement && (
                                        (activeElement.name === eventTarget) ||
                                        testCausesPostBack(activeElement.href) ||
                                        testCausesPostBack(activeElement.onclick) ||
                                        testCausesPostBack(activeElement.onchange)
                                        )) {
                                    this._postBackSettings = this._getPostBackSettings(activeElement, eventTarget);
                                }
                                else {
                                    this._postBackSettings = this._createPostBackSettings(false);
                                }
                            }
                        }
                    }
                }
            }
            else {
                this._postBackSettings = this._getPostBackSettings(postBackElement, eventTarget);
            }
        }
        if (!this._postBackSettings.async) {
            form.onsubmit = this._onsubmit;
            this._originalDoPostBack(eventTarget, eventArgument);
            form.onsubmit = null;
            return;
        }
        form.__EVENTTARGET.value = eventTarget;
        form.__EVENTARGUMENT.value = eventArgument;
        this._onFormSubmit();
    }
    function Sys$WebForms$PageRequestManager$_doPostBackWithOptions(options) {
        this._isCrossPost = options && options.actionUrl;
        var validationResult = true;
        if (options.validation) {
            if (typeof(Page_ClientValidate) == 'function') {
                validationResult = Page_ClientValidate(options.validationGroup);
            }
        }
        if (validationResult) {
            if ((typeof(options.actionUrl) != "undefined") && (options.actionUrl != null) && (options.actionUrl.length > 0)) {
                theForm.action = options.actionUrl;
            }
            if (options.trackFocus) {
                var lastFocus = theForm.elements["__LASTFOCUS"];
                if ((typeof(lastFocus) != "undefined") && (lastFocus != null)) {
                    if (typeof(document.activeElement) == "undefined") {
                        lastFocus.value = options.eventTarget;
                    }
                    else {
                        var active = document.activeElement;
                        if ((typeof(active) != "undefined") && (active != null)) {
                            if ((typeof(active.id) != "undefined") && (active.id != null) && (active.id.length > 0)) {
                                lastFocus.value = active.id;
                            }
                            else if (typeof(active.name) != "undefined") {
                                lastFocus.value = active.name;
                            }
                        }
                    }
                }
            }
        }
        if (options.clientSubmit) {
            this._doPostBack(options.eventTarget, options.eventArgument);
        }
    }
    function Sys$WebForms$PageRequestManager$_elementContains(container, element) {
        while (element) {
            if (element === container) {
                return true;
            }
            element = element.parentNode;
        }
        return false;
    }
    function Sys$WebForms$PageRequestManager$_endPostBack(error, executor, data) {
        if (this._request === executor.get_webRequest()) {
            this._processingRequest = false;
            this._additionalInput = null;
            this._request = null;
        }
        var handler = this._get_eventHandlerList().getHandler("endRequest");
        var errorHandled = false;
        if (handler) {
            var eventArgs = new Sys.WebForms.EndRequestEventArgs(error, data ? data.dataItems : {}, executor);
            handler(this, eventArgs);
            errorHandled = eventArgs.get_errorHandled();
        }
        if (error && !errorHandled) {
            throw error;
        }
    }
    function Sys$WebForms$PageRequestManager$_ensureUniqueIds(ids) {
        if (!ids) return ids;
        ids = ids instanceof Array ? ids : [ids];
        var uniqueIds = [];
        for (var i = 0, l = ids.length; i < l; i++) {
            var id = ids[i], index = Array.indexOf(this._updatePanelClientIDs, id);
            uniqueIds.push(index > -1 ? this._updatePanelIDs[index] : id);
        }
        return uniqueIds;
    }
    function Sys$WebForms$PageRequestManager$_findNearestElement(uniqueID) {
        while (uniqueID.length > 0) {
            var clientID = this._uniqueIDToClientID(uniqueID);
            var element = document.getElementById(clientID);
            if (element) {
                return element;
            }
            var indexOfLastDollar = uniqueID.lastIndexOf('$');
            if (indexOfLastDollar === -1) {
                return null;
            }
            uniqueID = uniqueID.substring(0, indexOfLastDollar);
        }
        return null;
    }
    function Sys$WebForms$PageRequestManager$_findText(text, location) {
        var startIndex = Math.max(0, location - 20);
        var endIndex = Math.min(text.length, location + 20);
        return text.substring(startIndex, endIndex);
    }
    function Sys$WebForms$PageRequestManager$_fireDefaultButton(event, target) {
        if (event.keyCode === 13) {
            var src = event.srcElement || event.target;
            if (!src || (src.tagName.toLowerCase() !== "textarea")) {
                var defaultButton = document.getElementById(target);
                if (defaultButton && (typeof(defaultButton.click) !== "undefined")) {
                    
                    
                    this._activeDefaultButton = defaultButton;
                    this._activeDefaultButtonClicked = false;
                    try {
                        defaultButton.click();
                    }
                    finally {
                        this._activeDefaultButton = null;
                    }
                    
                    
                    event.cancelBubble = true;
                    if (typeof(event.stopPropagation) === "function") {
                        event.stopPropagation();
                    }
                    return false;
                }
            }
        }
        return true;
    }
    function Sys$WebForms$PageRequestManager$_getPageLoadedEventArgs(initialLoad, data) {
        var updated = [];
        var created = [];
        var version4 = data ? data.version4 : false;
        var upData = data ? data.updatePanelData : null;
        var newIDs, newClientIDs, childIDs, refreshedIDs;
        if (!upData) {
            newIDs = this._updatePanelIDs;
            newClientIDs = this._updatePanelClientIDs;
            childIDs = null;
            refreshedIDs = null;
        }
        else {
            newIDs = upData.updatePanelIDs;
            newClientIDs = upData.updatePanelClientIDs;
            childIDs = upData.childUpdatePanelIDs;
            refreshedIDs = upData.panelsToRefreshIDs;
        }
        var i, l, uniqueID, clientID;
        if (refreshedIDs) {
            for (i = 0, l = refreshedIDs.length; i < l; i += (version4 ? 2 : 1)) {
                uniqueID = refreshedIDs[i];
                clientID = (version4 ? refreshedIDs[i+1] : "") || this._uniqueIDToClientID(uniqueID);
                Array.add(updated, document.getElementById(clientID));
            }
        }
        for (i = 0, l = newIDs.length; i < l; i++) {
            if (initialLoad || Array.indexOf(childIDs, newIDs[i]) !== -1) {
                Array.add(created, document.getElementById(newClientIDs[i]));
            }
        }
        return new Sys.WebForms.PageLoadedEventArgs(updated, created, data ? data.dataItems : {});
    }
    function Sys$WebForms$PageRequestManager$_getPageLoadingEventArgs(data) {
        var updated = [],
            deleted = [],
            upData = data.updatePanelData,
            oldIDs = upData.oldUpdatePanelIDs,
            oldClientIDs = upData.oldUpdatePanelClientIDs,
            newIDs = upData.updatePanelIDs,
            childIDs = upData.childUpdatePanelIDs,
            refreshedIDs = upData.panelsToRefreshIDs,
            i, l, uniqueID, clientID,
            version4 = data.version4;
        for (i = 0, l = refreshedIDs.length; i < l; i += (version4 ? 2 : 1)) {
            uniqueID = refreshedIDs[i];
            clientID = (version4 ? refreshedIDs[i+1] : "") || this._uniqueIDToClientID(uniqueID);
            Array.add(updated, document.getElementById(clientID));
        }
        for (i = 0, l = oldIDs.length; i < l; i++) {
            uniqueID = oldIDs[i];
            if (Array.indexOf(refreshedIDs, uniqueID) === -1 &&
                (Array.indexOf(newIDs, uniqueID) === -1 || Array.indexOf(childIDs, uniqueID) > -1)) {
                Array.add(deleted, document.getElementById(oldClientIDs[i]));
            }
        }
        return new Sys.WebForms.PageLoadingEventArgs(updated, deleted, data.dataItems);
    }
    function Sys$WebForms$PageRequestManager$_getPostBackSettings(element, elementUniqueID) {
        var originalElement = element;
        var proposedSettings = null;
        while (element) {
            if (element.id) {
                if (!proposedSettings && Array.contains(this._asyncPostBackControlClientIDs, element.id)) {
                    proposedSettings = this._createPostBackSettings(true, null, elementUniqueID, originalElement);
                }
                else {
                    if (!proposedSettings && Array.contains(this._postBackControlClientIDs, element.id)) {
                        return this._createPostBackSettings(false);
                    }
                    else {
                        var indexOfPanel = Array.indexOf(this._updatePanelClientIDs, element.id);
                        if (indexOfPanel !== -1) {
                            if (this._updatePanelHasChildrenAsTriggers[indexOfPanel]) {
                                return this._createPostBackSettings(true, [this._updatePanelIDs[indexOfPanel]], elementUniqueID, originalElement);
                            }
                            else {
                                return this._createPostBackSettings(true, null, elementUniqueID, originalElement);
                            }
                        }
                    }
                }
                if (!proposedSettings && this._matchesParentIDInList(element.id, this._asyncPostBackControlClientIDs)) {
                    proposedSettings = this._createPostBackSettings(true, null, elementUniqueID, originalElement);
                }
                else {
                    if (!proposedSettings && this._matchesParentIDInList(element.id, this._postBackControlClientIDs)) {
                        return this._createPostBackSettings(false);
                    }
                }
            }
            element = element.parentNode;
        }
        if (!proposedSettings) {
            return this._createPostBackSettings(false);
        }
        else {
            return proposedSettings;
        }
    }
    function Sys$WebForms$PageRequestManager$_getScrollPosition() {
        var d = document.documentElement;
        if (d && (this._validPosition(d.scrollLeft) || this._validPosition(d.scrollTop))) {
            return {
                x: d.scrollLeft,
                y: d.scrollTop
            };
        }
        else {
            d = document.body;
            if (d && (this._validPosition(d.scrollLeft) || this._validPosition(d.scrollTop))) {
                return {
                    x: d.scrollLeft,
                    y: d.scrollTop
                };
            }
            else {
                if (this._validPosition(window.pageXOffset) || this._validPosition(window.pageYOffset)) {
                    return {
                        x: window.pageXOffset,
                        y: window.pageYOffset
                    };
                }
                else {
                    return {
                        x: 0,
                        y: 0
                    };
                }
            }
        }
    }
    function Sys$WebForms$PageRequestManager$_initializeInternal(scriptManagerID, formElement, updatePanelIDs, asyncPostBackControlIDs, postBackControlIDs, asyncPostBackTimeout, masterPageUniqueID) {
        if (this._prmInitialized) {
            throw Error.invalidOperation(Sys.WebForms.Res.PRM_CannotRegisterTwice);
        }
        this._prmInitialized = true;
        this._masterPageUniqueID = masterPageUniqueID;
        this._scriptManagerID = scriptManagerID;
        this._form = Sys.UI.DomElement.resolveElement(formElement);
        this._onsubmit = this._form.onsubmit;
        this._form.onsubmit = null;
        this._onFormSubmitHandler = Function.createDelegate(this, this._onFormSubmit);
        this._onFormElementClickHandler = Function.createDelegate(this, this._onFormElementClick);
        this._onWindowUnloadHandler = Function.createDelegate(this, this._onWindowUnload);
        Sys.UI.DomEvent.addHandler(this._form, 'submit', this._onFormSubmitHandler);
        Sys.UI.DomEvent.addHandler(this._form, 'click', this._onFormElementClickHandler);
        Sys.UI.DomEvent.addHandler(window, 'unload', this._onWindowUnloadHandler);
        this._originalDoPostBack = window.__doPostBack;
        if (this._originalDoPostBack) {
            window.__doPostBack = Function.createDelegate(this, this._doPostBack);
        }
        this._originalDoPostBackWithOptions = window.WebForm_DoPostBackWithOptions;
        if (this._originalDoPostBackWithOptions) {
            window.WebForm_DoPostBackWithOptions = Function.createDelegate(this, this._doPostBackWithOptions);
        }
        this._originalFireDefaultButton = window.WebForm_FireDefaultButton;
        if (this._originalFireDefaultButton) {
            window.WebForm_FireDefaultButton = Function.createDelegate(this, this._fireDefaultButton);
        }
        this._originalDoCallback = window.WebForm_DoCallback;
        if (this._originalDoCallback) {
            window.WebForm_DoCallback = Function.createDelegate(this, this._doCallback);
        }
        this._pageLoadedHandler = Function.createDelegate(this, this._pageLoadedInitialLoad);
        Sys.UI.DomEvent.addHandler(window, 'load', this._pageLoadedHandler);
        if (updatePanelIDs) {
            this._updateControls(updatePanelIDs, asyncPostBackControlIDs, postBackControlIDs, asyncPostBackTimeout, true);
        }
    }
    function Sys$WebForms$PageRequestManager$_matchesParentIDInList(clientID, parentIDList) {
        for (var i = 0, l = parentIDList.length; i < l; i++) {
            if (clientID.startsWith(parentIDList[i] + "_")) {
                return true;
            }
        }
        return false;
    }
    function Sys$WebForms$PageRequestManager$_onFormElementActive(element, offsetX, offsetY) {
        if (element.disabled) {
            return;
        }
        this._activeElement = element;
        this._postBackSettings = this._getPostBackSettings(element, element.name);
        if (element.name) {
            var tagName = element.tagName.toUpperCase();
            if (tagName === 'INPUT') {
                var type = element.type;
                if (type === 'submit') {
                    this._additionalInput = encodeURIComponent(element.name) + '=' + encodeURIComponent(element.value);
                }
                else if (type === 'image') {
                    this._additionalInput = encodeURIComponent(element.name) + '.x=' + offsetX + '&' + encodeURIComponent(element.name) + '.y=' + offsetY;
                }
            }
            else if ((tagName === 'BUTTON') && (element.name.length !== 0) && (element.type === 'submit')) {
                this._additionalInput = encodeURIComponent(element.name) + '=' + encodeURIComponent(element.value);
            }
        }
    }
    function Sys$WebForms$PageRequestManager$_onFormElementClick(evt) {
        this._activeDefaultButtonClicked = (evt.target === this._activeDefaultButton);
        this._onFormElementActive(evt.target, evt.offsetX, evt.offsetY);
    }
    function Sys$WebForms$PageRequestManager$_onFormSubmit(evt) {
        var i, l, continueSubmit = true,
            isCrossPost = this._isCrossPost;
        this._isCrossPost = false;
        if (this._onsubmit) {
            continueSubmit = this._onsubmit();
        }
        if (continueSubmit) {
            for (i = 0, l = this._onSubmitStatements.length; i < l; i++) {
                if (!this._onSubmitStatements[i]()) {
                    continueSubmit = false;
                    break;
                }
            }
        }
        if (!continueSubmit) {
            if (evt) {
                evt.preventDefault();
            }
            return;
        }
        var form = this._form;
        if (isCrossPost) {
            return;
        }
        if (this._activeDefaultButton && !this._activeDefaultButtonClicked) {
            this._onFormElementActive(this._activeDefaultButton, 0, 0);
        }
        if (!this._postBackSettings || !this._postBackSettings.async) {
            return;
        }
        var formBody = new Sys.StringBuilder(),
            formElements = form.elements,
            count = formElements.length,
            panelID = this._createPanelID(null, this._postBackSettings);
        formBody.append(panelID);
        for (i = 0; i < count; i++) {
            var element = formElements[i];
            var name = element.name;
            if (typeof(name) === "undefined" || (name === null) || (name.length === 0) || (name === this._scriptManagerID)) {
                continue;
            }
            var tagName = element.tagName.toUpperCase();
            if (tagName === 'INPUT') {
                var type = element.type;
                if (this._textTypes.test(type)
                    || ((type === 'checkbox' || type === 'radio') && element.checked)) {
                    formBody.append(encodeURIComponent(name));
                    formBody.append('=');
                    formBody.append(encodeURIComponent(element.value));
                    formBody.append('&');
                }
            }
            else if (tagName === 'SELECT') {
                var optionCount = element.options.length;
                for (var j = 0; j < optionCount; j++) {
                    var option = element.options[j];
                    if (option.selected) {
                        formBody.append(encodeURIComponent(name));
                        formBody.append('=');
                        formBody.append(encodeURIComponent(option.value));
                        formBody.append('&');
                    }
                }
            }
            else if (tagName === 'TEXTAREA') {
                formBody.append(encodeURIComponent(name));
                formBody.append('=');
                formBody.append(encodeURIComponent(element.value));
                formBody.append('&');
            }
        }
        formBody.append("__ASYNCPOST=true&");
        if (this._additionalInput) {
            formBody.append(this._additionalInput);
            this._additionalInput = null;
        }
        
        var request = new Sys.Net.WebRequest();
        var action = form.action;
        if (Sys.Browser.agent === Sys.Browser.InternetExplorer) {
            var fragmentIndex = action.indexOf('#');
            if (fragmentIndex !== -1) {
                action = action.substr(0, fragmentIndex);
            }
            var domain = "", query = "", queryIndex = action.indexOf('?');
            if (queryIndex !== -1) {
                query = action.substr(queryIndex);
                action = action.substr(0, queryIndex);
            }
            if (/^https?\:\/\/.*$/gi.test(action)) {
                var domainPartIndex = action.indexOf("//") + 2,
                    slashAfterDomain = action.indexOf("/", domainPartIndex);
                if (slashAfterDomain === -1) {
                    domain = action;
                    action = "";
                }
                else {
                    domain = action.substr(0, slashAfterDomain);
                    action = action.substr(slashAfterDomain);
                }
            }
            action = domain + encodeURI(decodeURI(action)) + query;
        }
        request.set_url(action);
        request.get_headers()['X-MicrosoftAjax'] = 'Delta=true';
        request.get_headers()['Cache-Control'] = 'no-cache';
        request.set_timeout(this._asyncPostBackTimeout);
        request.add_completed(Function.createDelegate(this, this._onFormSubmitCompleted));
        request.set_body(formBody.toString());
        var panelsToUpdate, eventArgs, handler = this._get_eventHandlerList().getHandler("initializeRequest");
        if (handler) {
            panelsToUpdate = this._postBackSettings.panelsToUpdate;
            eventArgs = new Sys.WebForms.InitializeRequestEventArgs(request, this._postBackSettings.sourceElement, panelsToUpdate);
            handler(this, eventArgs);
            continueSubmit = !eventArgs.get_cancel();
        }
        if (!continueSubmit) {
            if (evt) {
                evt.preventDefault();
            }
            return;
        }
        
        if (eventArgs && eventArgs._updated) {
            panelsToUpdate = eventArgs.get_updatePanelsToUpdate();
            request.set_body(request.get_body().replace(panelID, this._createPanelID(panelsToUpdate, this._postBackSettings)));
        }
        this._scrollPosition = this._getScrollPosition();
        this.abortPostBack();
        handler = this._get_eventHandlerList().getHandler("beginRequest");
        if (handler) {
            eventArgs = new Sys.WebForms.BeginRequestEventArgs(request, this._postBackSettings.sourceElement,
                panelsToUpdate || this._postBackSettings.panelsToUpdate);
            handler(this, eventArgs);
        }
        
        if (this._originalDoCallback) {
            this._cancelPendingCallbacks();
        }
        this._request = request;
        this._processingRequest = false;
        request.invoke();
        if (evt) {
            evt.preventDefault();
        }
    }
    function Sys$WebForms$PageRequestManager$_onFormSubmitCompleted(sender, eventArgs) {
        this._processingRequest = true;
        if (sender.get_timedOut()) {
            this._endPostBack(this._createPageRequestManagerTimeoutError(), sender, null);
            return;
        }
        if (sender.get_aborted()) {
            this._endPostBack(null, sender, null);
            return;
        }
        if (!this._request || (sender.get_webRequest() !== this._request)) {
            return;
        }
        if (sender.get_statusCode() !== 200) {
            this._endPostBack(this._createPageRequestManagerServerError(sender.get_statusCode()), sender, null);
            return;
        }
        var data = this._parseDelta(sender);
        if (!data) return;
        
        var i, l;
        if (data.asyncPostBackControlIDsNode && data.postBackControlIDsNode &&
            data.updatePanelIDsNode && data.panelsToRefreshNode && data.childUpdatePanelIDsNode) {
            
            var oldUpdatePanelIDs = this._updatePanelIDs,
                oldUpdatePanelClientIDs = this._updatePanelClientIDs;
            var childUpdatePanelIDsString = data.childUpdatePanelIDsNode.content;
            var childUpdatePanelIDs = childUpdatePanelIDsString.length ? childUpdatePanelIDsString.split(',') : [];
            var asyncPostBackControlIDsArray = this._splitNodeIntoArray(data.asyncPostBackControlIDsNode);
            var postBackControlIDsArray = this._splitNodeIntoArray(data.postBackControlIDsNode);
            var updatePanelIDsArray = this._splitNodeIntoArray(data.updatePanelIDsNode);
            var panelsToRefreshIDs = this._splitNodeIntoArray(data.panelsToRefreshNode);
            var v4 = data.version4;
            for (i = 0, l = panelsToRefreshIDs.length; i < l; i+= (v4 ? 2 : 1)) {
                var panelClientID = (v4 ? panelsToRefreshIDs[i+1] : "") || this._uniqueIDToClientID(panelsToRefreshIDs[i]);
                if (!document.getElementById(panelClientID)) {
                    this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel, panelClientID)), sender, data);
                    return;
                }
            }
            
            var updatePanelData = this._processUpdatePanelArrays(
                updatePanelIDsArray,
                asyncPostBackControlIDsArray,
                postBackControlIDsArray, v4);
            updatePanelData.oldUpdatePanelIDs = oldUpdatePanelIDs;
            updatePanelData.oldUpdatePanelClientIDs = oldUpdatePanelClientIDs;
            updatePanelData.childUpdatePanelIDs = childUpdatePanelIDs;
            updatePanelData.panelsToRefreshIDs = panelsToRefreshIDs;
            data.updatePanelData = updatePanelData;
        }
        data.dataItems = {};
        var node;
        for (i = 0, l = data.dataItemNodes.length; i < l; i++) {
            node = data.dataItemNodes[i];
            data.dataItems[node.id] = node.content;
        }
        for (i = 0, l = data.dataItemJsonNodes.length; i < l; i++) {
            node = data.dataItemJsonNodes[i];
            data.dataItems[node.id] = Sys.Serialization.JavaScriptSerializer.deserialize(node.content);
        }
        var handler = this._get_eventHandlerList().getHandler("pageLoading");
        if (handler) {
            handler(this, this._getPageLoadingEventArgs(data));
        }
        
        Sys._ScriptLoader.readLoadedScripts();
        Sys.Application.beginCreateComponents();
        var scriptLoader = Sys._ScriptLoader.getInstance();
        this._queueScripts(scriptLoader, data.scriptBlockNodes, true, false);
        
        this._processingRequest = true;
        scriptLoader.loadScripts(0,
            Function.createDelegate(this, Function.createCallback(this._scriptIncludesLoadComplete, data)),
            Function.createDelegate(this, Function.createCallback(this._scriptIncludesLoadFailed, data)),
            null);        
    }
    function Sys$WebForms$PageRequestManager$_onWindowUnload(evt) {
        this.dispose();
    }
    function Sys$WebForms$PageRequestManager$_pageLoaded(initialLoad, data) {
        var handler = this._get_eventHandlerList().getHandler("pageLoaded");
        if (handler) {
            handler(this, this._getPageLoadedEventArgs(initialLoad, data));
        }
        if (!initialLoad) {
            Sys.Application.raiseLoad();
        }
    }
    function Sys$WebForms$PageRequestManager$_pageLoadedInitialLoad(evt) {
        this._pageLoaded(true, null);
    }
    function Sys$WebForms$PageRequestManager$_parseDelta(executor) {
        var reply = executor.get_responseData();
        var delimiterIndex, len, type, id, content;
        var replyIndex = 0;
        var parserErrorDetails = null;
        var delta = [];
        while (replyIndex < reply.length) {
            delimiterIndex = reply.indexOf('|', replyIndex);
            if (delimiterIndex === -1) {
                parserErrorDetails = this._findText(reply, replyIndex);
                break;
            }
            len = parseInt(reply.substring(replyIndex, delimiterIndex), 10);
            if ((len % 1) !== 0) {
                parserErrorDetails = this._findText(reply, replyIndex);
                break;
            }
            replyIndex = delimiterIndex + 1;
            delimiterIndex = reply.indexOf('|', replyIndex);
            if (delimiterIndex === -1) {
                parserErrorDetails = this._findText(reply, replyIndex);
                break;
            }
            type = reply.substring(replyIndex, delimiterIndex);
            replyIndex = delimiterIndex + 1;
            delimiterIndex = reply.indexOf('|', replyIndex);
            if (delimiterIndex === -1) {
                parserErrorDetails = this._findText(reply, replyIndex);
                break;
            }
            id = reply.substring(replyIndex, delimiterIndex);
            replyIndex = delimiterIndex + 1;
            if ((replyIndex + len) >= reply.length) {
                parserErrorDetails = this._findText(reply, reply.length);
                break;
            }
            content = reply.substr(replyIndex, len);
            replyIndex += len;
            if (reply.charAt(replyIndex) !== '|') {
                parserErrorDetails = this._findText(reply, replyIndex);
                break;
            }
            replyIndex++;
            Array.add(delta, {type: type, id: id, content: content});
        }
        if (parserErrorDetails) {
            this._endPostBack(this._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_ParserErrorDetails, parserErrorDetails)), executor, null);
            return null;
        }
        var updatePanelNodes = [];
        var hiddenFieldNodes = [];
        var arrayDeclarationNodes = [];
        var scriptBlockNodes = [];
        var scriptStartupNodes = [];
        var expandoNodes = [];
        var onSubmitNodes = [];
        var dataItemNodes = [];
        var dataItemJsonNodes = [];
        var scriptDisposeNodes = [];
        var asyncPostBackControlIDsNode, postBackControlIDsNode,
            updatePanelIDsNode, asyncPostBackTimeoutNode,
            childUpdatePanelIDsNode, panelsToRefreshNode, formActionNode,
            versionNode;
        for (var i = 0, l = delta.length; i < l; i++) {
            var deltaNode = delta[i];
            switch (deltaNode.type) {
                case "#":
                    versionNode = deltaNode;
                    break;
                case "updatePanel":
                    Array.add(updatePanelNodes, deltaNode);
                    break;
                case "hiddenField":
                    Array.add(hiddenFieldNodes, deltaNode);
                    break;
                case "arrayDeclaration":
                    Array.add(arrayDeclarationNodes, deltaNode);
                    break;
                case "scriptBlock":
                    Array.add(scriptBlockNodes, deltaNode);
                    break;
                case "fallbackScript":
                    scriptBlockNodes[scriptBlockNodes.length - 1].fallback = deltaNode.id;
                case "scriptStartupBlock":
                    Array.add(scriptStartupNodes, deltaNode);
                    break;
                case "expando":
                    Array.add(expandoNodes, deltaNode);
                    break;
                case "onSubmit":
                    Array.add(onSubmitNodes, deltaNode);
                    break;
                case "asyncPostBackControlIDs":
                    asyncPostBackControlIDsNode = deltaNode;
                    break;
                case "postBackControlIDs":
                    postBackControlIDsNode = deltaNode;
                    break;
                case "updatePanelIDs":
                    updatePanelIDsNode = deltaNode;
                    break;
                case "asyncPostBackTimeout":
                    asyncPostBackTimeoutNode = deltaNode;
                    break;
                case "childUpdatePanelIDs":
                    childUpdatePanelIDsNode = deltaNode;
                    break;
                case "panelsToRefreshIDs":
                    panelsToRefreshNode = deltaNode;
                    break;
                case "formAction":
                    formActionNode = deltaNode;
                    break;
                case "dataItem":
                    Array.add(dataItemNodes, deltaNode);
                    break;
                case "dataItemJson":
                    Array.add(dataItemJsonNodes, deltaNode);
                    break;
                case "scriptDispose":
                    Array.add(scriptDisposeNodes, deltaNode);
                    break;
                case "pageRedirect":
                    if (versionNode && parseFloat(versionNode.content) >= 4) {
                        deltaNode.content = unescape(deltaNode.content);
                    }
                    if (Sys.Browser.agent === Sys.Browser.InternetExplorer) {
                        var anchor = document.createElement("a");
                        anchor.style.display = 'none';
                        anchor.attachEvent("onclick", cancelBubble);
                        anchor.href = deltaNode.content;
                        this._form.parentNode.insertBefore(anchor, this._form);
                        anchor.click();
                        anchor.detachEvent("onclick", cancelBubble);
                        this._form.parentNode.removeChild(anchor);
                        
                        function cancelBubble(e) {
                            e.cancelBubble = true;
                        }
                    }
                    else {
                        window.location.href = deltaNode.content;
                    }
                    return null;
                case "error":
                    this._endPostBack(this._createPageRequestManagerServerError(Number.parseInvariant(deltaNode.id), deltaNode.content), executor, null);
                    return null;
                case "pageTitle":
                    document.title = deltaNode.content;
                    break;
                case "focus":
                    this._controlIDToFocus = deltaNode.content;
                    break;
                default:
                    this._endPostBack(this._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_UnknownToken, deltaNode.type)), executor, null);
                    return null;
            } 
        } 
        return {
            version4: versionNode ? (parseFloat(versionNode.content) >= 4) : false,
            executor: executor,
            updatePanelNodes: updatePanelNodes,
            hiddenFieldNodes: hiddenFieldNodes,
            arrayDeclarationNodes: arrayDeclarationNodes,
            scriptBlockNodes: scriptBlockNodes,
            scriptStartupNodes: scriptStartupNodes,
            expandoNodes: expandoNodes,
            onSubmitNodes: onSubmitNodes,
            dataItemNodes: dataItemNodes,
            dataItemJsonNodes: dataItemJsonNodes,
            scriptDisposeNodes: scriptDisposeNodes,
            asyncPostBackControlIDsNode: asyncPostBackControlIDsNode,
            postBackControlIDsNode: postBackControlIDsNode,
            updatePanelIDsNode: updatePanelIDsNode,
            asyncPostBackTimeoutNode: asyncPostBackTimeoutNode,
            childUpdatePanelIDsNode: childUpdatePanelIDsNode,
            panelsToRefreshNode: panelsToRefreshNode,
            formActionNode: formActionNode };
    }
    function Sys$WebForms$PageRequestManager$_processUpdatePanelArrays(updatePanelIDs, asyncPostBackControlIDs, postBackControlIDs, version4) {
        var newUpdatePanelIDs, newUpdatePanelClientIDs, newUpdatePanelHasChildrenAsTriggers;
        
        if (updatePanelIDs) {
            var l = updatePanelIDs.length,
                m = version4 ? 2 : 1;
            newUpdatePanelIDs = new Array(l/m);
            newUpdatePanelClientIDs = new Array(l/m);
            newUpdatePanelHasChildrenAsTriggers = new Array(l/m);
            
            for (var i = 0, j = 0; i < l; i += m, j++) {
                var ct,
                    uniqueID = updatePanelIDs[i],
                    clientID = version4 ? updatePanelIDs[i+1] : "";
                ct = (uniqueID.charAt(0) === 't');
                uniqueID = uniqueID.substr(1);
                if (!clientID) {
                    clientID = this._uniqueIDToClientID(uniqueID);
                }
                newUpdatePanelHasChildrenAsTriggers[j] = ct;
                newUpdatePanelIDs[j] = uniqueID;
                newUpdatePanelClientIDs[j] = clientID;
            }
        }
        else {
            newUpdatePanelIDs = [];
            newUpdatePanelClientIDs = [];
            newUpdatePanelHasChildrenAsTriggers = [];
        }
        var newAsyncPostBackControlIDs = [];
        var newAsyncPostBackControlClientIDs = [];
        this._convertToClientIDs(asyncPostBackControlIDs, newAsyncPostBackControlIDs, newAsyncPostBackControlClientIDs, version4);
        var newPostBackControlIDs = [];
        var newPostBackControlClientIDs = [];
        this._convertToClientIDs(postBackControlIDs, newPostBackControlIDs, newPostBackControlClientIDs, version4);
        
        return {
            updatePanelIDs: newUpdatePanelIDs,
            updatePanelClientIDs: newUpdatePanelClientIDs,
            updatePanelHasChildrenAsTriggers: newUpdatePanelHasChildrenAsTriggers,
            asyncPostBackControlIDs: newAsyncPostBackControlIDs,
            asyncPostBackControlClientIDs: newAsyncPostBackControlClientIDs,
            postBackControlIDs: newPostBackControlIDs,
            postBackControlClientIDs: newPostBackControlClientIDs
        };
    }
    function Sys$WebForms$PageRequestManager$_queueScripts(scriptLoader, scriptBlockNodes, queueIncludes, queueBlocks) {
        
        for (var i = 0, l = scriptBlockNodes.length; i < l; i++) {
            var scriptBlockType = scriptBlockNodes[i].id;
            switch (scriptBlockType) {
                case "ScriptContentNoTags":
                    if (!queueBlocks) {
                        continue;
                    }
                    scriptLoader.queueScriptBlock(scriptBlockNodes[i].content);
                    break;
                case "ScriptContentWithTags":
                    var scriptTagAttributes;
                    eval("scriptTagAttributes = " + scriptBlockNodes[i].content);
                    if (scriptTagAttributes.src) {
                        if (!queueIncludes || Sys._ScriptLoader.isScriptLoaded(scriptTagAttributes.src)) {
                            continue;
                        }
                    }
                    else if (!queueBlocks) {
                        continue;
                    }
                    scriptLoader.queueCustomScriptTag(scriptTagAttributes);
                    break;
                case "ScriptPath":
                    var script = scriptBlockNodes[i];
                    if (!queueIncludes || Sys._ScriptLoader.isScriptLoaded(script.content)) {
                        continue;
                    }
                    scriptLoader.queueScriptReference(script.content, script.fallback);
                    break;
            }
        }        
    }
    function Sys$WebForms$PageRequestManager$_registerDisposeScript(panelID, disposeScript) {
        if (!this._scriptDisposes[panelID]) {
            this._scriptDisposes[panelID] = [disposeScript];
        }
        else {
            Array.add(this._scriptDisposes[panelID], disposeScript);
        }
    }
    function Sys$WebForms$PageRequestManager$_scriptIncludesLoadComplete(scriptLoader, data) {
        
        
        if (data.executor.get_webRequest() !== this._request) {
            return;
        }
        
        this._commitControls(data.updatePanelData,
            data.asyncPostBackTimeoutNode ? data.asyncPostBackTimeoutNode.content : null);
        if (data.formActionNode) {
            this._form.action = data.formActionNode.content;
        }
        
        var i, l, node;
        for (i = 0, l = data.updatePanelNodes.length; i < l; i++) {
            node = data.updatePanelNodes[i];
            var updatePanelElement = document.getElementById(node.id);
            if (!updatePanelElement) {
                this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel, node.id)), data.executor, data);
                return;
            }
            this._updatePanel(updatePanelElement, node.content);
        }
        for (i = 0, l = data.scriptDisposeNodes.length; i < l; i++) {
            node = data.scriptDisposeNodes[i];
            this._registerDisposeScript(node.id, node.content);
        }
        for (i = 0, l = this._transientFields.length; i < l; i++) {
            var field = document.getElementById(this._transientFields[i]);
            if (field) {
                var toRemove = field._isContained ? field.parentNode : field;
                toRemove.parentNode.removeChild(toRemove);
            }
        }
        for (i = 0, l = data.hiddenFieldNodes.length; i < l; i++) {
            node = data.hiddenFieldNodes[i];
            this._createHiddenField(node.id, node.content);
        }
        
        if (data.scriptsFailed) {
            throw Sys._ScriptLoader._errorScriptLoadFailed(data.scriptsFailed.src, data.scriptsFailed.multipleCallbacks);
        }
        
        this._queueScripts(scriptLoader, data.scriptBlockNodes, false, true);
        var arrayScript = '';
        for (i = 0, l = data.arrayDeclarationNodes.length; i < l; i++) {
            node = data.arrayDeclarationNodes[i];
            arrayScript += "Sys.WebForms.PageRequestManager._addArrayElement('" + node.id + "', " + node.content + ");\r\n";
        }
        var expandoScript = '';
        for (i = 0, l = data.expandoNodes.length; i < l; i++) {
            node = data.expandoNodes[i];
            expandoScript += node.id + " = " + node.content + "\r\n";
        }
        if (arrayScript.length) {
            scriptLoader.queueScriptBlock(arrayScript);
        }
        if (expandoScript.length) {
            scriptLoader.queueScriptBlock(expandoScript);
        }
        
        this._queueScripts(scriptLoader, data.scriptStartupNodes, true, true);
        var onSubmitStatementScript = '';
        for (i = 0, l = data.onSubmitNodes.length; i < l; i++) {
            if (i === 0) {
                onSubmitStatementScript = 'Array.add(Sys.WebForms.PageRequestManager.getInstance()._onSubmitStatements, function() {\r\n';
            }
            onSubmitStatementScript += data.onSubmitNodes[i].content + "\r\n";
        }
        if (onSubmitStatementScript.length) {
            onSubmitStatementScript += "\r\nreturn true;\r\n});\r\n";
            scriptLoader.queueScriptBlock(onSubmitStatementScript);
        }
        scriptLoader.loadScripts(0,
            Function.createDelegate(this, Function.createCallback(this._scriptsLoadComplete, data)), null, null);
    }
    function Sys$WebForms$PageRequestManager$_scriptIncludesLoadFailed(scriptLoader, scriptElement, multipleCallbacks, data) {
        data.scriptsFailed = { src: scriptElement.src, multipleCallbacks: multipleCallbacks };
        this._scriptIncludesLoadComplete(scriptLoader, data);
    }
    function Sys$WebForms$PageRequestManager$_scriptsLoadComplete(scriptLoader, data) {
        
        
        var response = data.executor;
        if (window.__theFormPostData) {
            window.__theFormPostData = "";
        }
        if (window.__theFormPostCollection) {
            window.__theFormPostCollection = [];
        }
        if (window.WebForm_InitCallback) {
            window.WebForm_InitCallback();
        }
        if (this._scrollPosition) {
            if (window.scrollTo) {
                window.scrollTo(this._scrollPosition.x, this._scrollPosition.y);
            }
            this._scrollPosition = null;
        }
        Sys.Application.endCreateComponents();
        this._pageLoaded(false, data);
        this._endPostBack(null, response, data);
        if (this._controlIDToFocus) {
            var focusTarget;
            var oldContentEditableSetting;
            if (Sys.Browser.agent === Sys.Browser.InternetExplorer) {
                var targetControl = $get(this._controlIDToFocus);
                focusTarget = targetControl;
                if (targetControl && (!WebForm_CanFocus(targetControl))) {
                    focusTarget = WebForm_FindFirstFocusableChild(targetControl);
                }
                if (focusTarget && (typeof(focusTarget.contentEditable) !== "undefined")) {
                    oldContentEditableSetting = focusTarget.contentEditable;
                    focusTarget.contentEditable = false;
                }
                else {
                    focusTarget = null;
                }
            }
            WebForm_AutoFocus(this._controlIDToFocus);
            if (focusTarget) {
                focusTarget.contentEditable = oldContentEditableSetting;
            }
            this._controlIDToFocus = null;
        }
    }
    function Sys$WebForms$PageRequestManager$_splitNodeIntoArray(node) {
        var str = node.content;
        var arr = str.length ? str.split(',') : [];
        return arr;
    }
    function Sys$WebForms$PageRequestManager$_uniqueIDToClientID(uniqueID) {
        return uniqueID.replace(/\$/g, '_');
    }
    function Sys$WebForms$PageRequestManager$_updateControls(updatePanelIDs, asyncPostBackControlIDs, postBackControlIDs, asyncPostBackTimeout, version4) {
        this._commitControls(
            this._processUpdatePanelArrays(updatePanelIDs, asyncPostBackControlIDs, postBackControlIDs, version4),
            asyncPostBackTimeout);
    }
    function Sys$WebForms$PageRequestManager$_updatePanel(updatePanelElement, rendering) {
        for (var updatePanelID in this._scriptDisposes) {
            if (this._elementContains(updatePanelElement, document.getElementById(updatePanelID))) {
                var disposeScripts = this._scriptDisposes[updatePanelID];
                for (var i = 0, l = disposeScripts.length; i < l; i++) {
                    eval(disposeScripts[i]);
                }
                delete this._scriptDisposes[updatePanelID];
            }
        }
        Sys.Application.disposeElement(updatePanelElement, true);
        updatePanelElement.innerHTML = rendering;
    }
    function Sys$WebForms$PageRequestManager$_validPosition(position) {
        return (typeof(position) !== "undefined") && (position !== null) && (position !== 0);
    }
Sys.WebForms.PageRequestManager.prototype = {
    _get_eventHandlerList: Sys$WebForms$PageRequestManager$_get_eventHandlerList,
    get_isInAsyncPostBack: Sys$WebForms$PageRequestManager$get_isInAsyncPostBack,
    add_beginRequest: Sys$WebForms$PageRequestManager$add_beginRequest,
    remove_beginRequest: Sys$WebForms$PageRequestManager$remove_beginRequest,
    add_endRequest: Sys$WebForms$PageRequestManager$add_endRequest,
    remove_endRequest: Sys$WebForms$PageRequestManager$remove_endRequest,
    add_initializeRequest: Sys$WebForms$PageRequestManager$add_initializeRequest,
    remove_initializeRequest: Sys$WebForms$PageRequestManager$remove_initializeRequest,
    add_pageLoaded: Sys$WebForms$PageRequestManager$add_pageLoaded,
    remove_pageLoaded: Sys$WebForms$PageRequestManager$remove_pageLoaded,
    add_pageLoading: Sys$WebForms$PageRequestManager$add_pageLoading,
    remove_pageLoading: Sys$WebForms$PageRequestManager$remove_pageLoading,
    abortPostBack: Sys$WebForms$PageRequestManager$abortPostBack,
    beginAsyncPostBack: Sys$WebForms$PageRequestManager$beginAsyncPostBack,
    _cancelPendingCallbacks: Sys$WebForms$PageRequestManager$_cancelPendingCallbacks,
    _commitControls: Sys$WebForms$PageRequestManager$_commitControls,
    _createHiddenField: Sys$WebForms$PageRequestManager$_createHiddenField,
    _createPageRequestManagerTimeoutError: Sys$WebForms$PageRequestManager$_createPageRequestManagerTimeoutError,
    _createPageRequestManagerServerError: Sys$WebForms$PageRequestManager$_createPageRequestManagerServerError,
    _createPageRequestManagerParserError: Sys$WebForms$PageRequestManager$_createPageRequestManagerParserError,
    _createPanelID: Sys$WebForms$PageRequestManager$_createPanelID,
    _createPostBackSettings: Sys$WebForms$PageRequestManager$_createPostBackSettings,
    _convertToClientIDs: Sys$WebForms$PageRequestManager$_convertToClientIDs,
    dispose: Sys$WebForms$PageRequestManager$dispose,
    _doCallback: Sys$WebForms$PageRequestManager$_doCallback,
    _doPostBack: Sys$WebForms$PageRequestManager$_doPostBack,
    _doPostBackWithOptions: Sys$WebForms$PageRequestManager$_doPostBackWithOptions,
    _elementContains: Sys$WebForms$PageRequestManager$_elementContains,
    _endPostBack: Sys$WebForms$PageRequestManager$_endPostBack,
    _ensureUniqueIds: Sys$WebForms$PageRequestManager$_ensureUniqueIds,
    _findNearestElement: Sys$WebForms$PageRequestManager$_findNearestElement,
    _findText: Sys$WebForms$PageRequestManager$_findText,
    _fireDefaultButton: Sys$WebForms$PageRequestManager$_fireDefaultButton,
    _getPageLoadedEventArgs: Sys$WebForms$PageRequestManager$_getPageLoadedEventArgs,
    _getPageLoadingEventArgs: Sys$WebForms$PageRequestManager$_getPageLoadingEventArgs,
    _getPostBackSettings: Sys$WebForms$PageRequestManager$_getPostBackSettings,
    _getScrollPosition: Sys$WebForms$PageRequestManager$_getScrollPosition,
    _initializeInternal: Sys$WebForms$PageRequestManager$_initializeInternal,
    _matchesParentIDInList: Sys$WebForms$PageRequestManager$_matchesParentIDInList,
    _onFormElementActive: Sys$WebForms$PageRequestManager$_onFormElementActive,
    _onFormElementClick: Sys$WebForms$PageRequestManager$_onFormElementClick,
    _onFormSubmit: Sys$WebForms$PageRequestManager$_onFormSubmit,
    _onFormSubmitCompleted: Sys$WebForms$PageRequestManager$_onFormSubmitCompleted,
    _onWindowUnload: Sys$WebForms$PageRequestManager$_onWindowUnload,
    _pageLoaded: Sys$WebForms$PageRequestManager$_pageLoaded,
    _pageLoadedInitialLoad: Sys$WebForms$PageRequestManager$_pageLoadedInitialLoad,
    _parseDelta: Sys$WebForms$PageRequestManager$_parseDelta,
    _processUpdatePanelArrays: Sys$WebForms$PageRequestManager$_processUpdatePanelArrays,
    _queueScripts: Sys$WebForms$PageRequestManager$_queueScripts,
    _registerDisposeScript: Sys$WebForms$PageRequestManager$_registerDisposeScript,
    _scriptIncludesLoadComplete: Sys$WebForms$PageRequestManager$_scriptIncludesLoadComplete,
    _scriptIncludesLoadFailed: Sys$WebForms$PageRequestManager$_scriptIncludesLoadFailed,
    _scriptsLoadComplete: Sys$WebForms$PageRequestManager$_scriptsLoadComplete,
    _splitNodeIntoArray: Sys$WebForms$PageRequestManager$_splitNodeIntoArray,
    _uniqueIDToClientID: Sys$WebForms$PageRequestManager$_uniqueIDToClientID,
    _updateControls: Sys$WebForms$PageRequestManager$_updateControls,
    _updatePanel: Sys$WebForms$PageRequestManager$_updatePanel,
    _validPosition: Sys$WebForms$PageRequestManager$_validPosition
}
Sys.WebForms.PageRequestManager.getInstance = function Sys$WebForms$PageRequestManager$getInstance() {
    /// <summary locid="M:J#Sys.WebForms.PageRequestManager.getInstance" />
    /// <returns type="Sys.WebForms.PageRequestManager"></returns>
    if (arguments.length !== 0) throw Error.parameterCount();
    var prm = Sys.WebForms.PageRequestManager._instance;
    if (!prm) {
        prm = Sys.WebForms.PageRequestManager._instance = new Sys.WebForms.PageRequestManager();
    }
    return prm;
}
Sys.WebForms.PageRequestManager._addArrayElement = function Sys$WebForms$PageRequestManager$_addArrayElement(arrayName) {
    if (!window[arrayName]) {
        window[arrayName] = new Array();
    }
    for (var i = 1, l = arguments.length; i < l; i++) {
        Array.add(window[arrayName], arguments[i]);
    }
}
Sys.WebForms.PageRequestManager._initialize = function Sys$WebForms$PageRequestManager$_initialize() {
    var prm = Sys.WebForms.PageRequestManager.getInstance();
    prm._initializeInternal.apply(prm, arguments);
}
Sys.WebForms.PageRequestManager.registerClass('Sys.WebForms.PageRequestManager');
 
Sys.UI._UpdateProgress = function Sys$UI$_UpdateProgress(element) {
    Sys.UI._UpdateProgress.initializeBase(this,[element]);
    this._displayAfter = 500;
    this._dynamicLayout = true;
    this._associatedUpdatePanelId = null;
    this._beginRequestHandlerDelegate = null;
    this._startDelegate = null;
    this._endRequestHandlerDelegate = null;
    this._pageRequestManager = null;
    this._timerCookie = null;
}
    function Sys$UI$_UpdateProgress$get_displayAfter() {
        /// <value type="Number" locid="P:J#Sys.UI._UpdateProgress.displayAfter"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._displayAfter;
    }
    function Sys$UI$_UpdateProgress$set_displayAfter(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Number}]);
        if (e) throw e;
        this._displayAfter = value;
    }
    function Sys$UI$_UpdateProgress$get_dynamicLayout() {
        /// <value type="Boolean" locid="P:J#Sys.UI._UpdateProgress.dynamicLayout"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._dynamicLayout;
    }
    function Sys$UI$_UpdateProgress$set_dynamicLayout(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
        if (e) throw e;
        this._dynamicLayout = value;
    }
    function Sys$UI$_UpdateProgress$get_associatedUpdatePanelId() {
        /// <value type="String" mayBeNull="true" locid="P:J#Sys.UI._UpdateProgress.associatedUpdatePanelId"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._associatedUpdatePanelId;
    }
    function Sys$UI$_UpdateProgress$set_associatedUpdatePanelId(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String, mayBeNull: true}]);
        if (e) throw e;
        this._associatedUpdatePanelId = value;
    }
    function Sys$UI$_UpdateProgress$get_role() {
        /// <value type="String" locid="P:J#Sys.UI._UpdateProgress.role"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return "status";
    }
    function Sys$UI$_UpdateProgress$_clearTimeout() {
        if (this._timerCookie) {
            window.clearTimeout(this._timerCookie);
            this._timerCookie = null;
        }
    }
    function Sys$UI$_UpdateProgress$_getUniqueID(clientID) {
        var i = Array.indexOf(this._pageRequestManager._updatePanelClientIDs, clientID);
        return i === -1 ? null : this._pageRequestManager._updatePanelIDs[i];
    }
    function Sys$UI$_UpdateProgress$_handleBeginRequest(sender, arg) {
        var curElem = arg.get_postBackElement(),
            showProgress = true,
            upID = this._associatedUpdatePanelId;
        if (this._associatedUpdatePanelId) {
            var updating = arg.get_updatePanelsToUpdate();
            if (updating && updating.length) {
                showProgress = (Array.contains(updating, upID) || Array.contains(updating, this._getUniqueID(upID)))
            }
            else {
                showProgress = false;
            }
        }
        while (!showProgress && curElem) {
            if (curElem.id && this._associatedUpdatePanelId === curElem.id) {
                showProgress = true; 
            }
            curElem = curElem.parentNode; 
        } 
        if (showProgress) {
            this._timerCookie = window.setTimeout(this._startDelegate, this._displayAfter);
        }
    }
    function Sys$UI$_UpdateProgress$_startRequest() {
        if (this._pageRequestManager.get_isInAsyncPostBack()) {
            var element = this.get_element();
            if (this._dynamicLayout) {
                element.style.display = 'block';
            }
            else {
                element.style.visibility = 'visible';
            }
            if (this.get_role() === "status") {
                element.setAttribute("aria-hidden", "false");
            }
        }
        this._timerCookie = null;
    }
    function Sys$UI$_UpdateProgress$_handleEndRequest(sender, arg) {
        var element = this.get_element();
        if (this._dynamicLayout) {
            element.style.display = 'none';
        }
        else {
            element.style.visibility = 'hidden';
        }
        if (this.get_role() === "status") {
            element.setAttribute("aria-hidden", "true");
        }
        this._clearTimeout();
    }
    function Sys$UI$_UpdateProgress$dispose() {
        if (this._beginRequestHandlerDelegate !== null) {
            this._pageRequestManager.remove_beginRequest(this._beginRequestHandlerDelegate);
            this._pageRequestManager.remove_endRequest(this._endRequestHandlerDelegate);
            this._beginRequestHandlerDelegate = null;
            this._endRequestHandlerDelegate = null;
        }
        this._clearTimeout();
        Sys.UI._UpdateProgress.callBaseMethod(this,"dispose");
    }
    function Sys$UI$_UpdateProgress$initialize() {
        Sys.UI._UpdateProgress.callBaseMethod(this, 'initialize');
        if (this.get_role() === "status") {
            this.get_element().setAttribute("aria-hidden", "true");
        }
    	this._beginRequestHandlerDelegate = Function.createDelegate(this, this._handleBeginRequest);
    	this._endRequestHandlerDelegate = Function.createDelegate(this, this._handleEndRequest);
    	this._startDelegate = Function.createDelegate(this, this._startRequest);
    	if (Sys.WebForms && Sys.WebForms.PageRequestManager) {
           this._pageRequestManager = Sys.WebForms.PageRequestManager.getInstance();
    	}
    	if (this._pageRequestManager !== null ) {
    	    this._pageRequestManager.add_beginRequest(this._beginRequestHandlerDelegate);
    	    this._pageRequestManager.add_endRequest(this._endRequestHandlerDelegate);
    	}
    }
Sys.UI._UpdateProgress.prototype = {
    get_displayAfter: Sys$UI$_UpdateProgress$get_displayAfter,
    set_displayAfter: Sys$UI$_UpdateProgress$set_displayAfter,
    get_dynamicLayout: Sys$UI$_UpdateProgress$get_dynamicLayout,
    set_dynamicLayout: Sys$UI$_UpdateProgress$set_dynamicLayout,
    get_associatedUpdatePanelId: Sys$UI$_UpdateProgress$get_associatedUpdatePanelId,
    set_associatedUpdatePanelId: Sys$UI$_UpdateProgress$set_associatedUpdatePanelId,
    get_role: Sys$UI$_UpdateProgress$get_role,
    _clearTimeout: Sys$UI$_UpdateProgress$_clearTimeout,
    _getUniqueID: Sys$UI$_UpdateProgress$_getUniqueID,
    _handleBeginRequest: Sys$UI$_UpdateProgress$_handleBeginRequest,
    _startRequest: Sys$UI$_UpdateProgress$_startRequest,
    _handleEndRequest: Sys$UI$_UpdateProgress$_handleEndRequest,
    dispose: Sys$UI$_UpdateProgress$dispose,
    initialize: Sys$UI$_UpdateProgress$initialize
}
Sys.UI._UpdateProgress.registerClass('Sys.UI._UpdateProgress', Sys.UI.Control);

�L//-----------------------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------
// MicrosoftAjaxWebServices.js
// Microsoft AJAX Framework Web Services.
/// <reference name="MicrosoftAjaxNetwork.js" />
Type._registerScript("MicrosoftAjaxWebServices.js", ["MicrosoftAjaxNetwork.js"]);
Type.registerNamespace('Sys.Net');
 
Sys.Net.WebServiceProxy = function Sys$Net$WebServiceProxy() {
}
    function Sys$Net$WebServiceProxy$get_timeout() {
        /// <value type="Number" locid="P:J#Sys.Net.WebServiceProxy.timeout"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._timeout || 0;
    }
    function Sys$Net$WebServiceProxy$set_timeout(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Number}]);
        if (e) throw e;
        if (value < 0) { throw Error.argumentOutOfRange('value', value, Sys.Res.invalidTimeout); }
        this._timeout = value;
    }
    function Sys$Net$WebServiceProxy$get_defaultUserContext() {
        /// <value mayBeNull="true" locid="P:J#Sys.Net.WebServiceProxy.defaultUserContext"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return (typeof(this._userContext) === "undefined") ? null : this._userContext;
    }
    function Sys$Net$WebServiceProxy$set_defaultUserContext(value) {
        var e = Function._validateParams(arguments, [{name: "value", mayBeNull: true}]);
        if (e) throw e;
        this._userContext = value;
    }
    function Sys$Net$WebServiceProxy$get_defaultSucceededCallback() {
        /// <value type="Function" mayBeNull="true" locid="P:J#Sys.Net.WebServiceProxy.defaultSucceededCallback"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._succeeded || null;
    }
    function Sys$Net$WebServiceProxy$set_defaultSucceededCallback(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Function, mayBeNull: true}]);
        if (e) throw e;
        this._succeeded = value;
    }
    function Sys$Net$WebServiceProxy$get_defaultFailedCallback() {
        /// <value type="Function" mayBeNull="true" locid="P:J#Sys.Net.WebServiceProxy.defaultFailedCallback"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._failed || null;
    }
    function Sys$Net$WebServiceProxy$set_defaultFailedCallback(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Function, mayBeNull: true}]);
        if (e) throw e;
        this._failed = value;
    }
    function Sys$Net$WebServiceProxy$get_enableJsonp() {
        /// <value type="Boolean" locid="P:J#Sys.Net.WebServiceProxy.enableJsonp"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return !!this._jsonp;
    }
    function Sys$Net$WebServiceProxy$set_enableJsonp(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: Boolean}]);
        if (e) throw e;
        this._jsonp = value;
    }
    function Sys$Net$WebServiceProxy$get_path() {
        /// <value type="String" locid="P:J#Sys.Net.WebServiceProxy.path"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._path || null;
    }
    function Sys$Net$WebServiceProxy$set_path(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        this._path = value;
    }
    function Sys$Net$WebServiceProxy$get_jsonpCallbackParameter() {
        /// <value type="String" locid="P:J#Sys.Net.WebServiceProxy.jsonpCallbackParameter"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._callbackParameter || "callback";
    }
    function Sys$Net$WebServiceProxy$set_jsonpCallbackParameter(value) {
        var e = Function._validateParams(arguments, [{name: "value", type: String}]);
        if (e) throw e;
        this._callbackParameter = value;
    }
    function Sys$Net$WebServiceProxy$_invoke(servicePath, methodName, useGet, params, onSuccess, onFailure, userContext) {
        /// <summary locid="M:J#Sys.Net.WebServiceProxy._invoke" />
        /// <param name="servicePath" type="String"></param>
        /// <param name="methodName" type="String"></param>
        /// <param name="useGet" type="Boolean"></param>
        /// <param name="params"></param>
        /// <param name="onSuccess" type="Function" mayBeNull="true" optional="true"></param>
        /// <param name="onFailure" type="Function" mayBeNull="true" optional="true"></param>
        /// <param name="userContext" mayBeNull="true" optional="true"></param>
        /// <returns type="Sys.Net.WebRequest" mayBeNull="true"></returns>
        var e = Function._validateParams(arguments, [
            {name: "servicePath", type: String},
            {name: "methodName", type: String},
            {name: "useGet", type: Boolean},
            {name: "params"},
            {name: "onSuccess", type: Function, mayBeNull: true, optional: true},
            {name: "onFailure", type: Function, mayBeNull: true, optional: true},
            {name: "userContext", mayBeNull: true, optional: true}
        ]);
        if (e) throw e;
        onSuccess = onSuccess || this.get_defaultSucceededCallback();
        onFailure = onFailure || this.get_defaultFailedCallback();
        if (userContext === null || typeof userContext === 'undefined') userContext = this.get_defaultUserContext();
        return Sys.Net.WebServiceProxy.invoke(servicePath, methodName, useGet, params, onSuccess, onFailure, userContext, this.get_timeout(), this.get_enableJsonp(), this.get_jsonpCallbackParameter());
    }
Sys.Net.WebServiceProxy.prototype = {
    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_enableJsonp: Sys$Net$WebServiceProxy$get_enableJsonp,
    set_enableJsonp: Sys$Net$WebServiceProxy$set_enableJsonp,
    get_path: Sys$Net$WebServiceProxy$get_path,
    set_path: Sys$Net$WebServiceProxy$set_path,
    get_jsonpCallbackParameter: Sys$Net$WebServiceProxy$get_jsonpCallbackParameter,
    set_jsonpCallbackParameter: Sys$Net$WebServiceProxy$set_jsonpCallbackParameter,
    _invoke: Sys$Net$WebServiceProxy$_invoke
}
Sys.Net.WebServiceProxy.registerClass('Sys.Net.WebServiceProxy');
Sys.Net.WebServiceProxy.invoke = function Sys$Net$WebServiceProxy$invoke(servicePath, methodName, useGet, params, onSuccess, onFailure, userContext, timeout, enableJsonp, jsonpCallbackParameter) {
    /// <summary locid="M:J#Sys.Net.WebServiceProxy.invoke" />
    /// <param name="servicePath" type="String"></param>
    /// <param name="methodName" type="String" mayBeNull="true" optional="true"></param>
    /// <param name="useGet" type="Boolean" optional="true"></param>
    /// <param name="params" mayBeNull="true" optional="true"></param>
    /// <param name="onSuccess" type="Function" mayBeNull="true" optional="true"></param>
    /// <param name="onFailure" type="Function" mayBeNull="true" optional="true"></param>
    /// <param name="userContext" mayBeNull="true" optional="true"></param>
    /// <param name="timeout" type="Number" optional="true"></param>
    /// <param name="enableJsonp" type="Boolean" optional="true" mayBeNull="true"></param>
    /// <param name="jsonpCallbackParameter" type="String" optional="true" mayBeNull="true"></param>
    /// <returns type="Sys.Net.WebRequest" mayBeNull="true"></returns>
    var e = Function._validateParams(arguments, [
        {name: "servicePath", type: String},
        {name: "methodName", type: String, mayBeNull: true, optional: true},
        {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},
        {name: "enableJsonp", type: Boolean, mayBeNull: true, optional: true},
        {name: "jsonpCallbackParameter", type: String, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    var schemeHost = (enableJsonp !== false) ? Sys.Net.WebServiceProxy._xdomain.exec(servicePath) : null,
        tempCallback, jsonp = schemeHost && (schemeHost.length === 3) && 
            ((schemeHost[1] !== location.protocol) || (schemeHost[2] !== location.host));
    useGet = jsonp || useGet;
    if (jsonp) {
        jsonpCallbackParameter = jsonpCallbackParameter || "callback";
        tempCallback = "_jsonp" + Sys._jsonp++;
    }
    if (!params) params = {};
    var urlParams = params;
    if (!useGet || !urlParams) urlParams = {};
    var script, error, timeoutcookie = null, loader, body = null,
        url = Sys.Net.WebRequest._createUrl(methodName
            ? (servicePath+"/"+encodeURIComponent(methodName))
            : servicePath, urlParams, jsonp ? (jsonpCallbackParameter + "=Sys." + tempCallback) : null);
    if (jsonp) {
        script = document.createElement("script");
        script.src = url;
        loader = new Sys._ScriptLoaderTask(script, function(script, loaded) {
            if (!loaded || tempCallback) {
                jsonpComplete({ Message: String.format(Sys.Res.webServiceFailedNoMsg, methodName) }, -1);
            }
        });
        function jsonpComplete(data, statusCode) {
            if (timeoutcookie !== null) {
                window.clearTimeout(timeoutcookie);
                timeoutcookie = null;
            }
            loader.dispose();
            delete Sys[tempCallback];
            tempCallback = null; 
            if ((typeof(statusCode) !== "undefined") && (statusCode !== 200)) {
                if (onFailure) {
                    error = new Sys.Net.WebServiceError(false,
                            data.Message || String.format(Sys.Res.webServiceFailedNoMsg, methodName),
                            data.StackTrace || null,
                            data.ExceptionType || null,
                            data);
                    error._statusCode = statusCode;
                    onFailure(error, userContext, methodName);
                }
                else {
                    if (data.StackTrace && data.Message) {
                        error = data.StackTrace + "-- " + data.Message;
                    }
                    else {
                        error = data.StackTrace || data.Message;
                    }
                    error = String.format(error ? Sys.Res.webServiceFailed : Sys.Res.webServiceFailedNoMsg, methodName, error);
                    throw Sys.Net.WebServiceProxy._createFailedError(methodName, String.format(Sys.Res.webServiceFailed, methodName, error));
                }
            }
            else if (onSuccess) {
                onSuccess(data, userContext, methodName);
            }
        }
        Sys[tempCallback] = jsonpComplete;
        loader.execute();
        return null;
    }
    var request = new Sys.Net.WebRequest();
    request.set_url(url);
    request.get_headers()['Content-Type'] = 'application/json; charset=utf-8';
    if (!useGet) {
        body = Sys.Serialization.JavaScriptSerializer.serialize(params);
        if (body === "{}") body = "";
    }
    request.set_body(body);
    request.add_completed(onComplete);
    if (timeout && timeout > 0) request.set_timeout(timeout);
    request.invoke();
    
    function onComplete(response, eventArgs) {
        if (response.get_responseAvailable()) {
            var statusCode = response.get_statusCode();
            var result = null;
           
            try {
                var contentType = response.getResponseHeader("Content-Type");
                if (contentType.startsWith("application/json")) {
                    result = response.get_object();
                }
                else if (contentType.startsWith("text/xml")) {
                    result = response.get_xml();
                }
                else {
                    result = response.get_responseData();
                }
            } catch (ex) {
            }
            var error = response.getResponseHeader("jsonerror");
            var errorObj = (error === "true");
            if (errorObj) {
                if (result) {
                    result = new Sys.Net.WebServiceError(false, result.Message, result.StackTrace, result.ExceptionType, result);
                }
            }
            else if (contentType.startsWith("application/json")) {
                result = (!result || (typeof(result.d) === "undefined")) ? result : result.d;
            }
            if (((statusCode < 200) || (statusCode >= 300)) || errorObj) {
                if (onFailure) {
                    if (!result || !errorObj) {
                        result = new Sys.Net.WebServiceError(false , String.format(Sys.Res.webServiceFailedNoMsg, methodName));
                    }
                    result._statusCode = statusCode;
                    onFailure(result, userContext, methodName);
                }
                else {
                    if (result && errorObj) {
                        error = result.get_exceptionType() + "-- " + result.get_message();
                    }
                    else {
                        error = 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 = String.format(Sys.Res.webServiceTimedOut, methodName);
            }
            else {
                msg = String.format(Sys.Res.webServiceFailedNoMsg, methodName)
            }
            if (onFailure) {
                onFailure(new Sys.Net.WebServiceError(response.get_timedOut(), msg, "", ""), userContext, methodName);
            }
            else {
                throw Sys.Net.WebServiceProxy._createFailedError(methodName, msg);
            }
        }
    }
    return request;
}
Sys.Net.WebServiceProxy._createFailedError = function Sys$Net$WebServiceProxy$_createFailedError(methodName, errorMessage) {
    var displayMessage = "Sys.Net.WebServiceFailedException: " + errorMessage;
    var e = Error.create(displayMessage, { 'name': 'Sys.Net.WebServiceFailedException', 'methodName': methodName });
    e.popStackFrame();
    return e;
}
Sys.Net.WebServiceProxy._defaultFailedCallback = function Sys$Net$WebServiceProxy$_defaultFailedCallback(err, methodName) {
    var error = err.get_exceptionType() + "-- " + err.get_message();
    throw Sys.Net.WebServiceProxy._createFailedError(methodName, String.format(Sys.Res.webServiceFailed, methodName, error));
}
Sys.Net.WebServiceProxy._generateTypedConstructor = function Sys$Net$WebServiceProxy$_generateTypedConstructor(type) {
    return function(properties) {
        if (properties) {
            for (var name in properties) {
                this[name] = properties[name];
            }
        }
        this.__type = type;
    }
}
Sys._jsonp = 0;
Sys.Net.WebServiceProxy._xdomain = /^\s*([a-zA-Z0-9\+\-\.]+\:)\/\/([^?#\/]+)/;
 
Sys.Net.WebServiceError = function Sys$Net$WebServiceError(timedOut, message, stackTrace, exceptionType, errorObject) {
    /// <summary locid="M:J#Sys.Net.WebServiceError.#ctor" />
    /// <param name="timedOut" type="Boolean"></param>
    /// <param name="message" type="String" mayBeNull="true"></param>
    /// <param name="stackTrace" type="String" mayBeNull="true" optional="true"></param>
    /// <param name="exceptionType" type="String" mayBeNull="true" optional="true"></param>
    /// <param name="errorObject" type="Object" mayBeNull="true" optional="true"></param>
    var e = Function._validateParams(arguments, [
        {name: "timedOut", type: Boolean},
        {name: "message", type: String, mayBeNull: true},
        {name: "stackTrace", type: String, mayBeNull: true, optional: true},
        {name: "exceptionType", type: String, mayBeNull: true, optional: true},
        {name: "errorObject", type: Object, mayBeNull: true, optional: true}
    ]);
    if (e) throw e;
    this._timedOut = timedOut;
    this._message = message;
    this._stackTrace = stackTrace;
    this._exceptionType = exceptionType;
    this._errorObject = errorObject;
    this._statusCode = -1;
}
    function Sys$Net$WebServiceError$get_timedOut() {
        /// <value type="Boolean" locid="P:J#Sys.Net.WebServiceError.timedOut"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._timedOut;
    }
    function Sys$Net$WebServiceError$get_statusCode() {
        /// <value type="Number" locid="P:J#Sys.Net.WebServiceError.statusCode"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._statusCode;
    }
    function Sys$Net$WebServiceError$get_message() {
        /// <value type="String" locid="P:J#Sys.Net.WebServiceError.message"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._message;
    }
    function Sys$Net$WebServiceError$get_stackTrace() {
        /// <value type="String" locid="P:J#Sys.Net.WebServiceError.stackTrace"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._stackTrace || "";
    }
    function Sys$Net$WebServiceError$get_exceptionType() {
        /// <value type="String" locid="P:J#Sys.Net.WebServiceError.exceptionType"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._exceptionType || "";
    }
    function Sys$Net$WebServiceError$get_errorObject() {
        /// <value type="Object" locid="P:J#Sys.Net.WebServiceError.errorObject"></value>
        if (arguments.length !== 0) throw Error.parameterCount();
        return this._errorObject || null;
    }
Sys.Net.WebServiceError.prototype = {
    get_timedOut: Sys$Net$WebServiceError$get_timedOut,
    get_statusCode: Sys$Net$WebServiceError$get_statusCode,
    get_message: Sys$Net$WebServiceError$get_message,
    get_stackTrace: Sys$Net$WebServiceError$get_stackTrace,
    get_exceptionType: Sys$Net$WebServiceError$get_exceptionType,
    get_errorObject: Sys$Net$WebServiceError$get_errorObject
}
Sys.Net.WebServiceError.registerClass('Sys.Net.WebServiceError');
>
//-----------------------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------
Type._registerScript("Date.HijriCalendar.js", ["MicrosoftAjaxGlobalization.js"]);
__cultureInfo.dateTimeFormat.Calendar.convert = {
    ticks1970: 62135596800000,
    monthDays: [0, 30, 59, 89, 118, 148, 177, 207, 236, 266, 295, 325, 355],
    minDate: -42521673600000,
    maxDate: 253402300799999,
    adjustment: __cultureInfo.dateTimeFormat.Calendar._adjustment || 0,
    toGregorian: function(hyear, hmonth, hday) {
        var daysSinceJan0101 = this.daysToYear(hyear) + this.monthDays[hmonth] + hday - 1 - this.adjustment;
        var gdate = new Date(daysSinceJan0101 * 86400000 - this.ticks1970);
        gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
        return gdate;
    },
    fromGregorian: function(gdate) {
        if ((gdate < this.minDate) || (gdate > this.maxDate)) return null;
        var ticks = this.ticks1970 + (gdate-0) - gdate.getTimezoneOffset() * 60000,
            daysSinceJan0101 = Math.floor(ticks / 86400000) + 1 + this.adjustment;
        var hday, hmonth, hyear = Math.floor(((daysSinceJan0101 - 227013) * 30) / 10631) + 1,
            absDays = this.daysToYear(hyear),
            daysInYear = this.isLeapYear(hyear) ? 355 : 354;
        if (daysSinceJan0101 < absDays) {
            hyear--;
            absDays -= daysInYear;
        }
        else if (daysSinceJan0101 === absDays) {
            hyear--;
            absDays = this.daysToYear(hyear);
        }
        else {
            if (daysSinceJan0101 > (absDays + daysInYear)) {
                absDays += daysInYear;
                hyear++;
            }
        }
        hmonth = 0;
        var daysIntoYear = daysSinceJan0101 - absDays;
        while (hmonth <= 11 && daysIntoYear > this.monthDays[hmonth]) {
            hmonth++;
        }
        hmonth--;
        hday = daysIntoYear - this.monthDays[hmonth];
        return [hyear, hmonth, hday];
    },
    daysToYear: function(year) {
        var yearsToYear30 = Math.floor((year - 1) / 30) * 30,
            yearsInto30 = year - yearsToYear30 - 1,
            days = Math.floor((yearsToYear30 * 10631) / 30) + 227013;
        while (yearsInto30 > 0) {
            days += (this.isLeapYear(yearsInto30) ? 355 : 354);
            yearsInto30--;
        }
        return days;
    },
    isLeapYear: function(year) {
        return ((((year * 11) + 14) % 30) < 11);
    }
}
//-----------------------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//-----------------------------------------------------------------------
Type._registerScript("Date.UmAlQuraCalendar.js", ["MicrosoftAjaxGlobalization.js"]);
__cultureInfo.dateTimeFormat.Calendar.convert = {
    _yearInfo: [
        [746, -2198707200000],
        [1769, -2168121600000],
        [3794, -2137449600000],
        [3748, -2106777600000],
        [3402, -2076192000000],
        [2710, -2045606400000],
        [1334, -2015020800000],
        [2741, -1984435200000],
        [3498, -1953763200000],
        [2980, -1923091200000],
        [2889, -1892505600000],
        [2707, -1861920000000],
        [1323, -1831334400000],
        [2647, -1800748800000],
        [1206, -1770076800000],
        [2741, -1739491200000],
        [1450, -1708819200000],
        [3413, -1678233600000],
        [3370, -1647561600000],
        [2646, -1616976000000],
        [1198, -1586390400000],
        [2397, -1555804800000],
        [748, -1525132800000],
        [1749, -1494547200000],
        [1706, -1463875200000],
        [1365, -1433289600000],
        [1195, -1402704000000],
        [2395, -1372118400000],
        [698, -1341446400000],
        [1397, -1310860800000],
        [2994, -1280188800000],
        [1892, -1249516800000],
        [1865, -1218931200000],
        [1621, -1188345600000],
        [683, -1157760000000],
        [1371, -1127174400000],
        [2778, -1096502400000],
        [1748, -1065830400000],
        [3785, -1035244800000],
        [3474, -1004572800000],
        [3365, -973987200000],
        [2637, -943401600000],
        [685, -912816000000],
        [1389, -882230400000],
        [2922, -851558400000],
        [2898, -820886400000],
        [2725, -790300800000],
        [2635, -759715200000],
        [1175, -729129600000],
        [2359, -698544000000],
        [694, -667872000000],
        [1397, -637286400000],
        [3434, -606614400000],
        [3410, -575942400000],
        [2710, -545356800000],
        [2349, -514771200000],
        [605, -484185600000],
        [1245, -453600000000],
        [2778, -422928000000],
        [1492, -392256000000],
        [3497, -361670400000],
        [3410, -330998400000],
        [2730, -300412800000],
        [1238, -269827200000],
        [2486, -239241600000],
        [884, -208569600000],
        [1897, -177984000000],
        [1874, -147312000000],
        [1701, -116726400000],
        [1355, -86140800000],
        [2731, -55555200000],
        [1370, -24883200000],
        [2773, 5702400000],
        [3538, 36374400000],
        [3492, 67046400000],
        [3401, 97632000000],
        [2709, 128217600000],
        [1325, 158803200000],
        [2653, 189388800000],
        [1370, 220060800000],
        [2773, 250646400000],
        [1706, 281318400000],
        [1685, 311904000000],
        [1323, 342489600000],
        [2647, 373075200000],
        [1198, 403747200000],
        [2422, 434332800000],
        [1388, 465004800000],
        [2901, 495590400000],
        [2730, 526262400000],
        [2645, 556848000000],
        [1197, 587433600000],
        [2397, 618019200000],
        [730, 648691200000],
        [1497, 679276800000],
        [3506, 709948800000],
        [2980, 740620800000],
        [2890, 771206400000],
        [2645, 801792000000],
        [693, 832377600000],
        [1397, 862963200000],
        [2922, 893635200000],
        [3026, 924307200000],
        [3012, 954979200000],
        [2953, 985564800000],
        [2709, 1016150400000],
        [1325, 1046736000000],
        [1453, 1077321600000],
        [2922, 1107993600000],
        [1748, 1138665600000],
        [3529, 1169251200000],
        [3474, 1199923200000],
        [2726, 1230508800000],
        [2390, 1261094400000],
        [686, 1291680000000],
        [1389, 1322265600000],
        [874, 1352937600000],
        [2901, 1383523200000],
        [2730, 1414195200000],
        [2381, 1444780800000],
        [1181, 1475366400000],
        [2397, 1505952000000],
        [698, 1536624000000],
        [1461, 1567209600000],
        [1450, 1597881600000],
        [3413, 1628467200000],
        [2714, 1659139200000],
        [2350, 1689724800000],
        [622, 1720310400000],
        [1373, 1750896000000],
        [2778, 1781568000000],
        [1748, 1812240000000],
        [1701, 1842825600000],
        [0, 1873411200000]
    ],
    minDate: -2198707200000,
    maxDate: 1873411199999,
    toGregorian: function(hyear, hmonth, hday) {
        var days = hday - 1,
            gyear = hyear - 1318;
        if (gyear < 0 || gyear >= this._yearInfo.length) return null;
        var info = this._yearInfo[gyear],
            gdate = new Date(info[1]),
            monthLength = info[0];
        gdate.setMinutes(gdate.getMinutes() + gdate.getTimezoneOffset());
        for (var i = 0; i < hmonth; i++) {
            days += 29 + (monthLength & 1);
            monthLength = monthLength >> 1;
        }
        gdate.setDate(gdate.getDate() + days);
        return gdate;
    },
    fromGregorian: function(gdate) {
        var ticks = gdate - gdate.getTimezoneOffset() * 60000;
        if (ticks < this.minDate || ticks > this.maxDate) return null;
        var hyear = 0,
            hmonth = 1;
        while (ticks > this._yearInfo[++hyear][1]) { }
        if (ticks !== this._yearInfo[hyear][1]) {
            hyear--;
        }
        var info = this._yearInfo[hyear],
            days = Math.floor((ticks - info[1]) / 86400000),
            monthLength = info[0];
        hyear += 1318; 
        var daysInMonth = 29 + (monthLength & 1);
        while (days >= daysInMonth) {
            days -= daysInMonth;
            monthLength = monthLength >> 1;
            daysInMonth = 29 + (monthLength & 1);
            hmonth++;
        }
        return [hyear, hmonth - 1, days + 1];
    }
}
҃//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjax.js
Function.__typeName="Function";Function.__class=true;Function.createCallback=function(b,a){return function(){var e=arguments.length;if(e>0){var d=[];for(var c=0;c<e;c++)d[c]=arguments[c];d[e]=a;return b.apply(this,d)}return b.call(this,a)}};Function.createDelegate=function(a,b){return function(){return b.apply(a,arguments)}};Function.emptyFunction=Function.emptyMethod=function(){};Function.validateParameters=function(c,b,a){return Function._validateParams(c,b,a)};Function._validateParams=function(g,e,c){var a,d=e.length;c=c||typeof c==="undefined";a=Function._validateParameterCount(g,e,c);if(a){a.popStackFrame();return a}for(var b=0,i=g.length;b<i;b++){var f=e[Math.min(b,d-1)],h=f.name;if(f.parameterArray)h+="["+(b-d+1)+"]";else if(!c&&b>=d)break;a=Function._validateParameter(g[b],f,h);if(a){a.popStackFrame();return a}}return null};Function._validateParameterCount=function(j,d,i){var a,c,b=d.length,e=j.length;if(e<b){var f=b;for(a=0;a<b;a++){var g=d[a];if(g.optional||g.parameterArray)f--}if(e<f)c=true}else if(i&&e>b){c=true;for(a=0;a<b;a++)if(d[a].parameterArray){c=false;break}}if(c){var h=Error.parameterCount();h.popStackFrame();return h}return null};Function._validateParameter=function(c,a,h){var b,g=a.type,l=!!a.integer,k=!!a.domElement,m=!!a.mayBeNull;b=Function._validateParameterType(c,g,l,k,m,h);if(b){b.popStackFrame();return b}var e=a.elementType,f=!!a.elementMayBeNull;if(g===Array&&typeof c!=="undefined"&&c!==null&&(e||!f)){var j=!!a.elementInteger,i=!!a.elementDomElement;for(var d=0;d<c.length;d++){var n=c[d];b=Function._validateParameterType(n,e,j,i,f,h+"["+d+"]");if(b){b.popStackFrame();return b}}}return null};Function._validateParameterType=function(b,c,k,j,h,d){var a,g;if(typeof b==="undefined")if(h)return null;else{a=Error.argumentUndefined(d);a.popStackFrame();return a}if(b===null)if(h)return null;else{a=Error.argumentNull(d);a.popStackFrame();return a}if(c&&c.__enum){if(typeof b!=="number"){a=Error.argumentType(d,Object.getType(b),c);a.popStackFrame();return a}if(b%1===0){var e=c.prototype;if(!c.__flags||b===0){for(g in e)if(e[g]===b)return null}else{var i=b;for(g in e){var f=e[g];if(f===0)continue;if((f&b)===f)i-=f;if(i===0)return null}}}a=Error.argumentOutOfRange(d,b,String.format(Sys.Res.enumInvalidValue,b,c.getName()));a.popStackFrame();return a}if(j&&(!Sys._isDomElement(b)||b.nodeType===3)){a=Error.argument(d,Sys.Res.argumentDomElement);a.popStackFrame();return a}if(c&&!Sys._isInstanceOfType(c,b)){a=Error.argumentType(d,Object.getType(b),c);a.popStackFrame();return a}if(c===Number&&k)if(b%1!==0){a=Error.argumentOutOfRange(d,b,Sys.Res.argumentInteger);a.popStackFrame();return a}return null};Error.__typeName="Error";Error.__class=true;Error.create=function(d,b){var a=new Error(d);a.message=d;if(b)for(var c in b)a[c]=b[c];a.popStackFrame();return a};Error.argument=function(a,c){var b="Sys.ArgumentException: "+(c?c:Sys.Res.argument);if(a)b+="\n"+String.format(Sys.Res.paramName,a);var d=Error.create(b,{name:"Sys.ArgumentException",paramName:a});d.popStackFrame();return d};Error.argumentNull=function(a,c){var b="Sys.ArgumentNullException: "+(c?c:Sys.Res.argumentNull);if(a)b+="\n"+String.format(Sys.Res.paramName,a);var d=Error.create(b,{name:"Sys.ArgumentNullException",paramName:a});d.popStackFrame();return d};Error.argumentOutOfRange=function(c,a,d){var b="Sys.ArgumentOutOfRangeException: "+(d?d:Sys.Res.argumentOutOfRange);if(c)b+="\n"+String.format(Sys.Res.paramName,c);if(typeof a!=="undefined"&&a!==null)b+="\n"+String.format(Sys.Res.actualValue,a);var e=Error.create(b,{name:"Sys.ArgumentOutOfRangeException",paramName:c,actualValue:a});e.popStackFrame();return e};Error.argumentType=function(d,c,b,e){var a="Sys.ArgumentTypeException: ";if(e)a+=e;else if(c&&b)a+=String.format(Sys.Res.argumentTypeWithTypes,c.getName(),b.getName());else a+=Sys.Res.argumentType;if(d)a+="\n"+String.format(Sys.Res.paramName,d);var f=Error.create(a,{name:"Sys.ArgumentTypeException",paramName:d,actualType:c,expectedType:b});f.popStackFrame();return f};Error.argumentUndefined=function(a,c){var b="Sys.ArgumentUndefinedException: "+(c?c:Sys.Res.argumentUndefined);if(a)b+="\n"+String.format(Sys.Res.paramName,a);var d=Error.create(b,{name:"Sys.ArgumentUndefinedException",paramName:a});d.popStackFrame();return d};Error.format=function(a){var c="Sys.FormatException: "+(a?a:Sys.Res.format),b=Error.create(c,{name:"Sys.FormatException"});b.popStackFrame();return b};Error.invalidOperation=function(a){var c="Sys.InvalidOperationException: "+(a?a:Sys.Res.invalidOperation),b=Error.create(c,{name:"Sys.InvalidOperationException"});b.popStackFrame();return b};Error.notImplemented=function(a){var c="Sys.NotImplementedException: "+(a?a:Sys.Res.notImplemented),b=Error.create(c,{name:"Sys.NotImplementedException"});b.popStackFrame();return b};Error.parameterCount=function(a){var c="Sys.ParameterCountException: "+(a?a:Sys.Res.parameterCount),b=Error.create(c,{name:"Sys.ParameterCountException"});b.popStackFrame();return b};Error.prototype.popStackFrame=function(){if(typeof this.stack==="undefined"||this.stack===null||typeof this.fileName==="undefined"||this.fileName===null||typeof this.lineNumber==="undefined"||this.lineNumber===null)return;var a=this.stack.split("\n"),c=a[0],e=this.fileName+":"+this.lineNumber;while(typeof c!=="undefined"&&c!==null&&c.indexOf(e)===-1){a.shift();c=a[0]}var d=a[1];if(typeof d==="undefined"||d===null)return;var b=d.match(/@(.*):(\d+)$/);if(typeof b==="undefined"||b===null)return;this.fileName=b[1];this.lineNumber=parseInt(b[2]);a.shift();this.stack=a.join("\n")};Object.__typeName="Object";Object.__class=true;Object.getType=function(b){var a=b.constructor;if(!a||typeof a!=="function"||!a.__typeName||a.__typeName==="Object")return Object;return a};Object.getTypeName=function(a){return Object.getType(a).getName()};String.__typeName="String";String.__class=true;String.prototype.endsWith=function(a){return this.substr(this.length-a.length)===a};String.prototype.startsWith=function(a){return this.substr(0,a.length)===a};String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")};String.prototype.trimEnd=function(){return this.replace(/\s+$/,"")};String.prototype.trimStart=function(){return this.replace(/^\s+/,"")};String.format=function(){return String._toFormattedString(false,arguments)};String._toFormattedString=function(l,j){var c="",e=j[0];for(var a=0;true;){var f=e.indexOf("{",a),d=e.indexOf("}",a);if(f<0&&d<0){c+=e.slice(a);break}if(d>0&&(d<f||f<0)){c+=e.slice(a,d+1);a=d+2;continue}c+=e.slice(a,f);a=f+1;if(e.charAt(a)==="{"){c+="{";a++;continue}if(d<0)break;var h=e.substring(a,d),g=h.indexOf(":"),k=parseInt(g<0?h:h.substring(0,g),10)+1,i=g<0?"":h.substring(g+1),b=j[k];if(typeof b==="undefined"||b===null)b="";if(b.toFormattedString)c+=b.toFormattedString(i);else if(l&&b.localeFormat)c+=b.localeFormat(i);else if(b.format)c+=b.format(i);else c+=b.toString();a=d+1}return c};Boolean.__typeName="Boolean";Boolean.__class=true;Boolean.parse=function(b){var a=b.trim().toLowerCase();if(a==="false")return false;if(a==="true")return true};Date.__typeName="Date";Date.__class=true;Number.__typeName="Number";Number.__class=true;RegExp.__typeName="RegExp";RegExp.__class=true;if(!window)this.window=this;window.Type=Function;Type.prototype.callBaseMethod=function(a,d,b){var c=Sys._getBaseMethod(this,a,d);if(!b)return c.apply(a);else return c.apply(a,b)};Type.prototype.getBaseMethod=function(a,b){return Sys._getBaseMethod(this,a,b)};Type.prototype.getBaseType=function(){return typeof this.__baseType==="undefined"?null:this.__baseType};Type.prototype.getInterfaces=function(){var a=[],b=this;while(b){var c=b.__interfaces;if(c)for(var d=0,f=c.length;d<f;d++){var e=c[d];if(!Array.contains(a,e))a[a.length]=e}b=b.__baseType}return a};Type.prototype.getName=function(){return typeof this.__typeName==="undefined"?"":this.__typeName};Type.prototype.implementsInterface=function(d){this.resolveInheritance();var c=d.getName(),a=this.__interfaceCache;if(a){var e=a[c];if(typeof e!=="undefined")return e}else a=this.__interfaceCache={};var b=this;while(b){var f=b.__interfaces;if(f)if(Array.indexOf(f,d)!==-1)return a[c]=true;b=b.__baseType}return a[c]=false};Type.prototype.inheritsFrom=function(b){this.resolveInheritance();var a=this.__baseType;while(a){if(a===b)return true;a=a.__baseType}return false};Type.prototype.initializeBase=function(a,b){this.resolveInheritance();if(this.__baseType)if(!b)this.__baseType.apply(a);else this.__baseType.apply(a,b);return a};Type.prototype.isImplementedBy=function(a){if(typeof a==="undefined"||a===null)return false;var b=Object.getType(a);return !!(b.implementsInterface&&b.implementsInterface(this))};Type.prototype.isInstanceOfType=function(a){return Sys._isInstanceOfType(this,a)};Type.prototype.registerClass=function(c,b,d){this.prototype.constructor=this;this.__typeName=c;this.__class=true;if(b){this.__baseType=b;this.__basePrototypePending=true}Sys.__upperCaseTypes[c.toUpperCase()]=this;if(d){this.__interfaces=[];for(var a=2,f=arguments.length;a<f;a++){var e=arguments[a];this.__interfaces.push(e)}}return this};Type.prototype.registerInterface=function(a){Sys.__upperCaseTypes[a.toUpperCase()]=this;this.prototype.constructor=this;this.__typeName=a;this.__interface=true;return this};Type.prototype.resolveInheritance=function(){if(this.__basePrototypePending){var b=this.__baseType;b.resolveInheritance();for(var a in b.prototype){var c=b.prototype[a];if(!this.prototype[a])this.prototype[a]=c}delete this.__basePrototypePending}};Type.getRootNamespaces=function(){return Array.clone(Sys.__rootNamespaces)};Type.isClass=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__class};Type.isInterface=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__interface};Type.isNamespace=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__namespace};Type.parse=function(typeName,ns){var fn;if(ns){fn=Sys.__upperCaseTypes[ns.getName().toUpperCase()+"."+typeName.toUpperCase()];return fn||null}if(!typeName)return null;if(!Type.__htClasses)Type.__htClasses={};fn=Type.__htClasses[typeName];if(!fn){fn=eval(typeName);Type.__htClasses[typeName]=fn}return fn};Type.registerNamespace=function(e){var d=window,c=e.split(".");for(var b=0;b<c.length;b++){var f=c[b],a=d[f];if(!a)a=d[f]={};if(!a.__namespace){if(b===0&&e!=="Sys")Sys.__rootNamespaces[Sys.__rootNamespaces.length]=a;a.__namespace=true;a.__typeName=c.slice(0,b+1).join(".");a.getName=function(){return this.__typeName}}d=a}};Type._checkDependency=function(c,a){var d=Type._registerScript._scripts,b=d?!!d[c]:false;if(typeof a!=="undefined"&&!b)throw Error.invalidOperation(String.format(Sys.Res.requiredScriptReferenceNotIncluded,a,c));return b};Type._registerScript=function(a,c){var b=Type._registerScript._scripts;if(!b)Type._registerScript._scripts=b={};if(b[a])throw Error.invalidOperation(String.format(Sys.Res.scriptAlreadyLoaded,a));b[a]=true;if(c)for(var d=0,f=c.length;d<f;d++){var e=c[d];if(!Type._checkDependency(e))throw Error.invalidOperation(String.format(Sys.Res.scriptDependencyNotFound,a,e))}};Type.registerNamespace("Sys");Sys.__upperCaseTypes={};Sys.__rootNamespaces=[Sys];Sys._isInstanceOfType=function(c,b){if(typeof b==="undefined"||b===null)return false;if(b instanceof c)return true;var a=Object.getType(b);return !!(a===c)||a.inheritsFrom&&a.inheritsFrom(c)||a.implementsInterface&&a.implementsInterface(c)};Sys._getBaseMethod=function(d,e,c){var b=d.getBaseType();if(b){var a=b.prototype[c];return a instanceof Function?a:null}return null};Sys._isDomElement=function(a){var c=false;if(typeof a.nodeType!=="number"){var b=a.ownerDocument||a.document||a;if(b!=a){var d=b.defaultView||b.parentWindow;c=d!=a}else c=typeof b.body==="undefined"}return !c};Array.__typeName="Array";Array.__class=true;Array.add=Array.enqueue=function(a,b){a[a.length]=b};Array.addRange=function(a,b){a.push.apply(a,b)};Array.clear=function(a){a.length=0};Array.clone=function(a){if(a.length===1)return [a[0]];else return Array.apply(null,a)};Array.contains=function(a,b){return Sys._indexOf(a,b)>=0};Array.dequeue=function(a){return a.shift()};Array.forEach=function(b,e,d){for(var a=0,f=b.length;a<f;a++){var c=b[a];if(typeof c!=="undefined")e.call(d,c,a,b)}};Array.indexOf=function(a,c,b){return Sys._indexOf(a,c,b)};Array.insert=function(a,b,c){a.splice(b,0,c)};Array.parse=function(value){if(!value)return [];return eval(value)};Array.remove=function(b,c){var a=Sys._indexOf(b,c);if(a>=0)b.splice(a,1);return a>=0};Array.removeAt=function(a,b){a.splice(b,1)};Sys._indexOf=function(d,e,a){if(typeof e==="undefined")return -1;var c=d.length;if(c!==0){a=a-0;if(isNaN(a))a=0;else{if(isFinite(a))a=a-a%1;if(a<0)a=Math.max(0,c+a)}for(var b=a;b<c;b++)if(typeof d[b]!=="undefined"&&d[b]===e)return b}return -1};Type._registerScript._scripts={"MicrosoftAjaxCore.js":true,"MicrosoftAjaxGlobalization.js":true,"MicrosoftAjaxSerialization.js":true,"MicrosoftAjaxComponentModel.js":true,"MicrosoftAjaxHistory.js":true,"MicrosoftAjaxNetwork.js":true,"MicrosoftAjaxWebServices.js":true};Sys.IDisposable=function(){};Sys.IDisposable.prototype={};Sys.IDisposable.registerInterface("Sys.IDisposable");Sys.StringBuilder=function(a){this._parts=typeof a!=="undefined"&&a!==null&&a!==""?[a.toString()]:[];this._value={};this._len=0};Sys.StringBuilder.prototype={append:function(a){this._parts[this._parts.length]=a},appendLine:function(a){this._parts[this._parts.length]=typeof a==="undefined"||a===null||a===""?"\r\n":a+"\r\n"},clear:function(){this._parts=[];this._value={};this._len=0},isEmpty:function(){if(this._parts.length===0)return true;return this.toString()===""},toString:function(a){a=a||"";var b=this._parts;if(this._len!==b.length){this._value={};this._len=b.length}var d=this._value;if(typeof d[a]==="undefined"){if(a!=="")for(var c=0;c<b.length;)if(typeof b[c]==="undefined"||b[c]===""||b[c]===null)b.splice(c,1);else c++;d[a]=this._parts.join(a)}return d[a]}};Sys.StringBuilder.registerClass("Sys.StringBuilder");Sys.Browser={};Sys.Browser.InternetExplorer={};Sys.Browser.Firefox={};Sys.Browser.Safari={};Sys.Browser.Opera={};Sys.Browser.agent=null;Sys.Browser.hasDebuggerStatement=false;Sys.Browser.name=navigator.appName;Sys.Browser.version=parseFloat(navigator.appVersion);Sys.Browser.documentMode=0;if(navigator.userAgent.indexOf(" MSIE ")>-1){Sys.Browser.agent=Sys.Browser.InternetExplorer;Sys.Browser.version=parseFloat(navigator.userAgent.match(/MSIE (\d+\.\d+)/)[1]);if(Sys.Browser.version>=8)if(document.documentMode>=7)Sys.Browser.documentMode=document.documentMode;Sys.Browser.hasDebuggerStatement=true}else if(navigator.userAgent.indexOf(" Firefox/")>-1){Sys.Browser.agent=Sys.Browser.Firefox;Sys.Browser.version=parseFloat(navigator.userAgent.match(/Firefox\/(\d+\.\d+)/)[1]);Sys.Browser.name="Firefox";Sys.Browser.hasDebuggerStatement=true}else if(navigator.userAgent.indexOf(" AppleWebKit/")>-1){Sys.Browser.agent=Sys.Browser.Safari;Sys.Browser.version=parseFloat(navigator.userAgent.match(/AppleWebKit\/(\d+(\.\d+)?)/)[1]);Sys.Browser.name="Safari"}else if(navigator.userAgent.indexOf("Opera/")>-1)Sys.Browser.agent=Sys.Browser.Opera;Sys.EventArgs=function(){};Sys.EventArgs.registerClass("Sys.EventArgs");Sys.EventArgs.Empty=new Sys.EventArgs;Sys.CancelEventArgs=function(){Sys.CancelEventArgs.initializeBase(this);this._cancel=false};Sys.CancelEventArgs.prototype={get_cancel:function(){return this._cancel},set_cancel:function(a){this._cancel=a}};Sys.CancelEventArgs.registerClass("Sys.CancelEventArgs",Sys.EventArgs);Type.registerNamespace("Sys.UI");Sys._Debug=function(){};Sys._Debug.prototype={_appendConsole:function(a){if(typeof Debug!=="undefined"&&Debug.writeln)Debug.writeln(a);if(window.console&&window.console.log)window.console.log(a);if(window.opera)window.opera.postError(a);if(window.debugService)window.debugService.trace(a)},_appendTrace:function(b){var a=document.getElementById("TraceConsole");if(a&&a.tagName.toUpperCase()==="TEXTAREA")a.value+=b+"\n"},assert:function(c,a,b){if(!c){a=b&&this.assert.caller?String.format(Sys.Res.assertFailedCaller,a,this.assert.caller):String.format(Sys.Res.assertFailed,a);if(confirm(String.format(Sys.Res.breakIntoDebugger,a)))this.fail(a)}},clearTrace:function(){var a=document.getElementById("TraceConsole");if(a&&a.tagName.toUpperCase()==="TEXTAREA")a.value=""},fail:function(message){this._appendConsole(message);if(Sys.Browser.hasDebuggerStatement)eval("debugger")},trace:function(a){this._appendConsole(a);this._appendTrace(a)},traceDump:function(a,b){var c=this._traceDump(a,b,true)},_traceDump:function(a,c,f,b,d){c=c?c:"traceDump";b=b?b:"";if(a===null){this.trace(b+c+": null");return}switch(typeof a){case "undefined":this.trace(b+c+": Undefined");break;case "number":case "string":case "boolean":this.trace(b+c+": "+a);break;default:if(Date.isInstanceOfType(a)||RegExp.isInstanceOfType(a)){this.trace(b+c+": "+a.toString());break}if(!d)d=[];else if(Array.contains(d,a)){this.trace(b+c+": ...");return}Array.add(d,a);if(a==window||a===document||window.HTMLElement&&a instanceof HTMLElement||typeof a.nodeName==="string"){var k=a.tagName?a.tagName:"DomElement";if(a.id)k+=" - "+a.id;this.trace(b+c+" {"+k+"}")}else{var i=Object.getTypeName(a);this.trace(b+c+(typeof i==="string"?" {"+i+"}":""));if(b===""||f){b+="    ";var e,j,l,g,h;if(Array.isInstanceOfType(a)){j=a.length;for(e=0;e<j;e++)this._traceDump(a[e],"["+e+"]",f,b,d)}else for(g in a){h=a[g];if(!Function.isInstanceOfType(h))this._traceDump(h,g,f,b,d)}}}Array.remove(d,a)}}};Sys._Debug.registerClass("Sys._Debug");Sys.Debug=new Sys._Debug;Sys.Debug.isDebug=false;function Sys$Enum$parse(c,e){var a,b,i;if(e){a=this.__lowerCaseValues;if(!a){this.__lowerCaseValues=a={};var g=this.prototype;for(var f in g)a[f.toLowerCase()]=g[f]}}else a=this.prototype;if(!this.__flags){i=e?c.toLowerCase():c;b=a[i.trim()];if(typeof b!=="number")throw Error.argument("value",String.format(Sys.Res.enumInvalidValue,c,this.__typeName));return b}else{var h=(e?c.toLowerCase():c).split(","),j=0;for(var d=h.length-1;d>=0;d--){var k=h[d].trim();b=a[k];if(typeof b!=="number")throw Error.argument("value",String.format(Sys.Res.enumInvalidValue,c.split(",")[d].trim(),this.__typeName));j|=b}return j}}function Sys$Enum$toString(c){if(typeof c==="undefined"||c===null)return this.__string;var d=this.prototype,a;if(!this.__flags||c===0){for(a in d)if(d[a]===c)return a}else{var b=this.__sortedValues;if(!b){b=[];for(a in d)b[b.length]={key:a,value:d[a]};b.sort(function(a,b){return a.value-b.value});this.__sortedValues=b}var e=[],g=c;for(a=b.length-1;a>=0;a--){var h=b[a],f=h.value;if(f===0)continue;if((f&c)===f){e[e.length]=h.key;g-=f;if(g===0)break}}if(e.length&&g===0)return e.reverse().join(", ")}return ""}Type.prototype.registerEnum=function(b,c){Sys.__upperCaseTypes[b.toUpperCase()]=this;for(var a in this.prototype)this[a]=this.prototype[a];this.__typeName=b;this.parse=Sys$Enum$parse;this.__string=this.toString();this.toString=Sys$Enum$toString;this.__flags=c;this.__enum=true};Type.isEnum=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__enum};Type.isFlags=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__flags};Sys.CollectionChange=function(e,a,c,b,d){this.action=e;if(a)if(!(a instanceof Array))a=[a];this.newItems=a||null;if(typeof c!=="number")c=-1;this.newStartingIndex=c;if(b)if(!(b instanceof Array))b=[b];this.oldItems=b||null;if(typeof d!=="number")d=-1;this.oldStartingIndex=d};Sys.CollectionChange.registerClass("Sys.CollectionChange");Sys.NotifyCollectionChangedAction=function(){throw Error.notImplemented()};Sys.NotifyCollectionChangedAction.prototype={add:0,remove:1,reset:2};Sys.NotifyCollectionChangedAction.registerEnum("Sys.NotifyCollectionChangedAction");Sys.NotifyCollectionChangedEventArgs=function(a){this._changes=a;Sys.NotifyCollectionChangedEventArgs.initializeBase(this)};Sys.NotifyCollectionChangedEventArgs.prototype={get_changes:function(){return this._changes||[]}};Sys.NotifyCollectionChangedEventArgs.registerClass("Sys.NotifyCollectionChangedEventArgs",Sys.EventArgs);Sys.Observer=function(){};Sys.Observer.registerClass("Sys.Observer");Sys.Observer.makeObservable=function(a){var c=a instanceof Array,b=Sys.Observer;if(a.setValue===b._observeMethods.setValue)return a;b._addMethods(a,b._observeMethods);if(c)b._addMethods(a,b._arrayMethods);return a};Sys.Observer._addMethods=function(c,b){for(var a in b)c[a]=b[a]};Sys.Observer._addEventHandler=function(c,a,b){Sys.Observer._getContext(c,true).events._addHandler(a,b)};Sys.Observer.addEventHandler=function(c,a,b){Sys.Observer._addEventHandler(c,a,b)};Sys.Observer._removeEventHandler=function(c,a,b){Sys.Observer._getContext(c,true).events._removeHandler(a,b)};Sys.Observer.removeEventHandler=function(c,a,b){Sys.Observer._removeEventHandler(c,a,b)};Sys.Observer.raiseEvent=function(b,e,d){var c=Sys.Observer._getContext(b);if(!c)return;var a=c.events.getHandler(e);if(a)a(b,d)};Sys.Observer.addPropertyChanged=function(b,a){Sys.Observer._addEventHandler(b,"propertyChanged",a)};Sys.Observer.removePropertyChanged=function(b,a){Sys.Observer._removeEventHandler(b,"propertyChanged",a)};Sys.Observer.beginUpdate=function(a){Sys.Observer._getContext(a,true).updating=true};Sys.Observer.endUpdate=function(b){var a=Sys.Observer._getContext(b);if(!a||!a.updating)return;a.updating=false;var d=a.dirty;a.dirty=false;if(d){if(b instanceof Array){var c=a.changes;a.changes=null;Sys.Observer.raiseCollectionChanged(b,c)}Sys.Observer.raisePropertyChanged(b,"")}};Sys.Observer.isUpdating=function(b){var a=Sys.Observer._getContext(b);return a?a.updating:false};Sys.Observer._setValue=function(a,j,g){var b,f,k=a,d=j.split(".");for(var i=0,m=d.length-1;i<m;i++){var l=d[i];b=a["get_"+l];if(typeof b==="function")a=b.call(a);else a=a[l];var n=typeof a;if(a===null||n==="undefined")throw Error.invalidOperation(String.format(Sys.Res.nullReferenceInPath,j))}var e,c=d[m];b=a["get_"+c];f=a["set_"+c];if(typeof b==="function")e=b.call(a);else e=a[c];if(typeof f==="function")f.call(a,g);else a[c]=g;if(e!==g){var h=Sys.Observer._getContext(k);if(h&&h.updating){h.dirty=true;return}Sys.Observer.raisePropertyChanged(k,d[0])}};Sys.Observer.setValue=function(b,a,c){Sys.Observer._setValue(b,a,c)};Sys.Observer.raisePropertyChanged=function(b,a){Sys.Observer.raiseEvent(b,"propertyChanged",new Sys.PropertyChangedEventArgs(a))};Sys.Observer.addCollectionChanged=function(b,a){Sys.Observer._addEventHandler(b,"collectionChanged",a)};Sys.Observer.removeCollectionChanged=function(b,a){Sys.Observer._removeEventHandler(b,"collectionChanged",a)};Sys.Observer._collectionChange=function(d,c){var a=Sys.Observer._getContext(d);if(a&&a.updating){a.dirty=true;var b=a.changes;if(!b)a.changes=b=[c];else b.push(c)}else{Sys.Observer.raiseCollectionChanged(d,[c]);Sys.Observer.raisePropertyChanged(d,"length")}};Sys.Observer.add=function(a,b){var c=new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.add,[b],a.length);Array.add(a,b);Sys.Observer._collectionChange(a,c)};Sys.Observer.addRange=function(a,b){var c=new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.add,b,a.length);Array.addRange(a,b);Sys.Observer._collectionChange(a,c)};Sys.Observer.clear=function(a){var b=Array.clone(a);Array.clear(a);Sys.Observer._collectionChange(a,new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.reset,null,-1,b,0))};Sys.Observer.insert=function(a,b,c){Array.insert(a,b,c);Sys.Observer._collectionChange(a,new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.add,[c],b))};Sys.Observer.remove=function(a,b){var c=Array.indexOf(a,b);if(c!==-1){Array.remove(a,b);Sys.Observer._collectionChange(a,new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.remove,null,-1,[b],c));return true}return false};Sys.Observer.removeAt=function(b,a){if(a>-1&&a<b.length){var c=b[a];Array.removeAt(b,a);Sys.Observer._collectionChange(b,new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.remove,null,-1,[c],a))}};Sys.Observer.raiseCollectionChanged=function(b,a){Sys.Observer.raiseEvent(b,"collectionChanged",new Sys.NotifyCollectionChangedEventArgs(a))};Sys.Observer._observeMethods={add_propertyChanged:function(a){Sys.Observer._addEventHandler(this,"propertyChanged",a)},remove_propertyChanged:function(a){Sys.Observer._removeEventHandler(this,"propertyChanged",a)},addEventHandler:function(a,b){Sys.Observer._addEventHandler(this,a,b)},removeEventHandler:function(a,b){Sys.Observer._removeEventHandler(this,a,b)},get_isUpdating:function(){return Sys.Observer.isUpdating(this)},beginUpdate:function(){Sys.Observer.beginUpdate(this)},endUpdate:function(){Sys.Observer.endUpdate(this)},setValue:function(b,a){Sys.Observer._setValue(this,b,a)},raiseEvent:function(b,a){Sys.Observer.raiseEvent(this,b,a)},raisePropertyChanged:function(a){Sys.Observer.raiseEvent(this,"propertyChanged",new Sys.PropertyChangedEventArgs(a))}};Sys.Observer._arrayMethods={add_collectionChanged:function(a){Sys.Observer._addEventHandler(this,"collectionChanged",a)},remove_collectionChanged:function(a){Sys.Observer._removeEventHandler(this,"collectionChanged",a)},add:function(a){Sys.Observer.add(this,a)},addRange:function(a){Sys.Observer.addRange(this,a)},clear:function(){Sys.Observer.clear(this)},insert:function(a,b){Sys.Observer.insert(this,a,b)},remove:function(a){return Sys.Observer.remove(this,a)},removeAt:function(a){Sys.Observer.removeAt(this,a)},raiseCollectionChanged:function(a){Sys.Observer.raiseEvent(this,"collectionChanged",new Sys.NotifyCollectionChangedEventArgs(a))}};Sys.Observer._getContext=function(b,c){var a=b._observerContext;if(a)return a();if(c)return (b._observerContext=Sys.Observer._createContext())();return null};Sys.Observer._createContext=function(){var a={events:new Sys.EventHandlerList};return function(){return a}};Date._appendPreOrPostMatch=function(e,b){var d=0,a=false;for(var c=0,g=e.length;c<g;c++){var f=e.charAt(c);switch(f){case "'":if(a)b.append("'");else d++;a=false;break;case "\\":if(a)b.append("\\");a=!a;break;default:b.append(f);a=false}}return d};Date._expandFormat=function(a,b){if(!b)b="F";var c=b.length;if(c===1)switch(b){case "d":return a.ShortDatePattern;case "D":return a.LongDatePattern;case "t":return a.ShortTimePattern;case "T":return a.LongTimePattern;case "f":return a.LongDatePattern+" "+a.ShortTimePattern;case "F":return a.FullDateTimePattern;case "M":case "m":return a.MonthDayPattern;case "s":return a.SortableDateTimePattern;case "Y":case "y":return a.YearMonthPattern;default:throw Error.format(Sys.Res.formatInvalidString)}else if(c===2&&b.charAt(0)==="%")b=b.charAt(1);return b};Date._expandYear=function(c,a){var d=new Date,e=Date._getEra(d);if(a<100){var b=Date._getEraYear(d,c,e);a+=b-b%100;if(a>c.Calendar.TwoDigitYearMax)a-=100}return a};Date._getEra=function(e,c){if(!c)return 0;var b,d=e.getTime();for(var a=0,f=c.length;a<f;a+=4){b=c[a+2];if(b===null||d>=b)return a}return 0};Date._getEraYear=function(d,b,e,c){var a=d.getFullYear();if(!c&&b.eras)a-=b.eras[e+3];return a};Date._getParseRegExp=function(b,e){if(!b._parseRegExp)b._parseRegExp={};else if(b._parseRegExp[e])return b._parseRegExp[e];var c=Date._expandFormat(b,e);c=c.replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g,"\\\\$1");var a=new Sys.StringBuilder("^"),j=[],f=0,i=0,h=Date._getTokenRegExp(),d;while((d=h.exec(c))!==null){var l=c.slice(f,d.index);f=h.lastIndex;i+=Date._appendPreOrPostMatch(l,a);if(i%2===1){a.append(d[0]);continue}switch(d[0]){case "dddd":case "ddd":case "MMMM":case "MMM":case "gg":case "g":a.append("(\\D+)");break;case "tt":case "t":a.append("(\\D*)");break;case "yyyy":a.append("(\\d{4})");break;case "fff":a.append("(\\d{3})");break;case "ff":a.append("(\\d{2})");break;case "f":a.append("(\\d)");break;case "dd":case "d":case "MM":case "M":case "yy":case "y":case "HH":case "H":case "hh":case "h":case "mm":case "m":case "ss":case "s":a.append("(\\d\\d?)");break;case "zzz":a.append("([+-]?\\d\\d?:\\d{2})");break;case "zz":case "z":a.append("([+-]?\\d\\d?)");break;case "/":a.append("(\\"+b.DateSeparator+")")}Array.add(j,d[0])}Date._appendPreOrPostMatch(c.slice(f),a);a.append("$");var k=a.toString().replace(/\s+/g,"\\s+"),g={"regExp":k,"groups":j};b._parseRegExp[e]=g;return g};Date._getTokenRegExp=function(){return /\/|dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z|gg|g/g};Date.parseLocale=function(a){return Date._parse(a,Sys.CultureInfo.CurrentCulture,arguments)};Date.parseInvariant=function(a){return Date._parse(a,Sys.CultureInfo.InvariantCulture,arguments)};Date._parse=function(h,d,i){var a,c,b,f,e,g=false;for(a=1,c=i.length;a<c;a++){f=i[a];if(f){g=true;b=Date._parseExact(h,f,d);if(b)return b}}if(!g){e=d._getDateTimeFormats();for(a=0,c=e.length;a<c;a++){b=Date._parseExact(h,e[a],d);if(b)return b}}return null};Date._parseExact=function(w,D,k){w=w.trim();var g=k.dateTimeFormat,A=Date._getParseRegExp(g,D),C=(new RegExp(A.regExp)).exec(w);if(C===null)return null;var B=A.groups,x=null,e=null,c=null,j=null,i=null,d=0,h,p=0,q=0,f=0,l=null,v=false;for(var s=0,E=B.length;s<E;s++){var a=C[s+1];if(a)switch(B[s]){case "dd":case "d":j=parseInt(a,10);if(j<1||j>31)return null;break;case "MMMM":c=k._getMonthIndex(a);if(c<0||c>11)return null;break;case "MMM":c=k._getAbbrMonthIndex(a);if(c<0||c>11)return null;break;case "M":case "MM":c=parseInt(a,10)-1;if(c<0||c>11)return null;break;case "y":case "yy":e=Date._expandYear(g,parseInt(a,10));if(e<0||e>9999)return null;break;case "yyyy":e=parseInt(a,10);if(e<0||e>9999)return null;break;case "h":case "hh":d=parseInt(a,10);if(d===12)d=0;if(d<0||d>11)return null;break;case "H":case "HH":d=parseInt(a,10);if(d<0||d>23)return null;break;case "m":case "mm":p=parseInt(a,10);if(p<0||p>59)return null;break;case "s":case "ss":q=parseInt(a,10);if(q<0||q>59)return null;break;case "tt":case "t":var z=a.toUpperCase();v=z===g.PMDesignator.toUpperCase();if(!v&&z!==g.AMDesignator.toUpperCase())return null;break;case "f":f=parseInt(a,10)*100;if(f<0||f>999)return null;break;case "ff":f=parseInt(a,10)*10;if(f<0||f>999)return null;break;case "fff":f=parseInt(a,10);if(f<0||f>999)return null;break;case "dddd":i=k._getDayIndex(a);if(i<0||i>6)return null;break;case "ddd":i=k._getAbbrDayIndex(a);if(i<0||i>6)return null;break;case "zzz":var u=a.split(/:/);if(u.length!==2)return null;h=parseInt(u[0],10);if(h<-12||h>13)return null;var m=parseInt(u[1],10);if(m<0||m>59)return null;l=h*60+(a.startsWith("-")?-m:m);break;case "z":case "zz":h=parseInt(a,10);if(h<-12||h>13)return null;l=h*60;break;case "g":case "gg":var o=a;if(!o||!g.eras)return null;o=o.toLowerCase().trim();for(var r=0,F=g.eras.length;r<F;r+=4)if(o===g.eras[r+1].toLowerCase()){x=r;break}if(x===null)return null}}var b=new Date,t,n=g.Calendar.convert;if(n)t=n.fromGregorian(b)[0];else t=b.getFullYear();if(e===null)e=t;else if(g.eras)e+=g.eras[(x||0)+3];if(c===null)c=0;if(j===null)j=1;if(n){b=n.toGregorian(e,c,j);if(b===null)return null}else{b.setFullYear(e,c,j);if(b.getDate()!==j)return null;if(i!==null&&b.getDay()!==i)return null}if(v&&d<12)d+=12;b.setHours(d,p,q,f);if(l!==null){var y=b.getMinutes()-(l+b.getTimezoneOffset());b.setHours(b.getHours()+parseInt(y/60,10),y%60)}return b};Date.prototype.format=function(a){return this._toFormattedString(a,Sys.CultureInfo.InvariantCulture)};Date.prototype.localeFormat=function(a){return this._toFormattedString(a,Sys.CultureInfo.CurrentCulture)};Date.prototype._toFormattedString=function(e,j){var b=j.dateTimeFormat,n=b.Calendar.convert;if(!e||!e.length||e==="i")if(j&&j.name.length)if(n)return this._toFormattedString(b.FullDateTimePattern,j);else{var r=new Date(this.getTime()),x=Date._getEra(this,b.eras);r.setFullYear(Date._getEraYear(this,b,x));return r.toLocaleString()}else return this.toString();var l=b.eras,k=e==="s";e=Date._expandFormat(b,e);var a=new Sys.StringBuilder,c;function d(a){if(a<10)return "0"+a;return a.toString()}function m(a){if(a<10)return "00"+a;if(a<100)return "0"+a;return a.toString()}function v(a){if(a<10)return "000"+a;else if(a<100)return "00"+a;else if(a<1000)return "0"+a;return a.toString()}var h,p,t=/([^d]|^)(d|dd)([^d]|$)/g;function s(){if(h||p)return h;h=t.test(e);p=true;return h}var q=0,o=Date._getTokenRegExp(),f;if(!k&&n)f=n.fromGregorian(this);for(;true;){var w=o.lastIndex,i=o.exec(e),u=e.slice(w,i?i.index:e.length);q+=Date._appendPreOrPostMatch(u,a);if(!i)break;if(q%2===1){a.append(i[0]);continue}function g(a,b){if(f)return f[b];switch(b){case 0:return a.getFullYear();case 1:return a.getMonth();case 2:return a.getDate()}}switch(i[0]){case "dddd":a.append(b.DayNames[this.getDay()]);break;case "ddd":a.append(b.AbbreviatedDayNames[this.getDay()]);break;case "dd":h=true;a.append(d(g(this,2)));break;case "d":h=true;a.append(g(this,2));break;case "MMMM":a.append(b.MonthGenitiveNames&&s()?b.MonthGenitiveNames[g(this,1)]:b.MonthNames[g(this,1)]);break;case "MMM":a.append(b.AbbreviatedMonthGenitiveNames&&s()?b.AbbreviatedMonthGenitiveNames[g(this,1)]:b.AbbreviatedMonthNames[g(this,1)]);break;case "MM":a.append(d(g(this,1)+1));break;case "M":a.append(g(this,1)+1);break;case "yyyy":a.append(v(f?f[0]:Date._getEraYear(this,b,Date._getEra(this,l),k)));break;case "yy":a.append(d((f?f[0]:Date._getEraYear(this,b,Date._getEra(this,l),k))%100));break;case "y":a.append((f?f[0]:Date._getEraYear(this,b,Date._getEra(this,l),k))%100);break;case "hh":c=this.getHours()%12;if(c===0)c=12;a.append(d(c));break;case "h":c=this.getHours()%12;if(c===0)c=12;a.append(c);break;case "HH":a.append(d(this.getHours()));break;case "H":a.append(this.getHours());break;case "mm":a.append(d(this.getMinutes()));break;case "m":a.append(this.getMinutes());break;case "ss":a.append(d(this.getSeconds()));break;case "s":a.append(this.getSeconds());break;case "tt":a.append(this.getHours()<12?b.AMDesignator:b.PMDesignator);break;case "t":a.append((this.getHours()<12?b.AMDesignator:b.PMDesignator).charAt(0));break;case "f":a.append(m(this.getMilliseconds()).charAt(0));break;case "ff":a.append(m(this.getMilliseconds()).substr(0,2));break;case "fff":a.append(m(this.getMilliseconds()));break;case "z":c=this.getTimezoneOffset()/60;a.append((c<=0?"+":"-")+Math.floor(Math.abs(c)));break;case "zz":c=this.getTimezoneOffset()/60;a.append((c<=0?"+":"-")+d(Math.floor(Math.abs(c))));break;case "zzz":c=this.getTimezoneOffset()/60;a.append((c<=0?"+":"-")+d(Math.floor(Math.abs(c)))+":"+d(Math.abs(this.getTimezoneOffset()%60)));break;case "g":case "gg":if(b.eras)a.append(b.eras[Date._getEra(this,l)+1]);break;case "/":a.append(b.DateSeparator)}}return a.toString()};String.localeFormat=function(){return String._toFormattedString(true,arguments)};Number.parseLocale=function(a){return Number._parse(a,Sys.CultureInfo.CurrentCulture)};Number.parseInvariant=function(a){return Number._parse(a,Sys.CultureInfo.InvariantCulture)};Number._parse=function(b,o){b=b.trim();if(b.match(/^[+-]?infinity$/i))return parseFloat(b);if(b.match(/^0x[a-f0-9]+$/i))return parseInt(b);var a=o.numberFormat,g=Number._parseNumberNegativePattern(b,a,a.NumberNegativePattern),h=g[0],e=g[1];if(h===""&&a.NumberNegativePattern!==1){g=Number._parseNumberNegativePattern(b,a,1);h=g[0];e=g[1]}if(h==="")h="+";var j,d,f=e.indexOf("e");if(f<0)f=e.indexOf("E");if(f<0){d=e;j=null}else{d=e.substr(0,f);j=e.substr(f+1)}var c,k,m=d.indexOf(a.NumberDecimalSeparator);if(m<0){c=d;k=null}else{c=d.substr(0,m);k=d.substr(m+a.NumberDecimalSeparator.length)}c=c.split(a.NumberGroupSeparator).join("");var n=a.NumberGroupSeparator.replace(/\u00A0/g," ");if(a.NumberGroupSeparator!==n)c=c.split(n).join("");var l=h+c;if(k!==null)l+="."+k;if(j!==null){var i=Number._parseNumberNegativePattern(j,a,1);if(i[0]==="")i[0]="+";l+="e"+i[0]+i[1]}if(l.match(/^[+-]?\d*\.?\d*(e[+-]?\d+)?$/))return parseFloat(l);return Number.NaN};Number._parseNumberNegativePattern=function(a,d,e){var b=d.NegativeSign,c=d.PositiveSign;switch(e){case 4:b=" "+b;c=" "+c;case 3:if(a.endsWith(b))return ["-",a.substr(0,a.length-b.length)];else if(a.endsWith(c))return ["+",a.substr(0,a.length-c.length)];break;case 2:b+=" ";c+=" ";case 1:if(a.startsWith(b))return ["-",a.substr(b.length)];else if(a.startsWith(c))return ["+",a.substr(c.length)];break;case 0:if(a.startsWith("(")&&a.endsWith(")"))return ["-",a.substr(1,a.length-2)]}return ["",a]};Number.prototype.format=function(a){return this._toFormattedString(a,Sys.CultureInfo.InvariantCulture)};Number.prototype.localeFormat=function(a){return this._toFormattedString(a,Sys.CultureInfo.CurrentCulture)};Number.prototype._toFormattedString=function(e,j){if(!e||e.length===0||e==="i")if(j&&j.name.length>0)return this.toLocaleString();else return this.toString();var o=["n %","n%","%n"],n=["-n %","-n%","-%n"],p=["(n)","-n","- n","n-","n -"],m=["$n","n$","$ n","n $"],l=["($n)","-$n","$-n","$n-","(n$)","-n$","n-$","n$-","-n $","-$ n","n $-","$ n-","$ -n","n- $","($ n)","(n $)"];function g(a,c,d){for(var b=a.length;b<c;b++)a=d?"0"+a:a+"0";return a}function i(j,i,l,n,p){var h=l[0],k=1,o=Math.pow(10,i),m=Math.round(j*o)/o;if(!isFinite(m))m=j;j=m;var b=j.toString(),a="",c,e=b.split(/e/i);b=e[0];c=e.length>1?parseInt(e[1]):0;e=b.split(".");b=e[0];a=e.length>1?e[1]:"";var q;if(c>0){a=g(a,c,false);b+=a.slice(0,c);a=a.substr(c)}else if(c<0){c=-c;b=g(b,c+1,true);a=b.slice(-c,b.length)+a;b=b.slice(0,-c)}if(i>0){if(a.length>i)a=a.slice(0,i);else a=g(a,i,false);a=p+a}else a="";var d=b.length-1,f="";while(d>=0){if(h===0||h>d)if(f.length>0)return b.slice(0,d+1)+n+f+a;else return b.slice(0,d+1)+a;if(f.length>0)f=b.slice(d-h+1,d+1)+n+f;else f=b.slice(d-h+1,d+1);d-=h;if(k<l.length){h=l[k];k++}}return b.slice(0,d+1)+n+f+a}var a=j.numberFormat,d=Math.abs(this);if(!e)e="D";var b=-1;if(e.length>1)b=parseInt(e.slice(1),10);var c;switch(e.charAt(0)){case "d":case "D":c="n";if(b!==-1)d=g(""+d,b,true);if(this<0)d=-d;break;case "c":case "C":if(this<0)c=l[a.CurrencyNegativePattern];else c=m[a.CurrencyPositivePattern];if(b===-1)b=a.CurrencyDecimalDigits;d=i(Math.abs(this),b,a.CurrencyGroupSizes,a.CurrencyGroupSeparator,a.CurrencyDecimalSeparator);break;case "n":case "N":if(this<0)c=p[a.NumberNegativePattern];else c="n";if(b===-1)b=a.NumberDecimalDigits;d=i(Math.abs(this),b,a.NumberGroupSizes,a.NumberGroupSeparator,a.NumberDecimalSeparator);break;case "p":case "P":if(this<0)c=n[a.PercentNegativePattern];else c=o[a.PercentPositivePattern];if(b===-1)b=a.PercentDecimalDigits;d=i(Math.abs(this)*100,b,a.PercentGroupSizes,a.PercentGroupSeparator,a.PercentDecimalSeparator);break;default:throw Error.format(Sys.Res.formatBadFormatSpecifier)}var k=/n|\$|-|%/g,f="";for(;true;){var q=k.lastIndex,h=k.exec(c);f+=c.slice(q,h?h.index:c.length);if(!h)break;switch(h[0]){case "n":f+=d;break;case "$":f+=a.CurrencySymbol;break;case "-":if(/[1-9]/.test(d))f+=a.NegativeSign;break;case "%":f+=a.PercentSymbol}}return f};Sys.CultureInfo=function(c,b,a){this.name=c;this.numberFormat=b;this.dateTimeFormat=a};Sys.CultureInfo.prototype={_getDateTimeFormats:function(){if(!this._dateTimeFormats){var a=this.dateTimeFormat;this._dateTimeFormats=[a.MonthDayPattern,a.YearMonthPattern,a.ShortDatePattern,a.ShortTimePattern,a.LongDatePattern,a.LongTimePattern,a.FullDateTimePattern,a.RFC1123Pattern,a.SortableDateTimePattern,a.UniversalSortableDateTimePattern]}return this._dateTimeFormats},_getIndex:function(c,d,e){var b=this._toUpper(c),a=Array.indexOf(d,b);if(a===-1)a=Array.indexOf(e,b);return a},_getMonthIndex:function(a){if(!this._upperMonths){this._upperMonths=this._toUpperArray(this.dateTimeFormat.MonthNames);this._upperMonthsGenitive=this._toUpperArray(this.dateTimeFormat.MonthGenitiveNames)}return this._getIndex(a,this._upperMonths,this._upperMonthsGenitive)},_getAbbrMonthIndex:function(a){if(!this._upperAbbrMonths){this._upperAbbrMonths=this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthNames);this._upperAbbrMonthsGenitive=this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthGenitiveNames)}return this._getIndex(a,this._upperAbbrMonths,this._upperAbbrMonthsGenitive)},_getDayIndex:function(a){if(!this._upperDays)this._upperDays=this._toUpperArray(this.dateTimeFormat.DayNames);return Array.indexOf(this._upperDays,this._toUpper(a))},_getAbbrDayIndex:function(a){if(!this._upperAbbrDays)this._upperAbbrDays=this._toUpperArray(this.dateTimeFormat.AbbreviatedDayNames);return Array.indexOf(this._upperAbbrDays,this._toUpper(a))},_toUpperArray:function(c){var b=[];for(var a=0,d=c.length;a<d;a++)b[a]=this._toUpper(c[a]);return b},_toUpper:function(a){return a.split("\u00a0").join(" ").toUpperCase()}};Sys.CultureInfo.registerClass("Sys.CultureInfo");Sys.CultureInfo._parse=function(a){var b=a.dateTimeFormat;if(b&&!b.eras)b.eras=a.eras;return new Sys.CultureInfo(a.name,a.numberFormat,b)};Sys.CultureInfo.InvariantCulture=Sys.CultureInfo._parse({"name":"","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":true,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"\u00a4","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":true},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH':'mm':'ss 'GMT'","ShortDatePattern":"MM/dd/yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy'-'MM'-'dd'T'HH':'mm':'ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy'-'MM'-'dd HH':'mm':'ss'Z'","YearMonthPattern":"yyyy MMMM","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":true,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]},"eras":[1,"A.D.",null,0]});if(typeof __cultureInfo==="object"){Sys.CultureInfo.CurrentCulture=Sys.CultureInfo._parse(__cultureInfo);delete __cultureInfo}else Sys.CultureInfo.CurrentCulture=Sys.CultureInfo._parse({"name":"en-US","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, MMMM dd, yyyy h:mm:ss tt","LongDatePattern":"dddd, MMMM dd, yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH':'mm':'ss 'GMT'","ShortDatePattern":"M/d/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy'-'MM'-'dd'T'HH':'mm':'ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy'-'MM'-'dd HH':'mm':'ss'Z'","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]},"eras":[1,"A.D.",null,0]});Type.registerNamespace("Sys.Serialization");Sys.Serialization.JavaScriptSerializer=function(){};Sys.Serialization.JavaScriptSerializer.registerClass("Sys.Serialization.JavaScriptSerializer");Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs=[];Sys.Serialization.JavaScriptSerializer._charsToEscape=[];Sys.Serialization.JavaScriptSerializer._dateRegEx=new RegExp('(^|[^\\\\])\\"\\\\/Date\\((-?[0-9]+)(?:[a-zA-Z]|(?:\\+|-)[0-9]{4})?\\)\\\\/\\"',"g");Sys.Serialization.JavaScriptSerializer._escapeChars={};Sys.Serialization.JavaScriptSerializer._escapeRegEx=new RegExp('["\\\\\\x00-\\x1F]',"i");Sys.Serialization.JavaScriptSerializer._escapeRegExGlobal=new RegExp('["\\\\\\x00-\\x1F]',"g");Sys.Serialization.JavaScriptSerializer._jsonRegEx=new RegExp("[^,:{}\\[\\]0-9.\\-+Eaeflnr-u \\n\\r\\t]","g");Sys.Serialization.JavaScriptSerializer._jsonStringRegEx=new RegExp('"(\\\\.|[^"\\\\])*"',"g");Sys.Serialization.JavaScriptSerializer._serverTypeFieldName="__type";Sys.Serialization.JavaScriptSerializer._init=function(){var c=["\\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]="\\";Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs["\\"]=new RegExp("\\\\","g");Sys.Serialization.JavaScriptSerializer._escapeChars["\\"]="\\\\";Sys.Serialization.JavaScriptSerializer._charsToEscape[1]='"';Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs['"']=new RegExp('"',"g");Sys.Serialization.JavaScriptSerializer._escapeChars['"']='\\"';for(var a=0;a<32;a++){var b=String.fromCharCode(a);Sys.Serialization.JavaScriptSerializer._charsToEscape[a+2]=b;Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs[b]=new RegExp(b,"g");Sys.Serialization.JavaScriptSerializer._escapeChars[b]=c[a]}};Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder=function(b,a){a.append(b.toString())};Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder=function(a,b){if(isFinite(a))b.append(String(a));else throw Error.invalidOperation(Sys.Res.cannotSerializeNonFiniteNumbers)};Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder=function(a,c){c.append('"');if(Sys.Serialization.JavaScriptSerializer._escapeRegEx.test(a)){if(Sys.Serialization.JavaScriptSerializer._charsToEscape.length===0)Sys.Serialization.JavaScriptSerializer._init();if(a.length<128)a=a.replace(Sys.Serialization.JavaScriptSerializer._escapeRegExGlobal,function(a){return Sys.Serialization.JavaScriptSerializer._escapeChars[a]});else for(var d=0;d<34;d++){var b=Sys.Serialization.JavaScriptSerializer._charsToEscape[d];if(a.indexOf(b)!==-1)if(Sys.Browser.agent===Sys.Browser.Opera||Sys.Browser.agent===Sys.Browser.FireFox)a=a.split(b).join(Sys.Serialization.JavaScriptSerializer._escapeChars[b]);else a=a.replace(Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs[b],Sys.Serialization.JavaScriptSerializer._escapeChars[b])}}c.append(a);c.append('"')};Sys.Serialization.JavaScriptSerializer._serializeWithBuilder=function(b,a,i,g){var c;switch(typeof b){case "object":if(b)if(Number.isInstanceOfType(b))Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder(b,a);else if(Boolean.isInstanceOfType(b))Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder(b,a);else if(String.isInstanceOfType(b))Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder(b,a);else if(Array.isInstanceOfType(b)){a.append("[");for(c=0;c<b.length;++c){if(c>0)a.append(",");Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(b[c],a,false,g)}a.append("]")}else{if(Date.isInstanceOfType(b)){a.append('"\\/Date(');a.append(b.getTime());a.append(')\\/"');break}var d=[],f=0;for(var e in b){if(e.startsWith("$"))continue;if(e===Sys.Serialization.JavaScriptSerializer._serverTypeFieldName&&f!==0){d[f++]=d[0];d[0]=e}else d[f++]=e}if(i)d.sort();a.append("{");var j=false;for(c=0;c<f;c++){var h=b[d[c]];if(typeof h!=="undefined"&&typeof h!=="function"){if(j)a.append(",");else j=true;Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(d[c],a,i,g);a.append(":");Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(h,a,i,g)}}a.append("}")}else a.append("null");break;case "number":Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder(b,a);break;case "string":Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder(b,a);break;case "boolean":Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder(b,a);break;default:a.append("null")}};Sys.Serialization.JavaScriptSerializer.serialize=function(b){var a=new Sys.StringBuilder;Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(b,a,false);return a.toString()};Sys.Serialization.JavaScriptSerializer.deserialize=function(data,secure){if(data.length===0)throw Error.argument("data",Sys.Res.cannotDeserializeEmptyString);try{var exp=data.replace(Sys.Serialization.JavaScriptSerializer._dateRegEx,"$1new Date($2)");if(secure&&Sys.Serialization.JavaScriptSerializer._jsonRegEx.test(exp.replace(Sys.Serialization.JavaScriptSerializer._jsonStringRegEx,"")))throw null;return eval("("+exp+")")}catch(a){throw Error.argument("data",Sys.Res.cannotDeserializeInvalidJson)}};Type.registerNamespace("Sys.UI");Sys.EventHandlerList=function(){this._list={}};Sys.EventHandlerList.prototype={_addHandler:function(b,a){Array.add(this._getEvent(b,true),a)},addHandler:function(b,a){this._addHandler(b,a)},_removeHandler:function(c,b){var a=this._getEvent(c);if(!a)return;Array.remove(a,b)},removeHandler:function(b,a){this._removeHandler(b,a)},getHandler:function(b){var a=this._getEvent(b);if(!a||a.length===0)return null;a=Array.clone(a);return function(c,d){for(var b=0,e=a.length;b<e;b++)a[b](c,d)}},_getEvent:function(a,b){if(!this._list[a]){if(!b)return null;this._list[a]=[]}return this._list[a]}};Sys.EventHandlerList.registerClass("Sys.EventHandlerList");Sys.CommandEventArgs=function(c,a,b){Sys.CommandEventArgs.initializeBase(this);this._commandName=c;this._commandArgument=a;this._commandSource=b};Sys.CommandEventArgs.prototype={_commandName:null,_commandArgument:null,_commandSource:null,get_commandName:function(){return this._commandName},get_commandArgument:function(){return this._commandArgument},get_commandSource:function(){return this._commandSource}};Sys.CommandEventArgs.registerClass("Sys.CommandEventArgs",Sys.CancelEventArgs);Sys.INotifyPropertyChange=function(){};Sys.INotifyPropertyChange.prototype={};Sys.INotifyPropertyChange.registerInterface("Sys.INotifyPropertyChange");Sys.PropertyChangedEventArgs=function(a){Sys.PropertyChangedEventArgs.initializeBase(this);this._propertyName=a};Sys.PropertyChangedEventArgs.prototype={get_propertyName:function(){return this._propertyName}};Sys.PropertyChangedEventArgs.registerClass("Sys.PropertyChangedEventArgs",Sys.EventArgs);Sys.INotifyDisposing=function(){};Sys.INotifyDisposing.prototype={};Sys.INotifyDisposing.registerInterface("Sys.INotifyDisposing");Sys.Component=function(){if(Sys.Application)Sys.Application.registerDisposableObject(this)};Sys.Component.prototype={_id:null,_initialized:false,_updating:false,get_events:function(){if(!this._events)this._events=new Sys.EventHandlerList;return this._events},get_id:function(){return this._id},set_id:function(a){this._id=a},get_isInitialized:function(){return this._initialized},get_isUpdating:function(){return this._updating},add_disposing:function(a){this.get_events().addHandler("disposing",a)},remove_disposing:function(a){this.get_events().removeHandler("disposing",a)},add_propertyChanged:function(a){this.get_events().addHandler("propertyChanged",a)},remove_propertyChanged:function(a){this.get_events().removeHandler("propertyChanged",a)},beginUpdate:function(){this._updating=true},dispose:function(){if(this._events){var a=this._events.getHandler("disposing");if(a)a(this,Sys.EventArgs.Empty)}delete this._events;Sys.Application.unregisterDisposableObject(this);Sys.Application.removeComponent(this)},endUpdate:function(){this._updating=false;if(!this._initialized)this.initialize();this.updated()},initialize:function(){this._initialized=true},raisePropertyChanged:function(b){if(!this._events)return;var a=this._events.getHandler("propertyChanged");if(a)a(this,new Sys.PropertyChangedEventArgs(b))},updated:function(){}};Sys.Component.registerClass("Sys.Component",null,Sys.IDisposable,Sys.INotifyPropertyChange,Sys.INotifyDisposing);function Sys$Component$_setProperties(a,i){var d,j=Object.getType(a),e=j===Object||j===Sys.UI.DomElement,h=Sys.Component.isInstanceOfType(a)&&!a.get_isUpdating();if(h)a.beginUpdate();for(var c in i){var b=i[c],f=e?null:a["get_"+c];if(e||typeof f!=="function"){var k=a[c];if(!b||typeof b!=="object"||e&&!k)a[c]=b;else Sys$Component$_setProperties(k,b)}else{var l=a["set_"+c];if(typeof l==="function")l.apply(a,[b]);else if(b instanceof Array){d=f.apply(a);for(var g=0,m=d.length,n=b.length;g<n;g++,m++)d[m]=b[g]}else if(typeof b==="object"&&Object.getType(b)===Object){d=f.apply(a);Sys$Component$_setProperties(d,b)}}}if(h)a.endUpdate()}function Sys$Component$_setReferences(c,b){for(var a in b){var e=c["set_"+a],d=$find(b[a]);e.apply(c,[d])}}var $create=Sys.Component.create=function(h,f,d,c,g){var a=g?new h(g):new h,b=Sys.Application,i=b.get_isCreatingComponents();a.beginUpdate();if(f)Sys$Component$_setProperties(a,f);if(d)for(var e in d)a["add_"+e](d[e]);if(a.get_id())b.addComponent(a);if(i){b._createdComponents[b._createdComponents.length]=a;if(c)b._addComponentToSecondPass(a,c);else a.endUpdate()}else{if(c)Sys$Component$_setReferences(a,c);a.endUpdate()}return a};Sys.UI.MouseButton=function(){throw Error.notImplemented()};Sys.UI.MouseButton.prototype={leftButton:0,middleButton:1,rightButton:2};Sys.UI.MouseButton.registerEnum("Sys.UI.MouseButton");Sys.UI.Key=function(){throw Error.notImplemented()};Sys.UI.Key.prototype={backspace:8,tab:9,enter:13,esc:27,space:32,pageUp:33,pageDown:34,end:35,home:36,left:37,up:38,right:39,down:40,del:127};Sys.UI.Key.registerEnum("Sys.UI.Key");Sys.UI.Point=function(a,b){this.rawX=a;this.rawY=b;this.x=Math.round(a);this.y=Math.round(b)};Sys.UI.Point.registerClass("Sys.UI.Point");Sys.UI.Bounds=function(c,d,b,a){this.x=c;this.y=d;this.height=a;this.width=b};Sys.UI.Bounds.registerClass("Sys.UI.Bounds");Sys.UI.DomEvent=function(e){var a=e,b=this.type=a.type.toLowerCase();this.rawEvent=a;this.altKey=a.altKey;if(typeof a.button!=="undefined")this.button=typeof a.which!=="undefined"?a.button:a.button===4?Sys.UI.MouseButton.middleButton:a.button===2?Sys.UI.MouseButton.rightButton:Sys.UI.MouseButton.leftButton;if(b==="keypress")this.charCode=a.charCode||a.keyCode;else if(a.keyCode&&a.keyCode===46)this.keyCode=127;else this.keyCode=a.keyCode;this.clientX=a.clientX;this.clientY=a.clientY;this.ctrlKey=a.ctrlKey;this.target=a.target?a.target:a.srcElement;if(!b.startsWith("key"))if(typeof a.offsetX!=="undefined"&&typeof a.offsetY!=="undefined"){this.offsetX=a.offsetX;this.offsetY=a.offsetY}else if(this.target&&this.target.nodeType!==3&&typeof a.clientX==="number"){var c=Sys.UI.DomElement.getLocation(this.target),d=Sys.UI.DomElement._getWindow(this.target);this.offsetX=(d.pageXOffset||0)+a.clientX-c.x;this.offsetY=(d.pageYOffset||0)+a.clientY-c.y}this.screenX=a.screenX;this.screenY=a.screenY;this.shiftKey=a.shiftKey};Sys.UI.DomEvent.prototype={preventDefault:function(){if(this.rawEvent.preventDefault)this.rawEvent.preventDefault();else if(window.event)this.rawEvent.returnValue=false},stopPropagation:function(){if(this.rawEvent.stopPropagation)this.rawEvent.stopPropagation();else if(window.event)this.rawEvent.cancelBubble=true}};Sys.UI.DomEvent.registerClass("Sys.UI.DomEvent");var $addHandler=Sys.UI.DomEvent.addHandler=function(a,d,e,g){if(!a._events)a._events={};var c=a._events[d];if(!c)a._events[d]=c=[];var b;if(a.addEventListener){b=function(b){return e.call(a,new Sys.UI.DomEvent(b))};a.addEventListener(d,b,false)}else if(a.attachEvent){b=function(){var b={};try{b=Sys.UI.DomElement._getWindow(a).event}catch(c){}return e.call(a,new Sys.UI.DomEvent(b))};a.attachEvent("on"+d,b)}c[c.length]={handler:e,browserHandler:b,autoRemove:g};if(g){var f=a.dispose;if(f!==Sys.UI.DomEvent._disposeHandlers){a.dispose=Sys.UI.DomEvent._disposeHandlers;if(typeof f!=="undefined")a._chainDispose=f}}},$addHandlers=Sys.UI.DomEvent.addHandlers=function(f,d,c,e){for(var b in d){var a=d[b];if(c)a=Function.createDelegate(c,a);$addHandler(f,b,a,e||false)}},$clearHandlers=Sys.UI.DomEvent.clearHandlers=function(a){Sys.UI.DomEvent._clearHandlers(a,false)};Sys.UI.DomEvent._clearHandlers=function(a,g){if(a._events){var e=a._events;for(var b in e){var d=e[b];for(var c=d.length-1;c>=0;c--){var f=d[c];if(!g||f.autoRemove)$removeHandler(a,b,f.handler)}}a._events=null}};Sys.UI.DomEvent._disposeHandlers=function(){Sys.UI.DomEvent._clearHandlers(this,true);var b=this._chainDispose,a=typeof b;if(a!=="undefined"){this.dispose=b;this._chainDispose=null;if(a==="function")this.dispose()}};var $removeHandler=Sys.UI.DomEvent.removeHandler=function(b,a,c){Sys.UI.DomEvent._removeHandler(b,a,c)};Sys.UI.DomEvent._removeHandler=function(a,e,f){var d=null,c=a._events[e];for(var b=0,g=c.length;b<g;b++)if(c[b].handler===f){d=c[b].browserHandler;break}if(a.removeEventListener)a.removeEventListener(e,d,false);else if(a.detachEvent)a.detachEvent("on"+e,d);c.splice(b,1)};Sys.UI.DomElement=function(){};Sys.UI.DomElement.registerClass("Sys.UI.DomElement");Sys.UI.DomElement.addCssClass=function(a,b){if(!Sys.UI.DomElement.containsCssClass(a,b))if(a.className==="")a.className=b;else a.className+=" "+b};Sys.UI.DomElement.containsCssClass=function(b,a){return Array.contains(b.className.split(" "),a)};Sys.UI.DomElement.getBounds=function(a){var b=Sys.UI.DomElement.getLocation(a);return new Sys.UI.Bounds(b.x,b.y,a.offsetWidth||0,a.offsetHeight||0)};var $get=Sys.UI.DomElement.getElementById=function(f,e){if(!e)return document.getElementById(f);if(e.getElementById)return e.getElementById(f);var c=[],d=e.childNodes;for(var b=0;b<d.length;b++){var a=d[b];if(a.nodeType==1)c[c.length]=a}while(c.length){a=c.shift();if(a.id==f)return a;d=a.childNodes;for(b=0;b<d.length;b++){a=d[b];if(a.nodeType==1)c[c.length]=a}}return null};if(document.documentElement.getBoundingClientRect)Sys.UI.DomElement.getLocation=function(a){if(a.self||a.nodeType===9||a===document.documentElement||a.parentNode===a.ownerDocument.documentElement)return new Sys.UI.Point(0,0);var f=a.getBoundingClientRect();if(!f)return new Sys.UI.Point(0,0);var e=a.ownerDocument.documentElement,h=a.ownerDocument.body,l,c=Math.round(f.left)+(e.scrollLeft||h.scrollLeft),d=Math.round(f.top)+(e.scrollTop||h.scrollTop);if(Sys.Browser.agent===Sys.Browser.InternetExplorer){try{var g=a.ownerDocument.parentWindow.frameElement||null;if(g){var i=g.frameBorder==="0"||g.frameBorder==="no"?2:0;c+=i;d+=i}}catch(m){}if(Sys.Browser.version===7&&!document.documentMode){var j=document.body,k=j.getBoundingClientRect(),b=(k.right-k.left)/j.clientWidth;b=Math.round(b*100);b=(b-b%5)/100;if(!isNaN(b)&&b!==1){c=Math.round(c/b);d=Math.round(d/b)}}if((document.documentMode||0)<8){c-=e.clientLeft;d-=e.clientTop}}return new Sys.UI.Point(c,d)};else if(Sys.Browser.agent===Sys.Browser.Safari)Sys.UI.DomElement.getLocation=function(c){if(c.window&&c.window===c||c.nodeType===9)return new Sys.UI.Point(0,0);var d=0,e=0,a,j=null,g=null,b;for(a=c;a;j=a,(g=b,a=a.offsetParent)){b=Sys.UI.DomElement._getCurrentStyle(a);var f=a.tagName?a.tagName.toUpperCase():null;if((a.offsetLeft||a.offsetTop)&&(f!=="BODY"||(!g||g.position!=="absolute"))){d+=a.offsetLeft;e+=a.offsetTop}if(j&&Sys.Browser.version>=3){d+=parseInt(b.borderLeftWidth);e+=parseInt(b.borderTopWidth)}}b=Sys.UI.DomElement._getCurrentStyle(c);var h=b?b.position:null;if(!h||h!=="absolute")for(a=c.parentNode;a;a=a.parentNode){f=a.tagName?a.tagName.toUpperCase():null;if(f!=="BODY"&&f!=="HTML"&&(a.scrollLeft||a.scrollTop)){d-=a.scrollLeft||0;e-=a.scrollTop||0}b=Sys.UI.DomElement._getCurrentStyle(a);var i=b?b.position:null;if(i&&i==="absolute")break}return new Sys.UI.Point(d,e)};else Sys.UI.DomElement.getLocation=function(d){if(d.window&&d.window===d||d.nodeType===9)return new Sys.UI.Point(0,0);var e=0,f=0,a,i=null,g=null,b=null;for(a=d;a;i=a,(g=b,a=a.offsetParent)){var c=a.tagName?a.tagName.toUpperCase():null;b=Sys.UI.DomElement._getCurrentStyle(a);if((a.offsetLeft||a.offsetTop)&&!(c==="BODY"&&(!g||g.position!=="absolute"))){e+=a.offsetLeft;f+=a.offsetTop}if(i!==null&&b){if(c!=="TABLE"&&c!=="TD"&&c!=="HTML"){e+=parseInt(b.borderLeftWidth)||0;f+=parseInt(b.borderTopWidth)||0}if(c==="TABLE"&&(b.position==="relative"||b.position==="absolute")){e+=parseInt(b.marginLeft)||0;f+=parseInt(b.marginTop)||0}}}b=Sys.UI.DomElement._getCurrentStyle(d);var h=b?b.position:null;if(!h||h!=="absolute")for(a=d.parentNode;a;a=a.parentNode){c=a.tagName?a.tagName.toUpperCase():null;if(c!=="BODY"&&c!=="HTML"&&(a.scrollLeft||a.scrollTop)){e-=a.scrollLeft||0;f-=a.scrollTop||0;b=Sys.UI.DomElement._getCurrentStyle(a);if(b){e+=parseInt(b.borderLeftWidth)||0;f+=parseInt(b.borderTopWidth)||0}}}return new Sys.UI.Point(e,f)};Sys.UI.DomElement.isDomElement=function(a){return Sys._isDomElement(a)};Sys.UI.DomElement.removeCssClass=function(d,c){var a=" "+d.className+" ",b=a.indexOf(" "+c+" ");if(b>=0)d.className=(a.substr(0,b)+" "+a.substring(b+c.length+1,a.length)).trim()};Sys.UI.DomElement.resolveElement=function(b,c){var a=b;if(!a)return null;if(typeof a==="string")a=Sys.UI.DomElement.getElementById(a,c);return a};Sys.UI.DomElement.raiseBubbleEvent=function(c,d){var b=c;while(b){var a=b.control;if(a&&a.onBubbleEvent&&a.raiseBubbleEvent){Sys.UI.DomElement._raiseBubbleEventFromControl(a,c,d);return}b=b.parentNode}};Sys.UI.DomElement._raiseBubbleEventFromControl=function(a,b,c){if(!a.onBubbleEvent(b,c))a._raiseBubbleEvent(b,c)};Sys.UI.DomElement.setLocation=function(b,c,d){var a=b.style;a.position="absolute";a.left=c+"px";a.top=d+"px"};Sys.UI.DomElement.toggleCssClass=function(b,a){if(Sys.UI.DomElement.containsCssClass(b,a))Sys.UI.DomElement.removeCssClass(b,a);else Sys.UI.DomElement.addCssClass(b,a)};Sys.UI.DomElement.getVisibilityMode=function(a){return a._visibilityMode===Sys.UI.VisibilityMode.hide?Sys.UI.VisibilityMode.hide:Sys.UI.VisibilityMode.collapse};Sys.UI.DomElement.setVisibilityMode=function(a,b){Sys.UI.DomElement._ensureOldDisplayMode(a);if(a._visibilityMode!==b){a._visibilityMode=b;if(Sys.UI.DomElement.getVisible(a)===false)if(a._visibilityMode===Sys.UI.VisibilityMode.hide)a.style.display=a._oldDisplayMode;else a.style.display="none";a._visibilityMode=b}};Sys.UI.DomElement.getVisible=function(b){var a=b.currentStyle||Sys.UI.DomElement._getCurrentStyle(b);if(!a)return true;return a.visibility!=="hidden"&&a.display!=="none"};Sys.UI.DomElement.setVisible=function(a,b){if(b!==Sys.UI.DomElement.getVisible(a)){Sys.UI.DomElement._ensureOldDisplayMode(a);a.style.visibility=b?"visible":"hidden";if(b||a._visibilityMode===Sys.UI.VisibilityMode.hide)a.style.display=a._oldDisplayMode;else a.style.display="none"}};Sys.UI.DomElement._ensureOldDisplayMode=function(a){if(!a._oldDisplayMode){var b=a.currentStyle||Sys.UI.DomElement._getCurrentStyle(a);a._oldDisplayMode=b?b.display:null;if(!a._oldDisplayMode||a._oldDisplayMode==="none")switch(a.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":a._oldDisplayMode="block";break;case "LI":a._oldDisplayMode="list-item";break;default:a._oldDisplayMode="inline"}}};Sys.UI.DomElement._getWindow=function(a){var b=a.ownerDocument||a.document||a;return b.defaultView||b.parentWindow};Sys.UI.DomElement._getCurrentStyle=function(a){if(a.nodeType===3)return null;var c=Sys.UI.DomElement._getWindow(a);if(a.documentElement)a=a.documentElement;var b=c&&a!==c&&c.getComputedStyle?c.getComputedStyle(a,null):a.currentStyle||a.style;if(!b&&Sys.Browser.agent===Sys.Browser.Safari&&a.style){var g=a.style.display,f=a.style.position;a.style.position="absolute";a.style.display="block";var e=c.getComputedStyle(a,null);a.style.display=g;a.style.position=f;b={};for(var d in e)b[d]=e[d];b.display="none"}return b};Sys.IContainer=function(){};Sys.IContainer.prototype={};Sys.IContainer.registerInterface("Sys.IContainer");Sys.ApplicationLoadEventArgs=function(b,a){Sys.ApplicationLoadEventArgs.initializeBase(this);this._components=b;this._isPartialLoad=a};Sys.ApplicationLoadEventArgs.prototype={get_components:function(){return this._components},get_isPartialLoad:function(){return this._isPartialLoad}};Sys.ApplicationLoadEventArgs.registerClass("Sys.ApplicationLoadEventArgs",Sys.EventArgs);Sys._Application=function(){Sys._Application.initializeBase(this);this._disposableObjects=[];this._components={};this._createdComponents=[];this._secondPassComponents=[];this._unloadHandlerDelegate=Function.createDelegate(this,this._unloadHandler);Sys.UI.DomEvent.addHandler(window,"unload",this._unloadHandlerDelegate);this._domReady()};Sys._Application.prototype={_creatingComponents:false,_disposing:false,_deleteCount:0,get_isCreatingComponents:function(){return this._creatingComponents},get_isDisposing:function(){return this._disposing},add_init:function(a){if(this._initialized)a(this,Sys.EventArgs.Empty);else this.get_events().addHandler("init",a)},remove_init:function(a){this.get_events().removeHandler("init",a)},add_load:function(a){this.get_events().addHandler("load",a)},remove_load:function(a){this.get_events().removeHandler("load",a)},add_unload:function(a){this.get_events().addHandler("unload",a)},remove_unload:function(a){this.get_events().removeHandler("unload",a)},addComponent:function(a){this._components[a.get_id()]=a},beginCreateComponents:function(){this._creatingComponents=true},dispose:function(){if(!this._disposing){this._disposing=true;if(this._timerCookie){window.clearTimeout(this._timerCookie);delete this._timerCookie}if(this._endRequestHandler){Sys.WebForms.PageRequestManager.getInstance().remove_endRequest(this._endRequestHandler);delete this._endRequestHandler}if(this._beginRequestHandler){Sys.WebForms.PageRequestManager.getInstance().remove_beginRequest(this._beginRequestHandler);delete this._beginRequestHandler}if(window.pageUnload)window.pageUnload(this,Sys.EventArgs.Empty);var c=this.get_events().getHandler("unload");if(c)c(this,Sys.EventArgs.Empty);var b=Array.clone(this._disposableObjects);for(var a=0,f=b.length;a<f;a++){var d=b[a];if(typeof d!=="undefined")d.dispose()}Array.clear(this._disposableObjects);Sys.UI.DomEvent.removeHandler(window,"unload",this._unloadHandlerDelegate);if(Sys._ScriptLoader){var e=Sys._ScriptLoader.getInstance();if(e)e.dispose()}Sys._Application.callBaseMethod(this,"dispose")}},disposeElement:function(c,j){if(c.nodeType===1){var b,h=c.getElementsByTagName("*"),g=h.length,i=new Array(g);for(b=0;b<g;b++)i[b]=h[b];for(b=g-1;b>=0;b--){var d=i[b],f=d.dispose;if(f&&typeof f==="function")d.dispose();else{var e=d.control;if(e&&typeof e.dispose==="function")e.dispose()}var a=d._behaviors;if(a)this._disposeComponents(a);a=d._components;if(a){this._disposeComponents(a);d._components=null}}if(!j){var f=c.dispose;if(f&&typeof f==="function")c.dispose();else{var e=c.control;if(e&&typeof e.dispose==="function")e.dispose()}var a=c._behaviors;if(a)this._disposeComponents(a);a=c._components;if(a){this._disposeComponents(a);c._components=null}}}},endCreateComponents:function(){var b=this._secondPassComponents;for(var a=0,d=b.length;a<d;a++){var c=b[a].component;Sys$Component$_setReferences(c,b[a].references);c.endUpdate()}this._secondPassComponents=[];this._creatingComponents=false},findComponent:function(b,a){return a?Sys.IContainer.isInstanceOfType(a)?a.findComponent(b):a[b]||null:Sys.Application._components[b]||null},getComponents:function(){var a=[],b=this._components;for(var c in b)a[a.length]=b[c];return a},initialize:function(){if(!this.get_isInitialized()&&!this._disposing){Sys._Application.callBaseMethod(this,"initialize");this._raiseInit();if(this.get_stateString){if(Sys.WebForms&&Sys.WebForms.PageRequestManager){this._beginRequestHandler=Function.createDelegate(this,this._onPageRequestManagerBeginRequest);Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(this._beginRequestHandler);this._endRequestHandler=Function.createDelegate(this,this._onPageRequestManagerEndRequest);Sys.WebForms.PageRequestManager.getInstance().add_endRequest(this._endRequestHandler)}var a=this.get_stateString();if(a!==this._currentEntry)this._navigate(a);else this._ensureHistory()}this.raiseLoad()}},notifyScriptLoaded:function(){},registerDisposableObject:function(b){if(!this._disposing){var a=this._disposableObjects,c=a.length;a[c]=b;b.__msdisposeindex=c}},raiseLoad:function(){var b=this.get_events().getHandler("load"),a=new Sys.ApplicationLoadEventArgs(Array.clone(this._createdComponents),!!this._loaded);this._loaded=true;if(b)b(this,a);if(window.pageLoad)window.pageLoad(this,a);this._createdComponents=[]},removeComponent:function(b){var a=b.get_id();if(a)delete this._components[a]},unregisterDisposableObject:function(a){if(!this._disposing){var e=a.__msdisposeindex;if(typeof e==="number"){var b=this._disposableObjects;delete b[e];delete a.__msdisposeindex;if(++this._deleteCount>1000){var c=[];for(var d=0,f=b.length;d<f;d++){a=b[d];if(typeof a!=="undefined"){a.__msdisposeindex=c.length;c.push(a)}}this._disposableObjects=c;this._deleteCount=0}}}},_addComponentToSecondPass:function(b,a){this._secondPassComponents[this._secondPassComponents.length]={component:b,references:a}},_disposeComponents:function(a){if(a)for(var b=a.length-1;b>=0;b--){var c=a[b];if(typeof c.dispose==="function")c.dispose()}},_domReady:function(){var a,g,f=this;function b(){f.initialize()}var c=function(){Sys.UI.DomEvent.removeHandler(window,"load",c);b()};Sys.UI.DomEvent.addHandler(window,"load",c);if(document.addEventListener)try{document.addEventListener("DOMContentLoaded",a=function(){document.removeEventListener("DOMContentLoaded",a,false);b()},false)}catch(h){}else if(document.attachEvent)if(window==window.top&&document.documentElement.doScroll){var e,d=document.createElement("div");a=function(){try{d.doScroll("left")}catch(c){e=window.setTimeout(a,0);return}d=null;b()};a()}else document.attachEvent("onreadystatechange",a=function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",a);b()}})},_raiseInit:function(){var a=this.get_events().getHandler("init");if(a){this.beginCreateComponents();a(this,Sys.EventArgs.Empty);this.endCreateComponents()}},_unloadHandler:function(){this.dispose()}};Sys._Application.registerClass("Sys._Application",Sys.Component,Sys.IContainer);Sys.Application=new Sys._Application;var $find=Sys.Application.findComponent;Sys.UI.Behavior=function(b){Sys.UI.Behavior.initializeBase(this);this._element=b;var a=b._behaviors;if(!a)b._behaviors=[this];else a[a.length]=this};Sys.UI.Behavior.prototype={_name:null,get_element:function(){return this._element},get_id:function(){var a=Sys.UI.Behavior.callBaseMethod(this,"get_id");if(a)return a;if(!this._element||!this._element.id)return "";return this._element.id+"$"+this.get_name()},get_name:function(){if(this._name)return this._name;var a=Object.getTypeName(this),b=a.lastIndexOf(".");if(b!==-1)a=a.substr(b+1);if(!this.get_isInitialized())this._name=a;return a},set_name:function(a){this._name=a},initialize:function(){Sys.UI.Behavior.callBaseMethod(this,"initialize");var a=this.get_name();if(a)this._element[a]=this},dispose:function(){Sys.UI.Behavior.callBaseMethod(this,"dispose");var a=this._element;if(a){var c=this.get_name();if(c)a[c]=null;var b=a._behaviors;Array.remove(b,this);if(b.length===0)a._behaviors=null;delete this._element}}};Sys.UI.Behavior.registerClass("Sys.UI.Behavior",Sys.Component);Sys.UI.Behavior.getBehaviorByName=function(b,c){var a=b[c];return a&&Sys.UI.Behavior.isInstanceOfType(a)?a:null};Sys.UI.Behavior.getBehaviors=function(a){if(!a._behaviors)return [];return Array.clone(a._behaviors)};Sys.UI.Behavior.getBehaviorsByType=function(d,e){var a=d._behaviors,c=[];if(a)for(var b=0,f=a.length;b<f;b++)if(e.isInstanceOfType(a[b]))c[c.length]=a[b];return c};Sys.UI.VisibilityMode=function(){throw Error.notImplemented()};Sys.UI.VisibilityMode.prototype={hide:0,collapse:1};Sys.UI.VisibilityMode.registerEnum("Sys.UI.VisibilityMode");Sys.UI.Control=function(a){Sys.UI.Control.initializeBase(this);this._element=a;a.control=this;var b=this.get_role();if(b)a.setAttribute("role",b)};Sys.UI.Control.prototype={_parent:null,_visibilityMode:Sys.UI.VisibilityMode.hide,get_element:function(){return this._element},get_id:function(){if(!this._element)return "";return this._element.id},set_id:function(){throw Error.invalidOperation(Sys.Res.cantSetId)},get_parent:function(){if(this._parent)return this._parent;if(!this._element)return null;var a=this._element.parentNode;while(a){if(a.control)return a.control;a=a.parentNode}return null},set_parent:function(a){this._parent=a},get_role:function(){return null},get_visibilityMode:function(){return Sys.UI.DomElement.getVisibilityMode(this._element)},set_visibilityMode:function(a){Sys.UI.DomElement.setVisibilityMode(this._element,a)},get_visible:function(){return Sys.UI.DomElement.getVisible(this._element)},set_visible:function(a){Sys.UI.DomElement.setVisible(this._element,a)},addCssClass:function(a){Sys.UI.DomElement.addCssClass(this._element,a)},dispose:function(){Sys.UI.Control.callBaseMethod(this,"dispose");if(this._element){this._element.control=null;delete this._element}if(this._parent)delete this._parent},onBubbleEvent:function(){return false},raiseBubbleEvent:function(a,b){this._raiseBubbleEvent(a,b)},_raiseBubbleEvent:function(b,c){var a=this.get_parent();while(a){if(a.onBubbleEvent(b,c))return;a=a.get_parent()}},removeCssClass:function(a){Sys.UI.DomElement.removeCssClass(this._element,a)},toggleCssClass:function(a){Sys.UI.DomElement.toggleCssClass(this._element,a)}};Sys.UI.Control.registerClass("Sys.UI.Control",Sys.Component);Sys.HistoryEventArgs=function(a){Sys.HistoryEventArgs.initializeBase(this);this._state=a};Sys.HistoryEventArgs.prototype={get_state:function(){return this._state}};Sys.HistoryEventArgs.registerClass("Sys.HistoryEventArgs",Sys.EventArgs);Sys.Application._appLoadHandler=null;Sys.Application._beginRequestHandler=null;Sys.Application._clientId=null;Sys.Application._currentEntry="";Sys.Application._endRequestHandler=null;Sys.Application._history=null;Sys.Application._enableHistory=false;Sys.Application._historyFrame=null;Sys.Application._historyInitialized=false;Sys.Application._historyPointIsNew=false;Sys.Application._ignoreTimer=false;Sys.Application._initialState=null;Sys.Application._state={};Sys.Application._timerCookie=0;Sys.Application._timerHandler=null;Sys.Application._uniqueId=null;Sys._Application.prototype.get_stateString=function(){var a=null;if(Sys.Browser.agent===Sys.Browser.Firefox){var c=window.location.href,b=c.indexOf("#");if(b!==-1)a=c.substring(b+1);else a="";return a}else a=window.location.hash;if(a.length>0&&a.charAt(0)==="#")a=a.substring(1);return a};Sys._Application.prototype.get_enableHistory=function(){return this._enableHistory};Sys._Application.prototype.set_enableHistory=function(a){this._enableHistory=a};Sys._Application.prototype.add_navigate=function(a){this.get_events().addHandler("navigate",a)};Sys._Application.prototype.remove_navigate=function(a){this.get_events().removeHandler("navigate",a)};Sys._Application.prototype.addHistoryPoint=function(c,f){this._ensureHistory();var b=this._state;for(var a in c){var d=c[a];if(d===null){if(typeof b[a]!=="undefined")delete b[a]}else b[a]=d}var e=this._serializeState(b);this._historyPointIsNew=true;this._setState(e,f);this._raiseNavigate()};Sys._Application.prototype.setServerId=function(a,b){this._clientId=a;this._uniqueId=b};Sys._Application.prototype.setServerState=function(a){this._ensureHistory();this._state.__s=a;this._updateHiddenField(a)};Sys._Application.prototype._deserializeState=function(a){var e={};a=a||"";var b=a.indexOf("&&");if(b!==-1&&b+2<a.length){e.__s=a.substr(b+2);a=a.substr(0,b)}var g=a.split("&");for(var f=0,j=g.length;f<j;f++){var d=g[f],c=d.indexOf("=");if(c!==-1&&c+1<d.length){var i=d.substr(0,c),h=d.substr(c+1);e[i]=decodeURIComponent(h)}}return e};Sys._Application.prototype._enableHistoryInScriptManager=function(){this._enableHistory=true};Sys._Application.prototype._ensureHistory=function(){if(!this._historyInitialized&&this._enableHistory){if(Sys.Browser.agent===Sys.Browser.InternetExplorer&&(!document.documentMode||document.documentMode<8)){this._historyFrame=document.getElementById("__historyFrame");this._ignoreIFrame=true}this._timerHandler=Function.createDelegate(this,this._onIdle);this._timerCookie=window.setTimeout(this._timerHandler,100);try{this._initialState=this._deserializeState(this.get_stateString())}catch(a){}this._historyInitialized=true}};Sys._Application.prototype._navigate=function(c){this._ensureHistory();var b=this._deserializeState(c);if(this._uniqueId){var d=this._state.__s||"",a=b.__s||"";if(a!==d){this._updateHiddenField(a);__doPostBack(this._uniqueId,a);this._state=b;return}}this._setState(c);this._state=b;this._raiseNavigate()};Sys._Application.prototype._onIdle=function(){delete this._timerCookie;var a=this.get_stateString();if(a!==this._currentEntry){if(!this._ignoreTimer){this._historyPointIsNew=false;this._navigate(a)}}else this._ignoreTimer=false;this._timerCookie=window.setTimeout(this._timerHandler,100)};Sys._Application.prototype._onIFrameLoad=function(a){if(!document.documentMode||document.documentMode<8){this._ensureHistory();if(!this._ignoreIFrame){this._historyPointIsNew=false;this._navigate(a)}this._ignoreIFrame=false}};Sys._Application.prototype._onPageRequestManagerBeginRequest=function(){this._ignoreTimer=true;this._originalTitle=document.title};Sys._Application.prototype._onPageRequestManagerEndRequest=function(g,f){var d=f.get_dataItems()[this._clientId],c=this._originalTitle;this._originalTitle=null;var b=document.getElementById("__EVENTTARGET");if(b&&b.value===this._uniqueId)b.value="";if(typeof d!=="undefined"){this.setServerState(d);this._historyPointIsNew=true}else this._ignoreTimer=false;var a=this._serializeState(this._state);if(a!==this._currentEntry){this._ignoreTimer=true;if(typeof c==="string"){if(Sys.Browser.agent!==Sys.Browser.InternetExplorer||Sys.Browser.version>7){var e=document.title;document.title=c;this._setState(a);document.title=e}else this._setState(a);this._raiseNavigate()}else{this._setState(a);this._raiseNavigate()}}};Sys._Application.prototype._raiseNavigate=function(){var d=this._historyPointIsNew,c=this.get_events().getHandler("navigate"),b={};for(var a in this._state)if(a!=="__s")b[a]=this._state[a];var e=new Sys.HistoryEventArgs(b);if(c)c(this,e);if(!d){var f;try{if(Sys.Browser.agent===Sys.Browser.Firefox&&window.location.hash&&(!window.frameElement||window.top.location.hash))Sys.Browser.version<3.5?window.history.go(0):(location.hash=this.get_stateString())}catch(g){}}};Sys._Application.prototype._serializeState=function(d){var b=[];for(var a in d){var e=d[a];if(a==="__s")var c=e;else b[b.length]=a+"="+encodeURIComponent(e)}return b.join("&")+(c?"&&"+c:"")};Sys._Application.prototype._setState=function(a,b){if(this._enableHistory){a=a||"";if(a!==this._currentEntry){if(window.theForm){var d=window.theForm.action,e=d.indexOf("#");window.theForm.action=(e!==-1?d.substring(0,e):d)+"#"+a}if(this._historyFrame&&this._historyPointIsNew){var f=document.createElement("div");f.appendChild(document.createTextNode(b||document.title));var g=f.innerHTML;this._ignoreIFrame=true;var c=this._historyFrame.contentWindow.document;c.open("javascript:'<html></html>'");c.write("<html><head><title>"+g+"</title><scri"+'pt type="text/javascript">parent.Sys.Application._onIFrameLoad('+Sys.Serialization.JavaScriptSerializer.serialize(a)+");</scri"+"pt></head><body></body></html>");c.close()}this._ignoreTimer=false;this._currentEntry=a;if(this._historyFrame||this._historyPointIsNew){var h=this.get_stateString();if(a!==h){window.location.hash=a;this._currentEntry=this.get_stateString();if(typeof b!=="undefined"&&b!==null)document.title=b}}this._historyPointIsNew=false}}};Sys._Application.prototype._updateHiddenField=function(b){if(this._clientId){var a=document.getElementById(this._clientId);if(a)a.value=b}};if(!window.XMLHttpRequest)window.XMLHttpRequest=function(){var b=["Msxml2.XMLHTTP.3.0","Msxml2.XMLHTTP"];for(var a=0,c=b.length;a<c;a++)try{return new ActiveXObject(b[a])}catch(d){}return null};Type.registerNamespace("Sys.Net");Sys.Net.WebRequestExecutor=function(){this._webRequest=null;this._resultObject=null};Sys.Net.WebRequestExecutor.prototype={get_webRequest:function(){return this._webRequest},_set_webRequest:function(a){this._webRequest=a},get_started:function(){throw Error.notImplemented()},get_responseAvailable:function(){throw Error.notImplemented()},get_timedOut:function(){throw Error.notImplemented()},get_aborted:function(){throw Error.notImplemented()},get_responseData:function(){throw Error.notImplemented()},get_statusCode:function(){throw Error.notImplemented()},get_statusText:function(){throw Error.notImplemented()},get_xml:function(){throw Error.notImplemented()},get_object:function(){if(!this._resultObject)this._resultObject=Sys.Serialization.JavaScriptSerializer.deserialize(this.get_responseData());return this._resultObject},executeRequest:function(){throw Error.notImplemented()},abort:function(){throw Error.notImplemented()},getResponseHeader:function(){throw Error.notImplemented()},getAllResponseHeaders:function(){throw Error.notImplemented()}};Sys.Net.WebRequestExecutor.registerClass("Sys.Net.WebRequestExecutor");Sys.Net.XMLDOM=function(d){if(!window.DOMParser){var c=["Msxml2.DOMDocument.3.0","Msxml2.DOMDocument"];for(var b=0,f=c.length;b<f;b++)try{var a=new ActiveXObject(c[b]);a.async=false;a.loadXML(d);a.setProperty("SelectionLanguage","XPath");return a}catch(g){}}else try{var e=new window.DOMParser;return e.parseFromString(d,"text/xml")}catch(g){}return null};Sys.Net.XMLHttpExecutor=function(){Sys.Net.XMLHttpExecutor.initializeBase(this);var a=this;this._xmlHttpRequest=null;this._webRequest=null;this._responseAvailable=false;this._timedOut=false;this._timer=null;this._aborted=false;this._started=false;this._onReadyStateChange=function(){if(a._xmlHttpRequest.readyState===4){try{if(typeof a._xmlHttpRequest.status==="undefined"||a._xmlHttpRequest.status===0)return}catch(b){return}a._clearTimer();a._responseAvailable=true;try{a._webRequest.completed(Sys.EventArgs.Empty)}finally{if(a._xmlHttpRequest!=null){a._xmlHttpRequest.onreadystatechange=Function.emptyMethod;a._xmlHttpRequest=null}}}};this._clearTimer=function(){if(a._timer!=null){window.clearTimeout(a._timer);a._timer=null}};this._onTimeout=function(){if(!a._responseAvailable){a._clearTimer();a._timedOut=true;a._xmlHttpRequest.onreadystatechange=Function.emptyMethod;a._xmlHttpRequest.abort();a._webRequest.completed(Sys.EventArgs.Empty);a._xmlHttpRequest=null}}};Sys.Net.XMLHttpExecutor.prototype={get_timedOut:function(){return this._timedOut},get_started:function(){return this._started},get_responseAvailable:function(){return this._responseAvailable},get_aborted:function(){return this._aborted},executeRequest:function(){this._webRequest=this.get_webRequest();var c=this._webRequest.get_body(),a=this._webRequest.get_headers();this._xmlHttpRequest=new XMLHttpRequest;this._xmlHttpRequest.onreadystatechange=this._onReadyStateChange;var e=this._webRequest.get_httpVerb();this._xmlHttpRequest.open(e,this._webRequest.getResolvedUrl(),true);this._xmlHttpRequest.setRequestHeader("X-Requested-With","XMLHttpRequest");if(a)for(var b in a){var f=a[b];if(typeof f!=="function")this._xmlHttpRequest.setRequestHeader(b,f)}if(e.toLowerCase()==="post"){if(a===null||!a["Content-Type"])this._xmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=utf-8");if(!c)c=""}var d=this._webRequest.get_timeout();if(d>0)this._timer=window.setTimeout(Function.createDelegate(this,this._onTimeout),d);this._xmlHttpRequest.send(c);this._started=true},getResponseHeader:function(b){var a;try{a=this._xmlHttpRequest.getResponseHeader(b)}catch(c){}if(!a)a="";return a},getAllResponseHeaders:function(){return this._xmlHttpRequest.getAllResponseHeaders()},get_responseData:function(){return this._xmlHttpRequest.responseText},get_statusCode:function(){var a=0;try{a=this._xmlHttpRequest.status}catch(b){}return a},get_statusText:function(){return this._xmlHttpRequest.statusText},get_xml:function(){var a=this._xmlHttpRequest.responseXML;if(!a||!a.documentElement){a=Sys.Net.XMLDOM(this._xmlHttpRequest.responseText);if(!a||!a.documentElement)return null}else if(navigator.userAgent.indexOf("MSIE")!==-1&&typeof a.setProperty!="undefined")a.setProperty("SelectionLanguage","XPath");if(a.documentElement.namespaceURI==="http://www.mozilla.org/newlayout/xml/parsererror.xml"&&a.documentElement.tagName==="parsererror")return null;if(a.documentElement.firstChild&&a.documentElement.firstChild.tagName==="parsererror")return null;return a},abort:function(){if(this._aborted||this._responseAvailable||this._timedOut)return;this._aborted=true;this._clearTimer();if(this._xmlHttpRequest&&!this._responseAvailable){this._xmlHttpRequest.onreadystatechange=Function.emptyMethod;this._xmlHttpRequest.abort();this._xmlHttpRequest=null;this._webRequest.completed(Sys.EventArgs.Empty)}}};Sys.Net.XMLHttpExecutor.registerClass("Sys.Net.XMLHttpExecutor",Sys.Net.WebRequestExecutor);Sys.Net._WebRequestManager=function(){this._defaultTimeout=0;this._defaultExecutorType="Sys.Net.XMLHttpExecutor"};Sys.Net._WebRequestManager.prototype={add_invokingRequest:function(a){this._get_eventHandlerList().addHandler("invokingRequest",a)},remove_invokingRequest:function(a){this._get_eventHandlerList().removeHandler("invokingRequest",a)},add_completedRequest:function(a){this._get_eventHandlerList().addHandler("completedRequest",a)},remove_completedRequest:function(a){this._get_eventHandlerList().removeHandler("completedRequest",a)},_get_eventHandlerList:function(){if(!this._events)this._events=new Sys.EventHandlerList;return this._events},get_defaultTimeout:function(){return this._defaultTimeout},set_defaultTimeout:function(a){this._defaultTimeout=a},get_defaultExecutorType:function(){return this._defaultExecutorType},set_defaultExecutorType:function(a){this._defaultExecutorType=a},executeRequest:function(webRequest){var executor=webRequest.get_executor();if(!executor){var failed=false;try{var executorType=eval(this._defaultExecutorType);executor=new executorType}catch(a){failed=true}webRequest.set_executor(executor)}if(executor.get_aborted())return;var evArgs=new Sys.Net.NetworkRequestEventArgs(webRequest),handler=this._get_eventHandlerList().getHandler("invokingRequest");if(handler)handler(this,evArgs);if(!evArgs.get_cancel())executor.executeRequest()}};Sys.Net._WebRequestManager.registerClass("Sys.Net._WebRequestManager");Sys.Net.WebRequestManager=new Sys.Net._WebRequestManager;Sys.Net.NetworkRequestEventArgs=function(a){Sys.Net.NetworkRequestEventArgs.initializeBase(this);this._webRequest=a};Sys.Net.NetworkRequestEventArgs.prototype={get_webRequest:function(){return this._webRequest}};Sys.Net.NetworkRequestEventArgs.registerClass("Sys.Net.NetworkRequestEventArgs",Sys.CancelEventArgs);Sys.Net.WebRequest=function(){this._url="";this._headers={};this._body=null;this._userContext=null;this._httpVerb=null;this._executor=null;this._invokeCalled=false;this._timeout=0};Sys.Net.WebRequest.prototype={add_completed:function(a){this._get_eventHandlerList().addHandler("completed",a)},remove_completed:function(a){this._get_eventHandlerList().removeHandler("completed",a)},completed:function(b){var a=Sys.Net.WebRequestManager._get_eventHandlerList().getHandler("completedRequest");if(a)a(this._executor,b);a=this._get_eventHandlerList().getHandler("completed");if(a)a(this._executor,b)},_get_eventHandlerList:function(){if(!this._events)this._events=new Sys.EventHandlerList;return this._events},get_url:function(){return this._url},set_url:function(a){this._url=a},get_headers:function(){return this._headers},get_httpVerb:function(){if(this._httpVerb===null){if(this._body===null)return "GET";return "POST"}return this._httpVerb},set_httpVerb:function(a){this._httpVerb=a},get_body:function(){return this._body},set_body:function(a){this._body=a},get_userContext:function(){return this._userContext},set_userContext:function(a){this._userContext=a},get_executor:function(){return this._executor},set_executor:function(a){this._executor=a;this._executor._set_webRequest(this)},get_timeout:function(){if(this._timeout===0)return Sys.Net.WebRequestManager.get_defaultTimeout();return this._timeout},set_timeout:function(a){this._timeout=a},getResolvedUrl:function(){return Sys.Net.WebRequest._resolveUrl(this._url)},invoke:function(){Sys.Net.WebRequestManager.executeRequest(this);this._invokeCalled=true}};Sys.Net.WebRequest._resolveUrl=function(b,a){if(b&&b.indexOf("://")!==-1)return b;if(!a||a.length===0){var d=document.getElementsByTagName("base")[0];if(d&&d.href&&d.href.length>0)a=d.href;else a=document.URL}var c=a.indexOf("?");if(c!==-1)a=a.substr(0,c);c=a.indexOf("#");if(c!==-1)a=a.substr(0,c);a=a.substr(0,a.lastIndexOf("/")+1);if(!b||b.length===0)return a;if(b.charAt(0)==="/"){var e=a.indexOf("://"),g=a.indexOf("/",e+3);return a.substr(0,g)+b}else{var f=a.lastIndexOf("/");return a.substr(0,f+1)+b}};Sys.Net.WebRequest._createQueryString=function(c,b,f){b=b||encodeURIComponent;var h=0,e,g,d,a=new Sys.StringBuilder;if(c)for(d in c){e=c[d];if(typeof e==="function")continue;g=Sys.Serialization.JavaScriptSerializer.serialize(e);if(h++)a.append("&");a.append(d);a.append("=");a.append(b(g))}if(f){if(h)a.append("&");a.append(f)}return a.toString()};Sys.Net.WebRequest._createUrl=function(a,b,c){if(!b&&!c)return a;var d=Sys.Net.WebRequest._createQueryString(b,null,c);return d.length?a+(a&&a.indexOf("?")>=0?"&":"?")+d:a};Sys.Net.WebRequest.registerClass("Sys.Net.WebRequest");Sys._ScriptLoaderTask=function(b,a){this._scriptElement=b;this._completedCallback=a};Sys._ScriptLoaderTask.prototype={get_scriptElement:function(){return this._scriptElement},dispose:function(){if(this._disposed)return;this._disposed=true;this._removeScriptElementHandlers();Sys._ScriptLoaderTask._clearScript(this._scriptElement);this._scriptElement=null},execute:function(){if(this._ensureReadyStateLoaded())this._executeInternal()},_executeInternal:function(){this._addScriptElementHandlers();document.getElementsByTagName("head")[0].appendChild(this._scriptElement)},_ensureReadyStateLoaded:function(){if(this._useReadyState()&&this._scriptElement.readyState!=="loaded"&&this._scriptElement.readyState!=="complete"){this._scriptDownloadDelegate=Function.createDelegate(this,this._executeInternal);$addHandler(this._scriptElement,"readystatechange",this._scriptDownloadDelegate);return false}return true},_addScriptElementHandlers:function(){if(this._scriptDownloadDelegate){$removeHandler(this._scriptElement,"readystatechange",this._scriptDownloadDelegate);this._scriptDownloadDelegate=null}this._scriptLoadDelegate=Function.createDelegate(this,this._scriptLoadHandler);if(this._useReadyState())$addHandler(this._scriptElement,"readystatechange",this._scriptLoadDelegate);else $addHandler(this._scriptElement,"load",this._scriptLoadDelegate);if(this._scriptElement.addEventListener){this._scriptErrorDelegate=Function.createDelegate(this,this._scriptErrorHandler);this._scriptElement.addEventListener("error",this._scriptErrorDelegate,false)}},_removeScriptElementHandlers:function(){if(this._scriptLoadDelegate){var a=this.get_scriptElement();if(this._scriptDownloadDelegate){$removeHandler(this._scriptElement,"readystatechange",this._scriptDownloadDelegate);this._scriptDownloadDelegate=null}if(this._useReadyState()&&this._scriptLoadDelegate)$removeHandler(a,"readystatechange",this._scriptLoadDelegate);else $removeHandler(a,"load",this._scriptLoadDelegate);if(this._scriptErrorDelegate){this._scriptElement.removeEventListener("error",this._scriptErrorDelegate,false);this._scriptErrorDelegate=null}this._scriptLoadDelegate=null}},_scriptErrorHandler:function(){if(this._disposed)return;this._completedCallback(this.get_scriptElement(),false)},_scriptLoadHandler:function(){if(this._disposed)return;var a=this.get_scriptElement();if(this._useReadyState()&&a.readyState!=="complete")return;this._completedCallback(a,true)},_useReadyState:function(){return Sys.Browser.agent===Sys.Browser.InternetExplorer&&(Sys.Browser.version<9||(document.documentMode||0)<9)}};Sys._ScriptLoaderTask.registerClass("Sys._ScriptLoaderTask",null,Sys.IDisposable);Sys._ScriptLoaderTask._clearScript=function(a){if(!Sys.Debug.isDebug&&a.parentNode)a.parentNode.removeChild(a)};Type.registerNamespace("Sys.Net");Sys.Net.WebServiceProxy=function(){};Sys.Net.WebServiceProxy.prototype={get_timeout:function(){return this._timeout||0},set_timeout:function(a){if(a<0)throw Error.argumentOutOfRange("value",a,Sys.Res.invalidTimeout);this._timeout=a},get_defaultUserContext:function(){return typeof this._userContext==="undefined"?null:this._userContext},set_defaultUserContext:function(a){this._userContext=a},get_defaultSucceededCallback:function(){return this._succeeded||null},set_defaultSucceededCallback:function(a){this._succeeded=a},get_defaultFailedCallback:function(){return this._failed||null},set_defaultFailedCallback:function(a){this._failed=a},get_enableJsonp:function(){return !!this._jsonp},set_enableJsonp:function(a){this._jsonp=a},get_path:function(){return this._path||null},set_path:function(a){this._path=a},get_jsonpCallbackParameter:function(){return this._callbackParameter||"callback"},set_jsonpCallbackParameter:function(a){this._callbackParameter=a},_invoke:function(d,e,g,f,c,b,a){c=c||this.get_defaultSucceededCallback();b=b||this.get_defaultFailedCallback();if(a===null||typeof a==="undefined")a=this.get_defaultUserContext();return Sys.Net.WebServiceProxy.invoke(d,e,g,f,c,b,a,this.get_timeout(),this.get_enableJsonp(),this.get_jsonpCallbackParameter())}};Sys.Net.WebServiceProxy.registerClass("Sys.Net.WebServiceProxy");Sys.Net.WebServiceProxy.invoke=function(q,a,m,l,j,b,g,e,w,p){var i=w!==false?Sys.Net.WebServiceProxy._xdomain.exec(q):null,c,n=i&&i.length===3&&(i[1]!==location.protocol||i[2]!==location.host);m=n||m;if(n){p=p||"callback";c="_jsonp"+Sys._jsonp++}if(!l)l={};var r=l;if(!m||!r)r={};var s,h,f=null,k,o=null,u=Sys.Net.WebRequest._createUrl(a?q+"/"+encodeURIComponent(a):q,r,n?p+"=Sys."+c:null);if(n){s=document.createElement("script");s.src=u;k=new Sys._ScriptLoaderTask(s,function(d,b){if(!b||c)t({Message:String.format(Sys.Res.webServiceFailedNoMsg,a)},-1)});function v(){if(f===null)return;f=null;h=new Sys.Net.WebServiceError(true,String.format(Sys.Res.webServiceTimedOut,a));k.dispose();delete Sys[c];if(b)b(h,g,a)}function t(d,e){if(f!==null){window.clearTimeout(f);f=null}k.dispose();delete Sys[c];c=null;if(typeof e!=="undefined"&&e!==200){if(b){h=new Sys.Net.WebServiceError(false,d.Message||String.format(Sys.Res.webServiceFailedNoMsg,a),d.StackTrace||null,d.ExceptionType||null,d);h._statusCode=e;b(h,g,a)}}else if(j)j(d,g,a)}Sys[c]=t;e=e||Sys.Net.WebRequestManager.get_defaultTimeout();if(e>0)f=window.setTimeout(v,e);k.execute();return null}var d=new Sys.Net.WebRequest;d.set_url(u);d.get_headers()["Content-Type"]="application/json; charset=utf-8";if(!m){o=Sys.Serialization.JavaScriptSerializer.serialize(l);if(o==="{}")o=""}d.set_body(o);d.add_completed(x);if(e&&e>0)d.set_timeout(e);d.invoke();function x(d){if(d.get_responseAvailable()){var f=d.get_statusCode(),c=null;try{var e=d.getResponseHeader("Content-Type");if(e.startsWith("application/json"))c=d.get_object();else if(e.startsWith("text/xml"))c=d.get_xml();else c=d.get_responseData()}catch(m){}var k=d.getResponseHeader("jsonerror"),h=k==="true";if(h){if(c)c=new Sys.Net.WebServiceError(false,c.Message,c.StackTrace,c.ExceptionType,c)}else if(e.startsWith("application/json"))c=!c||typeof c.d==="undefined"?c:c.d;if(f<200||f>=300||h){if(b){if(!c||!h)c=new Sys.Net.WebServiceError(false,String.format(Sys.Res.webServiceFailedNoMsg,a));c._statusCode=f;b(c,g,a)}}else if(j)j(c,g,a)}else{var i;if(d.get_timedOut())i=String.format(Sys.Res.webServiceTimedOut,a);else i=String.format(Sys.Res.webServiceFailedNoMsg,a);if(b)b(new Sys.Net.WebServiceError(d.get_timedOut(),i,"",""),g,a)}}return d};Sys.Net.WebServiceProxy._generateTypedConstructor=function(a){return function(b){if(b)for(var c in b)this[c]=b[c];this.__type=a}};Sys._jsonp=0;Sys.Net.WebServiceProxy._xdomain=/^\s*([a-zA-Z0-9\+\-\.]+\:)\/\/([^?#\/]+)/;Sys.Net.WebServiceError=function(d,e,c,a,b){this._timedOut=d;this._message=e;this._stackTrace=c;this._exceptionType=a;this._errorObject=b;this._statusCode=-1};Sys.Net.WebServiceError.prototype={get_timedOut:function(){return this._timedOut},get_statusCode:function(){return this._statusCode},get_message:function(){return this._message},get_stackTrace:function(){return this._stackTrace||""},get_exceptionType:function(){return this._exceptionType||""},get_errorObject:function(){return this._errorObject||null}};Sys.Net.WebServiceError.registerClass("Sys.Net.WebServiceError");�"//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjaxApplicationServices.js
Type._registerScript("MicrosoftAjaxApplicationServices.js",["MicrosoftAjaxWebServices.js"]);Type.registerNamespace("Sys.Services");Sys.Services._ProfileService=function(){Sys.Services._ProfileService.initializeBase(this);this.properties={}};Sys.Services._ProfileService.DefaultWebServicePath="";Sys.Services._ProfileService.prototype={_defaultLoadCompletedCallback:null,_defaultSaveCompletedCallback:null,_path:"",_timeout:0,get_defaultLoadCompletedCallback:function(){return this._defaultLoadCompletedCallback},set_defaultLoadCompletedCallback:function(a){this._defaultLoadCompletedCallback=a},get_defaultSaveCompletedCallback:function(){return this._defaultSaveCompletedCallback},set_defaultSaveCompletedCallback:function(a){this._defaultSaveCompletedCallback=a},get_path:function(){return this._path||""},load:function(c,d,e,f){var b,a;if(!c){a="GetAllPropertiesForCurrentUser";b={authenticatedUserOnly:false}}else{a="GetPropertiesForCurrentUser";b={properties:this._clonePropertyNames(c),authenticatedUserOnly:false}}this._invoke(this._get_path(),a,false,b,Function.createDelegate(this,this._onLoadComplete),Function.createDelegate(this,this._onLoadFailed),[d,e,f])},save:function(d,b,c,e){var a=this._flattenProperties(d,this.properties);this._invoke(this._get_path(),"SetPropertiesForCurrentUser",false,{values:a.value,authenticatedUserOnly:false},Function.createDelegate(this,this._onSaveComplete),Function.createDelegate(this,this._onSaveFailed),[b,c,e,a.count])},_clonePropertyNames:function(e){var c=[],d={};for(var b=0;b<e.length;b++){var a=e[b];if(!d[a]){Array.add(c,a);d[a]=true}}return c},_flattenProperties:function(a,i,j){var b={},e,d,g=0;if(a&&a.length===0)return {value:b,count:0};for(var c in i){e=i[c];d=j?j+"."+c:c;if(Sys.Services.ProfileGroup.isInstanceOfType(e)){var k=this._flattenProperties(a,e,d),h=k.value;g+=k.count;for(var f in h){var l=h[f];b[f]=l}}else if(!a||Array.indexOf(a,d)!==-1){b[d]=e;g++}}return {value:b,count:g}},_get_path:function(){var a=this.get_path();if(!a.length)a=Sys.Services._ProfileService.DefaultWebServicePath;if(!a||!a.length)throw Error.invalidOperation(Sys.Res.servicePathNotSet);return a},_onLoadComplete:function(a,e,g){if(typeof a!=="object")throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,g,"Object"));var c=this._unflattenProperties(a);for(var b in c)this.properties[b]=c[b];var d=e[0]||this.get_defaultLoadCompletedCallback()||this.get_defaultSucceededCallback();if(d){var f=e[2]||this.get_defaultUserContext();d(a.length,f,"Sys.Services.ProfileService.load")}},_onLoadFailed:function(d,b){var a=b[1]||this.get_defaultFailedCallback();if(a){var c=b[2]||this.get_defaultUserContext();a(d,c,"Sys.Services.ProfileService.load")}},_onSaveComplete:function(a,b,f){var c=b[3];if(a!==null)if(a instanceof Array)c-=a.length;else if(typeof a==="number")c=a;else throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,f,"Array"));var d=b[0]||this.get_defaultSaveCompletedCallback()||this.get_defaultSucceededCallback();if(d){var e=b[2]||this.get_defaultUserContext();d(c,e,"Sys.Services.ProfileService.save")}},_onSaveFailed:function(d,b){var a=b[1]||this.get_defaultFailedCallback();if(a){var c=b[2]||this.get_defaultUserContext();a(d,c,"Sys.Services.ProfileService.save")}},_unflattenProperties:function(e){var c={},d,f,h=0;for(var a in e){h++;f=e[a];d=a.indexOf(".");if(d!==-1){var g=a.substr(0,d);a=a.substr(d+1);var b=c[g];if(!b||!Sys.Services.ProfileGroup.isInstanceOfType(b)){b=new Sys.Services.ProfileGroup;c[g]=b}b[a]=f}else c[a]=f}e.length=h;return c}};Sys.Services._ProfileService.registerClass("Sys.Services._ProfileService",Sys.Net.WebServiceProxy);Sys.Services.ProfileService=new Sys.Services._ProfileService;Sys.Services.ProfileGroup=function(a){if(a)for(var b in a)this[b]=a[b]};Sys.Services.ProfileGroup.registerClass("Sys.Services.ProfileGroup");Sys.Services._AuthenticationService=function(){Sys.Services._AuthenticationService.initializeBase(this)};Sys.Services._AuthenticationService.DefaultWebServicePath="";Sys.Services._AuthenticationService.prototype={_defaultLoginCompletedCallback:null,_defaultLogoutCompletedCallback:null,_path:"",_timeout:0,_authenticated:false,get_defaultLoginCompletedCallback:function(){return this._defaultLoginCompletedCallback},set_defaultLoginCompletedCallback:function(a){this._defaultLoginCompletedCallback=a},get_defaultLogoutCompletedCallback:function(){return this._defaultLogoutCompletedCallback},set_defaultLogoutCompletedCallback:function(a){this._defaultLogoutCompletedCallback=a},get_isLoggedIn:function(){return this._authenticated},get_path:function(){return this._path||""},login:function(c,b,a,h,f,d,e,g){this._invoke(this._get_path(),"Login",false,{userName:c,password:b,createPersistentCookie:a},Function.createDelegate(this,this._onLoginComplete),Function.createDelegate(this,this._onLoginFailed),[c,b,a,h,f,d,e,g])},logout:function(c,a,b,d){this._invoke(this._get_path(),"Logout",false,{},Function.createDelegate(this,this._onLogoutComplete),Function.createDelegate(this,this._onLogoutFailed),[c,a,b,d])},_get_path:function(){var a=this.get_path();if(!a.length)a=Sys.Services._AuthenticationService.DefaultWebServicePath;if(!a||!a.length)throw Error.invalidOperation(Sys.Res.servicePathNotSet);return a},_onLoginComplete:function(e,c,f){if(typeof e!=="boolean")throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,f,"Boolean"));var b=c[4],d=c[7]||this.get_defaultUserContext(),a=c[5]||this.get_defaultLoginCompletedCallback()||this.get_defaultSucceededCallback();if(e){this._authenticated=true;if(a)a(true,d,"Sys.Services.AuthenticationService.login");if(typeof b!=="undefined"&&b!==null)window.location.href=b}else if(a)a(false,d,"Sys.Services.AuthenticationService.login")},_onLoginFailed:function(d,b){var a=b[6]||this.get_defaultFailedCallback();if(a){var c=b[7]||this.get_defaultUserContext();a(d,c,"Sys.Services.AuthenticationService.login")}},_onLogoutComplete:function(f,a,e){if(f!==null)throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,e,"null"));var b=a[0],d=a[3]||this.get_defaultUserContext(),c=a[1]||this.get_defaultLogoutCompletedCallback()||this.get_defaultSucceededCallback();this._authenticated=false;if(c)c(null,d,"Sys.Services.AuthenticationService.logout");if(!b)window.location.reload();else window.location.href=b},_onLogoutFailed:function(c,b){var a=b[2]||this.get_defaultFailedCallback();if(a)a(c,b[3],"Sys.Services.AuthenticationService.logout")},_setAuthenticated:function(a){this._authenticated=a}};Sys.Services._AuthenticationService.registerClass("Sys.Services._AuthenticationService",Sys.Net.WebServiceProxy);Sys.Services.AuthenticationService=new Sys.Services._AuthenticationService;Sys.Services._RoleService=function(){Sys.Services._RoleService.initializeBase(this);this._roles=[]};Sys.Services._RoleService.DefaultWebServicePath="";Sys.Services._RoleService.prototype={_defaultLoadCompletedCallback:null,_rolesIndex:null,_timeout:0,_path:"",get_defaultLoadCompletedCallback:function(){return this._defaultLoadCompletedCallback},set_defaultLoadCompletedCallback:function(a){this._defaultLoadCompletedCallback=a},get_path:function(){return this._path||""},get_roles:function(){return Array.clone(this._roles)},isUserInRole:function(a){var b=this._get_rolesIndex()[a.trim().toLowerCase()];return !!b},load:function(a,b,c){Sys.Net.WebServiceProxy.invoke(this._get_path(),"GetRolesForCurrentUser",false,{},Function.createDelegate(this,this._onLoadComplete),Function.createDelegate(this,this._onLoadFailed),[a,b,c],this.get_timeout())},_get_path:function(){var a=this.get_path();if(!a||!a.length)a=Sys.Services._RoleService.DefaultWebServicePath;if(!a||!a.length)throw Error.invalidOperation(Sys.Res.servicePathNotSet);return a},_get_rolesIndex:function(){if(!this._rolesIndex){var b={};for(var a=0;a<this._roles.length;a++)b[this._roles[a].toLowerCase()]=true;this._rolesIndex=b}return this._rolesIndex},_onLoadComplete:function(a,c,f){if(a&&!(a instanceof Array))throw Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,f,"Array"));this._roles=a;this._rolesIndex=null;var b=c[0]||this.get_defaultLoadCompletedCallback()||this.get_defaultSucceededCallback();if(b){var e=c[2]||this.get_defaultUserContext(),d=Array.clone(a);b(d,e,"Sys.Services.RoleService.load")}},_onLoadFailed:function(d,b){var a=b[1]||this.get_defaultFailedCallback();if(a){var c=b[2]||this.get_defaultUserContext();a(d,c,"Sys.Services.RoleService.load")}}};Sys.Services._RoleService.registerClass("Sys.Services._RoleService",Sys.Net.WebServiceProxy);Sys.Services.RoleService=new Sys.Services._RoleService;E^//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjaxComponentModel.js
Type._registerScript("MicrosoftAjaxComponentModel.js",["MicrosoftAjaxCore.js"]);Type.registerNamespace("Sys.UI");Sys.CommandEventArgs=function(c,a,b){Sys.CommandEventArgs.initializeBase(this);this._commandName=c;this._commandArgument=a;this._commandSource=b};Sys.CommandEventArgs.prototype={_commandName:null,_commandArgument:null,_commandSource:null,get_commandName:function(){return this._commandName},get_commandArgument:function(){return this._commandArgument},get_commandSource:function(){return this._commandSource}};Sys.CommandEventArgs.registerClass("Sys.CommandEventArgs",Sys.CancelEventArgs);Sys.INotifyDisposing=function(){};Sys.INotifyDisposing.prototype={};Sys.INotifyDisposing.registerInterface("Sys.INotifyDisposing");Sys.Component=function(){if(Sys.Application)Sys.Application.registerDisposableObject(this)};Sys.Component.prototype={_id:null,_initialized:false,_updating:false,get_events:function(){if(!this._events)this._events=new Sys.EventHandlerList;return this._events},get_id:function(){return this._id},set_id:function(a){this._id=a},get_isInitialized:function(){return this._initialized},get_isUpdating:function(){return this._updating},add_disposing:function(a){this.get_events().addHandler("disposing",a)},remove_disposing:function(a){this.get_events().removeHandler("disposing",a)},add_propertyChanged:function(a){this.get_events().addHandler("propertyChanged",a)},remove_propertyChanged:function(a){this.get_events().removeHandler("propertyChanged",a)},beginUpdate:function(){this._updating=true},dispose:function(){if(this._events){var a=this._events.getHandler("disposing");if(a)a(this,Sys.EventArgs.Empty)}delete this._events;Sys.Application.unregisterDisposableObject(this);Sys.Application.removeComponent(this)},endUpdate:function(){this._updating=false;if(!this._initialized)this.initialize();this.updated()},initialize:function(){this._initialized=true},raisePropertyChanged:function(b){if(!this._events)return;var a=this._events.getHandler("propertyChanged");if(a)a(this,new Sys.PropertyChangedEventArgs(b))},updated:function(){}};Sys.Component.registerClass("Sys.Component",null,Sys.IDisposable,Sys.INotifyPropertyChange,Sys.INotifyDisposing);function Sys$Component$_setProperties(a,i){var d,j=Object.getType(a),e=j===Object||j===Sys.UI.DomElement,h=Sys.Component.isInstanceOfType(a)&&!a.get_isUpdating();if(h)a.beginUpdate();for(var c in i){var b=i[c],f=e?null:a["get_"+c];if(e||typeof f!=="function"){var k=a[c];if(!b||typeof b!=="object"||e&&!k)a[c]=b;else Sys$Component$_setProperties(k,b)}else{var l=a["set_"+c];if(typeof l==="function")l.apply(a,[b]);else if(b instanceof Array){d=f.apply(a);for(var g=0,m=d.length,n=b.length;g<n;g++,m++)d[m]=b[g]}else if(typeof b==="object"&&Object.getType(b)===Object){d=f.apply(a);Sys$Component$_setProperties(d,b)}}}if(h)a.endUpdate()}function Sys$Component$_setReferences(c,b){for(var a in b){var e=c["set_"+a],d=$find(b[a]);e.apply(c,[d])}}var $create=Sys.Component.create=function(h,f,d,c,g){var a=g?new h(g):new h,b=Sys.Application,i=b.get_isCreatingComponents();a.beginUpdate();if(f)Sys$Component$_setProperties(a,f);if(d)for(var e in d)a["add_"+e](d[e]);if(a.get_id())b.addComponent(a);if(i){b._createdComponents[b._createdComponents.length]=a;if(c)b._addComponentToSecondPass(a,c);else a.endUpdate()}else{if(c)Sys$Component$_setReferences(a,c);a.endUpdate()}return a};Sys.UI.MouseButton=function(){throw Error.notImplemented()};Sys.UI.MouseButton.prototype={leftButton:0,middleButton:1,rightButton:2};Sys.UI.MouseButton.registerEnum("Sys.UI.MouseButton");Sys.UI.Key=function(){throw Error.notImplemented()};Sys.UI.Key.prototype={backspace:8,tab:9,enter:13,esc:27,space:32,pageUp:33,pageDown:34,end:35,home:36,left:37,up:38,right:39,down:40,del:127};Sys.UI.Key.registerEnum("Sys.UI.Key");Sys.UI.Point=function(a,b){this.rawX=a;this.rawY=b;this.x=Math.round(a);this.y=Math.round(b)};Sys.UI.Point.registerClass("Sys.UI.Point");Sys.UI.Bounds=function(c,d,b,a){this.x=c;this.y=d;this.height=a;this.width=b};Sys.UI.Bounds.registerClass("Sys.UI.Bounds");Sys.UI.DomEvent=function(e){var a=e,b=this.type=a.type.toLowerCase();this.rawEvent=a;this.altKey=a.altKey;if(typeof a.button!=="undefined")this.button=typeof a.which!=="undefined"?a.button:a.button===4?Sys.UI.MouseButton.middleButton:a.button===2?Sys.UI.MouseButton.rightButton:Sys.UI.MouseButton.leftButton;if(b==="keypress")this.charCode=a.charCode||a.keyCode;else if(a.keyCode&&a.keyCode===46)this.keyCode=127;else this.keyCode=a.keyCode;this.clientX=a.clientX;this.clientY=a.clientY;this.ctrlKey=a.ctrlKey;this.target=a.target?a.target:a.srcElement;if(!b.startsWith("key"))if(typeof a.offsetX!=="undefined"&&typeof a.offsetY!=="undefined"){this.offsetX=a.offsetX;this.offsetY=a.offsetY}else if(this.target&&this.target.nodeType!==3&&typeof a.clientX==="number"){var c=Sys.UI.DomElement.getLocation(this.target),d=Sys.UI.DomElement._getWindow(this.target);this.offsetX=(d.pageXOffset||0)+a.clientX-c.x;this.offsetY=(d.pageYOffset||0)+a.clientY-c.y}this.screenX=a.screenX;this.screenY=a.screenY;this.shiftKey=a.shiftKey};Sys.UI.DomEvent.prototype={preventDefault:function(){if(this.rawEvent.preventDefault)this.rawEvent.preventDefault();else if(window.event)this.rawEvent.returnValue=false},stopPropagation:function(){if(this.rawEvent.stopPropagation)this.rawEvent.stopPropagation();else if(window.event)this.rawEvent.cancelBubble=true}};Sys.UI.DomEvent.registerClass("Sys.UI.DomEvent");var $addHandler=Sys.UI.DomEvent.addHandler=function(a,d,e,g){if(!a._events)a._events={};var c=a._events[d];if(!c)a._events[d]=c=[];var b;if(a.addEventListener){b=function(b){return e.call(a,new Sys.UI.DomEvent(b))};a.addEventListener(d,b,false)}else if(a.attachEvent){b=function(){var b={};try{b=Sys.UI.DomElement._getWindow(a).event}catch(c){}return e.call(a,new Sys.UI.DomEvent(b))};a.attachEvent("on"+d,b)}c[c.length]={handler:e,browserHandler:b,autoRemove:g};if(g){var f=a.dispose;if(f!==Sys.UI.DomEvent._disposeHandlers){a.dispose=Sys.UI.DomEvent._disposeHandlers;if(typeof f!=="undefined")a._chainDispose=f}}},$addHandlers=Sys.UI.DomEvent.addHandlers=function(f,d,c,e){for(var b in d){var a=d[b];if(c)a=Function.createDelegate(c,a);$addHandler(f,b,a,e||false)}},$clearHandlers=Sys.UI.DomEvent.clearHandlers=function(a){Sys.UI.DomEvent._clearHandlers(a,false)};Sys.UI.DomEvent._clearHandlers=function(a,g){if(a._events){var e=a._events;for(var b in e){var d=e[b];for(var c=d.length-1;c>=0;c--){var f=d[c];if(!g||f.autoRemove)$removeHandler(a,b,f.handler)}}a._events=null}};Sys.UI.DomEvent._disposeHandlers=function(){Sys.UI.DomEvent._clearHandlers(this,true);var b=this._chainDispose,a=typeof b;if(a!=="undefined"){this.dispose=b;this._chainDispose=null;if(a==="function")this.dispose()}};var $removeHandler=Sys.UI.DomEvent.removeHandler=function(b,a,c){Sys.UI.DomEvent._removeHandler(b,a,c)};Sys.UI.DomEvent._removeHandler=function(a,e,f){var d=null,c=a._events[e];for(var b=0,g=c.length;b<g;b++)if(c[b].handler===f){d=c[b].browserHandler;break}if(a.removeEventListener)a.removeEventListener(e,d,false);else if(a.detachEvent)a.detachEvent("on"+e,d);c.splice(b,1)};Sys.UI.DomElement=function(){};Sys.UI.DomElement.registerClass("Sys.UI.DomElement");Sys.UI.DomElement.addCssClass=function(a,b){if(!Sys.UI.DomElement.containsCssClass(a,b))if(a.className==="")a.className=b;else a.className+=" "+b};Sys.UI.DomElement.containsCssClass=function(b,a){return Array.contains(b.className.split(" "),a)};Sys.UI.DomElement.getBounds=function(a){var b=Sys.UI.DomElement.getLocation(a);return new Sys.UI.Bounds(b.x,b.y,a.offsetWidth||0,a.offsetHeight||0)};var $get=Sys.UI.DomElement.getElementById=function(f,e){if(!e)return document.getElementById(f);if(e.getElementById)return e.getElementById(f);var c=[],d=e.childNodes;for(var b=0;b<d.length;b++){var a=d[b];if(a.nodeType==1)c[c.length]=a}while(c.length){a=c.shift();if(a.id==f)return a;d=a.childNodes;for(b=0;b<d.length;b++){a=d[b];if(a.nodeType==1)c[c.length]=a}}return null};if(document.documentElement.getBoundingClientRect)Sys.UI.DomElement.getLocation=function(a){if(a.self||a.nodeType===9||a===document.documentElement||a.parentNode===a.ownerDocument.documentElement)return new Sys.UI.Point(0,0);var f=a.getBoundingClientRect();if(!f)return new Sys.UI.Point(0,0);var e=a.ownerDocument.documentElement,h=a.ownerDocument.body,l,c=Math.round(f.left)+(e.scrollLeft||h.scrollLeft),d=Math.round(f.top)+(e.scrollTop||h.scrollTop);if(Sys.Browser.agent===Sys.Browser.InternetExplorer){try{var g=a.ownerDocument.parentWindow.frameElement||null;if(g){var i=g.frameBorder==="0"||g.frameBorder==="no"?2:0;c+=i;d+=i}}catch(m){}if(Sys.Browser.version===7&&!document.documentMode){var j=document.body,k=j.getBoundingClientRect(),b=(k.right-k.left)/j.clientWidth;b=Math.round(b*100);b=(b-b%5)/100;if(!isNaN(b)&&b!==1){c=Math.round(c/b);d=Math.round(d/b)}}if((document.documentMode||0)<8){c-=e.clientLeft;d-=e.clientTop}}return new Sys.UI.Point(c,d)};else if(Sys.Browser.agent===Sys.Browser.Safari)Sys.UI.DomElement.getLocation=function(c){if(c.window&&c.window===c||c.nodeType===9)return new Sys.UI.Point(0,0);var d=0,e=0,a,j=null,g=null,b;for(a=c;a;j=a,(g=b,a=a.offsetParent)){b=Sys.UI.DomElement._getCurrentStyle(a);var f=a.tagName?a.tagName.toUpperCase():null;if((a.offsetLeft||a.offsetTop)&&(f!=="BODY"||(!g||g.position!=="absolute"))){d+=a.offsetLeft;e+=a.offsetTop}if(j&&Sys.Browser.version>=3){d+=parseInt(b.borderLeftWidth);e+=parseInt(b.borderTopWidth)}}b=Sys.UI.DomElement._getCurrentStyle(c);var h=b?b.position:null;if(!h||h!=="absolute")for(a=c.parentNode;a;a=a.parentNode){f=a.tagName?a.tagName.toUpperCase():null;if(f!=="BODY"&&f!=="HTML"&&(a.scrollLeft||a.scrollTop)){d-=a.scrollLeft||0;e-=a.scrollTop||0}b=Sys.UI.DomElement._getCurrentStyle(a);var i=b?b.position:null;if(i&&i==="absolute")break}return new Sys.UI.Point(d,e)};else Sys.UI.DomElement.getLocation=function(d){if(d.window&&d.window===d||d.nodeType===9)return new Sys.UI.Point(0,0);var e=0,f=0,a,i=null,g=null,b=null;for(a=d;a;i=a,(g=b,a=a.offsetParent)){var c=a.tagName?a.tagName.toUpperCase():null;b=Sys.UI.DomElement._getCurrentStyle(a);if((a.offsetLeft||a.offsetTop)&&!(c==="BODY"&&(!g||g.position!=="absolute"))){e+=a.offsetLeft;f+=a.offsetTop}if(i!==null&&b){if(c!=="TABLE"&&c!=="TD"&&c!=="HTML"){e+=parseInt(b.borderLeftWidth)||0;f+=parseInt(b.borderTopWidth)||0}if(c==="TABLE"&&(b.position==="relative"||b.position==="absolute")){e+=parseInt(b.marginLeft)||0;f+=parseInt(b.marginTop)||0}}}b=Sys.UI.DomElement._getCurrentStyle(d);var h=b?b.position:null;if(!h||h!=="absolute")for(a=d.parentNode;a;a=a.parentNode){c=a.tagName?a.tagName.toUpperCase():null;if(c!=="BODY"&&c!=="HTML"&&(a.scrollLeft||a.scrollTop)){e-=a.scrollLeft||0;f-=a.scrollTop||0;b=Sys.UI.DomElement._getCurrentStyle(a);if(b){e+=parseInt(b.borderLeftWidth)||0;f+=parseInt(b.borderTopWidth)||0}}}return new Sys.UI.Point(e,f)};Sys.UI.DomElement.isDomElement=function(a){return Sys._isDomElement(a)};Sys.UI.DomElement.removeCssClass=function(d,c){var a=" "+d.className+" ",b=a.indexOf(" "+c+" ");if(b>=0)d.className=(a.substr(0,b)+" "+a.substring(b+c.length+1,a.length)).trim()};Sys.UI.DomElement.resolveElement=function(b,c){var a=b;if(!a)return null;if(typeof a==="string")a=Sys.UI.DomElement.getElementById(a,c);return a};Sys.UI.DomElement.raiseBubbleEvent=function(c,d){var b=c;while(b){var a=b.control;if(a&&a.onBubbleEvent&&a.raiseBubbleEvent){Sys.UI.DomElement._raiseBubbleEventFromControl(a,c,d);return}b=b.parentNode}};Sys.UI.DomElement._raiseBubbleEventFromControl=function(a,b,c){if(!a.onBubbleEvent(b,c))a._raiseBubbleEvent(b,c)};Sys.UI.DomElement.setLocation=function(b,c,d){var a=b.style;a.position="absolute";a.left=c+"px";a.top=d+"px"};Sys.UI.DomElement.toggleCssClass=function(b,a){if(Sys.UI.DomElement.containsCssClass(b,a))Sys.UI.DomElement.removeCssClass(b,a);else Sys.UI.DomElement.addCssClass(b,a)};Sys.UI.DomElement.getVisibilityMode=function(a){return a._visibilityMode===Sys.UI.VisibilityMode.hide?Sys.UI.VisibilityMode.hide:Sys.UI.VisibilityMode.collapse};Sys.UI.DomElement.setVisibilityMode=function(a,b){Sys.UI.DomElement._ensureOldDisplayMode(a);if(a._visibilityMode!==b){a._visibilityMode=b;if(Sys.UI.DomElement.getVisible(a)===false)if(a._visibilityMode===Sys.UI.VisibilityMode.hide)a.style.display=a._oldDisplayMode;else a.style.display="none";a._visibilityMode=b}};Sys.UI.DomElement.getVisible=function(b){var a=b.currentStyle||Sys.UI.DomElement._getCurrentStyle(b);if(!a)return true;return a.visibility!=="hidden"&&a.display!=="none"};Sys.UI.DomElement.setVisible=function(a,b){if(b!==Sys.UI.DomElement.getVisible(a)){Sys.UI.DomElement._ensureOldDisplayMode(a);a.style.visibility=b?"visible":"hidden";if(b||a._visibilityMode===Sys.UI.VisibilityMode.hide)a.style.display=a._oldDisplayMode;else a.style.display="none"}};Sys.UI.DomElement._ensureOldDisplayMode=function(a){if(!a._oldDisplayMode){var b=a.currentStyle||Sys.UI.DomElement._getCurrentStyle(a);a._oldDisplayMode=b?b.display:null;if(!a._oldDisplayMode||a._oldDisplayMode==="none")switch(a.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":a._oldDisplayMode="block";break;case "LI":a._oldDisplayMode="list-item";break;default:a._oldDisplayMode="inline"}}};Sys.UI.DomElement._getWindow=function(a){var b=a.ownerDocument||a.document||a;return b.defaultView||b.parentWindow};Sys.UI.DomElement._getCurrentStyle=function(a){if(a.nodeType===3)return null;var c=Sys.UI.DomElement._getWindow(a);if(a.documentElement)a=a.documentElement;var b=c&&a!==c&&c.getComputedStyle?c.getComputedStyle(a,null):a.currentStyle||a.style;if(!b&&Sys.Browser.agent===Sys.Browser.Safari&&a.style){var g=a.style.display,f=a.style.position;a.style.position="absolute";a.style.display="block";var e=c.getComputedStyle(a,null);a.style.display=g;a.style.position=f;b={};for(var d in e)b[d]=e[d];b.display="none"}return b};Sys.IContainer=function(){};Sys.IContainer.prototype={};Sys.IContainer.registerInterface("Sys.IContainer");Sys.ApplicationLoadEventArgs=function(b,a){Sys.ApplicationLoadEventArgs.initializeBase(this);this._components=b;this._isPartialLoad=a};Sys.ApplicationLoadEventArgs.prototype={get_components:function(){return this._components},get_isPartialLoad:function(){return this._isPartialLoad}};Sys.ApplicationLoadEventArgs.registerClass("Sys.ApplicationLoadEventArgs",Sys.EventArgs);Sys._Application=function(){Sys._Application.initializeBase(this);this._disposableObjects=[];this._components={};this._createdComponents=[];this._secondPassComponents=[];this._unloadHandlerDelegate=Function.createDelegate(this,this._unloadHandler);Sys.UI.DomEvent.addHandler(window,"unload",this._unloadHandlerDelegate);this._domReady()};Sys._Application.prototype={_creatingComponents:false,_disposing:false,_deleteCount:0,get_isCreatingComponents:function(){return this._creatingComponents},get_isDisposing:function(){return this._disposing},add_init:function(a){if(this._initialized)a(this,Sys.EventArgs.Empty);else this.get_events().addHandler("init",a)},remove_init:function(a){this.get_events().removeHandler("init",a)},add_load:function(a){this.get_events().addHandler("load",a)},remove_load:function(a){this.get_events().removeHandler("load",a)},add_unload:function(a){this.get_events().addHandler("unload",a)},remove_unload:function(a){this.get_events().removeHandler("unload",a)},addComponent:function(a){this._components[a.get_id()]=a},beginCreateComponents:function(){this._creatingComponents=true},dispose:function(){if(!this._disposing){this._disposing=true;if(this._timerCookie){window.clearTimeout(this._timerCookie);delete this._timerCookie}if(this._endRequestHandler){Sys.WebForms.PageRequestManager.getInstance().remove_endRequest(this._endRequestHandler);delete this._endRequestHandler}if(this._beginRequestHandler){Sys.WebForms.PageRequestManager.getInstance().remove_beginRequest(this._beginRequestHandler);delete this._beginRequestHandler}if(window.pageUnload)window.pageUnload(this,Sys.EventArgs.Empty);var c=this.get_events().getHandler("unload");if(c)c(this,Sys.EventArgs.Empty);var b=Array.clone(this._disposableObjects);for(var a=0,f=b.length;a<f;a++){var d=b[a];if(typeof d!=="undefined")d.dispose()}Array.clear(this._disposableObjects);Sys.UI.DomEvent.removeHandler(window,"unload",this._unloadHandlerDelegate);if(Sys._ScriptLoader){var e=Sys._ScriptLoader.getInstance();if(e)e.dispose()}Sys._Application.callBaseMethod(this,"dispose")}},disposeElement:function(c,j){if(c.nodeType===1){var b,h=c.getElementsByTagName("*"),g=h.length,i=new Array(g);for(b=0;b<g;b++)i[b]=h[b];for(b=g-1;b>=0;b--){var d=i[b],f=d.dispose;if(f&&typeof f==="function")d.dispose();else{var e=d.control;if(e&&typeof e.dispose==="function")e.dispose()}var a=d._behaviors;if(a)this._disposeComponents(a);a=d._components;if(a){this._disposeComponents(a);d._components=null}}if(!j){var f=c.dispose;if(f&&typeof f==="function")c.dispose();else{var e=c.control;if(e&&typeof e.dispose==="function")e.dispose()}var a=c._behaviors;if(a)this._disposeComponents(a);a=c._components;if(a){this._disposeComponents(a);c._components=null}}}},endCreateComponents:function(){var b=this._secondPassComponents;for(var a=0,d=b.length;a<d;a++){var c=b[a].component;Sys$Component$_setReferences(c,b[a].references);c.endUpdate()}this._secondPassComponents=[];this._creatingComponents=false},findComponent:function(b,a){return a?Sys.IContainer.isInstanceOfType(a)?a.findComponent(b):a[b]||null:Sys.Application._components[b]||null},getComponents:function(){var a=[],b=this._components;for(var c in b)a[a.length]=b[c];return a},initialize:function(){if(!this.get_isInitialized()&&!this._disposing){Sys._Application.callBaseMethod(this,"initialize");this._raiseInit();if(this.get_stateString){if(Sys.WebForms&&Sys.WebForms.PageRequestManager){this._beginRequestHandler=Function.createDelegate(this,this._onPageRequestManagerBeginRequest);Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(this._beginRequestHandler);this._endRequestHandler=Function.createDelegate(this,this._onPageRequestManagerEndRequest);Sys.WebForms.PageRequestManager.getInstance().add_endRequest(this._endRequestHandler)}var a=this.get_stateString();if(a!==this._currentEntry)this._navigate(a);else this._ensureHistory()}this.raiseLoad()}},notifyScriptLoaded:function(){},registerDisposableObject:function(b){if(!this._disposing){var a=this._disposableObjects,c=a.length;a[c]=b;b.__msdisposeindex=c}},raiseLoad:function(){var b=this.get_events().getHandler("load"),a=new Sys.ApplicationLoadEventArgs(Array.clone(this._createdComponents),!!this._loaded);this._loaded=true;if(b)b(this,a);if(window.pageLoad)window.pageLoad(this,a);this._createdComponents=[]},removeComponent:function(b){var a=b.get_id();if(a)delete this._components[a]},unregisterDisposableObject:function(a){if(!this._disposing){var e=a.__msdisposeindex;if(typeof e==="number"){var b=this._disposableObjects;delete b[e];delete a.__msdisposeindex;if(++this._deleteCount>1000){var c=[];for(var d=0,f=b.length;d<f;d++){a=b[d];if(typeof a!=="undefined"){a.__msdisposeindex=c.length;c.push(a)}}this._disposableObjects=c;this._deleteCount=0}}}},_addComponentToSecondPass:function(b,a){this._secondPassComponents[this._secondPassComponents.length]={component:b,references:a}},_disposeComponents:function(a){if(a)for(var b=a.length-1;b>=0;b--){var c=a[b];if(typeof c.dispose==="function")c.dispose()}},_domReady:function(){var a,g,f=this;function b(){f.initialize()}var c=function(){Sys.UI.DomEvent.removeHandler(window,"load",c);b()};Sys.UI.DomEvent.addHandler(window,"load",c);if(document.addEventListener)try{document.addEventListener("DOMContentLoaded",a=function(){document.removeEventListener("DOMContentLoaded",a,false);b()},false)}catch(h){}else if(document.attachEvent)if(window==window.top&&document.documentElement.doScroll){var e,d=document.createElement("div");a=function(){try{d.doScroll("left")}catch(c){e=window.setTimeout(a,0);return}d=null;b()};a()}else document.attachEvent("onreadystatechange",a=function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",a);b()}})},_raiseInit:function(){var a=this.get_events().getHandler("init");if(a){this.beginCreateComponents();a(this,Sys.EventArgs.Empty);this.endCreateComponents()}},_unloadHandler:function(){this.dispose()}};Sys._Application.registerClass("Sys._Application",Sys.Component,Sys.IContainer);Sys.Application=new Sys._Application;var $find=Sys.Application.findComponent;Sys.UI.Behavior=function(b){Sys.UI.Behavior.initializeBase(this);this._element=b;var a=b._behaviors;if(!a)b._behaviors=[this];else a[a.length]=this};Sys.UI.Behavior.prototype={_name:null,get_element:function(){return this._element},get_id:function(){var a=Sys.UI.Behavior.callBaseMethod(this,"get_id");if(a)return a;if(!this._element||!this._element.id)return "";return this._element.id+"$"+this.get_name()},get_name:function(){if(this._name)return this._name;var a=Object.getTypeName(this),b=a.lastIndexOf(".");if(b!==-1)a=a.substr(b+1);if(!this.get_isInitialized())this._name=a;return a},set_name:function(a){this._name=a},initialize:function(){Sys.UI.Behavior.callBaseMethod(this,"initialize");var a=this.get_name();if(a)this._element[a]=this},dispose:function(){Sys.UI.Behavior.callBaseMethod(this,"dispose");var a=this._element;if(a){var c=this.get_name();if(c)a[c]=null;var b=a._behaviors;Array.remove(b,this);if(b.length===0)a._behaviors=null;delete this._element}}};Sys.UI.Behavior.registerClass("Sys.UI.Behavior",Sys.Component);Sys.UI.Behavior.getBehaviorByName=function(b,c){var a=b[c];return a&&Sys.UI.Behavior.isInstanceOfType(a)?a:null};Sys.UI.Behavior.getBehaviors=function(a){if(!a._behaviors)return [];return Array.clone(a._behaviors)};Sys.UI.Behavior.getBehaviorsByType=function(d,e){var a=d._behaviors,c=[];if(a)for(var b=0,f=a.length;b<f;b++)if(e.isInstanceOfType(a[b]))c[c.length]=a[b];return c};Sys.UI.VisibilityMode=function(){throw Error.notImplemented()};Sys.UI.VisibilityMode.prototype={hide:0,collapse:1};Sys.UI.VisibilityMode.registerEnum("Sys.UI.VisibilityMode");Sys.UI.Control=function(a){Sys.UI.Control.initializeBase(this);this._element=a;a.control=this;var b=this.get_role();if(b)a.setAttribute("role",b)};Sys.UI.Control.prototype={_parent:null,_visibilityMode:Sys.UI.VisibilityMode.hide,get_element:function(){return this._element},get_id:function(){if(!this._element)return "";return this._element.id},set_id:function(){throw Error.invalidOperation(Sys.Res.cantSetId)},get_parent:function(){if(this._parent)return this._parent;if(!this._element)return null;var a=this._element.parentNode;while(a){if(a.control)return a.control;a=a.parentNode}return null},set_parent:function(a){this._parent=a},get_role:function(){return null},get_visibilityMode:function(){return Sys.UI.DomElement.getVisibilityMode(this._element)},set_visibilityMode:function(a){Sys.UI.DomElement.setVisibilityMode(this._element,a)},get_visible:function(){return Sys.UI.DomElement.getVisible(this._element)},set_visible:function(a){Sys.UI.DomElement.setVisible(this._element,a)},addCssClass:function(a){Sys.UI.DomElement.addCssClass(this._element,a)},dispose:function(){Sys.UI.Control.callBaseMethod(this,"dispose");if(this._element){this._element.control=null;delete this._element}if(this._parent)delete this._parent},onBubbleEvent:function(){return false},raiseBubbleEvent:function(a,b){this._raiseBubbleEvent(a,b)},_raiseBubbleEvent:function(b,c){var a=this.get_parent();while(a){if(a.onBubbleEvent(b,c))return;a=a.get_parent()}},removeCssClass:function(a){Sys.UI.DomElement.removeCssClass(this._element,a)},toggleCssClass:function(a){Sys.UI.DomElement.toggleCssClass(this._element,a)}};Sys.UI.Control.registerClass("Sys.UI.Control",Sys.Component);�h//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjaxCore.js
Function.__typeName="Function";Function.__class=true;Function.createCallback=function(b,a){return function(){var e=arguments.length;if(e>0){var d=[];for(var c=0;c<e;c++)d[c]=arguments[c];d[e]=a;return b.apply(this,d)}return b.call(this,a)}};Function.createDelegate=function(a,b){return function(){return b.apply(a,arguments)}};Function.emptyFunction=Function.emptyMethod=function(){};Function.validateParameters=function(c,b,a){return Function._validateParams(c,b,a)};Function._validateParams=function(g,e,c){var a,d=e.length;c=c||typeof c==="undefined";a=Function._validateParameterCount(g,e,c);if(a){a.popStackFrame();return a}for(var b=0,i=g.length;b<i;b++){var f=e[Math.min(b,d-1)],h=f.name;if(f.parameterArray)h+="["+(b-d+1)+"]";else if(!c&&b>=d)break;a=Function._validateParameter(g[b],f,h);if(a){a.popStackFrame();return a}}return null};Function._validateParameterCount=function(j,d,i){var a,c,b=d.length,e=j.length;if(e<b){var f=b;for(a=0;a<b;a++){var g=d[a];if(g.optional||g.parameterArray)f--}if(e<f)c=true}else if(i&&e>b){c=true;for(a=0;a<b;a++)if(d[a].parameterArray){c=false;break}}if(c){var h=Error.parameterCount();h.popStackFrame();return h}return null};Function._validateParameter=function(c,a,h){var b,g=a.type,l=!!a.integer,k=!!a.domElement,m=!!a.mayBeNull;b=Function._validateParameterType(c,g,l,k,m,h);if(b){b.popStackFrame();return b}var e=a.elementType,f=!!a.elementMayBeNull;if(g===Array&&typeof c!=="undefined"&&c!==null&&(e||!f)){var j=!!a.elementInteger,i=!!a.elementDomElement;for(var d=0;d<c.length;d++){var n=c[d];b=Function._validateParameterType(n,e,j,i,f,h+"["+d+"]");if(b){b.popStackFrame();return b}}}return null};Function._validateParameterType=function(b,c,k,j,h,d){var a,g;if(typeof b==="undefined")if(h)return null;else{a=Error.argumentUndefined(d);a.popStackFrame();return a}if(b===null)if(h)return null;else{a=Error.argumentNull(d);a.popStackFrame();return a}if(c&&c.__enum){if(typeof b!=="number"){a=Error.argumentType(d,Object.getType(b),c);a.popStackFrame();return a}if(b%1===0){var e=c.prototype;if(!c.__flags||b===0){for(g in e)if(e[g]===b)return null}else{var i=b;for(g in e){var f=e[g];if(f===0)continue;if((f&b)===f)i-=f;if(i===0)return null}}}a=Error.argumentOutOfRange(d,b,String.format(Sys.Res.enumInvalidValue,b,c.getName()));a.popStackFrame();return a}if(j&&(!Sys._isDomElement(b)||b.nodeType===3)){a=Error.argument(d,Sys.Res.argumentDomElement);a.popStackFrame();return a}if(c&&!Sys._isInstanceOfType(c,b)){a=Error.argumentType(d,Object.getType(b),c);a.popStackFrame();return a}if(c===Number&&k)if(b%1!==0){a=Error.argumentOutOfRange(d,b,Sys.Res.argumentInteger);a.popStackFrame();return a}return null};Error.__typeName="Error";Error.__class=true;Error.create=function(d,b){var a=new Error(d);a.message=d;if(b)for(var c in b)a[c]=b[c];a.popStackFrame();return a};Error.argument=function(a,c){var b="Sys.ArgumentException: "+(c?c:Sys.Res.argument);if(a)b+="\n"+String.format(Sys.Res.paramName,a);var d=Error.create(b,{name:"Sys.ArgumentException",paramName:a});d.popStackFrame();return d};Error.argumentNull=function(a,c){var b="Sys.ArgumentNullException: "+(c?c:Sys.Res.argumentNull);if(a)b+="\n"+String.format(Sys.Res.paramName,a);var d=Error.create(b,{name:"Sys.ArgumentNullException",paramName:a});d.popStackFrame();return d};Error.argumentOutOfRange=function(c,a,d){var b="Sys.ArgumentOutOfRangeException: "+(d?d:Sys.Res.argumentOutOfRange);if(c)b+="\n"+String.format(Sys.Res.paramName,c);if(typeof a!=="undefined"&&a!==null)b+="\n"+String.format(Sys.Res.actualValue,a);var e=Error.create(b,{name:"Sys.ArgumentOutOfRangeException",paramName:c,actualValue:a});e.popStackFrame();return e};Error.argumentType=function(d,c,b,e){var a="Sys.ArgumentTypeException: ";if(e)a+=e;else if(c&&b)a+=String.format(Sys.Res.argumentTypeWithTypes,c.getName(),b.getName());else a+=Sys.Res.argumentType;if(d)a+="\n"+String.format(Sys.Res.paramName,d);var f=Error.create(a,{name:"Sys.ArgumentTypeException",paramName:d,actualType:c,expectedType:b});f.popStackFrame();return f};Error.argumentUndefined=function(a,c){var b="Sys.ArgumentUndefinedException: "+(c?c:Sys.Res.argumentUndefined);if(a)b+="\n"+String.format(Sys.Res.paramName,a);var d=Error.create(b,{name:"Sys.ArgumentUndefinedException",paramName:a});d.popStackFrame();return d};Error.format=function(a){var c="Sys.FormatException: "+(a?a:Sys.Res.format),b=Error.create(c,{name:"Sys.FormatException"});b.popStackFrame();return b};Error.invalidOperation=function(a){var c="Sys.InvalidOperationException: "+(a?a:Sys.Res.invalidOperation),b=Error.create(c,{name:"Sys.InvalidOperationException"});b.popStackFrame();return b};Error.notImplemented=function(a){var c="Sys.NotImplementedException: "+(a?a:Sys.Res.notImplemented),b=Error.create(c,{name:"Sys.NotImplementedException"});b.popStackFrame();return b};Error.parameterCount=function(a){var c="Sys.ParameterCountException: "+(a?a:Sys.Res.parameterCount),b=Error.create(c,{name:"Sys.ParameterCountException"});b.popStackFrame();return b};Error.prototype.popStackFrame=function(){if(typeof this.stack==="undefined"||this.stack===null||typeof this.fileName==="undefined"||this.fileName===null||typeof this.lineNumber==="undefined"||this.lineNumber===null)return;var a=this.stack.split("\n"),c=a[0],e=this.fileName+":"+this.lineNumber;while(typeof c!=="undefined"&&c!==null&&c.indexOf(e)===-1){a.shift();c=a[0]}var d=a[1];if(typeof d==="undefined"||d===null)return;var b=d.match(/@(.*):(\d+)$/);if(typeof b==="undefined"||b===null)return;this.fileName=b[1];this.lineNumber=parseInt(b[2]);a.shift();this.stack=a.join("\n")};Object.__typeName="Object";Object.__class=true;Object.getType=function(b){var a=b.constructor;if(!a||typeof a!=="function"||!a.__typeName||a.__typeName==="Object")return Object;return a};Object.getTypeName=function(a){return Object.getType(a).getName()};String.__typeName="String";String.__class=true;String.prototype.endsWith=function(a){return this.substr(this.length-a.length)===a};String.prototype.startsWith=function(a){return this.substr(0,a.length)===a};String.prototype.trim=function(){return this.replace(/^\s+|\s+$/g,"")};String.prototype.trimEnd=function(){return this.replace(/\s+$/,"")};String.prototype.trimStart=function(){return this.replace(/^\s+/,"")};String.format=function(){return String._toFormattedString(false,arguments)};String._toFormattedString=function(l,j){var c="",e=j[0];for(var a=0;true;){var f=e.indexOf("{",a),d=e.indexOf("}",a);if(f<0&&d<0){c+=e.slice(a);break}if(d>0&&(d<f||f<0)){c+=e.slice(a,d+1);a=d+2;continue}c+=e.slice(a,f);a=f+1;if(e.charAt(a)==="{"){c+="{";a++;continue}if(d<0)break;var h=e.substring(a,d),g=h.indexOf(":"),k=parseInt(g<0?h:h.substring(0,g),10)+1,i=g<0?"":h.substring(g+1),b=j[k];if(typeof b==="undefined"||b===null)b="";if(b.toFormattedString)c+=b.toFormattedString(i);else if(l&&b.localeFormat)c+=b.localeFormat(i);else if(b.format)c+=b.format(i);else c+=b.toString();a=d+1}return c};Boolean.__typeName="Boolean";Boolean.__class=true;Boolean.parse=function(b){var a=b.trim().toLowerCase();if(a==="false")return false;if(a==="true")return true};Date.__typeName="Date";Date.__class=true;Number.__typeName="Number";Number.__class=true;RegExp.__typeName="RegExp";RegExp.__class=true;if(!window)this.window=this;window.Type=Function;Type.prototype.callBaseMethod=function(a,d,b){var c=Sys._getBaseMethod(this,a,d);if(!b)return c.apply(a);else return c.apply(a,b)};Type.prototype.getBaseMethod=function(a,b){return Sys._getBaseMethod(this,a,b)};Type.prototype.getBaseType=function(){return typeof this.__baseType==="undefined"?null:this.__baseType};Type.prototype.getInterfaces=function(){var a=[],b=this;while(b){var c=b.__interfaces;if(c)for(var d=0,f=c.length;d<f;d++){var e=c[d];if(!Array.contains(a,e))a[a.length]=e}b=b.__baseType}return a};Type.prototype.getName=function(){return typeof this.__typeName==="undefined"?"":this.__typeName};Type.prototype.implementsInterface=function(d){this.resolveInheritance();var c=d.getName(),a=this.__interfaceCache;if(a){var e=a[c];if(typeof e!=="undefined")return e}else a=this.__interfaceCache={};var b=this;while(b){var f=b.__interfaces;if(f)if(Array.indexOf(f,d)!==-1)return a[c]=true;b=b.__baseType}return a[c]=false};Type.prototype.inheritsFrom=function(b){this.resolveInheritance();var a=this.__baseType;while(a){if(a===b)return true;a=a.__baseType}return false};Type.prototype.initializeBase=function(a,b){this.resolveInheritance();if(this.__baseType)if(!b)this.__baseType.apply(a);else this.__baseType.apply(a,b);return a};Type.prototype.isImplementedBy=function(a){if(typeof a==="undefined"||a===null)return false;var b=Object.getType(a);return !!(b.implementsInterface&&b.implementsInterface(this))};Type.prototype.isInstanceOfType=function(a){return Sys._isInstanceOfType(this,a)};Type.prototype.registerClass=function(c,b,d){this.prototype.constructor=this;this.__typeName=c;this.__class=true;if(b){this.__baseType=b;this.__basePrototypePending=true}Sys.__upperCaseTypes[c.toUpperCase()]=this;if(d){this.__interfaces=[];for(var a=2,f=arguments.length;a<f;a++){var e=arguments[a];this.__interfaces.push(e)}}return this};Type.prototype.registerInterface=function(a){Sys.__upperCaseTypes[a.toUpperCase()]=this;this.prototype.constructor=this;this.__typeName=a;this.__interface=true;return this};Type.prototype.resolveInheritance=function(){if(this.__basePrototypePending){var b=this.__baseType;b.resolveInheritance();for(var a in b.prototype){var c=b.prototype[a];if(!this.prototype[a])this.prototype[a]=c}delete this.__basePrototypePending}};Type.getRootNamespaces=function(){return Array.clone(Sys.__rootNamespaces)};Type.isClass=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__class};Type.isInterface=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__interface};Type.isNamespace=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__namespace};Type.parse=function(typeName,ns){var fn;if(ns){fn=Sys.__upperCaseTypes[ns.getName().toUpperCase()+"."+typeName.toUpperCase()];return fn||null}if(!typeName)return null;if(!Type.__htClasses)Type.__htClasses={};fn=Type.__htClasses[typeName];if(!fn){fn=eval(typeName);Type.__htClasses[typeName]=fn}return fn};Type.registerNamespace=function(e){var d=window,c=e.split(".");for(var b=0;b<c.length;b++){var f=c[b],a=d[f];if(!a)a=d[f]={};if(!a.__namespace){if(b===0&&e!=="Sys")Sys.__rootNamespaces[Sys.__rootNamespaces.length]=a;a.__namespace=true;a.__typeName=c.slice(0,b+1).join(".");a.getName=function(){return this.__typeName}}d=a}};Type._checkDependency=function(c,a){var d=Type._registerScript._scripts,b=d?!!d[c]:false;if(typeof a!=="undefined"&&!b)throw Error.invalidOperation(String.format(Sys.Res.requiredScriptReferenceNotIncluded,a,c));return b};Type._registerScript=function(a,c){var b=Type._registerScript._scripts;if(!b)Type._registerScript._scripts=b={};if(b[a])throw Error.invalidOperation(String.format(Sys.Res.scriptAlreadyLoaded,a));b[a]=true;if(c)for(var d=0,f=c.length;d<f;d++){var e=c[d];if(!Type._checkDependency(e))throw Error.invalidOperation(String.format(Sys.Res.scriptDependencyNotFound,a,e))}};Type.registerNamespace("Sys");Sys.__upperCaseTypes={};Sys.__rootNamespaces=[Sys];Sys._isInstanceOfType=function(c,b){if(typeof b==="undefined"||b===null)return false;if(b instanceof c)return true;var a=Object.getType(b);return !!(a===c)||a.inheritsFrom&&a.inheritsFrom(c)||a.implementsInterface&&a.implementsInterface(c)};Sys._getBaseMethod=function(d,e,c){var b=d.getBaseType();if(b){var a=b.prototype[c];return a instanceof Function?a:null}return null};Sys._isDomElement=function(a){var c=false;if(typeof a.nodeType!=="number"){var b=a.ownerDocument||a.document||a;if(b!=a){var d=b.defaultView||b.parentWindow;c=d!=a}else c=typeof b.body==="undefined"}return !c};Array.__typeName="Array";Array.__class=true;Array.add=Array.enqueue=function(a,b){a[a.length]=b};Array.addRange=function(a,b){a.push.apply(a,b)};Array.clear=function(a){a.length=0};Array.clone=function(a){if(a.length===1)return [a[0]];else return Array.apply(null,a)};Array.contains=function(a,b){return Sys._indexOf(a,b)>=0};Array.dequeue=function(a){return a.shift()};Array.forEach=function(b,e,d){for(var a=0,f=b.length;a<f;a++){var c=b[a];if(typeof c!=="undefined")e.call(d,c,a,b)}};Array.indexOf=function(a,c,b){return Sys._indexOf(a,c,b)};Array.insert=function(a,b,c){a.splice(b,0,c)};Array.parse=function(value){if(!value)return [];return eval(value)};Array.remove=function(b,c){var a=Sys._indexOf(b,c);if(a>=0)b.splice(a,1);return a>=0};Array.removeAt=function(a,b){a.splice(b,1)};Sys._indexOf=function(d,e,a){if(typeof e==="undefined")return -1;var c=d.length;if(c!==0){a=a-0;if(isNaN(a))a=0;else{if(isFinite(a))a=a-a%1;if(a<0)a=Math.max(0,c+a)}for(var b=a;b<c;b++)if(typeof d[b]!=="undefined"&&d[b]===e)return b}return -1};Type._registerScript("MicrosoftAjaxCore.js");Sys.IDisposable=function(){};Sys.IDisposable.prototype={};Sys.IDisposable.registerInterface("Sys.IDisposable");Sys.StringBuilder=function(a){this._parts=typeof a!=="undefined"&&a!==null&&a!==""?[a.toString()]:[];this._value={};this._len=0};Sys.StringBuilder.prototype={append:function(a){this._parts[this._parts.length]=a},appendLine:function(a){this._parts[this._parts.length]=typeof a==="undefined"||a===null||a===""?"\r\n":a+"\r\n"},clear:function(){this._parts=[];this._value={};this._len=0},isEmpty:function(){if(this._parts.length===0)return true;return this.toString()===""},toString:function(a){a=a||"";var b=this._parts;if(this._len!==b.length){this._value={};this._len=b.length}var d=this._value;if(typeof d[a]==="undefined"){if(a!=="")for(var c=0;c<b.length;)if(typeof b[c]==="undefined"||b[c]===""||b[c]===null)b.splice(c,1);else c++;d[a]=this._parts.join(a)}return d[a]}};Sys.StringBuilder.registerClass("Sys.StringBuilder");Sys.Browser={};Sys.Browser.InternetExplorer={};Sys.Browser.Firefox={};Sys.Browser.Safari={};Sys.Browser.Opera={};Sys.Browser.agent=null;Sys.Browser.hasDebuggerStatement=false;Sys.Browser.name=navigator.appName;Sys.Browser.version=parseFloat(navigator.appVersion);Sys.Browser.documentMode=0;if(navigator.userAgent.indexOf(" MSIE ")>-1){Sys.Browser.agent=Sys.Browser.InternetExplorer;Sys.Browser.version=parseFloat(navigator.userAgent.match(/MSIE (\d+\.\d+)/)[1]);if(Sys.Browser.version>=8)if(document.documentMode>=7)Sys.Browser.documentMode=document.documentMode;Sys.Browser.hasDebuggerStatement=true}else if(navigator.userAgent.indexOf(" Firefox/")>-1){Sys.Browser.agent=Sys.Browser.Firefox;Sys.Browser.version=parseFloat(navigator.userAgent.match(/Firefox\/(\d+\.\d+)/)[1]);Sys.Browser.name="Firefox";Sys.Browser.hasDebuggerStatement=true}else if(navigator.userAgent.indexOf(" AppleWebKit/")>-1){Sys.Browser.agent=Sys.Browser.Safari;Sys.Browser.version=parseFloat(navigator.userAgent.match(/AppleWebKit\/(\d+(\.\d+)?)/)[1]);Sys.Browser.name="Safari"}else if(navigator.userAgent.indexOf("Opera/")>-1)Sys.Browser.agent=Sys.Browser.Opera;Sys.EventArgs=function(){};Sys.EventArgs.registerClass("Sys.EventArgs");Sys.EventArgs.Empty=new Sys.EventArgs;Sys.CancelEventArgs=function(){Sys.CancelEventArgs.initializeBase(this);this._cancel=false};Sys.CancelEventArgs.prototype={get_cancel:function(){return this._cancel},set_cancel:function(a){this._cancel=a}};Sys.CancelEventArgs.registerClass("Sys.CancelEventArgs",Sys.EventArgs);Sys.EventHandlerList=function(){this._list={}};Sys.EventHandlerList.prototype={_addHandler:function(b,a){Array.add(this._getEvent(b,true),a)},addHandler:function(b,a){this._addHandler(b,a)},_removeHandler:function(c,b){var a=this._getEvent(c);if(!a)return;Array.remove(a,b)},removeHandler:function(b,a){this._removeHandler(b,a)},getHandler:function(b){var a=this._getEvent(b);if(!a||a.length===0)return null;a=Array.clone(a);return function(c,d){for(var b=0,e=a.length;b<e;b++)a[b](c,d)}},_getEvent:function(a,b){if(!this._list[a]){if(!b)return null;this._list[a]=[]}return this._list[a]}};Sys.EventHandlerList.registerClass("Sys.EventHandlerList");Type.registerNamespace("Sys.UI");Sys._Debug=function(){};Sys._Debug.prototype={_appendConsole:function(a){if(typeof Debug!=="undefined"&&Debug.writeln)Debug.writeln(a);if(window.console&&window.console.log)window.console.log(a);if(window.opera)window.opera.postError(a);if(window.debugService)window.debugService.trace(a)},_appendTrace:function(b){var a=document.getElementById("TraceConsole");if(a&&a.tagName.toUpperCase()==="TEXTAREA")a.value+=b+"\n"},assert:function(c,a,b){if(!c){a=b&&this.assert.caller?String.format(Sys.Res.assertFailedCaller,a,this.assert.caller):String.format(Sys.Res.assertFailed,a);if(confirm(String.format(Sys.Res.breakIntoDebugger,a)))this.fail(a)}},clearTrace:function(){var a=document.getElementById("TraceConsole");if(a&&a.tagName.toUpperCase()==="TEXTAREA")a.value=""},fail:function(message){this._appendConsole(message);if(Sys.Browser.hasDebuggerStatement)eval("debugger")},trace:function(a){this._appendConsole(a);this._appendTrace(a)},traceDump:function(a,b){var c=this._traceDump(a,b,true)},_traceDump:function(a,c,f,b,d){c=c?c:"traceDump";b=b?b:"";if(a===null){this.trace(b+c+": null");return}switch(typeof a){case "undefined":this.trace(b+c+": Undefined");break;case "number":case "string":case "boolean":this.trace(b+c+": "+a);break;default:if(Date.isInstanceOfType(a)||RegExp.isInstanceOfType(a)){this.trace(b+c+": "+a.toString());break}if(!d)d=[];else if(Array.contains(d,a)){this.trace(b+c+": ...");return}Array.add(d,a);if(a==window||a===document||window.HTMLElement&&a instanceof HTMLElement||typeof a.nodeName==="string"){var k=a.tagName?a.tagName:"DomElement";if(a.id)k+=" - "+a.id;this.trace(b+c+" {"+k+"}")}else{var i=Object.getTypeName(a);this.trace(b+c+(typeof i==="string"?" {"+i+"}":""));if(b===""||f){b+="    ";var e,j,l,g,h;if(Array.isInstanceOfType(a)){j=a.length;for(e=0;e<j;e++)this._traceDump(a[e],"["+e+"]",f,b,d)}else for(g in a){h=a[g];if(!Function.isInstanceOfType(h))this._traceDump(h,g,f,b,d)}}}Array.remove(d,a)}}};Sys._Debug.registerClass("Sys._Debug");Sys.Debug=new Sys._Debug;Sys.Debug.isDebug=false;function Sys$Enum$parse(c,e){var a,b,i;if(e){a=this.__lowerCaseValues;if(!a){this.__lowerCaseValues=a={};var g=this.prototype;for(var f in g)a[f.toLowerCase()]=g[f]}}else a=this.prototype;if(!this.__flags){i=e?c.toLowerCase():c;b=a[i.trim()];if(typeof b!=="number")throw Error.argument("value",String.format(Sys.Res.enumInvalidValue,c,this.__typeName));return b}else{var h=(e?c.toLowerCase():c).split(","),j=0;for(var d=h.length-1;d>=0;d--){var k=h[d].trim();b=a[k];if(typeof b!=="number")throw Error.argument("value",String.format(Sys.Res.enumInvalidValue,c.split(",")[d].trim(),this.__typeName));j|=b}return j}}function Sys$Enum$toString(c){if(typeof c==="undefined"||c===null)return this.__string;var d=this.prototype,a;if(!this.__flags||c===0){for(a in d)if(d[a]===c)return a}else{var b=this.__sortedValues;if(!b){b=[];for(a in d)b[b.length]={key:a,value:d[a]};b.sort(function(a,b){return a.value-b.value});this.__sortedValues=b}var e=[],g=c;for(a=b.length-1;a>=0;a--){var h=b[a],f=h.value;if(f===0)continue;if((f&c)===f){e[e.length]=h.key;g-=f;if(g===0)break}}if(e.length&&g===0)return e.reverse().join(", ")}return ""}Type.prototype.registerEnum=function(b,c){Sys.__upperCaseTypes[b.toUpperCase()]=this;for(var a in this.prototype)this[a]=this.prototype[a];this.__typeName=b;this.parse=Sys$Enum$parse;this.__string=this.toString();this.toString=Sys$Enum$toString;this.__flags=c;this.__enum=true};Type.isEnum=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__enum};Type.isFlags=function(a){if(typeof a==="undefined"||a===null)return false;return !!a.__flags};Sys.CollectionChange=function(e,a,c,b,d){this.action=e;if(a)if(!(a instanceof Array))a=[a];this.newItems=a||null;if(typeof c!=="number")c=-1;this.newStartingIndex=c;if(b)if(!(b instanceof Array))b=[b];this.oldItems=b||null;if(typeof d!=="number")d=-1;this.oldStartingIndex=d};Sys.CollectionChange.registerClass("Sys.CollectionChange");Sys.NotifyCollectionChangedAction=function(){throw Error.notImplemented()};Sys.NotifyCollectionChangedAction.prototype={add:0,remove:1,reset:2};Sys.NotifyCollectionChangedAction.registerEnum("Sys.NotifyCollectionChangedAction");Sys.NotifyCollectionChangedEventArgs=function(a){this._changes=a;Sys.NotifyCollectionChangedEventArgs.initializeBase(this)};Sys.NotifyCollectionChangedEventArgs.prototype={get_changes:function(){return this._changes||[]}};Sys.NotifyCollectionChangedEventArgs.registerClass("Sys.NotifyCollectionChangedEventArgs",Sys.EventArgs);Sys.INotifyPropertyChange=function(){};Sys.INotifyPropertyChange.prototype={};Sys.INotifyPropertyChange.registerInterface("Sys.INotifyPropertyChange");Sys.PropertyChangedEventArgs=function(a){Sys.PropertyChangedEventArgs.initializeBase(this);this._propertyName=a};Sys.PropertyChangedEventArgs.prototype={get_propertyName:function(){return this._propertyName}};Sys.PropertyChangedEventArgs.registerClass("Sys.PropertyChangedEventArgs",Sys.EventArgs);Sys.Observer=function(){};Sys.Observer.registerClass("Sys.Observer");Sys.Observer.makeObservable=function(a){var c=a instanceof Array,b=Sys.Observer;if(a.setValue===b._observeMethods.setValue)return a;b._addMethods(a,b._observeMethods);if(c)b._addMethods(a,b._arrayMethods);return a};Sys.Observer._addMethods=function(c,b){for(var a in b)c[a]=b[a]};Sys.Observer._addEventHandler=function(c,a,b){Sys.Observer._getContext(c,true).events._addHandler(a,b)};Sys.Observer.addEventHandler=function(c,a,b){Sys.Observer._addEventHandler(c,a,b)};Sys.Observer._removeEventHandler=function(c,a,b){Sys.Observer._getContext(c,true).events._removeHandler(a,b)};Sys.Observer.removeEventHandler=function(c,a,b){Sys.Observer._removeEventHandler(c,a,b)};Sys.Observer.raiseEvent=function(b,e,d){var c=Sys.Observer._getContext(b);if(!c)return;var a=c.events.getHandler(e);if(a)a(b,d)};Sys.Observer.addPropertyChanged=function(b,a){Sys.Observer._addEventHandler(b,"propertyChanged",a)};Sys.Observer.removePropertyChanged=function(b,a){Sys.Observer._removeEventHandler(b,"propertyChanged",a)};Sys.Observer.beginUpdate=function(a){Sys.Observer._getContext(a,true).updating=true};Sys.Observer.endUpdate=function(b){var a=Sys.Observer._getContext(b);if(!a||!a.updating)return;a.updating=false;var d=a.dirty;a.dirty=false;if(d){if(b instanceof Array){var c=a.changes;a.changes=null;Sys.Observer.raiseCollectionChanged(b,c)}Sys.Observer.raisePropertyChanged(b,"")}};Sys.Observer.isUpdating=function(b){var a=Sys.Observer._getContext(b);return a?a.updating:false};Sys.Observer._setValue=function(a,j,g){var b,f,k=a,d=j.split(".");for(var i=0,m=d.length-1;i<m;i++){var l=d[i];b=a["get_"+l];if(typeof b==="function")a=b.call(a);else a=a[l];var n=typeof a;if(a===null||n==="undefined")throw Error.invalidOperation(String.format(Sys.Res.nullReferenceInPath,j))}var e,c=d[m];b=a["get_"+c];f=a["set_"+c];if(typeof b==="function")e=b.call(a);else e=a[c];if(typeof f==="function")f.call(a,g);else a[c]=g;if(e!==g){var h=Sys.Observer._getContext(k);if(h&&h.updating){h.dirty=true;return}Sys.Observer.raisePropertyChanged(k,d[0])}};Sys.Observer.setValue=function(b,a,c){Sys.Observer._setValue(b,a,c)};Sys.Observer.raisePropertyChanged=function(b,a){Sys.Observer.raiseEvent(b,"propertyChanged",new Sys.PropertyChangedEventArgs(a))};Sys.Observer.addCollectionChanged=function(b,a){Sys.Observer._addEventHandler(b,"collectionChanged",a)};Sys.Observer.removeCollectionChanged=function(b,a){Sys.Observer._removeEventHandler(b,"collectionChanged",a)};Sys.Observer._collectionChange=function(d,c){var a=Sys.Observer._getContext(d);if(a&&a.updating){a.dirty=true;var b=a.changes;if(!b)a.changes=b=[c];else b.push(c)}else{Sys.Observer.raiseCollectionChanged(d,[c]);Sys.Observer.raisePropertyChanged(d,"length")}};Sys.Observer.add=function(a,b){var c=new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.add,[b],a.length);Array.add(a,b);Sys.Observer._collectionChange(a,c)};Sys.Observer.addRange=function(a,b){var c=new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.add,b,a.length);Array.addRange(a,b);Sys.Observer._collectionChange(a,c)};Sys.Observer.clear=function(a){var b=Array.clone(a);Array.clear(a);Sys.Observer._collectionChange(a,new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.reset,null,-1,b,0))};Sys.Observer.insert=function(a,b,c){Array.insert(a,b,c);Sys.Observer._collectionChange(a,new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.add,[c],b))};Sys.Observer.remove=function(a,b){var c=Array.indexOf(a,b);if(c!==-1){Array.remove(a,b);Sys.Observer._collectionChange(a,new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.remove,null,-1,[b],c));return true}return false};Sys.Observer.removeAt=function(b,a){if(a>-1&&a<b.length){var c=b[a];Array.removeAt(b,a);Sys.Observer._collectionChange(b,new Sys.CollectionChange(Sys.NotifyCollectionChangedAction.remove,null,-1,[c],a))}};Sys.Observer.raiseCollectionChanged=function(b,a){Sys.Observer.raiseEvent(b,"collectionChanged",new Sys.NotifyCollectionChangedEventArgs(a))};Sys.Observer._observeMethods={add_propertyChanged:function(a){Sys.Observer._addEventHandler(this,"propertyChanged",a)},remove_propertyChanged:function(a){Sys.Observer._removeEventHandler(this,"propertyChanged",a)},addEventHandler:function(a,b){Sys.Observer._addEventHandler(this,a,b)},removeEventHandler:function(a,b){Sys.Observer._removeEventHandler(this,a,b)},get_isUpdating:function(){return Sys.Observer.isUpdating(this)},beginUpdate:function(){Sys.Observer.beginUpdate(this)},endUpdate:function(){Sys.Observer.endUpdate(this)},setValue:function(b,a){Sys.Observer._setValue(this,b,a)},raiseEvent:function(b,a){Sys.Observer.raiseEvent(this,b,a)},raisePropertyChanged:function(a){Sys.Observer.raiseEvent(this,"propertyChanged",new Sys.PropertyChangedEventArgs(a))}};Sys.Observer._arrayMethods={add_collectionChanged:function(a){Sys.Observer._addEventHandler(this,"collectionChanged",a)},remove_collectionChanged:function(a){Sys.Observer._removeEventHandler(this,"collectionChanged",a)},add:function(a){Sys.Observer.add(this,a)},addRange:function(a){Sys.Observer.addRange(this,a)},clear:function(){Sys.Observer.clear(this)},insert:function(a,b){Sys.Observer.insert(this,a,b)},remove:function(a){return Sys.Observer.remove(this,a)},removeAt:function(a){Sys.Observer.removeAt(this,a)},raiseCollectionChanged:function(a){Sys.Observer.raiseEvent(this,"collectionChanged",new Sys.NotifyCollectionChangedEventArgs(a))}};Sys.Observer._getContext=function(b,c){var a=b._observerContext;if(a)return a();if(c)return (b._observerContext=Sys.Observer._createContext())();return null};Sys.Observer._createContext=function(){var a={events:new Sys.EventHandlerList};return function(){return a}};�M//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjaxGlobalization.js
Type._registerScript("MicrosoftAjaxGlobalization.js",["MicrosoftAjaxCore.js"]);Date._appendPreOrPostMatch=function(e,b){var d=0,a=false;for(var c=0,g=e.length;c<g;c++){var f=e.charAt(c);switch(f){case "'":if(a)b.append("'");else d++;a=false;break;case "\\":if(a)b.append("\\");a=!a;break;default:b.append(f);a=false}}return d};Date._expandFormat=function(a,b){if(!b)b="F";var c=b.length;if(c===1)switch(b){case "d":return a.ShortDatePattern;case "D":return a.LongDatePattern;case "t":return a.ShortTimePattern;case "T":return a.LongTimePattern;case "f":return a.LongDatePattern+" "+a.ShortTimePattern;case "F":return a.FullDateTimePattern;case "M":case "m":return a.MonthDayPattern;case "s":return a.SortableDateTimePattern;case "Y":case "y":return a.YearMonthPattern;default:throw Error.format(Sys.Res.formatInvalidString)}else if(c===2&&b.charAt(0)==="%")b=b.charAt(1);return b};Date._expandYear=function(c,a){var d=new Date,e=Date._getEra(d);if(a<100){var b=Date._getEraYear(d,c,e);a+=b-b%100;if(a>c.Calendar.TwoDigitYearMax)a-=100}return a};Date._getEra=function(e,c){if(!c)return 0;var b,d=e.getTime();for(var a=0,f=c.length;a<f;a+=4){b=c[a+2];if(b===null||d>=b)return a}return 0};Date._getEraYear=function(d,b,e,c){var a=d.getFullYear();if(!c&&b.eras)a-=b.eras[e+3];return a};Date._getParseRegExp=function(b,e){if(!b._parseRegExp)b._parseRegExp={};else if(b._parseRegExp[e])return b._parseRegExp[e];var c=Date._expandFormat(b,e);c=c.replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g,"\\\\$1");var a=new Sys.StringBuilder("^"),j=[],f=0,i=0,h=Date._getTokenRegExp(),d;while((d=h.exec(c))!==null){var l=c.slice(f,d.index);f=h.lastIndex;i+=Date._appendPreOrPostMatch(l,a);if(i%2===1){a.append(d[0]);continue}switch(d[0]){case "dddd":case "ddd":case "MMMM":case "MMM":case "gg":case "g":a.append("(\\D+)");break;case "tt":case "t":a.append("(\\D*)");break;case "yyyy":a.append("(\\d{4})");break;case "fff":a.append("(\\d{3})");break;case "ff":a.append("(\\d{2})");break;case "f":a.append("(\\d)");break;case "dd":case "d":case "MM":case "M":case "yy":case "y":case "HH":case "H":case "hh":case "h":case "mm":case "m":case "ss":case "s":a.append("(\\d\\d?)");break;case "zzz":a.append("([+-]?\\d\\d?:\\d{2})");break;case "zz":case "z":a.append("([+-]?\\d\\d?)");break;case "/":a.append("(\\"+b.DateSeparator+")")}Array.add(j,d[0])}Date._appendPreOrPostMatch(c.slice(f),a);a.append("$");var k=a.toString().replace(/\s+/g,"\\s+"),g={"regExp":k,"groups":j};b._parseRegExp[e]=g;return g};Date._getTokenRegExp=function(){return /\/|dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|zzz|zz|z|gg|g/g};Date.parseLocale=function(a){return Date._parse(a,Sys.CultureInfo.CurrentCulture,arguments)};Date.parseInvariant=function(a){return Date._parse(a,Sys.CultureInfo.InvariantCulture,arguments)};Date._parse=function(h,d,i){var a,c,b,f,e,g=false;for(a=1,c=i.length;a<c;a++){f=i[a];if(f){g=true;b=Date._parseExact(h,f,d);if(b)return b}}if(!g){e=d._getDateTimeFormats();for(a=0,c=e.length;a<c;a++){b=Date._parseExact(h,e[a],d);if(b)return b}}return null};Date._parseExact=function(w,D,k){w=w.trim();var g=k.dateTimeFormat,A=Date._getParseRegExp(g,D),C=(new RegExp(A.regExp)).exec(w);if(C===null)return null;var B=A.groups,x=null,e=null,c=null,j=null,i=null,d=0,h,p=0,q=0,f=0,l=null,v=false;for(var s=0,E=B.length;s<E;s++){var a=C[s+1];if(a)switch(B[s]){case "dd":case "d":j=parseInt(a,10);if(j<1||j>31)return null;break;case "MMMM":c=k._getMonthIndex(a);if(c<0||c>11)return null;break;case "MMM":c=k._getAbbrMonthIndex(a);if(c<0||c>11)return null;break;case "M":case "MM":c=parseInt(a,10)-1;if(c<0||c>11)return null;break;case "y":case "yy":e=Date._expandYear(g,parseInt(a,10));if(e<0||e>9999)return null;break;case "yyyy":e=parseInt(a,10);if(e<0||e>9999)return null;break;case "h":case "hh":d=parseInt(a,10);if(d===12)d=0;if(d<0||d>11)return null;break;case "H":case "HH":d=parseInt(a,10);if(d<0||d>23)return null;break;case "m":case "mm":p=parseInt(a,10);if(p<0||p>59)return null;break;case "s":case "ss":q=parseInt(a,10);if(q<0||q>59)return null;break;case "tt":case "t":var z=a.toUpperCase();v=z===g.PMDesignator.toUpperCase();if(!v&&z!==g.AMDesignator.toUpperCase())return null;break;case "f":f=parseInt(a,10)*100;if(f<0||f>999)return null;break;case "ff":f=parseInt(a,10)*10;if(f<0||f>999)return null;break;case "fff":f=parseInt(a,10);if(f<0||f>999)return null;break;case "dddd":i=k._getDayIndex(a);if(i<0||i>6)return null;break;case "ddd":i=k._getAbbrDayIndex(a);if(i<0||i>6)return null;break;case "zzz":var u=a.split(/:/);if(u.length!==2)return null;h=parseInt(u[0],10);if(h<-12||h>13)return null;var m=parseInt(u[1],10);if(m<0||m>59)return null;l=h*60+(a.startsWith("-")?-m:m);break;case "z":case "zz":h=parseInt(a,10);if(h<-12||h>13)return null;l=h*60;break;case "g":case "gg":var o=a;if(!o||!g.eras)return null;o=o.toLowerCase().trim();for(var r=0,F=g.eras.length;r<F;r+=4)if(o===g.eras[r+1].toLowerCase()){x=r;break}if(x===null)return null}}var b=new Date,t,n=g.Calendar.convert;if(n)t=n.fromGregorian(b)[0];else t=b.getFullYear();if(e===null)e=t;else if(g.eras)e+=g.eras[(x||0)+3];if(c===null)c=0;if(j===null)j=1;if(n){b=n.toGregorian(e,c,j);if(b===null)return null}else{b.setFullYear(e,c,j);if(b.getDate()!==j)return null;if(i!==null&&b.getDay()!==i)return null}if(v&&d<12)d+=12;b.setHours(d,p,q,f);if(l!==null){var y=b.getMinutes()-(l+b.getTimezoneOffset());b.setHours(b.getHours()+parseInt(y/60,10),y%60)}return b};Date.prototype.format=function(a){return this._toFormattedString(a,Sys.CultureInfo.InvariantCulture)};Date.prototype.localeFormat=function(a){return this._toFormattedString(a,Sys.CultureInfo.CurrentCulture)};Date.prototype._toFormattedString=function(e,j){var b=j.dateTimeFormat,n=b.Calendar.convert;if(!e||!e.length||e==="i")if(j&&j.name.length)if(n)return this._toFormattedString(b.FullDateTimePattern,j);else{var r=new Date(this.getTime()),x=Date._getEra(this,b.eras);r.setFullYear(Date._getEraYear(this,b,x));return r.toLocaleString()}else return this.toString();var l=b.eras,k=e==="s";e=Date._expandFormat(b,e);var a=new Sys.StringBuilder,c;function d(a){if(a<10)return "0"+a;return a.toString()}function m(a){if(a<10)return "00"+a;if(a<100)return "0"+a;return a.toString()}function v(a){if(a<10)return "000"+a;else if(a<100)return "00"+a;else if(a<1000)return "0"+a;return a.toString()}var h,p,t=/([^d]|^)(d|dd)([^d]|$)/g;function s(){if(h||p)return h;h=t.test(e);p=true;return h}var q=0,o=Date._getTokenRegExp(),f;if(!k&&n)f=n.fromGregorian(this);for(;true;){var w=o.lastIndex,i=o.exec(e),u=e.slice(w,i?i.index:e.length);q+=Date._appendPreOrPostMatch(u,a);if(!i)break;if(q%2===1){a.append(i[0]);continue}function g(a,b){if(f)return f[b];switch(b){case 0:return a.getFullYear();case 1:return a.getMonth();case 2:return a.getDate()}}switch(i[0]){case "dddd":a.append(b.DayNames[this.getDay()]);break;case "ddd":a.append(b.AbbreviatedDayNames[this.getDay()]);break;case "dd":h=true;a.append(d(g(this,2)));break;case "d":h=true;a.append(g(this,2));break;case "MMMM":a.append(b.MonthGenitiveNames&&s()?b.MonthGenitiveNames[g(this,1)]:b.MonthNames[g(this,1)]);break;case "MMM":a.append(b.AbbreviatedMonthGenitiveNames&&s()?b.AbbreviatedMonthGenitiveNames[g(this,1)]:b.AbbreviatedMonthNames[g(this,1)]);break;case "MM":a.append(d(g(this,1)+1));break;case "M":a.append(g(this,1)+1);break;case "yyyy":a.append(v(f?f[0]:Date._getEraYear(this,b,Date._getEra(this,l),k)));break;case "yy":a.append(d((f?f[0]:Date._getEraYear(this,b,Date._getEra(this,l),k))%100));break;case "y":a.append((f?f[0]:Date._getEraYear(this,b,Date._getEra(this,l),k))%100);break;case "hh":c=this.getHours()%12;if(c===0)c=12;a.append(d(c));break;case "h":c=this.getHours()%12;if(c===0)c=12;a.append(c);break;case "HH":a.append(d(this.getHours()));break;case "H":a.append(this.getHours());break;case "mm":a.append(d(this.getMinutes()));break;case "m":a.append(this.getMinutes());break;case "ss":a.append(d(this.getSeconds()));break;case "s":a.append(this.getSeconds());break;case "tt":a.append(this.getHours()<12?b.AMDesignator:b.PMDesignator);break;case "t":a.append((this.getHours()<12?b.AMDesignator:b.PMDesignator).charAt(0));break;case "f":a.append(m(this.getMilliseconds()).charAt(0));break;case "ff":a.append(m(this.getMilliseconds()).substr(0,2));break;case "fff":a.append(m(this.getMilliseconds()));break;case "z":c=this.getTimezoneOffset()/60;a.append((c<=0?"+":"-")+Math.floor(Math.abs(c)));break;case "zz":c=this.getTimezoneOffset()/60;a.append((c<=0?"+":"-")+d(Math.floor(Math.abs(c))));break;case "zzz":c=this.getTimezoneOffset()/60;a.append((c<=0?"+":"-")+d(Math.floor(Math.abs(c)))+":"+d(Math.abs(this.getTimezoneOffset()%60)));break;case "g":case "gg":if(b.eras)a.append(b.eras[Date._getEra(this,l)+1]);break;case "/":a.append(b.DateSeparator)}}return a.toString()};String.localeFormat=function(){return String._toFormattedString(true,arguments)};Number.parseLocale=function(a){return Number._parse(a,Sys.CultureInfo.CurrentCulture)};Number.parseInvariant=function(a){return Number._parse(a,Sys.CultureInfo.InvariantCulture)};Number._parse=function(b,o){b=b.trim();if(b.match(/^[+-]?infinity$/i))return parseFloat(b);if(b.match(/^0x[a-f0-9]+$/i))return parseInt(b);var a=o.numberFormat,g=Number._parseNumberNegativePattern(b,a,a.NumberNegativePattern),h=g[0],e=g[1];if(h===""&&a.NumberNegativePattern!==1){g=Number._parseNumberNegativePattern(b,a,1);h=g[0];e=g[1]}if(h==="")h="+";var j,d,f=e.indexOf("e");if(f<0)f=e.indexOf("E");if(f<0){d=e;j=null}else{d=e.substr(0,f);j=e.substr(f+1)}var c,k,m=d.indexOf(a.NumberDecimalSeparator);if(m<0){c=d;k=null}else{c=d.substr(0,m);k=d.substr(m+a.NumberDecimalSeparator.length)}c=c.split(a.NumberGroupSeparator).join("");var n=a.NumberGroupSeparator.replace(/\u00A0/g," ");if(a.NumberGroupSeparator!==n)c=c.split(n).join("");var l=h+c;if(k!==null)l+="."+k;if(j!==null){var i=Number._parseNumberNegativePattern(j,a,1);if(i[0]==="")i[0]="+";l+="e"+i[0]+i[1]}if(l.match(/^[+-]?\d*\.?\d*(e[+-]?\d+)?$/))return parseFloat(l);return Number.NaN};Number._parseNumberNegativePattern=function(a,d,e){var b=d.NegativeSign,c=d.PositiveSign;switch(e){case 4:b=" "+b;c=" "+c;case 3:if(a.endsWith(b))return ["-",a.substr(0,a.length-b.length)];else if(a.endsWith(c))return ["+",a.substr(0,a.length-c.length)];break;case 2:b+=" ";c+=" ";case 1:if(a.startsWith(b))return ["-",a.substr(b.length)];else if(a.startsWith(c))return ["+",a.substr(c.length)];break;case 0:if(a.startsWith("(")&&a.endsWith(")"))return ["-",a.substr(1,a.length-2)]}return ["",a]};Number.prototype.format=function(a){return this._toFormattedString(a,Sys.CultureInfo.InvariantCulture)};Number.prototype.localeFormat=function(a){return this._toFormattedString(a,Sys.CultureInfo.CurrentCulture)};Number.prototype._toFormattedString=function(e,j){if(!e||e.length===0||e==="i")if(j&&j.name.length>0)return this.toLocaleString();else return this.toString();var o=["n %","n%","%n"],n=["-n %","-n%","-%n"],p=["(n)","-n","- n","n-","n -"],m=["$n","n$","$ n","n $"],l=["($n)","-$n","$-n","$n-","(n$)","-n$","n-$","n$-","-n $","-$ n","n $-","$ n-","$ -n","n- $","($ n)","(n $)"];function g(a,c,d){for(var b=a.length;b<c;b++)a=d?"0"+a:a+"0";return a}function i(j,i,l,n,p){var h=l[0],k=1,o=Math.pow(10,i),m=Math.round(j*o)/o;if(!isFinite(m))m=j;j=m;var b=j.toString(),a="",c,e=b.split(/e/i);b=e[0];c=e.length>1?parseInt(e[1]):0;e=b.split(".");b=e[0];a=e.length>1?e[1]:"";var q;if(c>0){a=g(a,c,false);b+=a.slice(0,c);a=a.substr(c)}else if(c<0){c=-c;b=g(b,c+1,true);a=b.slice(-c,b.length)+a;b=b.slice(0,-c)}if(i>0){if(a.length>i)a=a.slice(0,i);else a=g(a,i,false);a=p+a}else a="";var d=b.length-1,f="";while(d>=0){if(h===0||h>d)if(f.length>0)return b.slice(0,d+1)+n+f+a;else return b.slice(0,d+1)+a;if(f.length>0)f=b.slice(d-h+1,d+1)+n+f;else f=b.slice(d-h+1,d+1);d-=h;if(k<l.length){h=l[k];k++}}return b.slice(0,d+1)+n+f+a}var a=j.numberFormat,d=Math.abs(this);if(!e)e="D";var b=-1;if(e.length>1)b=parseInt(e.slice(1),10);var c;switch(e.charAt(0)){case "d":case "D":c="n";if(b!==-1)d=g(""+d,b,true);if(this<0)d=-d;break;case "c":case "C":if(this<0)c=l[a.CurrencyNegativePattern];else c=m[a.CurrencyPositivePattern];if(b===-1)b=a.CurrencyDecimalDigits;d=i(Math.abs(this),b,a.CurrencyGroupSizes,a.CurrencyGroupSeparator,a.CurrencyDecimalSeparator);break;case "n":case "N":if(this<0)c=p[a.NumberNegativePattern];else c="n";if(b===-1)b=a.NumberDecimalDigits;d=i(Math.abs(this),b,a.NumberGroupSizes,a.NumberGroupSeparator,a.NumberDecimalSeparator);break;case "p":case "P":if(this<0)c=n[a.PercentNegativePattern];else c=o[a.PercentPositivePattern];if(b===-1)b=a.PercentDecimalDigits;d=i(Math.abs(this)*100,b,a.PercentGroupSizes,a.PercentGroupSeparator,a.PercentDecimalSeparator);break;default:throw Error.format(Sys.Res.formatBadFormatSpecifier)}var k=/n|\$|-|%/g,f="";for(;true;){var q=k.lastIndex,h=k.exec(c);f+=c.slice(q,h?h.index:c.length);if(!h)break;switch(h[0]){case "n":f+=d;break;case "$":f+=a.CurrencySymbol;break;case "-":if(/[1-9]/.test(d))f+=a.NegativeSign;break;case "%":f+=a.PercentSymbol}}return f};Sys.CultureInfo=function(c,b,a){this.name=c;this.numberFormat=b;this.dateTimeFormat=a};Sys.CultureInfo.prototype={_getDateTimeFormats:function(){if(!this._dateTimeFormats){var a=this.dateTimeFormat;this._dateTimeFormats=[a.MonthDayPattern,a.YearMonthPattern,a.ShortDatePattern,a.ShortTimePattern,a.LongDatePattern,a.LongTimePattern,a.FullDateTimePattern,a.RFC1123Pattern,a.SortableDateTimePattern,a.UniversalSortableDateTimePattern]}return this._dateTimeFormats},_getIndex:function(c,d,e){var b=this._toUpper(c),a=Array.indexOf(d,b);if(a===-1)a=Array.indexOf(e,b);return a},_getMonthIndex:function(a){if(!this._upperMonths){this._upperMonths=this._toUpperArray(this.dateTimeFormat.MonthNames);this._upperMonthsGenitive=this._toUpperArray(this.dateTimeFormat.MonthGenitiveNames)}return this._getIndex(a,this._upperMonths,this._upperMonthsGenitive)},_getAbbrMonthIndex:function(a){if(!this._upperAbbrMonths){this._upperAbbrMonths=this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthNames);this._upperAbbrMonthsGenitive=this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthGenitiveNames)}return this._getIndex(a,this._upperAbbrMonths,this._upperAbbrMonthsGenitive)},_getDayIndex:function(a){if(!this._upperDays)this._upperDays=this._toUpperArray(this.dateTimeFormat.DayNames);return Array.indexOf(this._upperDays,this._toUpper(a))},_getAbbrDayIndex:function(a){if(!this._upperAbbrDays)this._upperAbbrDays=this._toUpperArray(this.dateTimeFormat.AbbreviatedDayNames);return Array.indexOf(this._upperAbbrDays,this._toUpper(a))},_toUpperArray:function(c){var b=[];for(var a=0,d=c.length;a<d;a++)b[a]=this._toUpper(c[a]);return b},_toUpper:function(a){return a.split("\u00a0").join(" ").toUpperCase()}};Sys.CultureInfo.registerClass("Sys.CultureInfo");Sys.CultureInfo._parse=function(a){var b=a.dateTimeFormat;if(b&&!b.eras)b.eras=a.eras;return new Sys.CultureInfo(a.name,a.numberFormat,b)};Sys.CultureInfo.InvariantCulture=Sys.CultureInfo._parse({"name":"","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":true,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"\u00a4","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":true},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, dd MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH':'mm':'ss 'GMT'","ShortDatePattern":"MM/dd/yyyy","ShortTimePattern":"HH:mm","SortableDateTimePattern":"yyyy'-'MM'-'dd'T'HH':'mm':'ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy'-'MM'-'dd HH':'mm':'ss'Z'","YearMonthPattern":"yyyy MMMM","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":true,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]},"eras":[1,"A.D.",null,0]});if(typeof __cultureInfo==="object"){Sys.CultureInfo.CurrentCulture=Sys.CultureInfo._parse(__cultureInfo);delete __cultureInfo}else Sys.CultureInfo.CurrentCulture=Sys.CultureInfo._parse({"name":"en-US","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecimalSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","CurrencySymbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dddd, MMMM dd, yyyy h:mm:ss tt","LongDatePattern":"dddd, MMMM dd, yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"MMMM dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy HH':'mm':'ss 'GMT'","ShortDatePattern":"M/d/yyyy","ShortTimePattern":"h:mm tt","SortableDateTimePattern":"yyyy'-'MM'-'dd'T'HH':'mm':'ss","TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy'-'MM'-'dd HH':'mm':'ss'Z'","YearMonthPattern":"MMMM, yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"AbbreviatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","May","June","July","August","September","October","November","December",""],"IsReadOnly":false,"NativeCalendarName":"Gregorian Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["January","February","March","April","May","June","July","August","September","October","November","December",""]},"eras":[1,"A.D.",null,0]});.//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjaxHistory.js
Type._registerScript("MicrosoftAjaxHistory.js",["MicrosoftAjaxComponentModel.js","MicrosoftAjaxSerialization.js"]);Sys.HistoryEventArgs=function(a){Sys.HistoryEventArgs.initializeBase(this);this._state=a};Sys.HistoryEventArgs.prototype={get_state:function(){return this._state}};Sys.HistoryEventArgs.registerClass("Sys.HistoryEventArgs",Sys.EventArgs);Sys.Application._appLoadHandler=null;Sys.Application._beginRequestHandler=null;Sys.Application._clientId=null;Sys.Application._currentEntry="";Sys.Application._endRequestHandler=null;Sys.Application._history=null;Sys.Application._enableHistory=false;Sys.Application._historyFrame=null;Sys.Application._historyInitialized=false;Sys.Application._historyPointIsNew=false;Sys.Application._ignoreTimer=false;Sys.Application._initialState=null;Sys.Application._state={};Sys.Application._timerCookie=0;Sys.Application._timerHandler=null;Sys.Application._uniqueId=null;Sys._Application.prototype.get_stateString=function(){var a=null;if(Sys.Browser.agent===Sys.Browser.Firefox){var c=window.location.href,b=c.indexOf("#");if(b!==-1)a=c.substring(b+1);else a="";return a}else a=window.location.hash;if(a.length>0&&a.charAt(0)==="#")a=a.substring(1);return a};Sys._Application.prototype.get_enableHistory=function(){return this._enableHistory};Sys._Application.prototype.set_enableHistory=function(a){this._enableHistory=a};Sys._Application.prototype.add_navigate=function(a){this.get_events().addHandler("navigate",a)};Sys._Application.prototype.remove_navigate=function(a){this.get_events().removeHandler("navigate",a)};Sys._Application.prototype.addHistoryPoint=function(c,f){this._ensureHistory();var b=this._state;for(var a in c){var d=c[a];if(d===null){if(typeof b[a]!=="undefined")delete b[a]}else b[a]=d}var e=this._serializeState(b);this._historyPointIsNew=true;this._setState(e,f);this._raiseNavigate()};Sys._Application.prototype.setServerId=function(a,b){this._clientId=a;this._uniqueId=b};Sys._Application.prototype.setServerState=function(a){this._ensureHistory();this._state.__s=a;this._updateHiddenField(a)};Sys._Application.prototype._deserializeState=function(a){var e={};a=a||"";var b=a.indexOf("&&");if(b!==-1&&b+2<a.length){e.__s=a.substr(b+2);a=a.substr(0,b)}var g=a.split("&");for(var f=0,j=g.length;f<j;f++){var d=g[f],c=d.indexOf("=");if(c!==-1&&c+1<d.length){var i=d.substr(0,c),h=d.substr(c+1);e[i]=decodeURIComponent(h)}}return e};Sys._Application.prototype._enableHistoryInScriptManager=function(){this._enableHistory=true};Sys._Application.prototype._ensureHistory=function(){if(!this._historyInitialized&&this._enableHistory){if(Sys.Browser.agent===Sys.Browser.InternetExplorer&&(!document.documentMode||document.documentMode<8)){this._historyFrame=document.getElementById("__historyFrame");this._ignoreIFrame=true}this._timerHandler=Function.createDelegate(this,this._onIdle);this._timerCookie=window.setTimeout(this._timerHandler,100);try{this._initialState=this._deserializeState(this.get_stateString())}catch(a){}this._historyInitialized=true}};Sys._Application.prototype._navigate=function(c){this._ensureHistory();var b=this._deserializeState(c);if(this._uniqueId){var d=this._state.__s||"",a=b.__s||"";if(a!==d){this._updateHiddenField(a);__doPostBack(this._uniqueId,a);this._state=b;return}}this._setState(c);this._state=b;this._raiseNavigate()};Sys._Application.prototype._onIdle=function(){delete this._timerCookie;var a=this.get_stateString();if(a!==this._currentEntry){if(!this._ignoreTimer){this._historyPointIsNew=false;this._navigate(a)}}else this._ignoreTimer=false;this._timerCookie=window.setTimeout(this._timerHandler,100)};Sys._Application.prototype._onIFrameLoad=function(a){if(!document.documentMode||document.documentMode<8){this._ensureHistory();if(!this._ignoreIFrame){this._historyPointIsNew=false;this._navigate(a)}this._ignoreIFrame=false}};Sys._Application.prototype._onPageRequestManagerBeginRequest=function(){this._ignoreTimer=true;this._originalTitle=document.title};Sys._Application.prototype._onPageRequestManagerEndRequest=function(g,f){var d=f.get_dataItems()[this._clientId],c=this._originalTitle;this._originalTitle=null;var b=document.getElementById("__EVENTTARGET");if(b&&b.value===this._uniqueId)b.value="";if(typeof d!=="undefined"){this.setServerState(d);this._historyPointIsNew=true}else this._ignoreTimer=false;var a=this._serializeState(this._state);if(a!==this._currentEntry){this._ignoreTimer=true;if(typeof c==="string"){if(Sys.Browser.agent!==Sys.Browser.InternetExplorer||Sys.Browser.version>7){var e=document.title;document.title=c;this._setState(a);document.title=e}else this._setState(a);this._raiseNavigate()}else{this._setState(a);this._raiseNavigate()}}};Sys._Application.prototype._raiseNavigate=function(){var d=this._historyPointIsNew,c=this.get_events().getHandler("navigate"),b={};for(var a in this._state)if(a!=="__s")b[a]=this._state[a];var e=new Sys.HistoryEventArgs(b);if(c)c(this,e);if(!d){var f;try{if(Sys.Browser.agent===Sys.Browser.Firefox&&window.location.hash&&(!window.frameElement||window.top.location.hash))Sys.Browser.version<3.5?window.history.go(0):(location.hash=this.get_stateString())}catch(g){}}};Sys._Application.prototype._serializeState=function(d){var b=[];for(var a in d){var e=d[a];if(a==="__s")var c=e;else b[b.length]=a+"="+encodeURIComponent(e)}return b.join("&")+(c?"&&"+c:"")};Sys._Application.prototype._setState=function(a,b){if(this._enableHistory){a=a||"";if(a!==this._currentEntry){if(window.theForm){var d=window.theForm.action,e=d.indexOf("#");window.theForm.action=(e!==-1?d.substring(0,e):d)+"#"+a}if(this._historyFrame&&this._historyPointIsNew){var f=document.createElement("div");f.appendChild(document.createTextNode(b||document.title));var g=f.innerHTML;this._ignoreIFrame=true;var c=this._historyFrame.contentWindow.document;c.open("javascript:'<html></html>'");c.write("<html><head><title>"+g+"</title><scri"+'pt type="text/javascript">parent.Sys.Application._onIFrameLoad('+Sys.Serialization.JavaScriptSerializer.serialize(a)+");</scri"+"pt></head><body></body></html>");c.close()}this._ignoreTimer=false;this._currentEntry=a;if(this._historyFrame||this._historyPointIsNew){var h=this.get_stateString();if(a!==h){window.location.hash=a;this._currentEntry=this.get_stateString();if(typeof b!=="undefined"&&b!==null)document.title=b}}this._historyPointIsNew=false}}};Sys._Application.prototype._updateHiddenField=function(b){if(this._clientId){var a=document.getElementById(this._clientId);if(a)a.value=b}};�1//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjaxNetwork.js
Type._registerScript("MicrosoftAjaxNetwork.js",["MicrosoftAjaxSerialization.js"]);if(!window.XMLHttpRequest)window.XMLHttpRequest=function(){var b=["Msxml2.XMLHTTP.3.0","Msxml2.XMLHTTP"];for(var a=0,c=b.length;a<c;a++)try{return new ActiveXObject(b[a])}catch(d){}return null};Type.registerNamespace("Sys.Net");Sys.Net.WebRequestExecutor=function(){this._webRequest=null;this._resultObject=null};Sys.Net.WebRequestExecutor.prototype={get_webRequest:function(){return this._webRequest},_set_webRequest:function(a){this._webRequest=a},get_started:function(){throw Error.notImplemented()},get_responseAvailable:function(){throw Error.notImplemented()},get_timedOut:function(){throw Error.notImplemented()},get_aborted:function(){throw Error.notImplemented()},get_responseData:function(){throw Error.notImplemented()},get_statusCode:function(){throw Error.notImplemented()},get_statusText:function(){throw Error.notImplemented()},get_xml:function(){throw Error.notImplemented()},get_object:function(){if(!this._resultObject)this._resultObject=Sys.Serialization.JavaScriptSerializer.deserialize(this.get_responseData());return this._resultObject},executeRequest:function(){throw Error.notImplemented()},abort:function(){throw Error.notImplemented()},getResponseHeader:function(){throw Error.notImplemented()},getAllResponseHeaders:function(){throw Error.notImplemented()}};Sys.Net.WebRequestExecutor.registerClass("Sys.Net.WebRequestExecutor");Sys.Net.XMLDOM=function(d){if(!window.DOMParser){var c=["Msxml2.DOMDocument.3.0","Msxml2.DOMDocument"];for(var b=0,f=c.length;b<f;b++)try{var a=new ActiveXObject(c[b]);a.async=false;a.loadXML(d);a.setProperty("SelectionLanguage","XPath");return a}catch(g){}}else try{var e=new window.DOMParser;return e.parseFromString(d,"text/xml")}catch(g){}return null};Sys.Net.XMLHttpExecutor=function(){Sys.Net.XMLHttpExecutor.initializeBase(this);var a=this;this._xmlHttpRequest=null;this._webRequest=null;this._responseAvailable=false;this._timedOut=false;this._timer=null;this._aborted=false;this._started=false;this._onReadyStateChange=function(){if(a._xmlHttpRequest.readyState===4){try{if(typeof a._xmlHttpRequest.status==="undefined"||a._xmlHttpRequest.status===0)return}catch(b){return}a._clearTimer();a._responseAvailable=true;try{a._webRequest.completed(Sys.EventArgs.Empty)}finally{if(a._xmlHttpRequest!=null){a._xmlHttpRequest.onreadystatechange=Function.emptyMethod;a._xmlHttpRequest=null}}}};this._clearTimer=function(){if(a._timer!=null){window.clearTimeout(a._timer);a._timer=null}};this._onTimeout=function(){if(!a._responseAvailable){a._clearTimer();a._timedOut=true;a._xmlHttpRequest.onreadystatechange=Function.emptyMethod;a._xmlHttpRequest.abort();a._webRequest.completed(Sys.EventArgs.Empty);a._xmlHttpRequest=null}}};Sys.Net.XMLHttpExecutor.prototype={get_timedOut:function(){return this._timedOut},get_started:function(){return this._started},get_responseAvailable:function(){return this._responseAvailable},get_aborted:function(){return this._aborted},executeRequest:function(){this._webRequest=this.get_webRequest();var c=this._webRequest.get_body(),a=this._webRequest.get_headers();this._xmlHttpRequest=new XMLHttpRequest;this._xmlHttpRequest.onreadystatechange=this._onReadyStateChange;var e=this._webRequest.get_httpVerb();this._xmlHttpRequest.open(e,this._webRequest.getResolvedUrl(),true);this._xmlHttpRequest.setRequestHeader("X-Requested-With","XMLHttpRequest");if(a)for(var b in a){var f=a[b];if(typeof f!=="function")this._xmlHttpRequest.setRequestHeader(b,f)}if(e.toLowerCase()==="post"){if(a===null||!a["Content-Type"])this._xmlHttpRequest.setRequestHeader("Content-Type","application/x-www-form-urlencoded; charset=utf-8");if(!c)c=""}var d=this._webRequest.get_timeout();if(d>0)this._timer=window.setTimeout(Function.createDelegate(this,this._onTimeout),d);this._xmlHttpRequest.send(c);this._started=true},getResponseHeader:function(b){var a;try{a=this._xmlHttpRequest.getResponseHeader(b)}catch(c){}if(!a)a="";return a},getAllResponseHeaders:function(){return this._xmlHttpRequest.getAllResponseHeaders()},get_responseData:function(){return this._xmlHttpRequest.responseText},get_statusCode:function(){var a=0;try{a=this._xmlHttpRequest.status}catch(b){}return a},get_statusText:function(){return this._xmlHttpRequest.statusText},get_xml:function(){var a=this._xmlHttpRequest.responseXML;if(!a||!a.documentElement){a=Sys.Net.XMLDOM(this._xmlHttpRequest.responseText);if(!a||!a.documentElement)return null}else if(navigator.userAgent.indexOf("MSIE")!==-1&&typeof a.setProperty!="undefined")a.setProperty("SelectionLanguage","XPath");if(a.documentElement.namespaceURI==="http://www.mozilla.org/newlayout/xml/parsererror.xml"&&a.documentElement.tagName==="parsererror")return null;if(a.documentElement.firstChild&&a.documentElement.firstChild.tagName==="parsererror")return null;return a},abort:function(){if(this._aborted||this._responseAvailable||this._timedOut)return;this._aborted=true;this._clearTimer();if(this._xmlHttpRequest&&!this._responseAvailable){this._xmlHttpRequest.onreadystatechange=Function.emptyMethod;this._xmlHttpRequest.abort();this._xmlHttpRequest=null;this._webRequest.completed(Sys.EventArgs.Empty)}}};Sys.Net.XMLHttpExecutor.registerClass("Sys.Net.XMLHttpExecutor",Sys.Net.WebRequestExecutor);Sys.Net._WebRequestManager=function(){this._defaultTimeout=0;this._defaultExecutorType="Sys.Net.XMLHttpExecutor"};Sys.Net._WebRequestManager.prototype={add_invokingRequest:function(a){this._get_eventHandlerList().addHandler("invokingRequest",a)},remove_invokingRequest:function(a){this._get_eventHandlerList().removeHandler("invokingRequest",a)},add_completedRequest:function(a){this._get_eventHandlerList().addHandler("completedRequest",a)},remove_completedRequest:function(a){this._get_eventHandlerList().removeHandler("completedRequest",a)},_get_eventHandlerList:function(){if(!this._events)this._events=new Sys.EventHandlerList;return this._events},get_defaultTimeout:function(){return this._defaultTimeout},set_defaultTimeout:function(a){this._defaultTimeout=a},get_defaultExecutorType:function(){return this._defaultExecutorType},set_defaultExecutorType:function(a){this._defaultExecutorType=a},executeRequest:function(webRequest){var executor=webRequest.get_executor();if(!executor){var failed=false;try{var executorType=eval(this._defaultExecutorType);executor=new executorType}catch(a){failed=true}webRequest.set_executor(executor)}if(executor.get_aborted())return;var evArgs=new Sys.Net.NetworkRequestEventArgs(webRequest),handler=this._get_eventHandlerList().getHandler("invokingRequest");if(handler)handler(this,evArgs);if(!evArgs.get_cancel())executor.executeRequest()}};Sys.Net._WebRequestManager.registerClass("Sys.Net._WebRequestManager");Sys.Net.WebRequestManager=new Sys.Net._WebRequestManager;Sys.Net.NetworkRequestEventArgs=function(a){Sys.Net.NetworkRequestEventArgs.initializeBase(this);this._webRequest=a};Sys.Net.NetworkRequestEventArgs.prototype={get_webRequest:function(){return this._webRequest}};Sys.Net.NetworkRequestEventArgs.registerClass("Sys.Net.NetworkRequestEventArgs",Sys.CancelEventArgs);Sys.Net.WebRequest=function(){this._url="";this._headers={};this._body=null;this._userContext=null;this._httpVerb=null;this._executor=null;this._invokeCalled=false;this._timeout=0};Sys.Net.WebRequest.prototype={add_completed:function(a){this._get_eventHandlerList().addHandler("completed",a)},remove_completed:function(a){this._get_eventHandlerList().removeHandler("completed",a)},completed:function(b){var a=Sys.Net.WebRequestManager._get_eventHandlerList().getHandler("completedRequest");if(a)a(this._executor,b);a=this._get_eventHandlerList().getHandler("completed");if(a)a(this._executor,b)},_get_eventHandlerList:function(){if(!this._events)this._events=new Sys.EventHandlerList;return this._events},get_url:function(){return this._url},set_url:function(a){this._url=a},get_headers:function(){return this._headers},get_httpVerb:function(){if(this._httpVerb===null){if(this._body===null)return "GET";return "POST"}return this._httpVerb},set_httpVerb:function(a){this._httpVerb=a},get_body:function(){return this._body},set_body:function(a){this._body=a},get_userContext:function(){return this._userContext},set_userContext:function(a){this._userContext=a},get_executor:function(){return this._executor},set_executor:function(a){this._executor=a;this._executor._set_webRequest(this)},get_timeout:function(){if(this._timeout===0)return Sys.Net.WebRequestManager.get_defaultTimeout();return this._timeout},set_timeout:function(a){this._timeout=a},getResolvedUrl:function(){return Sys.Net.WebRequest._resolveUrl(this._url)},invoke:function(){Sys.Net.WebRequestManager.executeRequest(this);this._invokeCalled=true}};Sys.Net.WebRequest._resolveUrl=function(b,a){if(b&&b.indexOf("://")!==-1)return b;if(!a||a.length===0){var d=document.getElementsByTagName("base")[0];if(d&&d.href&&d.href.length>0)a=d.href;else a=document.URL}var c=a.indexOf("?");if(c!==-1)a=a.substr(0,c);c=a.indexOf("#");if(c!==-1)a=a.substr(0,c);a=a.substr(0,a.lastIndexOf("/")+1);if(!b||b.length===0)return a;if(b.charAt(0)==="/"){var e=a.indexOf("://"),g=a.indexOf("/",e+3);return a.substr(0,g)+b}else{var f=a.lastIndexOf("/");return a.substr(0,f+1)+b}};Sys.Net.WebRequest._createQueryString=function(c,b,f){b=b||encodeURIComponent;var h=0,e,g,d,a=new Sys.StringBuilder;if(c)for(d in c){e=c[d];if(typeof e==="function")continue;g=Sys.Serialization.JavaScriptSerializer.serialize(e);if(h++)a.append("&");a.append(d);a.append("=");a.append(b(g))}if(f){if(h)a.append("&");a.append(f)}return a.toString()};Sys.Net.WebRequest._createUrl=function(a,b,c){if(!b&&!c)return a;var d=Sys.Net.WebRequest._createQueryString(b,null,c);return d.length?a+(a&&a.indexOf("?")>=0?"&":"?")+d:a};Sys.Net.WebRequest.registerClass("Sys.Net.WebRequest");Sys._ScriptLoaderTask=function(b,a){this._scriptElement=b;this._completedCallback=a};Sys._ScriptLoaderTask.prototype={get_scriptElement:function(){return this._scriptElement},dispose:function(){if(this._disposed)return;this._disposed=true;this._removeScriptElementHandlers();Sys._ScriptLoaderTask._clearScript(this._scriptElement);this._scriptElement=null},execute:function(){if(this._ensureReadyStateLoaded())this._executeInternal()},_executeInternal:function(){this._addScriptElementHandlers();document.getElementsByTagName("head")[0].appendChild(this._scriptElement)},_ensureReadyStateLoaded:function(){if(this._useReadyState()&&this._scriptElement.readyState!=="loaded"&&this._scriptElement.readyState!=="complete"){this._scriptDownloadDelegate=Function.createDelegate(this,this._executeInternal);$addHandler(this._scriptElement,"readystatechange",this._scriptDownloadDelegate);return false}return true},_addScriptElementHandlers:function(){if(this._scriptDownloadDelegate){$removeHandler(this._scriptElement,"readystatechange",this._scriptDownloadDelegate);this._scriptDownloadDelegate=null}this._scriptLoadDelegate=Function.createDelegate(this,this._scriptLoadHandler);if(this._useReadyState())$addHandler(this._scriptElement,"readystatechange",this._scriptLoadDelegate);else $addHandler(this._scriptElement,"load",this._scriptLoadDelegate);if(this._scriptElement.addEventListener){this._scriptErrorDelegate=Function.createDelegate(this,this._scriptErrorHandler);this._scriptElement.addEventListener("error",this._scriptErrorDelegate,false)}},_removeScriptElementHandlers:function(){if(this._scriptLoadDelegate){var a=this.get_scriptElement();if(this._scriptDownloadDelegate){$removeHandler(this._scriptElement,"readystatechange",this._scriptDownloadDelegate);this._scriptDownloadDelegate=null}if(this._useReadyState()&&this._scriptLoadDelegate)$removeHandler(a,"readystatechange",this._scriptLoadDelegate);else $removeHandler(a,"load",this._scriptLoadDelegate);if(this._scriptErrorDelegate){this._scriptElement.removeEventListener("error",this._scriptErrorDelegate,false);this._scriptErrorDelegate=null}this._scriptLoadDelegate=null}},_scriptErrorHandler:function(){if(this._disposed)return;this._completedCallback(this.get_scriptElement(),false)},_scriptLoadHandler:function(){if(this._disposed)return;var a=this.get_scriptElement();if(this._useReadyState()&&a.readyState!=="complete")return;this._completedCallback(a,true)},_useReadyState:function(){return Sys.Browser.agent===Sys.Browser.InternetExplorer&&(Sys.Browser.version<9||(document.documentMode||0)<9)}};Sys._ScriptLoaderTask.registerClass("Sys._ScriptLoaderTask",null,Sys.IDisposable);Sys._ScriptLoaderTask._clearScript=function(a){if(!Sys.Debug.isDebug&&a.parentNode)a.parentNode.removeChild(a)};P//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjaxSerialization.js
Type._registerScript("MicrosoftAjaxSerialization.js",["MicrosoftAjaxCore.js"]);Type.registerNamespace("Sys.Serialization");Sys.Serialization.JavaScriptSerializer=function(){};Sys.Serialization.JavaScriptSerializer.registerClass("Sys.Serialization.JavaScriptSerializer");Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs=[];Sys.Serialization.JavaScriptSerializer._charsToEscape=[];Sys.Serialization.JavaScriptSerializer._dateRegEx=new RegExp('(^|[^\\\\])\\"\\\\/Date\\((-?[0-9]+)(?:[a-zA-Z]|(?:\\+|-)[0-9]{4})?\\)\\\\/\\"',"g");Sys.Serialization.JavaScriptSerializer._escapeChars={};Sys.Serialization.JavaScriptSerializer._escapeRegEx=new RegExp('["\\\\\\x00-\\x1F]',"i");Sys.Serialization.JavaScriptSerializer._escapeRegExGlobal=new RegExp('["\\\\\\x00-\\x1F]',"g");Sys.Serialization.JavaScriptSerializer._jsonRegEx=new RegExp("[^,:{}\\[\\]0-9.\\-+Eaeflnr-u \\n\\r\\t]","g");Sys.Serialization.JavaScriptSerializer._jsonStringRegEx=new RegExp('"(\\\\.|[^"\\\\])*"',"g");Sys.Serialization.JavaScriptSerializer._serverTypeFieldName="__type";Sys.Serialization.JavaScriptSerializer._init=function(){var c=["\\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]="\\";Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs["\\"]=new RegExp("\\\\","g");Sys.Serialization.JavaScriptSerializer._escapeChars["\\"]="\\\\";Sys.Serialization.JavaScriptSerializer._charsToEscape[1]='"';Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs['"']=new RegExp('"',"g");Sys.Serialization.JavaScriptSerializer._escapeChars['"']='\\"';for(var a=0;a<32;a++){var b=String.fromCharCode(a);Sys.Serialization.JavaScriptSerializer._charsToEscape[a+2]=b;Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs[b]=new RegExp(b,"g");Sys.Serialization.JavaScriptSerializer._escapeChars[b]=c[a]}};Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder=function(b,a){a.append(b.toString())};Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder=function(a,b){if(isFinite(a))b.append(String(a));else throw Error.invalidOperation(Sys.Res.cannotSerializeNonFiniteNumbers)};Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder=function(a,c){c.append('"');if(Sys.Serialization.JavaScriptSerializer._escapeRegEx.test(a)){if(Sys.Serialization.JavaScriptSerializer._charsToEscape.length===0)Sys.Serialization.JavaScriptSerializer._init();if(a.length<128)a=a.replace(Sys.Serialization.JavaScriptSerializer._escapeRegExGlobal,function(a){return Sys.Serialization.JavaScriptSerializer._escapeChars[a]});else for(var d=0;d<34;d++){var b=Sys.Serialization.JavaScriptSerializer._charsToEscape[d];if(a.indexOf(b)!==-1)if(Sys.Browser.agent===Sys.Browser.Opera||Sys.Browser.agent===Sys.Browser.FireFox)a=a.split(b).join(Sys.Serialization.JavaScriptSerializer._escapeChars[b]);else a=a.replace(Sys.Serialization.JavaScriptSerializer._charsToEscapeRegExs[b],Sys.Serialization.JavaScriptSerializer._escapeChars[b])}}c.append(a);c.append('"')};Sys.Serialization.JavaScriptSerializer._serializeWithBuilder=function(b,a,i,g){var c;switch(typeof b){case "object":if(b)if(Number.isInstanceOfType(b))Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder(b,a);else if(Boolean.isInstanceOfType(b))Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder(b,a);else if(String.isInstanceOfType(b))Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder(b,a);else if(Array.isInstanceOfType(b)){a.append("[");for(c=0;c<b.length;++c){if(c>0)a.append(",");Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(b[c],a,false,g)}a.append("]")}else{if(Date.isInstanceOfType(b)){a.append('"\\/Date(');a.append(b.getTime());a.append(')\\/"');break}var d=[],f=0;for(var e in b){if(e.startsWith("$"))continue;if(e===Sys.Serialization.JavaScriptSerializer._serverTypeFieldName&&f!==0){d[f++]=d[0];d[0]=e}else d[f++]=e}if(i)d.sort();a.append("{");var j=false;for(c=0;c<f;c++){var h=b[d[c]];if(typeof h!=="undefined"&&typeof h!=="function"){if(j)a.append(",");else j=true;Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(d[c],a,i,g);a.append(":");Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(h,a,i,g)}}a.append("}")}else a.append("null");break;case "number":Sys.Serialization.JavaScriptSerializer._serializeNumberWithBuilder(b,a);break;case "string":Sys.Serialization.JavaScriptSerializer._serializeStringWithBuilder(b,a);break;case "boolean":Sys.Serialization.JavaScriptSerializer._serializeBooleanWithBuilder(b,a);break;default:a.append("null")}};Sys.Serialization.JavaScriptSerializer.serialize=function(b){var a=new Sys.StringBuilder;Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(b,a,false);return a.toString()};Sys.Serialization.JavaScriptSerializer.deserialize=function(data,secure){if(data.length===0)throw Error.argument("data",Sys.Res.cannotDeserializeEmptyString);try{var exp=data.replace(Sys.Serialization.JavaScriptSerializer._dateRegEx,"$1new Date($2)");if(secure&&Sys.Serialization.JavaScriptSerializer._jsonRegEx.test(exp.replace(Sys.Serialization.JavaScriptSerializer._jsonStringRegEx,"")))throw null;return eval("("+exp+")")}catch(a){throw Error.argument("data",Sys.Res.cannotDeserializeInvalidJson)}};�	//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjaxTimer.js
Type._registerScript("Timer.js",["MicrosoftAjaxComponentModel.js"]);Sys.UI._Timer=function(a){Sys.UI._Timer.initializeBase(this,[a]);this._interval=60000;this._enabled=true;this._postbackPending=false;this._raiseTickDelegate=null;this._endRequestHandlerDelegate=null;this._timer=null;this._pageRequestManager=null;this._uniqueID=null};Sys.UI._Timer.prototype={get_enabled:function(){return this._enabled},set_enabled:function(a){this._enabled=a},get_interval:function(){return this._interval},set_interval:function(a){this._interval=a},get_uniqueID:function(){return this._uniqueID},set_uniqueID:function(a){this._uniqueID=a},dispose:function(){this._stopTimer();if(this._pageRequestManager!==null)this._pageRequestManager.remove_endRequest(this._endRequestHandlerDelegate);Sys.UI._Timer.callBaseMethod(this,"dispose")},_doPostback:function(){__doPostBack(this.get_uniqueID(),"")},_handleEndRequest:function(c,b){var a=b.get_dataItems()[this.get_id()];if(a)this._update(a[0],a[1]);if(this._postbackPending===true&&this._pageRequestManager!==null&&this._pageRequestManager.get_isInAsyncPostBack()===false){this._postbackPending=false;this._doPostback()}},initialize:function(){Sys.UI._Timer.callBaseMethod(this,"initialize");this._raiseTickDelegate=Function.createDelegate(this,this._raiseTick);this._endRequestHandlerDelegate=Function.createDelegate(this,this._handleEndRequest);if(Sys.WebForms&&Sys.WebForms.PageRequestManager)this._pageRequestManager=Sys.WebForms.PageRequestManager.getInstance();if(this._pageRequestManager!==null)this._pageRequestManager.add_endRequest(this._endRequestHandlerDelegate);if(this.get_enabled())this._startTimer()},_raiseTick:function(){this._startTimer();if(this._pageRequestManager===null||!this._pageRequestManager.get_isInAsyncPostBack()){this._doPostback();this._postbackPending=false}else this._postbackPending=true},_startTimer:function(){this._timer=window.setTimeout(Function.createDelegate(this,this._raiseTick),this.get_interval())},_stopTimer:function(){if(this._timer!==null){window.clearTimeout(this._timer);this._timer=null}},_update:function(c,b){var a=!this.get_enabled(),d=this.get_interval()!==b;if(!a&&(!c||d)){this._stopTimer();a=true}this.set_enabled(c);this.set_interval(b);if(this.get_enabled()&&a)this._startTimer()}};Sys.UI._Timer.registerClass("Sys.UI._Timer",Sys.UI.Control);0�//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjaxWebForms.js
Type._registerScript("MicrosoftAjaxWebForms.js",["MicrosoftAjaxCore.js","MicrosoftAjaxSerialization.js","MicrosoftAjaxNetwork.js","MicrosoftAjaxComponentModel.js"]);Type.registerNamespace("Sys.WebForms");Sys.WebForms.BeginRequestEventArgs=function(c,b,a){Sys.WebForms.BeginRequestEventArgs.initializeBase(this);this._request=c;this._postBackElement=b;this._updatePanelsToUpdate=a};Sys.WebForms.BeginRequestEventArgs.prototype={get_postBackElement:function(){return this._postBackElement},get_request:function(){return this._request},get_updatePanelsToUpdate:function(){return this._updatePanelsToUpdate?Array.clone(this._updatePanelsToUpdate):[]}};Sys.WebForms.BeginRequestEventArgs.registerClass("Sys.WebForms.BeginRequestEventArgs",Sys.EventArgs);Sys.WebForms.EndRequestEventArgs=function(c,a,b){Sys.WebForms.EndRequestEventArgs.initializeBase(this);this._errorHandled=false;this._error=c;this._dataItems=a||{};this._response=b};Sys.WebForms.EndRequestEventArgs.prototype={get_dataItems:function(){return this._dataItems},get_error:function(){return this._error},get_errorHandled:function(){return this._errorHandled},set_errorHandled:function(a){this._errorHandled=a},get_response:function(){return this._response}};Sys.WebForms.EndRequestEventArgs.registerClass("Sys.WebForms.EndRequestEventArgs",Sys.EventArgs);Sys.WebForms.InitializeRequestEventArgs=function(c,b,a){Sys.WebForms.InitializeRequestEventArgs.initializeBase(this);this._request=c;this._postBackElement=b;this._updatePanelsToUpdate=a};Sys.WebForms.InitializeRequestEventArgs.prototype={get_postBackElement:function(){return this._postBackElement},get_request:function(){return this._request},get_updatePanelsToUpdate:function(){return this._updatePanelsToUpdate?Array.clone(this._updatePanelsToUpdate):[]},set_updatePanelsToUpdate:function(a){this._updated=true;this._updatePanelsToUpdate=a}};Sys.WebForms.InitializeRequestEventArgs.registerClass("Sys.WebForms.InitializeRequestEventArgs",Sys.CancelEventArgs);Sys.WebForms.PageLoadedEventArgs=function(b,a,c){Sys.WebForms.PageLoadedEventArgs.initializeBase(this);this._panelsUpdated=b;this._panelsCreated=a;this._dataItems=c||{}};Sys.WebForms.PageLoadedEventArgs.prototype={get_dataItems:function(){return this._dataItems},get_panelsCreated:function(){return this._panelsCreated},get_panelsUpdated:function(){return this._panelsUpdated}};Sys.WebForms.PageLoadedEventArgs.registerClass("Sys.WebForms.PageLoadedEventArgs",Sys.EventArgs);Sys.WebForms.PageLoadingEventArgs=function(b,a,c){Sys.WebForms.PageLoadingEventArgs.initializeBase(this);this._panelsUpdating=b;this._panelsDeleting=a;this._dataItems=c||{}};Sys.WebForms.PageLoadingEventArgs.prototype={get_dataItems:function(){return this._dataItems},get_panelsDeleting:function(){return this._panelsDeleting},get_panelsUpdating:function(){return this._panelsUpdating}};Sys.WebForms.PageLoadingEventArgs.registerClass("Sys.WebForms.PageLoadingEventArgs",Sys.EventArgs);Sys._ScriptLoader=function(){this._scriptsToLoad=null;this._sessions=[];this._scriptLoadedDelegate=Function.createDelegate(this,this._scriptLoadedHandler)};Sys._ScriptLoader.prototype={dispose:function(){this._stopSession();this._loading=false;if(this._events)delete this._events;this._sessions=null;this._currentSession=null;this._scriptLoadedDelegate=null},loadScripts:function(d,b,c,a){var e={allScriptsLoadedCallback:b,scriptLoadFailedCallback:c,scriptLoadTimeoutCallback:a,scriptsToLoad:this._scriptsToLoad,scriptTimeout:d};this._scriptsToLoad=null;this._sessions[this._sessions.length]=e;if(!this._loading)this._nextSession()},queueCustomScriptTag:function(a){if(!this._scriptsToLoad)this._scriptsToLoad=[];Array.add(this._scriptsToLoad,a)},queueScriptBlock:function(a){if(!this._scriptsToLoad)this._scriptsToLoad=[];Array.add(this._scriptsToLoad,{text:a})},queueScriptReference:function(a,b){if(!this._scriptsToLoad)this._scriptsToLoad=[];Array.add(this._scriptsToLoad,{src:a,fallback:b})},_createScriptElement:function(c){var a=document.createElement("script");a.type="text/javascript";for(var b in c)a[b]=c[b];return a},_loadScriptsInternal:function(){var c=this._currentSession;if(c.scriptsToLoad&&c.scriptsToLoad.length>0){var b=Array.dequeue(c.scriptsToLoad),f=this._scriptLoadedDelegate;if(b.fallback){var g=b.fallback;delete b.fallback;var d=this;f=function(b,a){a||function(){var a=d._createScriptElement({src:g});d._currentTask=new Sys._ScriptLoaderTask(a,d._scriptLoadedDelegate);d._currentTask.execute()}()}}var a=this._createScriptElement(b);if(a.text&&Sys.Browser.agent===Sys.Browser.Safari){a.innerHTML=a.text;delete a.text}if(typeof b.src==="string"){this._currentTask=new Sys._ScriptLoaderTask(a,f);this._currentTask.execute()}else{document.getElementsByTagName("head")[0].appendChild(a);Sys._ScriptLoaderTask._clearScript(a);this._loadScriptsInternal()}}else{this._stopSession();var e=c.allScriptsLoadedCallback;if(e)e(this);this._nextSession()}},_nextSession:function(){if(this._sessions.length===0){this._loading=false;this._currentSession=null;return}this._loading=true;var a=Array.dequeue(this._sessions);this._currentSession=a;if(a.scriptTimeout>0)this._timeoutCookie=window.setTimeout(Function.createDelegate(this,this._scriptLoadTimeoutHandler),a.scriptTimeout*1000);this._loadScriptsInternal()},_raiseError:function(){var b=this._currentSession.scriptLoadFailedCallback,a=this._currentTask.get_scriptElement();this._stopSession();if(b){b(this,a);this._nextSession()}else{this._loading=false;throw Sys._ScriptLoader._errorScriptLoadFailed(a.src)}},_scriptLoadedHandler:function(a,b){if(b){Array.add(Sys._ScriptLoader._getLoadedScripts(),a.src);this._currentTask.dispose();this._currentTask=null;this._loadScriptsInternal()}else this._raiseError()},_scriptLoadTimeoutHandler:function(){var a=this._currentSession.scriptLoadTimeoutCallback;this._stopSession();if(a)a(this);this._nextSession()},_stopSession:function(){if(this._timeoutCookie){window.clearTimeout(this._timeoutCookie);this._timeoutCookie=null}if(this._currentTask){this._currentTask.dispose();this._currentTask=null}}};Sys._ScriptLoader.registerClass("Sys._ScriptLoader",null,Sys.IDisposable);Sys._ScriptLoader.getInstance=function(){var a=Sys._ScriptLoader._activeInstance;if(!a)a=Sys._ScriptLoader._activeInstance=new Sys._ScriptLoader;return a};Sys._ScriptLoader.isScriptLoaded=function(b){var a=document.createElement("script");a.src=b;return Array.contains(Sys._ScriptLoader._getLoadedScripts(),a.src)};Sys._ScriptLoader.readLoadedScripts=function(){if(!Sys._ScriptLoader._referencedScripts){var c=Sys._ScriptLoader._referencedScripts=[],d=document.getElementsByTagName("script");for(var b=d.length-1;b>=0;b--){var e=d[b],a=e.src;if(a.length)if(!Array.contains(c,a))Array.add(c,a)}}};Sys._ScriptLoader._errorScriptLoadFailed=function(b){var a;a=Sys.Res.scriptLoadFailed;var d="Sys.ScriptLoadFailedException: "+String.format(a,b),c=Error.create(d,{name:"Sys.ScriptLoadFailedException","scriptUrl":b});c.popStackFrame();return c};Sys._ScriptLoader._getLoadedScripts=function(){if(!Sys._ScriptLoader._referencedScripts){Sys._ScriptLoader._referencedScripts=[];Sys._ScriptLoader.readLoadedScripts()}return Sys._ScriptLoader._referencedScripts};Sys.WebForms.PageRequestManager=function(){this._form=null;this._activeDefaultButton=null;this._activeDefaultButtonClicked=false;this._updatePanelIDs=null;this._updatePanelClientIDs=null;this._updatePanelHasChildrenAsTriggers=null;this._asyncPostBackControlIDs=null;this._asyncPostBackControlClientIDs=null;this._postBackControlIDs=null;this._postBackControlClientIDs=null;this._scriptManagerID=null;this._pageLoadedHandler=null;this._additionalInput=null;this._onsubmit=null;this._onSubmitStatements=[];this._originalDoPostBack=null;this._originalDoPostBackWithOptions=null;this._originalFireDefaultButton=null;this._originalDoCallback=null;this._isCrossPost=false;this._postBackSettings=null;this._request=null;this._onFormSubmitHandler=null;this._onFormElementClickHandler=null;this._onWindowUnloadHandler=null;this._asyncPostBackTimeout=null;this._controlIDToFocus=null;this._scrollPosition=null;this._processingRequest=false;this._scriptDisposes={};this._transientFields=["__VIEWSTATEENCRYPTED","__VIEWSTATEFIELDCOUNT"];this._textTypes=/^(text|password|hidden|search|tel|url|email|number|range|color|datetime|date|month|week|time|datetime-local)$/i};Sys.WebForms.PageRequestManager.prototype={_get_eventHandlerList:function(){if(!this._events)this._events=new Sys.EventHandlerList;return this._events},get_isInAsyncPostBack:function(){return this._request!==null},add_beginRequest:function(a){this._get_eventHandlerList().addHandler("beginRequest",a)},remove_beginRequest:function(a){this._get_eventHandlerList().removeHandler("beginRequest",a)},add_endRequest:function(a){this._get_eventHandlerList().addHandler("endRequest",a)},remove_endRequest:function(a){this._get_eventHandlerList().removeHandler("endRequest",a)},add_initializeRequest:function(a){this._get_eventHandlerList().addHandler("initializeRequest",a)},remove_initializeRequest:function(a){this._get_eventHandlerList().removeHandler("initializeRequest",a)},add_pageLoaded:function(a){this._get_eventHandlerList().addHandler("pageLoaded",a)},remove_pageLoaded:function(a){this._get_eventHandlerList().removeHandler("pageLoaded",a)},add_pageLoading:function(a){this._get_eventHandlerList().addHandler("pageLoading",a)},remove_pageLoading:function(a){this._get_eventHandlerList().removeHandler("pageLoading",a)},abortPostBack:function(){if(!this._processingRequest&&this._request){this._request.get_executor().abort();this._request=null}},beginAsyncPostBack:function(c,a,f,d,e){if(d&&typeof Page_ClientValidate==="function"&&!Page_ClientValidate(e||null))return;this._postBackSettings=this._createPostBackSettings(true,c,a);var b=this._form;b.__EVENTTARGET.value=a||"";b.__EVENTARGUMENT.value=f||"";this._isCrossPost=false;this._additionalInput=null;this._onFormSubmit()},_cancelPendingCallbacks:function(){for(var a=0,e=window.__pendingCallbacks.length;a<e;a++){var c=window.__pendingCallbacks[a];if(c){if(!c.async)window.__synchronousCallBackIndex=-1;window.__pendingCallbacks[a]=null;var d="__CALLBACKFRAME"+a,b=document.getElementById(d);if(b)b.parentNode.removeChild(b)}}},_commitControls:function(a,b){if(a){this._updatePanelIDs=a.updatePanelIDs;this._updatePanelClientIDs=a.updatePanelClientIDs;this._updatePanelHasChildrenAsTriggers=a.updatePanelHasChildrenAsTriggers;this._asyncPostBackControlIDs=a.asyncPostBackControlIDs;this._asyncPostBackControlClientIDs=a.asyncPostBackControlClientIDs;this._postBackControlIDs=a.postBackControlIDs;this._postBackControlClientIDs=a.postBackControlClientIDs}if(typeof b!=="undefined"&&b!==null)this._asyncPostBackTimeout=b*1000},_createHiddenField:function(c,d){var b,a=document.getElementById(c);if(a)if(!a._isContained)a.parentNode.removeChild(a);else b=a.parentNode;if(!b){b=document.createElement("span");b.style.cssText="display:none !important";this._form.appendChild(b)}b.innerHTML="<input type='hidden' />";a=b.childNodes[0];a._isContained=true;a.id=a.name=c;a.value=d},_createPageRequestManagerTimeoutError:function(){var b="Sys.WebForms.PageRequestManagerTimeoutException: "+Sys.WebForms.Res.PRM_TimeoutError,a=Error.create(b,{name:"Sys.WebForms.PageRequestManagerTimeoutException"});a.popStackFrame();return a},_createPageRequestManagerServerError:function(a,d){var c="Sys.WebForms.PageRequestManagerServerErrorException: "+(d||String.format(Sys.WebForms.Res.PRM_ServerError,a)),b=Error.create(c,{name:"Sys.WebForms.PageRequestManagerServerErrorException",httpStatusCode:a});b.popStackFrame();return b},_createPageRequestManagerParserError:function(b){var c="Sys.WebForms.PageRequestManagerParserErrorException: "+String.format(Sys.WebForms.Res.PRM_ParserError,b),a=Error.create(c,{name:"Sys.WebForms.PageRequestManagerParserErrorException"});a.popStackFrame();return a},_createPanelID:function(e,b){var c=b.asyncTarget,a=this._ensureUniqueIds(e||b.panelsToUpdate),d=a instanceof Array?a.join(","):a||this._scriptManagerID;if(c)d+="|"+c;return encodeURIComponent(this._scriptManagerID)+"="+encodeURIComponent(d)+"&"},_createPostBackSettings:function(d,a,c,b){return {async:d,asyncTarget:c,panelsToUpdate:a,sourceElement:b}},_convertToClientIDs:function(a,f,e,d){if(a)for(var b=0,h=a.length;b<h;b+=d?2:1){var c=a[b],g=(d?a[b+1]:"")||this._uniqueIDToClientID(c);Array.add(f,c);Array.add(e,g)}},dispose:function(){if(this._form){Sys.UI.DomEvent.removeHandler(this._form,"submit",this._onFormSubmitHandler);Sys.UI.DomEvent.removeHandler(this._form,"click",this._onFormElementClickHandler);Sys.UI.DomEvent.removeHandler(window,"unload",this._onWindowUnloadHandler);Sys.UI.DomEvent.removeHandler(window,"load",this._pageLoadedHandler)}if(this._originalDoPostBack){window.__doPostBack=this._originalDoPostBack;this._originalDoPostBack=null}if(this._originalDoPostBackWithOptions){window.WebForm_DoPostBackWithOptions=this._originalDoPostBackWithOptions;this._originalDoPostBackWithOptions=null}if(this._originalFireDefaultButton){window.WebForm_FireDefaultButton=this._originalFireDefaultButton;this._originalFireDefaultButton=null}if(this._originalDoCallback){window.WebForm_DoCallback=this._originalDoCallback;this._originalDoCallback=null}this._form=null;this._updatePanelIDs=null;this._updatePanelClientIDs=null;this._asyncPostBackControlIDs=null;this._asyncPostBackControlClientIDs=null;this._postBackControlIDs=null;this._postBackControlClientIDs=null;this._asyncPostBackTimeout=null;this._scrollPosition=null;this._activeElement=null},_doCallback:function(d,b,c,f,a,e){if(!this.get_isInAsyncPostBack())this._originalDoCallback(d,b,c,f,a,e)},_doPostBack:function(a,k){var f=window.event;if(!f){var d=arguments.callee?arguments.callee.caller:null;if(d){var j=30;while(d.arguments.callee.caller&&--j)d=d.arguments.callee.caller;f=j&&d.arguments.length?d.arguments[0]:null}}this._additionalInput=null;var h=this._form;if(a===null||typeof a==="undefined"||this._isCrossPost){this._postBackSettings=this._createPostBackSettings(false);this._isCrossPost=false}else{var c=this._masterPageUniqueID,l=this._uniqueIDToClientID(a),g=document.getElementById(l);if(!g&&c)if(a.indexOf(c+"$")===0)g=document.getElementById(l.substr(c.length+1));if(!g)if(Array.contains(this._asyncPostBackControlIDs,a))this._postBackSettings=this._createPostBackSettings(true,null,a);else if(Array.contains(this._postBackControlIDs,a))this._postBackSettings=this._createPostBackSettings(false);else{var e=this._findNearestElement(a);if(e)this._postBackSettings=this._getPostBackSettings(e,a);else{if(c){c+="$";if(a.indexOf(c)===0)e=this._findNearestElement(a.substr(c.length))}if(e)this._postBackSettings=this._getPostBackSettings(e,a);else{var b;try{b=f?f.target||f.srcElement:null}catch(n){}b=b||this._activeElement;var m=/__doPostBack\(|WebForm_DoPostBackWithOptions\(/;function i(b){b=b?b.toString():"";return m.test(b)&&b.indexOf("'"+a+"'")!==-1||b.indexOf('"'+a+'"')!==-1}if(b&&(b.name===a||i(b.href)||i(b.onclick)||i(b.onchange)))this._postBackSettings=this._getPostBackSettings(b,a);else this._postBackSettings=this._createPostBackSettings(false)}}}else this._postBackSettings=this._getPostBackSettings(g,a)}if(!this._postBackSettings.async){h.onsubmit=this._onsubmit;this._originalDoPostBack(a,k);h.onsubmit=null;return}h.__EVENTTARGET.value=a;h.__EVENTARGUMENT.value=k;this._onFormSubmit()},_doPostBackWithOptions:function(a){this._isCrossPost=a&&a.actionUrl;var d=true;if(a.validation)if(typeof Page_ClientValidate=="function")d=Page_ClientValidate(a.validationGroup);if(d){if(typeof a.actionUrl!="undefined"&&a.actionUrl!=null&&a.actionUrl.length>0)theForm.action=a.actionUrl;if(a.trackFocus){var c=theForm.elements["__LASTFOCUS"];if(typeof c!="undefined"&&c!=null)if(typeof document.activeElement=="undefined")c.value=a.eventTarget;else{var b=document.activeElement;if(typeof b!="undefined"&&b!=null)if(typeof b.id!="undefined"&&b.id!=null&&b.id.length>0)c.value=b.id;else if(typeof b.name!="undefined")c.value=b.name}}}if(a.clientSubmit)this._doPostBack(a.eventTarget,a.eventArgument)},_elementContains:function(b,a){while(a){if(a===b)return true;a=a.parentNode}return false},_endPostBack:function(a,d,f){if(this._request===d.get_webRequest()){this._processingRequest=false;this._additionalInput=null;this._request=null}var e=this._get_eventHandlerList().getHandler("endRequest"),b=false;if(e){var c=new Sys.WebForms.EndRequestEventArgs(a,f?f.dataItems:{},d);e(this,c);b=c.get_errorHandled()}if(a&&!b)throw a},_ensureUniqueIds:function(a){if(!a)return a;a=a instanceof Array?a:[a];var c=[];for(var b=0,f=a.length;b<f;b++){var e=a[b],d=Array.indexOf(this._updatePanelClientIDs,e);c.push(d>-1?this._updatePanelIDs[d]:e)}return c},_findNearestElement:function(a){while(a.length>0){var d=this._uniqueIDToClientID(a),c=document.getElementById(d);if(c)return c;var b=a.lastIndexOf("$");if(b===-1)return null;a=a.substring(0,b)}return null},_findText:function(b,a){var c=Math.max(0,a-20),d=Math.min(b.length,a+20);return b.substring(c,d)},_fireDefaultButton:function(a,d){if(a.keyCode===13){var c=a.srcElement||a.target;if(!c||c.tagName.toLowerCase()!=="textarea"){var b=document.getElementById(d);if(b&&typeof b.click!=="undefined"){this._activeDefaultButton=b;this._activeDefaultButtonClicked=false;try{b.click()}finally{this._activeDefaultButton=null}a.cancelBubble=true;if(typeof a.stopPropagation==="function")a.stopPropagation();return false}}}return true},_getPageLoadedEventArgs:function(n,c){var m=[],l=[],k=c?c.version4:false,d=c?c.updatePanelData:null,e,g,h,b;if(!d){e=this._updatePanelIDs;g=this._updatePanelClientIDs;h=null;b=null}else{e=d.updatePanelIDs;g=d.updatePanelClientIDs;h=d.childUpdatePanelIDs;b=d.panelsToRefreshIDs}var a,f,j,i;if(b)for(a=0,f=b.length;a<f;a+=k?2:1){j=b[a];i=(k?b[a+1]:"")||this._uniqueIDToClientID(j);Array.add(m,document.getElementById(i))}for(a=0,f=e.length;a<f;a++)if(n||Array.indexOf(h,e[a])!==-1)Array.add(l,document.getElementById(g[a]));return new Sys.WebForms.PageLoadedEventArgs(m,l,c?c.dataItems:{})},_getPageLoadingEventArgs:function(f){var j=[],i=[],c=f.updatePanelData,k=c.oldUpdatePanelIDs,l=c.oldUpdatePanelClientIDs,n=c.updatePanelIDs,m=c.childUpdatePanelIDs,d=c.panelsToRefreshIDs,a,e,b,g,h=f.version4;for(a=0,e=d.length;a<e;a+=h?2:1){b=d[a];g=(h?d[a+1]:"")||this._uniqueIDToClientID(b);Array.add(j,document.getElementById(g))}for(a=0,e=k.length;a<e;a++){b=k[a];if(Array.indexOf(d,b)===-1&&(Array.indexOf(n,b)===-1||Array.indexOf(m,b)>-1))Array.add(i,document.getElementById(l[a]))}return new Sys.WebForms.PageLoadingEventArgs(j,i,f.dataItems)},_getPostBackSettings:function(a,c){var d=a,b=null;while(a){if(a.id){if(!b&&Array.contains(this._asyncPostBackControlClientIDs,a.id))b=this._createPostBackSettings(true,null,c,d);else if(!b&&Array.contains(this._postBackControlClientIDs,a.id))return this._createPostBackSettings(false);else{var e=Array.indexOf(this._updatePanelClientIDs,a.id);if(e!==-1)if(this._updatePanelHasChildrenAsTriggers[e])return this._createPostBackSettings(true,[this._updatePanelIDs[e]],c,d);else return this._createPostBackSettings(true,null,c,d)}if(!b&&this._matchesParentIDInList(a.id,this._asyncPostBackControlClientIDs))b=this._createPostBackSettings(true,null,c,d);else if(!b&&this._matchesParentIDInList(a.id,this._postBackControlClientIDs))return this._createPostBackSettings(false)}a=a.parentNode}if(!b)return this._createPostBackSettings(false);else return b},_getScrollPosition:function(){var a=document.documentElement;if(a&&(this._validPosition(a.scrollLeft)||this._validPosition(a.scrollTop)))return {x:a.scrollLeft,y:a.scrollTop};else{a=document.body;if(a&&(this._validPosition(a.scrollLeft)||this._validPosition(a.scrollTop)))return {x:a.scrollLeft,y:a.scrollTop};else if(this._validPosition(window.pageXOffset)||this._validPosition(window.pageYOffset))return {x:window.pageXOffset,y:window.pageYOffset};else return {x:0,y:0}}},_initializeInternal:function(f,g,a,b,e,c,d){if(this._prmInitialized)throw Error.invalidOperation(Sys.WebForms.Res.PRM_CannotRegisterTwice);this._prmInitialized=true;this._masterPageUniqueID=d;this._scriptManagerID=f;this._form=Sys.UI.DomElement.resolveElement(g);this._onsubmit=this._form.onsubmit;this._form.onsubmit=null;this._onFormSubmitHandler=Function.createDelegate(this,this._onFormSubmit);this._onFormElementClickHandler=Function.createDelegate(this,this._onFormElementClick);this._onWindowUnloadHandler=Function.createDelegate(this,this._onWindowUnload);Sys.UI.DomEvent.addHandler(this._form,"submit",this._onFormSubmitHandler);Sys.UI.DomEvent.addHandler(this._form,"click",this._onFormElementClickHandler);Sys.UI.DomEvent.addHandler(window,"unload",this._onWindowUnloadHandler);this._originalDoPostBack=window.__doPostBack;if(this._originalDoPostBack)window.__doPostBack=Function.createDelegate(this,this._doPostBack);this._originalDoPostBackWithOptions=window.WebForm_DoPostBackWithOptions;if(this._originalDoPostBackWithOptions)window.WebForm_DoPostBackWithOptions=Function.createDelegate(this,this._doPostBackWithOptions);this._originalFireDefaultButton=window.WebForm_FireDefaultButton;if(this._originalFireDefaultButton)window.WebForm_FireDefaultButton=Function.createDelegate(this,this._fireDefaultButton);this._originalDoCallback=window.WebForm_DoCallback;if(this._originalDoCallback)window.WebForm_DoCallback=Function.createDelegate(this,this._doCallback);this._pageLoadedHandler=Function.createDelegate(this,this._pageLoadedInitialLoad);Sys.UI.DomEvent.addHandler(window,"load",this._pageLoadedHandler);if(a)this._updateControls(a,b,e,c,true)},_matchesParentIDInList:function(c,b){for(var a=0,d=b.length;a<d;a++)if(c.startsWith(b[a]+"_"))return true;return false},_onFormElementActive:function(a,d,e){if(a.disabled)return;this._activeElement=a;this._postBackSettings=this._getPostBackSettings(a,a.name);if(a.name){var b=a.tagName.toUpperCase();if(b==="INPUT"){var c=a.type;if(c==="submit")this._additionalInput=encodeURIComponent(a.name)+"="+encodeURIComponent(a.value);else if(c==="image")this._additionalInput=encodeURIComponent(a.name)+".x="+d+"&"+encodeURIComponent(a.name)+".y="+e}else if(b==="BUTTON"&&a.name.length!==0&&a.type==="submit")this._additionalInput=encodeURIComponent(a.name)+"="+encodeURIComponent(a.value)}},_onFormElementClick:function(a){this._activeDefaultButtonClicked=a.target===this._activeDefaultButton;this._onFormElementActive(a.target,a.offsetX,a.offsetY)},_onFormSubmit:function(i){var f,x,h=true,z=this._isCrossPost;this._isCrossPost=false;if(this._onsubmit)h=this._onsubmit();if(h)for(f=0,x=this._onSubmitStatements.length;f<x;f++)if(!this._onSubmitStatements[f]()){h=false;break}if(!h){if(i)i.preventDefault();return}var w=this._form;if(z)return;if(this._activeDefaultButton&&!this._activeDefaultButtonClicked)this._onFormElementActive(this._activeDefaultButton,0,0);if(!this._postBackSettings||!this._postBackSettings.async)return;var b=new Sys.StringBuilder,s=w.elements,B=s.length,t=this._createPanelID(null,this._postBackSettings);b.append(t);for(f=0;f<B;f++){var e=s[f],g=e.name;if(typeof g==="undefined"||g===null||g.length===0||g===this._scriptManagerID)continue;var n=e.tagName.toUpperCase();if(n==="INPUT"){var p=e.type;if(this._textTypes.test(p)||(p==="checkbox"||p==="radio")&&e.checked){b.append(encodeURIComponent(g));b.append("=");b.append(encodeURIComponent(e.value));b.append("&")}}else if(n==="SELECT"){var A=e.options.length;for(var q=0;q<A;q++){var u=e.options[q];if(u.selected){b.append(encodeURIComponent(g));b.append("=");b.append(encodeURIComponent(u.value));b.append("&")}}}else if(n==="TEXTAREA"){b.append(encodeURIComponent(g));b.append("=");b.append(encodeURIComponent(e.value));b.append("&")}}b.append("__ASYNCPOST=true&");if(this._additionalInput){b.append(this._additionalInput);this._additionalInput=null}var c=new Sys.Net.WebRequest,a=w.action;if(Sys.Browser.agent===Sys.Browser.InternetExplorer){var r=a.indexOf("#");if(r!==-1)a=a.substr(0,r);var o="",v="",m=a.indexOf("?");if(m!==-1){v=a.substr(m);a=a.substr(0,m)}if(/^https?\:\/\/.*$/gi.test(a)){var y=a.indexOf("//")+2,l=a.indexOf("/",y);if(l===-1){o=a;a=""}else{o=a.substr(0,l);a=a.substr(l)}}a=o+encodeURI(decodeURI(a))+v}c.set_url(a);c.get_headers()["X-MicrosoftAjax"]="Delta=true";c.get_headers()["Cache-Control"]="no-cache";c.set_timeout(this._asyncPostBackTimeout);c.add_completed(Function.createDelegate(this,this._onFormSubmitCompleted));c.set_body(b.toString());var j,d,k=this._get_eventHandlerList().getHandler("initializeRequest");if(k){j=this._postBackSettings.panelsToUpdate;d=new Sys.WebForms.InitializeRequestEventArgs(c,this._postBackSettings.sourceElement,j);k(this,d);h=!d.get_cancel()}if(!h){if(i)i.preventDefault();return}if(d&&d._updated){j=d.get_updatePanelsToUpdate();c.set_body(c.get_body().replace(t,this._createPanelID(j,this._postBackSettings)))}this._scrollPosition=this._getScrollPosition();this.abortPostBack();k=this._get_eventHandlerList().getHandler("beginRequest");if(k){d=new Sys.WebForms.BeginRequestEventArgs(c,this._postBackSettings.sourceElement,j||this._postBackSettings.panelsToUpdate);k(this,d)}if(this._originalDoCallback)this._cancelPendingCallbacks();this._request=c;this._processingRequest=false;c.invoke();if(i)i.preventDefault()},_onFormSubmitCompleted:function(c){this._processingRequest=true;if(c.get_timedOut()){this._endPostBack(this._createPageRequestManagerTimeoutError(),c,null);return}if(c.get_aborted()){this._endPostBack(null,c,null);return}if(!this._request||c.get_webRequest()!==this._request)return;if(c.get_statusCode()!==200){this._endPostBack(this._createPageRequestManagerServerError(c.get_statusCode()),c,null);return}var a=this._parseDelta(c);if(!a)return;var b,e;if(a.asyncPostBackControlIDsNode&&a.postBackControlIDsNode&&a.updatePanelIDsNode&&a.panelsToRefreshNode&&a.childUpdatePanelIDsNode){var r=this._updatePanelIDs,n=this._updatePanelClientIDs,i=a.childUpdatePanelIDsNode.content,p=i.length?i.split(","):[],m=this._splitNodeIntoArray(a.asyncPostBackControlIDsNode),o=this._splitNodeIntoArray(a.postBackControlIDsNode),q=this._splitNodeIntoArray(a.updatePanelIDsNode),g=this._splitNodeIntoArray(a.panelsToRefreshNode),h=a.version4;for(b=0,e=g.length;b<e;b+=h?2:1){var j=(h?g[b+1]:"")||this._uniqueIDToClientID(g[b]);if(!document.getElementById(j)){this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel,j)),c,a);return}}var f=this._processUpdatePanelArrays(q,m,o,h);f.oldUpdatePanelIDs=r;f.oldUpdatePanelClientIDs=n;f.childUpdatePanelIDs=p;f.panelsToRefreshIDs=g;a.updatePanelData=f}a.dataItems={};var d;for(b=0,e=a.dataItemNodes.length;b<e;b++){d=a.dataItemNodes[b];a.dataItems[d.id]=d.content}for(b=0,e=a.dataItemJsonNodes.length;b<e;b++){d=a.dataItemJsonNodes[b];a.dataItems[d.id]=Sys.Serialization.JavaScriptSerializer.deserialize(d.content)}var l=this._get_eventHandlerList().getHandler("pageLoading");if(l)l(this,this._getPageLoadingEventArgs(a));Sys._ScriptLoader.readLoadedScripts();Sys.Application.beginCreateComponents();var k=Sys._ScriptLoader.getInstance();this._queueScripts(k,a.scriptBlockNodes,true,false);this._processingRequest=true;k.loadScripts(0,Function.createDelegate(this,Function.createCallback(this._scriptIncludesLoadComplete,a)),Function.createDelegate(this,Function.createCallback(this._scriptIncludesLoadFailed,a)),null)},_onWindowUnload:function(){this.dispose()},_pageLoaded:function(a,c){var b=this._get_eventHandlerList().getHandler("pageLoaded");if(b)b(this,this._getPageLoadedEventArgs(a,c));if(!a)Sys.Application.raiseLoad()},_pageLoadedInitialLoad:function(){this._pageLoaded(true,null)},_parseDelta:function(h){var c=h.get_responseData(),d,i,E,F,D,b=0,e=null,k=[];while(b<c.length){d=c.indexOf("|",b);if(d===-1){e=this._findText(c,b);break}i=parseInt(c.substring(b,d),10);if(i%1!==0){e=this._findText(c,b);break}b=d+1;d=c.indexOf("|",b);if(d===-1){e=this._findText(c,b);break}E=c.substring(b,d);b=d+1;d=c.indexOf("|",b);if(d===-1){e=this._findText(c,b);break}F=c.substring(b,d);b=d+1;if(b+i>=c.length){e=this._findText(c,c.length);break}D=c.substr(b,i);b+=i;if(c.charAt(b)!=="|"){e=this._findText(c,b);break}b++;Array.add(k,{type:E,id:F,content:D})}if(e){this._endPostBack(this._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_ParserErrorDetails,e)),h,null);return null}var x=[],w=[],q=[],j=[],t=[],C=[],A=[],z=[],v=[],s=[],m,p,u,n,o,r,y,g;for(var l=0,G=k.length;l<G;l++){var a=k[l];switch(a.type){case "#":g=a;break;case "updatePanel":Array.add(x,a);break;case "hiddenField":Array.add(w,a);break;case "arrayDeclaration":Array.add(q,a);break;case "scriptBlock":Array.add(j,a);break;case "fallbackScript":j[j.length-1].fallback=a.id;case "scriptStartupBlock":Array.add(t,a);break;case "expando":Array.add(C,a);break;case "onSubmit":Array.add(A,a);break;case "asyncPostBackControlIDs":m=a;break;case "postBackControlIDs":p=a;break;case "updatePanelIDs":u=a;break;case "asyncPostBackTimeout":n=a;break;case "childUpdatePanelIDs":o=a;break;case "panelsToRefreshIDs":r=a;break;case "formAction":y=a;break;case "dataItem":Array.add(z,a);break;case "dataItemJson":Array.add(v,a);break;case "scriptDispose":Array.add(s,a);break;case "pageRedirect":if(g&&parseFloat(g.content)>=4)a.content=unescape(a.content);if(Sys.Browser.agent===Sys.Browser.InternetExplorer){var f=document.createElement("a");f.style.display="none";f.attachEvent("onclick",B);f.href=a.content;this._form.parentNode.insertBefore(f,this._form);f.click();f.detachEvent("onclick",B);this._form.parentNode.removeChild(f);function B(a){a.cancelBubble=true}}else window.location.href=a.content;return null;case "error":this._endPostBack(this._createPageRequestManagerServerError(Number.parseInvariant(a.id),a.content),h,null);return null;case "pageTitle":document.title=a.content;break;case "focus":this._controlIDToFocus=a.content;break;default:this._endPostBack(this._createPageRequestManagerParserError(String.format(Sys.WebForms.Res.PRM_UnknownToken,a.type)),h,null);return null}}return {version4:g?parseFloat(g.content)>=4:false,executor:h,updatePanelNodes:x,hiddenFieldNodes:w,arrayDeclarationNodes:q,scriptBlockNodes:j,scriptStartupNodes:t,expandoNodes:C,onSubmitNodes:A,dataItemNodes:z,dataItemJsonNodes:v,scriptDisposeNodes:s,asyncPostBackControlIDsNode:m,postBackControlIDsNode:p,updatePanelIDsNode:u,asyncPostBackTimeoutNode:n,childUpdatePanelIDsNode:o,panelsToRefreshNode:r,formActionNode:y}},_processUpdatePanelArrays:function(e,q,r,f){var d,c,b;if(e){var i=e.length,j=f?2:1;d=new Array(i/j);c=new Array(i/j);b=new Array(i/j);for(var g=0,h=0;g<i;g+=j,h++){var p,a=e[g],k=f?e[g+1]:"";p=a.charAt(0)==="t";a=a.substr(1);if(!k)k=this._uniqueIDToClientID(a);b[h]=p;d[h]=a;c[h]=k}}else{d=[];c=[];b=[]}var n=[],l=[];this._convertToClientIDs(q,n,l,f);var o=[],m=[];this._convertToClientIDs(r,o,m,f);return {updatePanelIDs:d,updatePanelClientIDs:c,updatePanelHasChildrenAsTriggers:b,asyncPostBackControlIDs:n,asyncPostBackControlClientIDs:l,postBackControlIDs:o,postBackControlClientIDs:m}},_queueScripts:function(scriptLoader,scriptBlockNodes,queueIncludes,queueBlocks){for(var i=0,l=scriptBlockNodes.length;i<l;i++){var scriptBlockType=scriptBlockNodes[i].id;switch(scriptBlockType){case "ScriptContentNoTags":if(!queueBlocks)continue;scriptLoader.queueScriptBlock(scriptBlockNodes[i].content);break;case "ScriptContentWithTags":var scriptTagAttributes;eval("scriptTagAttributes = "+scriptBlockNodes[i].content);if(scriptTagAttributes.src){if(!queueIncludes||Sys._ScriptLoader.isScriptLoaded(scriptTagAttributes.src))continue}else if(!queueBlocks)continue;scriptLoader.queueCustomScriptTag(scriptTagAttributes);break;case "ScriptPath":var script=scriptBlockNodes[i];if(!queueIncludes||Sys._ScriptLoader.isScriptLoaded(script.content))continue;scriptLoader.queueScriptReference(script.content,script.fallback)}}},_registerDisposeScript:function(a,b){if(!this._scriptDisposes[a])this._scriptDisposes[a]=[b];else Array.add(this._scriptDisposes[a],b)},_scriptIncludesLoadComplete:function(e,b){if(b.executor.get_webRequest()!==this._request)return;this._commitControls(b.updatePanelData,b.asyncPostBackTimeoutNode?b.asyncPostBackTimeoutNode.content:null);if(b.formActionNode)this._form.action=b.formActionNode.content;var a,d,c;for(a=0,d=b.updatePanelNodes.length;a<d;a++){c=b.updatePanelNodes[a];var j=document.getElementById(c.id);if(!j){this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.PRM_MissingPanel,c.id)),b.executor,b);return}this._updatePanel(j,c.content)}for(a=0,d=b.scriptDisposeNodes.length;a<d;a++){c=b.scriptDisposeNodes[a];this._registerDisposeScript(c.id,c.content)}for(a=0,d=this._transientFields.length;a<d;a++){var g=document.getElementById(this._transientFields[a]);if(g){var k=g._isContained?g.parentNode:g;k.parentNode.removeChild(k)}}for(a=0,d=b.hiddenFieldNodes.length;a<d;a++){c=b.hiddenFieldNodes[a];this._createHiddenField(c.id,c.content)}if(b.scriptsFailed)throw Sys._ScriptLoader._errorScriptLoadFailed(b.scriptsFailed.src,b.scriptsFailed.multipleCallbacks);this._queueScripts(e,b.scriptBlockNodes,false,true);var i="";for(a=0,d=b.arrayDeclarationNodes.length;a<d;a++){c=b.arrayDeclarationNodes[a];i+="Sys.WebForms.PageRequestManager._addArrayElement('"+c.id+"', "+c.content+");\r\n"}var h="";for(a=0,d=b.expandoNodes.length;a<d;a++){c=b.expandoNodes[a];h+=c.id+" = "+c.content+"\r\n"}if(i.length)e.queueScriptBlock(i);if(h.length)e.queueScriptBlock(h);this._queueScripts(e,b.scriptStartupNodes,true,true);var f="";for(a=0,d=b.onSubmitNodes.length;a<d;a++){if(a===0)f="Array.add(Sys.WebForms.PageRequestManager.getInstance()._onSubmitStatements, function() {\r\n";f+=b.onSubmitNodes[a].content+"\r\n"}if(f.length){f+="\r\nreturn true;\r\n});\r\n";e.queueScriptBlock(f)}e.loadScripts(0,Function.createDelegate(this,Function.createCallback(this._scriptsLoadComplete,b)),null,null)},_scriptIncludesLoadFailed:function(d,c,b,a){a.scriptsFailed={src:c.src,multipleCallbacks:b};this._scriptIncludesLoadComplete(d,a)},_scriptsLoadComplete:function(f,c){var e=c.executor;if(window.__theFormPostData)window.__theFormPostData="";if(window.__theFormPostCollection)window.__theFormPostCollection=[];if(window.WebForm_InitCallback)window.WebForm_InitCallback();if(this._scrollPosition){if(window.scrollTo)window.scrollTo(this._scrollPosition.x,this._scrollPosition.y);this._scrollPosition=null}Sys.Application.endCreateComponents();this._pageLoaded(false,c);this._endPostBack(null,e,c);if(this._controlIDToFocus){var a,d;if(Sys.Browser.agent===Sys.Browser.InternetExplorer){var b=$get(this._controlIDToFocus);a=b;if(b&&!WebForm_CanFocus(b))a=WebForm_FindFirstFocusableChild(b);if(a&&typeof a.contentEditable!=="undefined"){d=a.contentEditable;a.contentEditable=false}else a=null}WebForm_AutoFocus(this._controlIDToFocus);if(a)a.contentEditable=d;this._controlIDToFocus=null}},_splitNodeIntoArray:function(b){var a=b.content,c=a.length?a.split(","):[];return c},_uniqueIDToClientID:function(a){return a.replace(/\$/g,"_")},_updateControls:function(d,a,c,b,e){this._commitControls(this._processUpdatePanelArrays(d,a,c,e),b)},_updatePanel:function(updatePanelElement,rendering){for(var updatePanelID in this._scriptDisposes)if(this._elementContains(updatePanelElement,document.getElementById(updatePanelID))){var disposeScripts=this._scriptDisposes[updatePanelID];for(var i=0,l=disposeScripts.length;i<l;i++)eval(disposeScripts[i]);delete this._scriptDisposes[updatePanelID]}Sys.Application.disposeElement(updatePanelElement,true);updatePanelElement.innerHTML=rendering},_validPosition:function(a){return typeof a!=="undefined"&&a!==null&&a!==0}};Sys.WebForms.PageRequestManager.getInstance=function(){var a=Sys.WebForms.PageRequestManager._instance;if(!a)a=Sys.WebForms.PageRequestManager._instance=new Sys.WebForms.PageRequestManager;return a};Sys.WebForms.PageRequestManager._addArrayElement=function(a){if(!window[a])window[a]=[];for(var b=1,c=arguments.length;b<c;b++)Array.add(window[a],arguments[b])};Sys.WebForms.PageRequestManager._initialize=function(){var a=Sys.WebForms.PageRequestManager.getInstance();a._initializeInternal.apply(a,arguments)};Sys.WebForms.PageRequestManager.registerClass("Sys.WebForms.PageRequestManager");Sys.UI._UpdateProgress=function(a){Sys.UI._UpdateProgress.initializeBase(this,[a]);this._displayAfter=500;this._dynamicLayout=true;this._associatedUpdatePanelId=null;this._beginRequestHandlerDelegate=null;this._startDelegate=null;this._endRequestHandlerDelegate=null;this._pageRequestManager=null;this._timerCookie=null};Sys.UI._UpdateProgress.prototype={get_displayAfter:function(){return this._displayAfter},set_displayAfter:function(a){this._displayAfter=a},get_dynamicLayout:function(){return this._dynamicLayout},set_dynamicLayout:function(a){this._dynamicLayout=a},get_associatedUpdatePanelId:function(){return this._associatedUpdatePanelId},set_associatedUpdatePanelId:function(a){this._associatedUpdatePanelId=a},get_role:function(){return "status"},_clearTimeout:function(){if(this._timerCookie){window.clearTimeout(this._timerCookie);this._timerCookie=null}},_getUniqueID:function(b){var a=Array.indexOf(this._pageRequestManager._updatePanelClientIDs,b);return a===-1?null:this._pageRequestManager._updatePanelIDs[a]},_handleBeginRequest:function(f,e){var b=e.get_postBackElement(),a=true,d=this._associatedUpdatePanelId;if(this._associatedUpdatePanelId){var c=e.get_updatePanelsToUpdate();if(c&&c.length)a=Array.contains(c,d)||Array.contains(c,this._getUniqueID(d));else a=false}while(!a&&b){if(b.id&&this._associatedUpdatePanelId===b.id)a=true;b=b.parentNode}if(a)this._timerCookie=window.setTimeout(this._startDelegate,this._displayAfter)},_startRequest:function(){if(this._pageRequestManager.get_isInAsyncPostBack()){var a=this.get_element();if(this._dynamicLayout)a.style.display="block";else a.style.visibility="visible";if(this.get_role()==="status")a.setAttribute("aria-hidden","false")}this._timerCookie=null},_handleEndRequest:function(){var a=this.get_element();if(this._dynamicLayout)a.style.display="none";else a.style.visibility="hidden";if(this.get_role()==="status")a.setAttribute("aria-hidden","true");this._clearTimeout()},dispose:function(){if(this._beginRequestHandlerDelegate!==null){this._pageRequestManager.remove_beginRequest(this._beginRequestHandlerDelegate);this._pageRequestManager.remove_endRequest(this._endRequestHandlerDelegate);this._beginRequestHandlerDelegate=null;this._endRequestHandlerDelegate=null}this._clearTimeout();Sys.UI._UpdateProgress.callBaseMethod(this,"dispose")},initialize:function(){Sys.UI._UpdateProgress.callBaseMethod(this,"initialize");if(this.get_role()==="status")this.get_element().setAttribute("aria-hidden","true");this._beginRequestHandlerDelegate=Function.createDelegate(this,this._handleBeginRequest);this._endRequestHandlerDelegate=Function.createDelegate(this,this._handleEndRequest);this._startDelegate=Function.createDelegate(this,this._startRequest);if(Sys.WebForms&&Sys.WebForms.PageRequestManager)this._pageRequestManager=Sys.WebForms.PageRequestManager.getInstance();if(this._pageRequestManager!==null){this._pageRequestManager.add_beginRequest(this._beginRequestHandlerDelegate);this._pageRequestManager.add_endRequest(this._endRequestHandlerDelegate)}}};Sys.UI._UpdateProgress.registerClass("Sys.UI._UpdateProgress",Sys.UI.Control);u//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// MicrosoftAjaxWebServices.js
Type._registerScript("MicrosoftAjaxWebServices.js",["MicrosoftAjaxNetwork.js"]);Type.registerNamespace("Sys.Net");Sys.Net.WebServiceProxy=function(){};Sys.Net.WebServiceProxy.prototype={get_timeout:function(){return this._timeout||0},set_timeout:function(a){if(a<0)throw Error.argumentOutOfRange("value",a,Sys.Res.invalidTimeout);this._timeout=a},get_defaultUserContext:function(){return typeof this._userContext==="undefined"?null:this._userContext},set_defaultUserContext:function(a){this._userContext=a},get_defaultSucceededCallback:function(){return this._succeeded||null},set_defaultSucceededCallback:function(a){this._succeeded=a},get_defaultFailedCallback:function(){return this._failed||null},set_defaultFailedCallback:function(a){this._failed=a},get_enableJsonp:function(){return !!this._jsonp},set_enableJsonp:function(a){this._jsonp=a},get_path:function(){return this._path||null},set_path:function(a){this._path=a},get_jsonpCallbackParameter:function(){return this._callbackParameter||"callback"},set_jsonpCallbackParameter:function(a){this._callbackParameter=a},_invoke:function(d,e,g,f,c,b,a){c=c||this.get_defaultSucceededCallback();b=b||this.get_defaultFailedCallback();if(a===null||typeof a==="undefined")a=this.get_defaultUserContext();return Sys.Net.WebServiceProxy.invoke(d,e,g,f,c,b,a,this.get_timeout(),this.get_enableJsonp(),this.get_jsonpCallbackParameter())}};Sys.Net.WebServiceProxy.registerClass("Sys.Net.WebServiceProxy");Sys.Net.WebServiceProxy.invoke=function(q,a,m,l,j,b,g,e,w,p){var i=w!==false?Sys.Net.WebServiceProxy._xdomain.exec(q):null,c,n=i&&i.length===3&&(i[1]!==location.protocol||i[2]!==location.host);m=n||m;if(n){p=p||"callback";c="_jsonp"+Sys._jsonp++}if(!l)l={};var r=l;if(!m||!r)r={};var s,h,f=null,k,o=null,u=Sys.Net.WebRequest._createUrl(a?q+"/"+encodeURIComponent(a):q,r,n?p+"=Sys."+c:null);if(n){s=document.createElement("script");s.src=u;k=new Sys._ScriptLoaderTask(s,function(d,b){if(!b||c)t({Message:String.format(Sys.Res.webServiceFailedNoMsg,a)},-1)});function v(){if(f===null)return;f=null;h=new Sys.Net.WebServiceError(true,String.format(Sys.Res.webServiceTimedOut,a));k.dispose();delete Sys[c];if(b)b(h,g,a)}function t(d,e){if(f!==null){window.clearTimeout(f);f=null}k.dispose();delete Sys[c];c=null;if(typeof e!=="undefined"&&e!==200){if(b){h=new Sys.Net.WebServiceError(false,d.Message||String.format(Sys.Res.webServiceFailedNoMsg,a),d.StackTrace||null,d.ExceptionType||null,d);h._statusCode=e;b(h,g,a)}}else if(j)j(d,g,a)}Sys[c]=t;e=e||Sys.Net.WebRequestManager.get_defaultTimeout();if(e>0)f=window.setTimeout(v,e);k.execute();return null}var d=new Sys.Net.WebRequest;d.set_url(u);d.get_headers()["Content-Type"]="application/json; charset=utf-8";if(!m){o=Sys.Serialization.JavaScriptSerializer.serialize(l);if(o==="{}")o=""}d.set_body(o);d.add_completed(x);if(e&&e>0)d.set_timeout(e);d.invoke();function x(d){if(d.get_responseAvailable()){var f=d.get_statusCode(),c=null;try{var e=d.getResponseHeader("Content-Type");if(e.startsWith("application/json"))c=d.get_object();else if(e.startsWith("text/xml"))c=d.get_xml();else c=d.get_responseData()}catch(m){}var k=d.getResponseHeader("jsonerror"),h=k==="true";if(h){if(c)c=new Sys.Net.WebServiceError(false,c.Message,c.StackTrace,c.ExceptionType,c)}else if(e.startsWith("application/json"))c=!c||typeof c.d==="undefined"?c:c.d;if(f<200||f>=300||h){if(b){if(!c||!h)c=new Sys.Net.WebServiceError(false,String.format(Sys.Res.webServiceFailedNoMsg,a));c._statusCode=f;b(c,g,a)}}else if(j)j(c,g,a)}else{var i;if(d.get_timedOut())i=String.format(Sys.Res.webServiceTimedOut,a);else i=String.format(Sys.Res.webServiceFailedNoMsg,a);if(b)b(new Sys.Net.WebServiceError(d.get_timedOut(),i,"",""),g,a)}}return d};Sys.Net.WebServiceProxy._generateTypedConstructor=function(a){return function(b){if(b)for(var c in b)this[c]=b[c];this.__type=a}};Sys._jsonp=0;Sys.Net.WebServiceProxy._xdomain=/^\s*([a-zA-Z0-9\+\-\.]+\:)\/\/([^?#\/]+)/;Sys.Net.WebServiceError=function(d,e,c,a,b){this._timedOut=d;this._message=e;this._stackTrace=c;this._exceptionType=a;this._errorObject=b;this._statusCode=-1};Sys.Net.WebServiceError.prototype={get_timedOut:function(){return this._timedOut},get_statusCode:function(){return this._statusCode},get_message:function(){return this._message},get_stackTrace:function(){return this._stackTrace||""},get_exceptionType:function(){return this._exceptionType||""},get_errorObject:function(){return this._errorObject||null}};Sys.Net.WebServiceError.registerClass("Sys.Net.WebServiceError");J//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// Date.HijriCalendar.js
Type._registerScript("Date.HijriCalendar.js",["MicrosoftAjaxGlobalization.js"]);__cultureInfo.dateTimeFormat.Calendar.convert={ticks1970:62135596800000,monthDays:[0,30,59,89,118,148,177,207,236,266,295,325,355],minDate:-42521673600000,maxDate:0xe677d21fdbff,adjustment:__cultureInfo.dateTimeFormat.Calendar._adjustment||0,toGregorian:function(d,c,e){var b=this.daysToYear(d)+this.monthDays[c]+e-1-this.adjustment,a=new Date(b*86400000-this.ticks1970);a.setMinutes(a.getMinutes()+a.getTimezoneOffset());return a},fromGregorian:function(e){if(e<this.minDate||e>this.maxDate)return null;var i=this.ticks1970+(e-0)-e.getTimezoneOffset()*60000,d=Math.floor(i/86400000)+1+this.adjustment,h,b,c=Math.floor((d-227013)*30/10631)+1,a=this.daysToYear(c),f=this.isLeapYear(c)?355:354;if(d<a){c--;a-=f}else if(d===a){c--;a=this.daysToYear(c)}else if(d>a+f){a+=f;c++}b=0;var g=d-a;while(b<=11&&g>this.monthDays[b])b++;b--;h=g-this.monthDays[b];return [c,b,h]},daysToYear:function(d){var b=Math.floor((d-1)/30)*30,a=d-b-1,c=Math.floor(b*10631/30)+227013;while(a>0){c+=this.isLeapYear(a)?355:354;a--}return c},isLeapYear:function(a){return (a*11+14)%30<11}};�//----------------------------------------------------------
// Copyright (C) Microsoft Corporation. All rights reserved.
//----------------------------------------------------------
// Date.UmAlQuraCalendar.js
Type._registerScript("Date.UmAlQuraCalendar.js",["MicrosoftAjaxGlobalization.js"]);__cultureInfo.dateTimeFormat.Calendar.convert={_yearInfo:[[746,-2198707200000],[1769,-2168121600000],[3794,-2137449600000],[3748,-2106777600000],[3402,-2076192000000],[2710,-2045606400000],[1334,-2015020800000],[2741,-1984435200000],[3498,-1953763200000],[2980,-1923091200000],[2889,-1892505600000],[2707,-1861920000000],[1323,-1831334400000],[2647,-1800748800000],[1206,-1770076800000],[2741,-1739491200000],[1450,-1708819200000],[3413,-1678233600000],[3370,-1647561600000],[2646,-1616976000000],[1198,-1586390400000],[2397,-1555804800000],[748,-1525132800000],[1749,-1494547200000],[1706,-1463875200000],[1365,-1433289600000],[1195,-1402704000000],[2395,-1372118400000],[698,-1341446400000],[1397,-1310860800000],[2994,-1280188800000],[1892,-1249516800000],[1865,-1218931200000],[1621,-1188345600000],[683,-1157760000000],[1371,-1127174400000],[2778,-0xff4ca2d400],[1748,-0xf828714000],[3785,-0xf109660800],[3474,-0xe9e5347400],[3365,-973987200000],[2637,-943401600000],[685,-912816000000],[1389,-882230400000],[2922,-851558400000],[2898,-820886400000],[2725,-790300800000],[2635,-759715200000],[1175,-729129600000],[2359,-698544000000],[694,-667872000000],[1397,-637286400000],[3434,-606614400000],[3410,-575942400000],[2710,-545356800000],[2349,-514771200000],[605,-484185600000],[1245,-453600000000],[2778,-422928000000],[1492,-392256000000],[3497,-361670400000],[3410,-330998400000],[2730,-300412800000],[1238,-269827200000],[2486,-239241600000],[884,-208569600000],[1897,-177984000000],[1874,-147312000000],[1701,-116726400000],[1355,-86140800000],[2731,-55555200000],[1370,-24883200000],[2773,5702400000],[3538,36374400000],[3492,67046400000],[3401,97632000000],[2709,128217600000],[1325,158803200000],[2653,189388800000],[1370,220060800000],[2773,250646400000],[1706,281318400000],[1685,311904000000],[1323,342489600000],[2647,373075200000],[1198,403747200000],[2422,434332800000],[1388,465004800000],[2901,495590400000],[2730,526262400000],[2645,556848000000],[1197,587433600000],[2397,618019200000],[730,648691200000],[1497,679276800000],[3506,709948800000],[2980,740620800000],[2890,771206400000],[2645,801792000000],[693,832377600000],[1397,862963200000],[2922,893635200000],[3026,924307200000],[3012,954979200000],[2953,985564800000],[2709,0xec97489c00],[1325,0xf3b653d400],[1453,0xfad55f0c00],[2922,1107993600000],[1748,1138665600000],[3529,1169251200000],[3474,1199923200000],[2726,1230508800000],[2390,1261094400000],[686,1291680000000],[1389,1322265600000],[874,1352937600000],[2901,1383523200000],[2730,1414195200000],[2381,1444780800000],[1181,1475366400000],[2397,1505952000000],[698,1536624000000],[1461,1567209600000],[1450,1597881600000],[3413,1628467200000],[2714,1659139200000],[2350,1689724800000],[622,1720310400000],[1373,1750896000000],[2778,1781568000000],[1748,1812240000000],[1701,1842825600000],[0,1873411200000]],minDate:-2198707200000,maxDate:1873411199999,toGregorian:function(h,g,i){var d=i-1,c=h-1318;if(c<0||c>=this._yearInfo.length)return null;var e=this._yearInfo[c],a=new Date(e[1]),b=e[0];a.setMinutes(a.getMinutes()+a.getTimezoneOffset());for(var f=0;f<g;f++){d+=29+(b&1);b=b>>1}a.setDate(a.getDate()+d);return a},fromGregorian:function(g){var b=g-g.getTimezoneOffset()*60000;if(b<this.minDate||b>this.maxDate)return null;var a=0,f=1;while(b>this._yearInfo[++a][1]);if(b!==this._yearInfo[a][1])a--;var h=this._yearInfo[a],e=Math.floor((b-h[1])/86400000),c=h[0];a+=1318;var d=29+(c&1);while(e>=d){e-=d;c=c>>1;d=29+(c&1);f++}return [a,f-1,e+1]}};]&<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="ServiceMapSchema" targetNamespace="urn:schemas-microsoft-com:xml-wcfservicemap" elementFormDefault="qualified" xmlns="urn:schemas-microsoft-com:xml-wcfservicemap" xmlns:mstns="urn:schemas-microsoft-com:xml-wcfservicemap" xmlns:xs="http://www.w3.org/2001/XMLSchema">

  <xs:annotation>
    <xs:documentation xml:lang="en">
      The schema of Service Reference Map files
      Copyright (c) Microsoft Corp. All rights reserved.
    </xs:documentation>
  </xs:annotation>

  <xs:element name="ReferenceGroup">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="ClientOptions" maxOccurs="1" minOccurs="0" type="ClientOptions" />
        <xs:element name="MetadataSources" maxOccurs="1" minOccurs="0">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="MetadataSource" maxOccurs="unbounded" minOccurs="0" type="MetadataSource">
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Metadata" maxOccurs="1" minOccurs="1">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="MetadataFile" minOccurs="0" maxOccurs="unbounded" type="MetadataFile" />
            </xs:sequence>
          </xs:complexType>
          <xs:key name="MetadataFileNameKey">
            <xs:selector xpath=".//mstns:MetadataFile" />
            <xs:field xpath="@FileName" />
          </xs:key>
          <xs:key name="MetadataIDKey">
            <xs:selector xpath=".//mstns:MetadataFile" />
            <xs:field xpath="@ID" />
          </xs:key>
        </xs:element>
        <xs:element name="Extensions" minOccurs="0" maxOccurs="1">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="ExtensionFile" minOccurs="0" maxOccurs="unbounded" type="ExtensionFile" />
            </xs:sequence>
          </xs:complexType>
          <xs:key name="ReferenceGroupExtensionNameKey">
            <xs:selector xpath=".//mstns:ExtensionFile" />
            <xs:field xpath="@Name" />
          </xs:key>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="ID" type="guid" use="required" />
    </xs:complexType>
    <xs:key name="ReferenceGroupSourceIdKey">
      <xs:selector xpath=".//mstns:MetadataSource" />
      <xs:field xpath="@SourceId" />
    </xs:key>
    <xs:keyref name="MetadataFileSourceIdRef" refer="ReferenceGroupSourceIdKey">
      <xs:selector xpath=".//mstns:MetadataFile" />
      <xs:field xpath="@SourceId" />
    </xs:keyref>
  </xs:element>

  <xs:simpleType name="MetadataType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Wsdl" />
      <xs:enumeration value="Schema" />
      <xs:enumeration value="Disco" />
      <xs:enumeration value="Xml" />
      <xs:enumeration value="Policy" />
      <xs:enumeration value="Unknown" />
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="ProtocolType">
    <xs:restriction base="nonEmptyString">
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="ProxySerializerType">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Auto" />
      <xs:enumeration value="DataContractSerializer" />
      <xs:enumeration value="XmlSerializer" />
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="CollectionCategory">
    <xs:restriction base="xs:string">
      <xs:enumeration value="Unknown" />
      <xs:enumeration value="List" />
      <xs:enumeration value="Dictionary" />
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="guid">
    <xs:restriction base="xs:string">
      <xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" />
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="TypeName">
    <xs:restriction base="nonEmptyString">
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="AssemblyName">
    <xs:restriction base="nonEmptyString">
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="FileName">
    <xs:restriction base="nonEmptyString">
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="nonEmptyString">
    <xs:restriction base="xs:string">
      <xs:minLength value="1" />
    </xs:restriction>
  </xs:simpleType>

  <xs:complexType name="MetadataSource">
    <xs:sequence />
    <xs:attribute name="SourceId" type="xs:positiveInteger" use="required" />
    <xs:attribute name="Address" type="nonEmptyString" use="required" />
    <xs:attribute name="Protocol" type="ProtocolType" use="required" />
  </xs:complexType>

  <xs:complexType name="MetadataFile">
    <xs:sequence>
    </xs:sequence>
    <xs:attribute name="MetadataType" type="MetadataType" use="required" />
    <xs:attribute name="FileName" type="FileName" use="required" />
    <xs:attribute name="SourceUrl" type="xs:string" />
    <xs:attribute name="ID" type="guid" use="required" />
    <xs:attribute name="SourceId" use="optional" type="xs:positiveInteger">
    </xs:attribute>
    <xs:attribute name="Ignore" type="xs:boolean" default="false" use="optional" />
    <xs:attribute name="IsMergeResult" type="xs:boolean" use="optional" default="false" />
  </xs:complexType>

  <xs:complexType name="ExtensionFile">
    <xs:sequence />
    <xs:attribute name="Name" type="nonEmptyString" use="required" />
    <xs:attribute name="FileName" type="FileName" use="required" />
  </xs:complexType>

  <xs:complexType name="ReferencedDataContractType">
    <xs:sequence />
    <xs:attribute name="TypeName" type="TypeName" use="required" />
  </xs:complexType>

  <xs:complexType name="ServiceContractMapping">
    <xs:sequence />
    <xs:attribute name="TargetNamespace" type="xs:anyURI" use="required" />
    <xs:attribute name="Name" type="nonEmptyString" use="required" />
    <xs:attribute name="TypeName" type="TypeName" use="required" />
  </xs:complexType>

  <xs:complexType name="NamespaceMapping">
    <xs:sequence />
    <xs:attribute name="TargetNamespace" type="xs:anyURI" use="required" />
    <xs:attribute name="ClrNamespace" type="xs:string" use="required" />
  </xs:complexType>

  <xs:complexType name="ReferencedAssembly">
    <xs:sequence />
    <xs:attribute name="AssemblyName" type="AssemblyName" use="required" />
  </xs:complexType>

  <xs:complexType name="ExcludedType">
    <xs:sequence />
    <xs:attribute name="TypeName" type="TypeName" use="required" />
  </xs:complexType>

  <xs:complexType name="CollectionMapping">
    <xs:sequence>
    </xs:sequence>
    <xs:attribute name="TypeName" type="TypeName" use="required" />
    <xs:attribute name="Category" type="CollectionCategory" />
  </xs:complexType>

  <xs:complexType name="ClientOptions">
    <xs:all>
      <xs:element name="NamespaceMappings" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="NamespaceMapping" maxOccurs="unbounded" minOccurs="0" type="NamespaceMapping">
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ServiceContractMappings" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ServiceContractMapping" maxOccurs="unbounded" minOccurs="0" type="ServiceContractMapping" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ReferencedDataContractTypes" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ReferencedDataContractType" minOccurs="0" maxOccurs="unbounded" type="ReferencedDataContractType" />
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ReferencedAssemblies" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ReferencedAssembly" maxOccurs="unbounded" minOccurs="0" type="ReferencedAssembly">
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="ExcludedTypes" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="ExcludedType" minOccurs="0" maxOccurs="unbounded" type="ExcludedType">
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="CollectionMappings" minOccurs="0">
        <xs:complexType>
          <xs:sequence>
            <xs:element name="CollectionMapping" maxOccurs="unbounded" minOccurs="0" type="CollectionMapping">
            </xs:element>
          </xs:sequence>
        </xs:complexType>
      </xs:element>
      <xs:element name="GenerateInternalTypes" type="xs:boolean" minOccurs="0" />
      <xs:element name="GenerateAsynchronousMethods" type="xs:boolean" minOccurs="0" />
      <xs:element name="GenerateTaskBasedAsynchronousMethod" type="xs:boolean" minOccurs="0" />
      <xs:element name="GenerateSerializableTypes" type="xs:boolean" minOccurs="0" />
      <xs:element name="GenerateMessageContracts" type="xs:boolean" minOccurs="0" />
      <xs:element name="ImportXmlTypes" type="xs:boolean" minOccurs="0" />
      <xs:element name="EnableDataBinding" type="xs:boolean" minOccurs="0" />
      <xs:element name="Serializer" type="ProxySerializerType" minOccurs="0" />
      <xs:element name="UseSerializerForFaults" type="xs:boolean" minOccurs="0" />
      <xs:element name="Wrapped" type="xs:boolean" minOccurs="0" />
      <xs:element name="ReferenceAllAssemblies" type="xs:boolean" minOccurs="0" />
    </xs:all>
  </xs:complexType>

</xs:schema>
9<?xml version="1.0" encoding="utf-8"?>
<xs:schema id="DataServiceMapSchema" targetNamespace="urn:schemas-microsoft-com:xml-dataservicemap" elementFormDefault="qualified" xmlns="urn:schemas-microsoft-com:xml-dataservicemap" xmlns:mstns="urn:schemas-microsoft-com:xml-dataservicemap" xmlns:xs="http://www.w3.org/2001/XMLSchema">

  <xs:annotation>
    <xs:documentation xml:lang="en">
        The schema of Data Service Reference Map files
        Copyright (c) Microsoft Corp. All rights reserved.
    </xs:documentation>
  </xs:annotation>

  <xs:element name="ReferenceGroup">
    <xs:complexType>
      <xs:sequence>
        <xs:element name="MetadataSources" maxOccurs="1" minOccurs="0">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="MetadataSource" maxOccurs="unbounded" minOccurs="0" type="MetadataSource">
              </xs:element>
            </xs:sequence>
          </xs:complexType>
        </xs:element>
        <xs:element name="Metadata" maxOccurs="1" minOccurs="1">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="MetadataFile" minOccurs="0" maxOccurs="unbounded" type="MetadataFile" />
            </xs:sequence>
          </xs:complexType>
          <xs:key name="MetadataFileNameKey">
            <xs:selector xpath=".//mstns:MetadataFile" />
            <xs:field xpath="@FileName" />
          </xs:key>
          <xs:key name="MetadataIDKey">
            <xs:selector xpath=".//mstns:MetadataFile" />
            <xs:field xpath="@ID" />
          </xs:key>
        </xs:element>
        <xs:element name="Extensions" minOccurs="0" maxOccurs="1">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="ExtensionFile" minOccurs="0" maxOccurs="unbounded" type="ExtensionFile" />
            </xs:sequence>
          </xs:complexType>
          <xs:key name="ReferenceGroupExtensionNameKey">
            <xs:selector xpath=".//mstns:ExtensionFile" />
            <xs:field xpath="@Name" />
          </xs:key>
        </xs:element>
        <xs:element name="Parameters" minOccurs="0" maxOccurs="1">
          <xs:complexType>
            <xs:sequence>
              <xs:element name="Parameter" minOccurs="0" maxOccurs="unbounded" type="Parameter" />
            </xs:sequence>
          </xs:complexType>
          <xs:key name="ReferenceGroupParameterNameKey">
            <xs:selector xpath=".//mstns:Parameter" />
            <xs:field xpath="@Name" />
          </xs:key>
        </xs:element>
      </xs:sequence>
      <xs:attribute name="ID" type="guid" use="required" />
    </xs:complexType>
    <xs:key name="ReferenceGroupSourceIdKey">
      <xs:selector xpath=".//mstns:MetadataSource" />
      <xs:field xpath="@SourceId" />
    </xs:key>
    <xs:keyref name="MetadataFileSourceIdRef" refer="ReferenceGroupSourceIdKey">
      <xs:selector xpath=".//mstns:MetadataFile" />
      <xs:field xpath="@SourceId" />
    </xs:keyref>
  </xs:element>

  <xs:simpleType name="MetadataType">
    <xs:restriction base="nonEmptyString">
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="ProtocolType">
    <xs:restriction base="nonEmptyString">
        <!--
      <xs:enumeration value="http" />
      <xs:enumeration value="mex" />
      <xs:enumeration value="file" />
         -->
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="guid">
    <xs:restriction base="xs:string">
      <xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}" />
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="FileName">
    <xs:restriction base="nonEmptyString">
    </xs:restriction>
  </xs:simpleType>

  <xs:simpleType name="nonEmptyString">
    <xs:restriction base="xs:string">
      <xs:minLength value="1" />
    </xs:restriction>
  </xs:simpleType>

  <xs:complexType name="MetadataSource">
    <xs:sequence />
    <xs:attribute name="SourceId" type="xs:positiveInteger" use="required" />
    <xs:attribute name="Address" type="nonEmptyString" use="required" />
    <xs:attribute name="Protocol" type="ProtocolType" use="required" />
  </xs:complexType>

  <xs:complexType name="MetadataFile">
    <xs:sequence>
    </xs:sequence>
    <xs:attribute name="MetadataType" type="MetadataType" use="required" />
    <xs:attribute name="FileName" type="FileName" use="required" />
	<!--
    <xs:attribute name="TargetNamespace" type="xs:anyURI" />
	-->
    <xs:attribute name="SourceUrl" type="xs:string" />
    <xs:attribute name="ID" type="guid" use="required" />
    <xs:attribute name="SourceId" use="optional" type="xs:positiveInteger">
    </xs:attribute>
    <xs:attribute name="Ignore" type="xs:boolean" default="false" use="optional" />
    <xs:attribute name="IsMergeResult" type="xs:boolean" use="optional" default="false" />
  </xs:complexType>

  <xs:complexType name="ExtensionFile">
    <xs:sequence />
    <xs:attribute name="Name" type="nonEmptyString" use="required" />
    <xs:attribute name="FileName" type="FileName" use="required" />
  </xs:complexType>

  <xs:complexType name="Parameter">
    <xs:sequence />
    <xs:attribute name="Name" type="nonEmptyString" use="required" />
    <xs:attribute name="Value" type="xs:string" use="required" />
  </xs:complexType>
</xs:schema>
Y%g�)�[�'���M�������:�
/�KrCfv
���� c�yB�b%�+����v��ߌĥ��:�U�h����x���39%Gt�}S���Vp�������S]�q��Dk��)�Gm�Zr&c�A�f2���RSDSR��p�"H�,B�System.Web.Extensions.pdb�� �_CorDllMainmscoree.dll�% ,d�� �8���P�h���Ġ�P����IBCPROFILE_DATA(�б,z���I���I���4X�Q
[z�k"	��f�
����
�'�'"�'Z(��(�,x'5#-5&35*+]5",5�0%6A
1fC2lCM3�H�H:	�%#�;
4!%2+49�W����
�n#`g����9�
4�
�
�&3P
�
CxD""Bx�
	�"��C	�3
-�
���������?P������f* >����������;���������+�Z����������������������9�1���������������R���8���"�	

���"��|S"�{��#��"��	"����
C"�������΀�
sC"��
K"��
�
�
�
�

�S"�`
�
u
v
�D
�
�
�
}
x
]
�
�
���������$��5.�����������~F�����z�"���b_�	�������	���d�<�m�����	n���M'���(C��*	����7���rl�f������I�k�����A��\
��!S���#�	[�4��V��	�yE"���	�����-	��2	��G���>����W�1@�o�	��	,�?��w�)�=���	�������R���0B	�Q���	����h������6��tH�����/	j��:Z���J�����L��	���9YU���i
�����	��;O���	�����c���%T��g���aq����^��p�X������3�����+�e�����&K 8��P������	

"" !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcde
��������������������������#�������
�
�
��
�
�����������������������������������������������
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�������0�	�	�	�	�������0�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	��������������	�	�	�	�	�	�	�	�	�	��	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�	�
�
�	�	�	�	�	�	�	�	�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
��������������������������������������������������������������������������������������������������������������������������������������������������������������
�
�
�
�
�
�
�
�
�
�
���������
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�
�����������
����������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������
�
��
���	�	������
�
����������������������������������������
�
�
�
�
����������
�
�����
�
�
�
�
�������������������������������������������������������������������������������������������������FBAP@MNCKVQ�DEFGUiJhHILRSfgopwxyz-|���������	�	

��	 ��	 �	 � �� ��� �� ������ � ��� ��	� ������ �� �	� ����� ���� ������� � ��� ������� �� �� ������� ������ ��� � ������ ����������� ����� ���� �� ��� � ���� ����� ���� ������ ���� ��� ���� ��� ��� �� ���� ��� �� ��� � � �� �� ������� ������ ��� ������ ���� � ����� @ �
A�
D C�
F EG HJ� ����� ����� ������ ������ ������ ������ ������ ���I L�� ��� ���� ��� � ��� ����� ���� ����� �� ��� ���M � ��� ��� � � � �� ��� ������ ��� ��� � � ����� �� � ��� ��� �� � � �����
��
� �� �� �
 �
� ������ � ����� ��� ��� ��� ���� ��� ����� �� ����� ��� �� �� ���� ��� ���� ��� �� ���� ��	� ���	� ������	� ������� ��� ������ ��� ������ ��� ����� ���� ��� ������ ��� ����O PR QT SVW XY \[ ^ _b ae dh il k�	 � ����� � � ��	�� � ����� ��� ��� � � � ������ �	���� �� � ����� ����� �� � �������� ��� �� ���� ���� ��� ����� ����� ����	� ���	� ����� ���� ���� ���� ��� ��� ����� ��� ��� ����� ����� ���� ��� ��� ��� ����� �� ����� ��� ���� ���� ��� �
��
� ��
� ��
� ��� �� � �� �� �� ��� ��
� ���
� �� �	��	� �	�� ��	� ��	� �� ��� ����� �� ������ ��� ����� ���� ����� ���� ����� ���� ��� ���	� ���	� ��� ��� ���� �� ��� ���� ����� ����� ���	� ����� ����	� ����	� ����
 � ��������� �� �� � ���� ���� ����� ��	� � � � � �� � � � � � +!�**(((((("""""""""""""""""""""""""",-./0123456789:;<=>      	 
  
      +
 B-./0123456789:;<=>?@ADE?" # W X .& 'M � 9 : ; D F J K T L Q R S U V Y Z � \ �^ _a be f [ gm no pz { � ` �� �� � � � � � � � � � � � � dZ������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������������ � � �� �� ��� �� �� ��� ��� �� �� �� �� �� �� �� �� � ��� � � �� ��� ���� �� �� �� �� � � �� �� � � �� � � �� � � �� �� �� �� �� �� � �� �� �� �� � � � � � � � � �� � � � � � � �� � � �� � �� �� �� � � � � & �'�* +�. �/�2 1�� � � � � � � � � � �� � � �5 6�� �� � � � � � �� �� �� ���� � � �� �� �� �� �� �� � � �� ��� ��� �� �� �� �� � 9 8�� �� �� � � � � �� � � �� � �� �� � � �� �� �� � � ��� ��� �� � � �� � � �� �� �� � � � � �� � �� �� �� �� �� �� �� �� �� �� �� �� � � �� � � �� �� � � �� �� �� � � �� �� � � � �� �� L �K�O �P�S T�X W�Z [�] ^�b a�e f�i h�m �l�o �p�t �s�� ����� �� ��� ���� �� �� �� �� � � �� �� � � � � � �� �� � � �� �� �� �� �� �� �� �� �� �� �� � � �� �� �� �� �� �� �� � � �� �� � � �� � � �� �� ��� �� � � �� �� �� � � � � �� � � �� �� �� �� � � ��� �� � �� ���� ��� ��� ��� ���� ���� ���� ���� ���� ���� ���� ��� ��
� ��
� ��
�
� ��
�
� ��
� �
��
� �
��
� ��
� ��
� ��� �� � � � � � � �� �� �� �� ���� � � �� �� �� �� �� �� � �� �� �� �� �� �� �� �� � �� � � �� �� ; <���� �� �� �� �� �� �� ��� �� �� ��� ��	�	 �	�	 �	 �	�	 �	 �	 �	�	�	�	�	 �� ��
�
�	 �	 �	�	 ��	�	 �	�	 �	�	 �	 � ����	 �	�	 �	�	 �	 �	 �	�	 �	�	 �	�	 �	 �	 �	�	 �	�	 �	�	 �	�	 �	�	�	 �	�	 �	�	 �	

	

QR S O Y T U / 0 1 2 4 5 7 8 ?    * E Z     	 
   [  \  ]  ^  _   `  a  b  c d  e P X V W 3 6 9 : ; < = B ! " # $ % & ' ( ) I J K L M    
   d���������������Ƕ�������������������������������ަ�����������̩�"����ç����ԏ�����������ק���������������������������������������������������ն���������������"��������������������)���������������'����������������µ��´���n��������ʡ���������$�(���������������������������Ѷ�$��լ������.����ˏ����א���������#ҥ����������̄���������������!����������Ӑ��������������������%�����������������غ��ɼ���������������������%��ɋ׵��������������é��ȱ�������º��	�������������"���������β������������������#����ܒ��Ʒ��������̹����������������������������������������ק��ʙ����������˦۸���
�������ܹ�n�����������������׻��ٍ��������Ƶ��������� ��������n��ݶ�����������������ʕ���n������ɵ���l����������������ʽ�߼����������ݾˀ��ۉ����Ҋ������������������������������1Ǩ�����������������A������т������Ұ�������Ƴ����������������������ɫ������A֍�����������È��Ղ��վ����ͥ���������ŖՒٓ���������������������������������������ۄ��χ����������������C����В����ɢ������������������è����������Ԟէ���������l�D����������������n���������o��צܑ����َ������������������������������ؘ��������������������S�����Z���\���T���P���S��׎��ɕ��ۖ������������Ũ��ܔ�����������7�—�������������ȭ˫�����Ӌ‹�ћ�����͗��������������������������ǣ�����������������Ś�����������}�}����ʆ��̉��������������������Z�[�P���r�Q�w��������R�6���7���\�����p�uψ��¥����������������Ľ�����A�b�������������̭���������߽����������ʝ�������֨���3������������������������������̀��s���������������x�|�d����������������������ȅ�ˇ������������ֻ�(�'������������������������!�����������˅����������������ڳ������������������ӽ������������ˆ��������������YП��������������������������������������������������������ǟ��������ۇ���"�������������������������������������������������������������������������
���������������������ij�����ٴ����յ����Զ����ַ������������������������������*�������������������&������������������؉��������������ج���ˌ��������������������������Ǝ���ũ��ư������������������������������������������������������������������������k�Ǐڏ���Ñ���c���������������������������������������������������������������������������������������������������������������F�������������������������������������������������������������������������������Ԓ�����ī����������ū������]�^�^�`����"����System.Collections.Generic
System"System.Collections.ObjectModel!System.Collections.ConcurrentSystem.Reflection����IEnumerable`1IEnumerator`1EqualityComparer`1IEqualityComparer`1
IEquatable`1ObjectEqualityComparer`1
List`1IList`1	ICollection`1
IReadOnlyList`1IReadOnlyCollection`1
Collection`1
EventHandler`1EnumeratorConcurrentDictionary`2Tuple`2	AssemblyIDictionary`2KeyValuePair`2Node
Tables����	?� 	?� 	?��	?��	?��	?��	?�h	? �h		?$�h
	?�h	?(�h	?,�h
	?�	? �	?$�	?�	?(�	?,�	?0��	? ��	?$��	?��	?(��	?,��	?0��	? ��	?$��	?��	?(��	?,��	?4� 	?4�@!	?4�$"	?4��#	?0�$	? �%	?$�&	?�'	?(�(	?,�)	?4��*	?4�t+	?4�|,	?4�x-	?4��.	?4��/	?4��0	?4�1	? ��2	?$��3	?��4	?4��5	?4��6	?4��7	?4��8	?4��9	?4��:	?4��;	?4��<	?4��=	?4��>	?4�?	?4��@	?4��A	?4�@B	?4�(C	?0�`D	? �`E	?$�`F	?�`G	?(�`H	?,�`I	?�hJ	?8�hK	?8��L	?��M	?$��N	?��O	?��P	? ��Q	?(��R	?,��S	?�T	?��U?<?@?D��V?H?@?D��W?$?L?@?D��X??L?@?D��Y?L?@?D��Z?P?@?D��[?P?@?D��\?T?@?D��]
?<?D��^
?H?D��_
?L?D��`?$?L?D��a??L?D��b
?P?D��c?P?D��d
?T?D��e	?8�
��������	����
���������o5�P4VS_VERSION_INFO����?DVarFileInfo$Translation�dStringFileInfo@000004b0LCommentsSystem.Web.Extensions.dllLCompanyNameMicrosoft Corporation\FileDescriptionSystem.Web.Extensions.dll6FileVersion4.8.4770.0TInternalNameSystem.Web.Extensions.dll�/LegalCopyright� Microsoft Corporation.  All rights reserved.\OriginalFilenameSystem.Web.Extensions.dllTProductNameMicrosoft� .NET Framework:ProductVersion4.8.4770.08Assembly Version4.0.0.0PADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADDINGXXPADDINGPADD�?N0�N	*�H��
��M�0�M�10
	`�He0\
+�7�N0L0
+�70	���010
	`�He ��٤���r��)B�>Z�a�,3#$E+N�����;��v0��0��3V� +t2]-V0
	*�H��
0~10	UUS10U
Washington10URedmond10U
Microsoft Corporation1(0&UMicrosoft Code Signing PCA 20100
231019195111Z
241016195111Z0t10	UUS10U
Washington10URedmond10U
Microsoft Corporation10UMicrosoft Corporation0�"0
	*�H��
�0�
���H<�5��ȃ���1�C��ux1�������%ˎ�$7��`���Ñ��+���m�����ڢ^=���]C���KJ� ��p���
�~]g�<�����?�$ߢS�B�r��%�
}�
�sC02���Z����<�.0O)���n�h�M�<�
������<��z�!qB;	��S}���~�>��Lft���k~�T�j�ׁ+9Fl�t��?�90�^�^Z�"̛}h�sb�'��q��HN%$[ª9c��}0�y0U%0
+�7=+0U&��p_�9��<d�<��0TUM0K�I0G1-0+U$Microsoft Ireland Operations Limited10U
230865+5016550U#0��_{�"X�rN��!t#2��0VUO0M0K�I�G�Ehttp://crl.microsoft.com/pki/crl/products/MicCodSigPCA_2010-07-06.crl0Z+N0L0J+0�>http://www.microsoft.com/pki/certs/MicCodSigPCA_2010-07-06.crt0U�00
	*�H��
�B��h3�Q����K{2_4!�?b9~�B#�u����QHElӾ���(�I��:�5�6
����ǟ��?l��	+>|��1/X�k%��0�|O�����`R���?��;�3t�*H���K|�K��"�ۉb�X�]�ci�8����w}�Y�G�5�Ҵ�"կ,O2��X-��{F)�󡟃�M��Ub�$�6(\�J�7^�'@�1��A@Ŵ����_�c�A[��#��(Ӈ����0�p0�X�
aRL0
	*�H��
0��10	UUS10U
Washington10URedmond10U
Microsoft Corporation1200U)Microsoft Root Certificate Authority 20100
100706204017Z
250706205017Z0~10	UUS10U
Washington10URedmond10U
Microsoft Corporation1(0&UMicrosoft Code Signing PCA 20100�"0
	*�H��
�0�
��dPyg���	L����Vh�D���XO��v|mE��9�����e��ҏ�D��e��,U��}�.+�A+��KnILk���‰q�͵K���̈�k�:��&?��4�W�]I��*.Յ�Y?���+�t�+�;F��FI�fT���UbWr�g�% 4�]���^�(��ղ���cӲ�Ȋ&
Y��5L��R[����HwօG�����j-\`ƴ*[�#_E�o7�3�j�M�jfcx��0ϕ���0��0	+�70U�_{�"X�rN��!t#2��0	+�7
SubCA0U�0U�0�0U#0��Vˏ�\bh�=��[�Κ�0VUO0M0K�I�G�Ehttp://crl.microsoft.com/pki/crl/products/MicRooCerAut_2010-06-23.crl0Z+N0L0J+0�>http://www.microsoft.com/pki/certs/MicRooCerAut_2010-06-23.crt0��U ��0��0��	+�7.0��0=+1http://www.microsoft.com/PKI/docs/CPS/default.htm0@+042 Legal_Policy_Statement. 0
	*�H��
�t�WO){��x�P�"�	�����4�*,����Ͽ���4�ہ����5o��y�w������Na��Z#�bQEg�?<��0��9@���!)奡i�"��t��GC�S��0i��% moa����r,i�v=Qۦ9H�7am�S˧�a¿⃫�k���}(Q��JQ��lȷJi���~�Ip����rGc��֢���D�c��i��F�z?��!�{�#-�A˿L�ﱜ�"KI�n�v[�Sy������=s5�<�T�RGj���Ҏڙg^2��7���u����ZW�¿�
���-���'ӵ^i���$gs�MO��V�z��RM�wO�����B	�
v�#Vx"&6�ʱ�n���G3b��ɑ3_q@��e�"�B!%�-`�7�A�*�a<�h`R��G���@��w>��SP8��f3'9x�6�N�_��=GS����a=*ג,�7Z>@B1��V��$]Q�jy�����{%qD�j����#��u�1�B0�B0��0~10	UUS10U
Washington10URedmond10U
Microsoft Corporation1(0&UMicrosoft Code Signing PCA 20103V� +t2]-V0
	`�He���0	*�H��
	1
+�70
+�710
+�70/	*�H��
	1" �Ƞ/-��Ă#C�2�b	�9�F���ݨ�0B
+�71402��Microsoft��http://www.microsoft.com0
	*�H��
�d��>��� `��i����]ո�gL��`��@w��J��y!�9�Kk@�T(���ɗ�c{4��5E��k�	V��41g$w�۶?I�
�qW�TҞ��������23��K������-|i$�g�@�҈zi��U q��8�q��0D����kX��ӿ��!m��m[����	^���E�_;:Ѽ�(��VQ#{����O�i@G��S\2��ҍ�%��vџ�-�`V����a}.]���?�0��
+�71��0��	*�H��
���0��10
	`�He0�Z*�H��
	��I�E0�A
+�Y
010
	`�He �!B �myQ�f�ў3�25[�������E�؄f�H��a20240925001224.265Z0��٤��0��10	UUS10U
Washington10URedmond10U
Microsoft Corporation1-0+U$Microsoft Ireland Operations Limited1'0%UnShield TSS ESN:4C1A-05E0-D9471%0#UMicrosoft Time-Stamp Service���0�(0��3�8|��e֡�0
	*�H��
0|10	UUS10U
Washington10URedmond10U
Microsoft Corporation1&0$UMicrosoft Time-Stamp PCA 20100
240725183119Z
251022183119Z0��10	UUS10U
Washington10URedmond10U
Microsoft Corporation1-0+U$Microsoft Ireland Operations Limited1'0%UnShield TSS ESN:4C1A-05E0-D9471%0#UMicrosoft Time-Stamp Service0�"0
	*�H��
�0�
���Ґ{n?��� �%y�%c؂OfLg�ޜЦ̫D�DY˜�u���>S�B�D^���P5;A�){i���n"J��Q.
�!a\�0�۽	
���^�٪���<ad��]�I@�0U�|F�$�9������_D~l0'����q�i���L�	?+HwmD����C��)d(���� [���*6���!d8y?w�����}��B��|�na�%Ɨ�S��@�l��>��'Q�%��p׫l��H@ʓ{�Ժ��6���!ʐm{�p2����w|�k������/��Whe�F��aR�=	�"�&l�m��JO9w�'�X��F�uH�ѝ��h:�]ܩ���ЧL4p�.�δk�CԞ�@�	9��i�"�k�WƱ�T�t'���pW�[�~p���n�Y�.A�E����,10o�@�-��o�C~h�H����i�	�_�_�
!�X��5��L�<_[5����3.=��L�YS�K۔����rވ����9'��I0�E0U����w�?�;�}0��a0U#0���]^b]����e�S5�r0_UX0V0T�R�P�Nhttp://www.microsoft.com/pkiops/crl/Microsoft%20Time-Stamp%20PCA%202010(1).crl0l+`0^0\+0�Phttp://www.microsoft.com/pkiops/certs/Microsoft%20Time-Stamp%20PCA%202010(1).crt0U�00U%�0
+0U��0
	*�H��
�9#M��K�+��κ~���H]k2�.i�fO~ <-�3L̹ba�����H��b�x�YH������Á����t7��`ˎ�Z����OؓG����:'�}��9?�~�%	����\ڻ�Hء�N��TTt��ig�>3�if:�;�=ɕ�Ʀ͓
�8���5o��h�fa�uou%�]r^��P����
���(��]��=E��$�_:�^׍^h(%f��<\��^��s���L=��P^�ڵ���7�uю"SI�"G�G2�r��`�G
�C��v���QkB���I�#,p�<����+?�͸���9�ݧ#����wF���8��D)W�)�c
�ֆv�C��Z�EF��j�I���ܭ��Xa�J����]"�:�c�&[P_�e�U��Qe��"�F��.?7~KF�7p7]N��ע�?!cR'�n�Y����7���S�m='Oy9��t�"��c���e5Iv���R?{|�f��+mn���mE��N�Ő�0�q0�Y�3��k��I�0
	*�H��
0��10	UUS10U
Washington10URedmond10U
Microsoft Corporation1200U)Microsoft Root Certificate Authority 20100
210930182225Z
300930183225Z0|10	UUS10U
Washington10URedmond10U
Microsoft Corporation1&0$UMicrosoft Time-Stamp PCA 20100�"0
	*�H��
�0�
���L�r!y���$y�Ղ��ҩlNu��5W�lJ�⽹>`3�\O�f��SqZ�~JZ��6g�F#���w2��`}jR�D���Fk��v��P�D�q\Q17�
8n����&S|9azĪ�ri����6�5&dژ;�{3��[~��R���b%�j�]�S���VM�ݼ��㑏�9,Q��pi
�6-p�1�5(�㴇$��ɏ~�T��U�mh;�F��z)7���E�Fn�2��0\O,�b�͹⍈䖬J��q�[g`���=� �s}A�Fu��_4���� }~�ٞE߶r/�}_��۪~6�6L�+n�Q���s�M7t�4���G��|?Lۯ^����s=CN�39L��Bh.�QF�ѽjZas�g�^�(v�3rק ��
�co�6d�[���!]_0t���عP��a�65�G������k�\RQ]�%��Pzl�r�Rą��<�7�?x�E���^ڏ�riƮ{��>j�.����0��0	+�70#	+�7*�R�dĚ���<F5)��/�0U��]^b]����e�S5�r0\U U0S0Q+�7L�}0A0?+3http://www.microsoft.com/pkiops/Docs/Repository.htm0U%0
+0	+�7
SubCA0U�0U�0�0U#0��Vˏ�\bh�=��[�Κ�0VUO0M0K�I�G�Ehttp://crl.microsoft.com/pki/crl/products/MicRooCerAut_2010-06-23.crl0Z+N0L0J+0�>http://www.microsoft.com/pki/certs/MicRooCerAut_2010-06-23.crt0
	*�H��
��U}�*��,g1$[�rK��o�\�>NGdx���=13�9��q6?�dl|�u9m�1��lѡ�"��fg:SMݘ��x�6.���V����i�	�{�jo�)�n�?Hu��m��m#T�xSu$W�ݟ�=��h�e��V����(U'�$�@���]='�@�8���)�ü�T�B�������j�BRu�6��as.,k{n?,	x鑲�[�I�t�쑀�=�J>f;O���2ٖ����t��Lro�u0�4�z�P�
X�@<�Tm�ctH,�NG-�q�d�$�smʎ	��WITd�s�[D�Z�k
��(�g($�8K�n�!TkjEG����^O���Lv�WT	�iD~|�als�
��Af=i��AI~~���;����>�1Q������{��p���(��6ںL���
�4�$5g+�
�挙��"��'B=%��tt[jў>�~�13}���{�8pDѐ�ȫ:�:b�pcSM��m��qj�U3X��pf�Y0�A0���٤��0��10	UUS10U
Washington10URedmond10U
Microsoft Corporation1-0+U$Microsoft Ireland Operations Limited1'0%UnShield TSS ESN:4C1A-05E0-D9471%0#UMicrosoft Time-Stamp Service�#
0+��lļ%�%rs��D�Ų����0���~0|10	UUS10U
Washington10URedmond10U
Microsoft Corporation1&0$UMicrosoft Time-Stamp PCA 20100
	*�H��
ꝰ&0"20240924213950Z20240925213950Z0w0=
+�Y
1/0-0
ꝰ&0
��0}0
��06
+�Y
1(0&0
+�Y
�
0� �
0��0
	*�H��
��V��W!J�/3��.{P� �@��
��aM�\�����W���j�
�e3-؏D�����Y�?�,4F:~@�u��-���B�}����qQҳ%*IqH�h���>���z�V�!��w!�و}��,v"{x�L��7��.r�2(i��[�z��uO\(?�<���o�XJZ����S[�=�e ��������J�E����� ��MD1L�3�Sn�b_���
Y/���	�l>��i*o1�
0�	0��0|10	UUS10U
Washington10URedmond10U
Microsoft Corporation1&0$UMicrosoft Time-Stamp PCA 20103�8|��e֡�0
	`�He��J0	*�H��
	1
*�H��
	0/	*�H��
	1" �u�W$�E�2��N�V��6��r��͝���ޏ0��*�H��
	/1��0��0��0�� �2��wi��"���;$یiS�ޠ�HE|����0��0���~0|10	UUS10U
Washington10URedmond10U
Microsoft Corporation1&0$UMicrosoft Time-Stamp PCA 20103�8|��e֡�0" lk,��{Q[�h2��Q`���U_�7�L�ltK;�0
	*�H��
�����|��ݒ���RZ�VC�x��I3^⟽��I����ȥ`�k�x��%�D��F��NlL�p�Js(%����ȼVe�D��7�~�䈜Y;_\w��+�W4|_׶N�I^*h3�o�'��-����|�(��S�����Zp�Ev�œ�
ȸ8����B�t�\���4�7r�nVR���@Nk�� K
������S��"�2�����k����n����"�@�O���ɨ�cʀD+�w��]U��)��d�`��\q��Z�H�r�� �7�4nD��z���w_�z+���̳1/j�A�1�w��uU�!6�oo�P��'����}5�u[��jU�"s�<h�?�q��N����9�~�W��K\�$���H��t����O+[�q��I�����_��G�P���v�1�G��Ҳ}�ń���zܪ��o���� �����6Bp�L2IHy���?�U�-\�i/ϸ�Ε+�^�e��m�0�'�
+�71�'�0�'�	*�H��
��'�0�'�10
	`�He0\
+�7�N0L0
+�70	���010
	`�He ��٤���r��)B�>Z�a�,3#$E+N�����;��
�0�0��3���V���'�0
	*�H��
0~10	UUS10U
Washington10URedmond10U
Microsoft Corporation1(0&UMicrosoft Code Signing PCA 20110
231019195155Z
241016195155Z0t10	UUS10U
Washington10URedmond10U
Microsoft Corporation10UMicrosoft Corporation0�"0
	*�H��
�0�
�ۺ-2��Y��?e��j���܎m�x�r�c������O��锎��ke�T ���3��,WJqly�h9'��j$��rj���i�d� �~��k��L�3�*?�m��֡�FP�;�U�B!�OPX�޽z�N�R��S>��P_�!�߫dب���������G�K��;y߂p��/�߭����|�w��P�ƒ�C!�zh��`mX	�U�G���7$ܰ��=}Ջs/�+�W��ny�.�I��3������0�~0U%0
+�7
+0U���o9�x����U0TUM0K�I0G1-0+U$Microsoft Ireland Operations Limited10U
230217+5016710U#0�Hnd�Pӂ�77"�m��u�0TUM0K0I�G�E�Chttp://www.microsoft.com/pkiops/crl/MicCodSigPCA2011_2011-07-08.crl0a+U0S0Q+0�Ehttp://www.microsoft.com/pkiops/certs/MicCodSigPCA2011_2011-07-08.crt0U�00
	*�H��
�z�Lm�T�p+�]�[o�$Q�Fb�	vޫ�O��TLU�a14��=h���NB��E�V&�	G���=�S�1�^�q��]�@�@��V�[(ϹX�:��DIӥ��a��Z�g�۸E1��	����E�'o�&��ӓ8ڋB�����m��'�Z@q�3&4���X$����!�Yҋ*�����dA`�,�����:��ɺY���J�>Y��UH�Pl}�?6d~����C�Tn/t��ѝo�琅a�&*7��0O�d����d�T�q%���{�)�¯5��%�0�x0#p�3����#��Ĵ��b޲
�#N2�W2��#��d�ӲѲg��a��'��h����g>n����T���_6�هa����P�ǐ�8NY8⼾,ApL[��N��u1���)����_r;��Rt�|�l`�+r��˾�]���䠲̽	��,�N���0(mЭ��G6a&���}2
ٳ67��	r��&��V�A�<�[@�D��/�����0�z0�b�
a��0
	*�H��
0��10	UUS10U
Washington10URedmond10U
Microsoft Corporation1200U)Microsoft Root Certificate Authority 20110
110708205909Z
260708210909Z0~10	UUS10U
Washington10URedmond10U
Microsoft Corporation1(0&UMicrosoft Code Signing PCA 20110�"0
	*�H��
�0�
���r.��n��M4��X!�B*k�ZP��8I���7k���8™��9�1BӉ
yd�~�`$l��I��h^�ߛS�
,ï٩+�z	�זY�`�fv�2R&/�PϳD�]��.u�h��m�:\��F��8d�nd5x��c-�@����
�\y�I)�
��w��=��+ZMV(�zr�:�I^���C���{�{��>��]�O��/Y�;-�3Xŷ>�2ӳ=����8~ҝ�,�NV�!5%�9ndS���#������_��R������!t%_(��'(8%�9J6�|���#��f�aj�(I�_��%]�!K>RĵW?$��z[/�#�p]QFw��Ἤ�_����UK�9��#I��D|E��rz�r�$߿F����Wۃ��MI0�����[���ݰf��{���K�I)�(��}g��bx_�/��W�\�w((��m�(�,�@7O��D��	L�ԥC/t��n�x X,]`��>O3�ڰ�ޞN�F�l���ֈ����0��0	+�70UHnd�Pӂ�77"�m��u�0	+�7
SubCA0U�0U�0�0U#0�r-:1�C�N���1�#�40ZUS0Q0O�M�K�Ihttp://crl.microsoft.com/pki/crl/products/MicRooCerAut2011_2011_03_22.crl0^+R0P0N+0�Bhttp://www.microsoft.com/pki/certs/MicRooCerAut2011_2011_03_22.crt0��U ��0��0��	+�7.0��0?+3http://www.microsoft.com/pkiops/docs/primarycps.htm0@+042 Legal_policy_statement. 0
	*�H��
�g򆥘�Ty.��tg"���c��B�}�y��e_.,>��r�m���?�
�;�G���i�c�"5��]e��}�FPU��|�K�<B�Rа�k�>.)��=�Եw�9��d�D=xz#�}��t����&F*Š�����h�h.��*?*kXIc	inZ�����F+�;н5�n%��'������(��M=����2���-�[��I9
�
�ƭ�����QEX82q'��'��,: i��Y�hno��t�@�*(>�?Mf��M��o}E�v�@*e��]Rb��c6��������'�ͥ���]cA�[��>w��u�aa������A�(��e/��\��֡F�Y�	KH���)ű��?Ew5�Ң��zz"�H���G#�����k�K���ux��7�yK�ֳ#hu������i;��0�L���umc�=ѝVNO��W"�x2!z�A
�?��̤]����WqVNHE�Bɛv[
�Hk�y���mmj�Rs
zP�1��0��0��0~10	UUS10U
Washington10URedmond10U
Microsoft Corporation1(0&UMicrosoft Code Signing PCA 20113���V���'�0
	`�He���0
*�H��
	10	*�H��
	1
+�70
+�710
+�70/	*�H��
	1" �Ƞ/-��Ă#C�2�b	�9�F���ݨ�0B
+�71402��Microsoft��http://www.microsoft.com0
	*�H��
�9���.�
[�JǑ`���,�Jұw�n|?��%�T7��X52�yu|H�l�����\�����AL�ť\��&�L�y�HQ8�ռ+�:�1-H�Y���ԁ���l�$�R�'?�?�f&�y�)8<��{C����_z���E]�T%r/:q�ٙOG8�}E��Ƌza{����6�.���R��V�|�5���m���'fhB�6�cT�5�/����%�<3�5�W)�h�
�8H�����,0�(
+�71�0�	*�H��
��0�10
	`�He0�Y*�H��
	��H�D0�@
+�Y
010
	`�He B�gf	�Ӳ6�����8����_�!f��f���x20240925001225.695Z0��ؤ��0��10	UUS10U
Washington10URedmond10U
Microsoft Corporation1-0+U$Microsoft Ireland Operations Limited1&0$UThales TSS ESN:179E-4BB0-82461%0#UMicrosoft Time-Stamp Service��{0�'0��3��~]�0
	*�H��
0|10	UUS10U
Washington10URedmond10U
Microsoft Corporation1&0$UMicrosoft Time-Stamp PCA 20100
231012190719Z
250110190719Z0��10	UUS10U
Washington10URedmond10U
Microsoft Corporation1-0+U$Microsoft Ireland Operations Limited1&0$UThales TSS ESN:179E-4BB0-82461%0#UMicrosoft Time-Stamp Service0�"0
	*�H��
�0�
�����Ż�9ƍ��~�a�vK΋@�-��DEQג+<��{j��
�`�qwJ��1F�zyG�w������Z���z��V�5us�>�j�N9�0~�/��
����s7�C��z����u����{�/5�����p�� �?A���]���b/��$]�M�X
�i��g���1��袋������F���}�7As?���cY�g�U���낏*�6�K_+�~���������pc1�U��.f �m�L���V䖙���%rd���[q8D�T2:�dJ�����>t��@�Д�p��e=�r���N\��`�~q�`_!�/�\�:j�'>e���4�u~0C�/Qh�1C����bI�^���H&�f�v�"UF�R�}���V�v���ע��g���U���������_���JrPfmS�V�G�#A6ď�3�x�y�wab���e� ���%���)�352��p\1�������-��I0�E0Up^?n�W����u��0ҙ�0U#0���]^b]����e�S5�r0_UX0V0T�R�P�Nhttp://www.microsoft.com/pkiops/crl/Microsoft%20Time-Stamp%20PCA%202010(1).crl0l+`0^0\+0�Phttp://www.microsoft.com/pkiops/certs/Microsoft%20Time-Stamp%20PCA%202010(1).crt0U�00U%�0
+0U��0
	*�H��
�����
%t�̨lC�Rc���XGoA�ш���"���U�Rθ�=���&Ja[6�Y��)�0ߔq����wFt_m�u�
���oky��ʝ�7�5��?֖�'7_E��Owɬ+�F#1gz���Z���YA?>�iS��E���
3cn!����\���А^L�D��#)�x����������%��V�&��lfư�zH��Z�G~�4�9���N&��g��gjp]-�csw���<C�Ϋ���V��p�&Wm���^�|O����a���Qҙ�[�_ع�2S�!Z�̘�D�HF�6�b���6x%�#��W-��U�f�}�Ǝ;
�`�f���`dنÍ�jjZ���6r������:|}�&�UG;!�M�ںG��G?��r�:��o������4ds/��d�ڞ��	kخ���_l�\�?:�U52��U˕o���a���l9��<�/�_�~N[u�J�9J#n�r�D�9\+��l/ެ#�
^��Y�;�0�q0�Y�3��k��I�0
	*�H��
0��10	UUS10U
Washington10URedmond10U
Microsoft Corporation1200U)Microsoft Root Certificate Authority 20100
210930182225Z
300930183225Z0|10	UUS10U
Washington10URedmond10U
Microsoft Corporation1&0$UMicrosoft Time-Stamp PCA 20100�"0
	*�H��
�0�
���L�r!y���$y�Ղ��ҩlNu��5W�lJ�⽹>`3�\O�f��SqZ�~JZ��6g�F#���w2��`}jR�D���Fk��v��P�D�q\Q17�
8n����&S|9azĪ�ri����6�5&dژ;�{3��[~��R���b%�j�]�S���VM�ݼ��㑏�9,Q��pi
�6-p�1�5(�㴇$��ɏ~�T��U�mh;�F��z)7���E�Fn�2��0\O,�b�͹⍈䖬J��q�[g`���=� �s}A�Fu��_4���� }~�ٞE߶r/�}_��۪~6�6L�+n�Q���s�M7t�4���G��|?Lۯ^����s=CN�39L��Bh.�QF�ѽjZas�g�^�(v�3rק ��
�co�6d�[���!]_0t���عP��a�65�G������k�\RQ]�%��Pzl�r�Rą��<�7�?x�E���^ڏ�riƮ{��>j�.����0��0	+�70#	+�7*�R�dĚ���<F5)��/�0U��]^b]����e�S5�r0\U U0S0Q+�7L�}0A0?+3http://www.microsoft.com/pkiops/Docs/Repository.htm0U%0
+0	+�7
SubCA0U�0U�0�0U#0��Vˏ�\bh�=��[�Κ�0VUO0M0K�I�G�Ehttp://crl.microsoft.com/pki/crl/products/MicRooCerAut_2010-06-23.crl0Z+N0L0J+0�>http://www.microsoft.com/pki/certs/MicRooCerAut_2010-06-23.crt0
	*�H��
��U}�*��,g1$[�rK��o�\�>NGdx���=13�9��q6?�dl|�u9m�1��lѡ�"��fg:SMݘ��x�6.���V����i�	�{�jo�)�n�?Hu��m��m#T�xSu$W�ݟ�=��h�e��V����(U'�$�@���]='�@�8���)�ü�T�B�������j�BRu�6��as.,k{n?,	x鑲�[�I�t�쑀�=�J>f;O���2ٖ����t��Lro�u0�4�z�P�
X�@<�Tm�ctH,�NG-�q�d�$�smʎ	��WITd�s�[D�Z�k
��(�g($�8K�n�!TkjEG����^O���Lv�WT	�iD~|�als�
��Af=i��AI~~���;����>�1Q������{��p���(��6ںL���
�4�$5g+�
�挙��"��'B=%��tt[jў>�~�13}���{�8pDѐ�ȫ:�:b�pcSM��m��qj�U3X��pf��0�@0���ؤ��0��10	UUS10U
Washington10URedmond10U
Microsoft Corporation1-0+U$Microsoft Ireland Operations Limited1&0$UThales TSS ESN:179E-4BB0-82461%0#UMicrosoft Time-Stamp Service�#
0+m����W�|X#��63%N_!���0���~0|10	UUS10U
Washington10URedmond10U
Microsoft Corporation1&0$UMicrosoft Time-Stamp PCA 20100
	*�H��
�; 0"20240924212032Z20240925212032Z0w0=
+�Y
1/0-0
�; 0
 �0a0
ꞌ�06
+�Y
1(0&0
+�Y
�
0� �
0��0
	*�H��
��V�H���ڿ�0s|w�6����Ŀu6�
��8�m��K�63�t��<����p2�Zk�65ǂ/Ж�y�
օd#�/W
�G�I���xO�&�YQZ3��<�|b��O �!�-L�ϼ�� ||"n1�
0�	0��0|10	UUS10U
Washington10URedmond10U
Microsoft Corporation1&0$UMicrosoft Time-Stamp PCA 20103��~]�0
	`�He��J0	*�H��
	1
*�H��
	0/	*�H��
	1" ��[8�"����(�s�u��~�Zs�������p0��*�H��
	/1��0��0��0�� ��R��9�m8Ͻ� �o���=����
�i
�0��0���~0|10	UUS10U
Washington10URedmond10U
Microsoft Corporation1&0$UMicrosoft Time-Stamp PCA 20103��~]�0" �"�F�)1�rL�_�I��D�0g��?0
	*�H��
��b�����;�v@����]�A��� ||��$�0� (��2V���i���b�OݪOO��s0���4,���J�C���=*d��!r�q�ml8k���@ut5+}�&�|u�|X��5��@�n����!�0NH����/�^�S�E������KgP��A*�
F����V:��X38�}.����O��_^��|p"q���cs�9q9�fĉ�Y�d9������GO$�*d�z�^d�.�6��-f��|��`5��Y��#FbtV�Z<1P}[�,f�-�+Ruk�M��[3�л�N�����2�o�y/��1����c:�D��u�vv�i=�?J�J������{ςT�*���dϡ�G �>2�u������O���覯xxa�M�[~Q*-��nNE�C��A���t�~;�~��N�)S��-�/VMP[~u๥R�F��[�-�H��mA��:����ɇ�s�P<MoU���6膤�6_#s���an�e��