From: Subject: South Carolina Archives & History - View Image Date: Wed, 1 Apr 2009 20:18:53 -0400 MIME-Version: 1.0 Content-Type: multipart/related; type="text/html"; boundary="----=_NextPart_000_0000_01C9B307.13EEF460" X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579 This is a multi-part message in MIME format. ------=_NextPart_000_0000_01C9B307.13EEF460 Content-Type: text/html; charset="utf-8" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.archivesindex.sc.gov/onlinearchives/Thumbnails.aspx?recordId=300619 =EF=BB=BF South Carolina = Archives & History - View Image
3D""
3D""=20
3D""=20
3D""=20

S108093: South=20 Carolina Will Transcripts (Microcopy No=20 9)

LAW, JOHN SR., SPARTANBURG = DISTRICT,=20 WILL TYPESCRIPT (MSS WILL: BOOK B, PAGE = 98) (1=20 FRAME)
Previous | Return to = image=20 index  |  Next
   
Previous=20  | Return=20 to image index |  Next    
=
3D""=20
3D""=20
3D""=20
3D""=20
3D""=20
3D""=20
3D""=20
Images and texts on = these pages=20 are intended for research or educational use. Please read our statement on use and reproduction for further=20 information on how to obtain a photocopy or how to cite an = item.
3D""=20
------=_NextPart_000_0000_01C9B307.13EEF460 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.archivesindex.sc.gov/onlinearchives/images/bg_left.gif R0lGODlhCwABAJEDADMzMyMjIxMTEwAAACH5BAEAAAMALAAAAAALAAEAQAIEnG8QUgA7 ------=_NextPart_000_0000_01C9B307.13EEF460 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.archivesindex.sc.gov/onlinearchives/images/spacer.gif R0lGODlhAQABAID/AMDAwAAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw== ------=_NextPart_000_0000_01C9B307.13EEF460 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.archivesindex.sc.gov/onlinearchives/images/minigate_small.gif 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 ------=_NextPart_000_0000_01C9B307.13EEF460 Content-Type: image/jpeg Content-Transfer-Encoding: base64 Content-Location: http://www.archivesindex.sc.gov/onlinearchives/ArchivesImages/S108093/S108093002400261000/images/S108093002400261000a.jpg /9j/4AAQSkZJRgABAgEAyADIAAD/4RZNRXhpZgAATU0AKgAAAAgACAEOAAIAAACQAAAAbgESAAMA AAABAAEAAAEaAAUAAAABAAAA/gEbAAUAAAABAAABBgEoAAMAAAABAAIAAAExAAIAAAAcAAABDgEy AAIAAAAUAAABKodpAAQAAAABAAABQAAAAWxTMTA4MDkzCkRlcHQuIG9mIEFyY2hpdmVzIGFuZCBI aXN0b3J5ClNvdXRoIENhcm9saW5hIFdpbGwgVHJhbnNjcmlwdHMsIDE3ODItMTg2OAooTWljcm9j b3B5ICM5KQpWb2wuIDI0LCAjMDAyNjEKMjAwZHBpClNjYW5uZWQgYnkgQnJ5YW4gQ29sbGFycwAA HoSAAAAnEAAehIAAACcQQWRvYmUgUGhvdG9zaG9wIENTMyBXaW5kb3dzADIwMDc6MTE6MjggMTI6 NTA6MzcAAAAAA6ABAAMAAAAB//8AAKACAAQAAAABAAACfqADAAQAAAABAAAETAAAAAAAAAAGAQMA AwAAAAEABgAAARoABQAAAAEAAAG6ARsABQAAAAEAAAHCASgAAwAAAAEAAgAAAgEABAAAAAEAAAHK AgIABAAAAAEAABR7AAAAAAAAAEgAAAABAAAASAAAAAH/2P/gABBKRklGAAECAABIAEgAAP/tAAxB ZG9iZV9DTQAD/+4ADkFkb2JlAGSAAAAAAf/bAIQADAgICAkIDAkJDBELCgsRFQ8MDA8VGBMTFRMT GBEMDAwMDAwRDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAENCwsNDg0QDg4QFA4ODhQUDg4O DhQRDAwMDAwREQwMDAwMDBEMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM/8AAEQgAoABdAwEi AAIRAQMRAf/dAAQABv/EAT8AAAEFAQEBAQEBAAAAAAAAAAMAAQIEBQYHCAkKCwEAAQUBAQEBAQEA AAAAAAAAAQACAwQFBgcICQoLEAABBAEDAgQCBQcGCAUDDDMBAAIRAwQhEjEFQVFhEyJxgTIGFJGh sUIjJBVSwWIzNHKC0UMHJZJT8OHxY3M1FqKygyZEk1RkRcKjdDYX0lXiZfKzhMPTdePzRieUpIW0 lcTU5PSltcXV5fVWZnaGlqa2xtbm9jdHV2d3h5ent8fX5/cRAAICAQIEBAMEBQYHBwYFNQEAAhED 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 yogex2v5zfyPSU//0Ot+prC36s9PBJP6N5BOmhtuc3/orYLm8T5rA+q/UMOv6v8AT2WZFTHNpAh1 jAR7n/SaXK/b1bpwdBy6Ph6tfb+2kpvmCD5pmkAD8VT/AGlgObIyqSfK1h/7+mb1HD/7kVf9uM/8 kkpulzPml7DqT5QqTepYW4j7RWSdRFjOP85SPUMQCRdXHjvb/wCSSU3C5iUgHvCptz8Qun164/rt /vTvz8UH+er+G9v/AJJJTac4R4pmlp57BVTn4jgNt1f+e3+9JuZiyT6jAPHcP70lNwQBEJhGx2h+ k38j1VdmUCD6jf8AOGv4pDPxoc31WSS3TcP5aSn/2f/tDyhQaG90b3Nob3AgMy4wADhCSU0EBAAA AAAAqBwCAAACAAIcAngAj1MxMDgwOTMNRGVwdC4gb2YgQXJjaGl2ZXMgYW5kIEhpc3RvcnkNU291 dGggQ2Fyb2xpbmEgV2lsbCBUcmFuc2NyaXB0cywgMTc4Mi0xODY4DShNaWNyb2NvcHkgIzkpDVZv bC4gMjQsICMwMDI2MQ0yMDBkcGkNU2Nhbm5lZCBieSBCcnlhbiBDb2xsYXJzHAI3AAgyMDA3MTEy ODhCSU0D7QAAAAAAEADIAAAAAQABAMgAAAABAAE4QklNBA0AAAAAAAQAAAAeOEJJTQQZAAAAAAAE AAAAHjhCSU0D8wAAAAAACQAAAAAAAAAAAQA4QklNBAoAAAAAAAEAADhCSU0nEAAAAAAACgABAAAA AAAAAAI4QklNA/UAAAAAAEgAL2ZmAAEAbGZmAAYAAAAAAAEAL2ZmAAEAoZmaAAYAAAAAAAEAMgAA AAEAWgAAAAYAAAAAAAEANQAAAAEALQAAAAYAAAAAAAE4QklNA/gAAAAAAHAAAP////////////// //////////////8D6AAAAAD/////////////////////////////A+gAAAAA//////////////// /////////////wPoAAAAAP////////////////////////////8D6AAAOEJJTQQIAAAAAAAQAAAA AQAAAkAAAAJAAAAAADhCSU0EHgAAAAAABAAAAAA4QklNBBoAAAAAAIkAAAAGAAAAAAAAAAAAAARM AAACfgAAABQAUwAxADAAOAAwADkAMwAwADAAMgA0ADAAMAAyADYAMQAwADAAMABhAAAAAQAAAAAA AAAAAAAAAAAAAAAAAAABAAAAAAAAAAAAAAJ+AAAETAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAA4QklNBBEAAAAAAAEBADhCSU0EFAAAAAAABAAAAAE4QklNBAwAAAAAC7wAAAABAAAA QQAAAHAAAADEAABVwAAAC6AAGAAB/9j/4AAQSkZJRgABAgEASABIAAD/7gAOQWRvYmUAZIAAAAAB /9sAhAAMCAgICQgMCQkMEQsKCxEVDwwMDxUYExMVExMYEQwMDAwMDBEMDAwMDAwMDAwMDAwMDAwM DAwMDAwMDAwMDAwMAQ0LCw0ODRAODhAUDg4OFBQODg4OFBEMDAwMDBERDAwMDAwMEQwMDAwMDAwM DAwMDAwMDAwMDAwMDAwMDAwMDAz/wAARCABwAEEDASIAAhEBAxEB/90ABAAF/8QBPwAAAQUBAQEB AQEAAAAAAAAAAwABAgQFBgcICQoLAQABBQEBAQEBAQAAAAAAAAABAAIDBAUGBwgJCgsQAAEEAQMC BAIFBwYIBQMMMwEAAhEDBCESMQVBUWETInGBMgYUkaGxQiMkFVLBYjM0coLRQwclklPw4fFjczUW orKDJkSTVGRFwqN0NhfSVeJl8rOEw9N14/NGJ5SkhbSVxNTk9KW1xdXl9VZmdoaWprbG1ub2N0dX Z3eHl6e3x9fn9xEAAgIBAgQEAwQFBgcHBgU1AQACEQMhMRIEQVFhcSITBTKBkRShsUIjwVLR8DMk YuFygpJDUxVjczTxJQYWorKDByY1wtJEk1SjF2RFVTZ0ZeLys4TD03Xj80aUpIW0lcTU5PSltcXV 5fVWZnaGlqa2xtbm9ic3R1dnd4eXp7fH/9oADAMBAAIRAxEAPwD0PptFX7OxPa0/oKhMeDGI5x6v 3R9wUOmx+z8QDQehVp/Yap33mpzGCmy3fMmsNIb/AMZvex3+akpZuNTzsbPjAQ8muuml9rcc3Fon 06mtL3doYHmtn+c9MM6z1/R+x5P0/T9TYzZE7fV3eru9L876KFnnDy8Or7Rgv6jj3A2Nq9NtgG1r nN3stexu5/8AN1pKSVU02l4djOrDNoDrGNAduaLPZq536Pd6dm//AAiL9kxxP6Jn+a3+5VcV2Pj2 Prx+n3UCz03vc1jQ1zrNjNT6p99HqfrH7npW/TRB1J5sqZ9iyx6pIJNbYbE62uFnt3bfakpJ9lxu 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 CGdZJ81Jsbm+MhJT516tn+kb+P8Ackq0P/eH+vySSU//1PRcAzg4pA2g01+3w9jdEDPxr8h7H0Or aWBzT6nqiZI4+zW0+3/jEbCcPsePtP8Agq4+Gxvkpl890lNBmHkh8H0fSawsrG7I3Q4+8WO9Z276 diPj4jK3tusbN7JaxzbLXDYZ27hc929/u/PRmvM6qRcfHVJTLcAe6W7XvCgHuBAJT+ofHhJS4knv HdPJD2xMSPyqDbSXFs8Igd72ie4/Kkp8x+0Dx/EJIXq/8I5JJT//1fQOn2Mt6fi2AENfRU5s8w5j HfxRTp9EcKph5eM3Axx6rG7aaxG9ukMaPFSbm47gSLmE/wBdv96SmwBIGhSdr+aVX+2UbZ9Vmn8o Jxl48S25p07OCSmwBEHaU+ncKs3Koc7+dadP3gn+10SR6rfhuCSk0N1IapN+mzT84flVZuTUD/ON jvqFJuVSLGy9ujgZnzSU+bf9Z/Kkq/2in/SBJJT/AP/ZOEJJTQQhAAAAAABVAAAAAQEAAAAPAEEA ZABvAGIAZQAgAFAAaABvAHQAbwBzAGgAbwBwAAAAEwBBAGQAbwBiAGUAIABQAGgAbwB0AG8AcwBo AG8AcAAgADYALgAwAAAAAQA4QklNBAYAAAAAAAcAAQAAAAEBAP/uAA5BZG9iZQBkgAAAAAH/2wCE AAwICAgJCAwJCQwRCwoLERUPDAwPFRgTExUTExgRDAwMDAwMEQwMDAwMDAwMDAwMDAwMDAwMDAwM DAwMDAwMDAwBDQsLDQ4NEA4OEBQODg4UFA4ODg4UEQwMDAwMEREMDAwMDAwRDAwMDAwMDAwMDAwM DAwMDAwMDAwMDAwMDAwMDP/AABEIBEwCfgMBIgACEQEDEQH/3QAEACj/xAE/AAABBQEBAQEBAQAA AAAAAAADAAECBAUGBwgJCgsBAAEFAQEBAQEBAAAAAAAAAAEAAgMEBQYHCAkKCxAAAQQBAwIEAgUH BggFAwwzAQACEQMEIRIxBUFRYRMicYEyBhSRobFCIyQVUsFiMzRygtFDByWSU/Dh8WNzNRaisoMm RJNUZEXCo3Q2F9JV4mXys4TD03Xj80YnlKSFtJXE1OT0pbXF1eX1VmZ2hpamtsbW5vY3R1dnd4eX p7fH1+f3EQACAgECBAQDBAUGBwcGBTUBAAIRAyExEgRBUWFxIhMFMoGRFKGxQiPBUtHwMyRi4XKC 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 X1c6lkdYs6pi9QGOX1ei1hqDtoGv0t3u9yoY/wBRra8Wym3O9e65u2217JiSXfopd7d25JTh9T+v 37F+tmRdZiOuxbMdlYc32Oe0H1abvd7fa6yyv+ogdD6zk9V6Bd0+q5z+pfWHqFgLRJNVB2Oy7f5N baPYtfqP+LjI6na92b1Bhaa662FlUOa2szzv/O+itX6sfUjpn1cvysjGe+6zIJbU5/NdRO70WO/6 uz89JSL6wZ/WOm2YGL0YY7sVzmYux4LnBwHt+j+Z6bEI/wCMHpdF9tF9OQHY525NjavYzXb6jv3a 9yl076nXYOYbXZhtxxkOymMLT6hefa1tljnH2slAyfqh1S/H6jT9sojqTw8n0zIj813vSUvk/wCM /omPkWUux8ktpcA+3YA3a7i7V30Hfmfvrr6bmXUstZqyxoc13kRuXJ9E+p/UMPqlmZ1HJpzMe2ll T6jVz6f8z9L2N2Kz/wA3etn61/tdvUnN6cAAMMTtgN2ensn09v5+5JT0ziQ07I3QYniey4g/Wr6y ttrrezCa9+V9ndWC7c1oPus/eXbOBghsgxoey5Sz6s9ZcyoC3GNrMg3usLCCJk6H+0kpJjf4xegX 532Nvrbtzq2W+mdj3t5ZWfpf1FOj/GJ0K921leU0w4N3UnVzRuNbf+E2j6Kw6/qF1uq2hzLcX1KL TazIO/c7Xc1z2fQ3a/mrRH1N6o2nEqblUE4+U/KedjgDv3e38799JTbwf8YXRMy5tJZfjh7HPbbd WWsJYNz2A/vNaqN/+MSjPxMpnQmH7bQx1tX2lhFdldfuudVt/Oaz81Qs+pPWnYuBjty6GfYX2k2b XExZ7fZ/KbKqY/8Ai/6vjW12U2YzS2uyqx/uJc142b9p+i9JT0v1c+tON1qllZa6vN9JtttRaQ33 abqnO+k3cg/XT6zO+r/S25FNYtyrniqit0xuIku9v7ifpX1fzMPOxciy1hbj4v2ZwYCC6DuaVP61 /V13XOnNoqeK8nHsF2O94loeNId/Jc1JTyfSP8YvV8TqVlP1gYx+IKw8PxWTsLiNu9276P7+9bn/ AI5fQLsbKdjm0X0MLm12MInsw+2fbu+kuaZ/i5+srzl5JGJj25LDX6e5xEE+9zNHe6xdbjfVyzC6 RvxMbFHWrKhXZfB2O02/Sjf9FJTR6H9eM636r5HW+p0tdZXYWUsoa6HkfvfT2Ki3/GT1nGxLsnqP TQG2AfYHsD2se4/SY9z/ANxWuh/Vr6z4nQMvpFwxmNvJNTtxI95Jtna3/MWl9Yei9b6j0GjpmP8A ZjcxzDaXFzQBXBZ6R2n6UJKcnC+vXX/2dnZnUOniltbA7DuDbPTe9x9lb5923+WtLE+vWLR0fBy+ uTRkZ1Zsa2ljnsgHaPc2f81aHUMXrt/QBjV1Y786xmy6tzj6QBBa703Oaudr+rX1oOB0fEtqxA3p dslpe4yzTb+af81JT13SOtdO6zjHK6fb6rGna6QWuaR+a5jlU691Tq+C7HHT8RmX9odscXv2bT+b 7YVT6odJ6x02zqH7QrpqqybvVpbUd3PJPH5q1Oq42ddZjnF2ban+o4PJBJH0fopKefz/AK92YXRM nLtxfQ6jj2+h9msJcwv+lPqM/M9NaGP9bMej6v4nVuslmK/JYHekw7iSdQK2fTf7Vn9Z6B19/Sc3 Hw20ZOT1OwuyfUcWitpGwDH0/NVIfVX6xW9M6Y62nGGb0hxYyhzy5ltRAb73RtbYkp6A/XHoI6YO qjIL8d52MDAS8uH0mCv6W5GxfrX0PKoouqyBtySW1hwIO5v02P8A3HNXLZH1J6xZ06gsqxqr6L7L TiUPcxhbZH+G+l6jU7el5XSekv6W6g/tLKtdk0emXWNBkVBhudt/SOZ/OJKex6V1bA6rjuuwbfWZ W4sc6CPcP6yzur9fycTP+xYOKzJvDBY/1LBU0NP7u76bnLT6T0+vpuBTiVCPTaA4ju785zlm9X6Z nX9Q+0sxMbMq2BjG2Q17Cfpu9T3bklOSPr7k0dRxqOp9P+w4eUwuF1jiXBzTtP6OP3luP+sfRam2 utyq2igMdcZna1/82Zb+8sV/1c619rxLHVU5NePTc2bHyWut+ixrHDa5tf76q2fVnr9PT349ONTb blYoxrj6oAZtPsf9Fu7cwpKbuR9fqcLrjcDMobXg21+rTnB+4PYR7Xtra36LltN+tHQSx1n22osD Wvc4GYa76DjH7y4q/wCrH1mxrMDMrwKsuzHxPsllPqAkfSa1+52380o/T/qh1zpfRvs1GPXfl5lL q7S5wAqJc6wBx/PZtd/npKdvrX1/6X0jq9HTrAbBbBuuBG2oO+g4/vbl0ZzcZpq3Pa31/wCakj3S J9i4v6wfV/q4/ZPU8fCZmZmHX6eTjNLYJI9jnbv5zY5P1Pq/XcCvoDeo42M/Nvuh9LQS5pn2inb7 WbK3e/3JKe1dfW121zgHHgEiVjdY+tVHSur9P6W+l1pzjDrG8Vydtc6e7e5YfWf8Wj+qdTv6g3ql 1Lsh281gSGH91h3NQbvqp9YfVeQ51rsSumrBe97T6npne59hI3VbklPUf87fq+Mt2Gc6oXh/p7J4 d+7u+iszrv18xOkdWq6c2g5Tn7fWc14Hp7ztb7fz+Vh9T+qnWcmrqdo6az7XnPqcx7XtGwtG6zb/ ACXvSd9WfrDTh+kcGvIzDksyG5O9pOwHdZUSdr/5CSn0VrpYCO4mPkuUzPr42n600/V/GxvtIe4M tuY7Vjo9zdkfmfnrqaC81NNg2vIBLeYMahef9YxOv/8APKnquJ0R3o4jnNNtbmA37vZ6zz7fzUlO 5b9fei1/WD9hOJ36NN/5gtJ/mP6y6TcfCV599Z+h9WxfrLX1rpXTGZhup2hoa1wZkTPrWs9v/bi7 vDGScSk5YDcg1t9YN4D4923+0kpwmfXCi76ynoNOO6zYCX5TXAsBA9zYH+atOrrvSrsz7FXlVPyW 81NeC4EfS9q5o4fVavrYc/G6OacdzHVOsb6Y3En+fLt+5Z3Rfqz1mjqmJkWYnp+hc+ywvLXNaxxP 8zZ/Ouc5376Snv7bmNqdbY4NrYC4vOgAGu4rlrv8Zn1fqyDU31LWCz0zcwAiT+cxpO99f8tdRcwO x7GOrFgLTNZiHafQh3t9y4v6qdCsGV1Fuf0UYwvc91F1gaQ1rvb6G33JKevPVenGsWHKpaxzPUBL wPYPz/6qqj6xdDsdsZm0usDS4tDwTtA3OK5J3QuoVHCqs6S7IZhV3U2kFn6Rrw/06x7v5tR+qX1M x8ipuR1jBsoycZ72it52tsY795jfpbd2xJTr1/4wOl34WTm41d14xXFr6WBvqED/AAzfd/Mfy1v9 O6xh9Qwa8yp2xr6xY5jyNzARP6XX2rznA6X1XpeV1DAo6O+77TZax+SwCG0On0W0OP0v6i2R9W81 3TbcfExH411+CabN0NBsmYc5pd73JKepr690iyux7M6gsp/nH72w09t7vzVPG6x03Ms9LFyqr3t1 La3B2n9krzLpX1WzfRzXWdOyQPs3ptqdWxrX2z7DtDt1mz6fqLq/qp9VcHE+z9RNF2Hm01+m+p50 Lvz7C0fvpKetNrGNLnuDWj852g/FD/aWDtJ+0Vw2CTvbAnjusj6241mX02uplT74vY5zamlztoPv 7t9q5O7o+LRVazqGM/FxL22A2WQB6k/q23872/mpKfQWdTwrL/RqyK7LSJ2NcC6P6oJVh91VQb6r 2s3aDcQJ+ErhP8XfQ67rbfrBkVt9V7vRxo0aG1j0n2N/41dJ9a+jt6n0+G1erfS4PpA0d+69rXfy klN7L6vhYuLflOsa9lDDY4MIJIH7uqyavrvg2dA/bjMXJsx95r9NrJe0g6ud7tvp/wAtYWJ9XGYf S885uBfkEsbTXUPc5w/nGvYxrvzbEXoOXdifUm3FOBl+tU19LqzUdzjZu9zN30mM/PSU7mT9dOm0 9Co622q+/GyTDW1s3PaRId6uvs27VqdH6ti9Y6dT1DFn0b2y0OEOEaQ5q5To+XZh/Ug4DsDLdfTU aCz0XbnOs3ne0e3dW2fetb6jutq6JRg3412NbhtDHC5m3cT75r/eakp6LSOVEnROmf4eaSkLwNsj v4rn+rOH/OHoniL7tf8A0GyVvvHI1HwXOdWI/wCcnRGz/hrv/bfJSU//0uw+qBqP1b6Z6fDcWofA 7G7luCNFzv1Hc636q9NtcRLqGgx2Df0TW6/yWLoWAxzokpkzif8AXwUhz+VMAZUh+RJSk/ZMlCSl HTnulykJGhTwkpbQHVIpd0j5apKWIPgn+KSaElKSOiQIPkE8JKYHlNAQsjOwse1ld99ddln0GPcA 539VpULepdPqtNNmTVXYIGxzwDJ7alJSfxTwCsbr31n6f0IUnKa+31nR+ig7Rp7n+76Oq2GPa9ge 3UOAcPOUlMXiOdVEO0EaBZfVvrL0/pufj9PvFhtySA1zAC1pcdrfU1Qsz60YGH1nG6O+u2y7J4fW Ja0ns9JTtjQTOqQJI0+SCMnGFgxzawWu1FZcN3+bKp/84cEdc/Ym2z7SK/VL9v6MN87ElOpOiX+p VRvVemue1jcqkuedrWixpJP7rfcrHqU+rs3j1QNWyCY/qpKZlIfFNp4rE/54dC357GXGyzpwnIYx pJMaO9Ef4Xb+dtSU7sjlReJ/iqnTOqYXVMNmXhvDqrBIB0I/rNRq8iixzgyxrzX9MNcDH9eElJYj XlKCeVV6d1XA6lU63DtFza3uY8jSHNMO+krkT3SUtA8E0Q4z9E8BOS1jZcdoHJP+1BtzcSnEfmWW N9Ctpc6wGRA54SUmgfJPA0VfBzcTPxmZWLYLabBLXBLqPUcHpmI/Mz7RTj1xuefPQaBJTZBCjGvi su/6y9HoycXHsv8Adn647mtJY6eP0gG1aZe1rS5zg0eJMJKZTooSZn8ik2HNlp3A9wq+dmYvT8Wz LynbKahLiASf81o3OSUmMQk0g8CZWWz6x9Is6Q/q7Li7BrBL7NrgRB2uHpuG/wCkr2Hm42Zi1ZeM /dRc0PredAWn+skpPJBiOe6Wp1Kp9T6v0/pWP9qzrm00SG7zJkk6QG7lZpuquY22p4eywS1wOhB4 hJTMkgfkTB/YyCqvUeq4HThU/NvbS214rr3T7nnhqF1jrnTuj4f23PsLKCQ0FoLiSezQ1JToEw2Y Qy7xHKjjZNGVjVZNDt9VzQ+t3i0iQUPKz8LFfU3IubU693p0hxgud9LaElNpv4Jy7sFn9X6703o2 Oy/qFvpV2ODGugnU/wBVXmWVvrbYwy1wDmnxB4SUy3aTEFDdRj2vZa+tr7K/5t7mgubPO0n6KICP glt13BJS5ATSO+qc+Hj3VPO6x0vpz215mTXjueCWte4AkD86ElNvdoeUznDkgqNN1d9TbanB9dgD mPBkEHup7pCSlBwMEcJGJmPghsI1HmiDiUlLwOCmcmLgHfkCR1KSmJJ8FGASZCJuAEflTFw4OgSU wIEA66KbtogtjUawmkH3dokJ+GgnhJSM+YQyQTMGePFEFlNjnBj2udWYe0EEg/yv3UO9lvNDgLOQ HA7T/W2+5JTLadw8kSBtkaHuoiSZ79xKex8AVjk8+ICSmDag0Q3T/ZonDDM/ekzJodDGWNedfokH j6XClImdUlIyHBwEaFDy+n4XUafQzaG5FIM7LACNw/OVhz/kluj4HlJTCjFox6WUY7G1UsEMY0AN A/dDWqevBThwlPLeTAA1JSUpoHCkeyHXkY1zPVosZayT7mEEafBTY9rhLSHDxBlJTOCDMpGY1SgH VMSDz+KSmMDlMeP4qRghMeNElITO3xHZc31cO/5z9CEf4W+f/YfIXSO1B81znVm/9knRNBPrXj/2 XyElP//T6n6hOoP1R6YKCS1tRDi798Od6rf+3F0bfyrmP8Xj2P8Aqh08t2gBrwdvEh7927+X+8un aPwSUzgzpwnI00TayI111UoHH4JKUOJSPCQEGEhxHKSlwEjHKSSSmJjSE8eCRSHgkpXzS7Jjqn0S UtAhOI7Jd0klPD/WX6vW53WMvJOEbi+gMx7GgGSB9Le4/oXsVc9FtyGX5GV0ix2T9jbWHO2kuuHt D2a/T2rvXAamdT4qMcpKfP7ek59nSXst6bfdlvfXdW58EgM2/o9D7du36K7zFL3Y9bnAse5oJae2 nBUvgptOiSnz/KwLqcxr8np1uTnszTa7KZ7h6RP6I7yW/m/4P8xWeoNbT9acbNo6Zf7dxyLa2Fwe XCA7cJa5do+OSNFGOPyJKeFyemZln1idkV4thtfk12sc9ntDG/SeMjd7Nrf8EtB+PXV9arLxgXeh kUPote2skPeT7n7t30di6sceRUhET4JKfOOifU3pvUsjKbfg5HT/AErvUx7ILRsB9te5/wCd/VW7 j9LzR1mu+2p4trucXXhsg1EbWD1S7d+b+6ur1EaylGpgJKWfWHNLSDB0K83/AGXX0L6x5YZ0q3Kf kOIxHskhtT2/p3T9Hf8A1l6UdBKUjwSU+edI6bdhHDdhYWSH2U3NyC4FoJIIYDuI2J/q50d+F1Op z8Z4ZmVupvhjx7jq71Xu3bv+MXoRhMZgwkp436uNt6S+/Gr6dYch1l5suMhu1pL8du/6L/UVr6m/ WrM64/Lqy8dtFmK6PYSRr+a+fz2rpixpbHYjX5ql0rovT+kVOrwaRWx7i95kklx7ucUlNT6449mV 0R9DWPe172er6U7gwH3O9vucue6N0iq3p3VOm2U2nGc31calwsYN20t9m/8Afd+Yu7aRHt0hOD4J KeW+oxqx8MdPqxbavSra+66wFodYdHMh37qsfXvpf7S+r122s2XY5FlTRPIPu9o+l7F0I1T6cFJT 5xhHpmdh4eBVhWsxcW1v6yQ6S5wi3Z/Vc5P1nFz7un1YjBa7Bx8uxtznh7v0Z/mfo+99bF6MA0CA IHklGmgSU8x9Qacijorq7C97Ba70RYHNhv8AI9T3bFD63N35eKzObaelbXbnU7pFw/m9/p+76K6o NAAj7lEjTmfikp4TEx8I/U2yjJquZtssFbXB7XF0lzN2we7+0n65tzOi9Lrx97cRh2XAsftlrdv6 ZtWx/wBJduYaY7FOGwNPuSU+ddZ6M/J+p9d19VptwbSGCXGat/vs9M+7bt+hvTdO6hjWvrrxKsqj pVNdlDny4te9w3D0/wBx25ejHXQ6g86JmMa0QGtA5gDTVJT5l1bBdnfVfAzcgX2PxL/RvLy4ObVu Jc/Y/wDO27f0qb6yZXSeo9Aocz7S27HJqxG2FxD2tI3Wu02O/tL08tB9rhoRwdQm9OvbtLRtbw2B H3JKeQdbRk4NORRbccN+C6poZLQbWQIa1u3Y9ZHUun15nTehdUy7rwxhFOVYZG3buG/+Q7c3Z6q9 HAbG0ABvhGii9jXM2OaHN8Dwkp86+uGZ0nLwMDMZZbXcx7TTXdMPrYdr7HN9zPd++n6/1N2TljJr uyGYzKGWdLdQHbH2/Rgtb+du9q9BdjYzwA+pjwOA5o0+8Ivp1hobsbtb9EQIEeCSnynLfmi7qF2R n5Fd+LUy5lYe7S5wbub/AMW1zl6V0LLOZ0nFyHO9R1lbSX+JjVWnU0vJJY0k6EkDhEaxjWbGgNHA A0j7klPB/WPqGbX1LOF1+RjW0+memV0gllk/yf8ACbnfTWbl4PReqfW6mjPybHWX1D7Qwu+jbDf1 Vuns3L01zGmC4AkcT2UPs2MLPVFTPU7v2jdP9ZJSPFw6cLErxMZgZRQ0MraOwC8tzMq85GXa3q17 XtfcWsDncVma/onZ9JetjzKAcPEI1orJPPtHf5JKfNMinrGTfhYlXUr3P6p6T6nteRtbBdkbtu36 K9LxqPQx66DY55raG73GXGBG5xWR0z6p9N6f1F/Uq322Wu3Ctr3Sxm4y/wBNgW6D2SU8Plssx8t9 zOqZD8ynIbXXjOdIeCfouZA3e1QwaOp52flswur2F2HkBxY4zNf0nM4Z+d+jXXY3S8fHvsuG6x9p 3TZDtp/kqx6VTC5zWNaXGS4CCfjCSnzk9Y6tZZWwdQv/AGlfkupvxGAeyqXM3V7h7Njfz0+JmdVx 7sO7F6ndn5N1r67sN5BGxm4OeZ/q/TXoN2HjWbnem1lz2lvrNa0PAI/Ns+ks7onQMTo1RZS51riS fVsA3gHlgcB9FJT530vq/VreqVPf1Cyo5D3syGvt+j9LUUx+j9NdJ0LG6vm+nlY/WnXtpsfXkh2o LRu2Hb9Hf+cuuHTsH1HXjHq9V8h1gYNx+LkSqiihm2qtlbD+a0Bo/wCikp876MK+k9d6ljW9SuGR bYKGSJNj3+4ZL/8Ai1rfV/M6x1LqvoWZdja+my3LENix+5wazj6Lm+5dD1ToeB1CuwW1sryLGFgy mCLGg/u2fSUOi9Gp6Njvqpe62yx2+25/0nO+j/Jb7WpKZfWC84vSMq5rgyxlbjW6Jhx+j/0lx3Rs rNYzKxMrqT6xfj+o297mFzD+6x/u27l3zgHgh8OadC06gyhjpXStpa7Dp2O5GxqSni+n9Mr6f9Xv 2zh3Otza2FjZIDahY7bbY9rfzmfznvQ8jqPWKjmYtXVjfUzGbksyxt3Mdz6O7/hV39WHiU1mmqll dTvpMa0Bp7e4ITeldNrpfRXi1Nps1fWGDa4/ygkp4npeR9acbA/bNuaM3CuqDiwkFzbHENjbH+C/ OWvTndVpw8mx1/quO11Lnhum6G7fbDV0lOJi1U+hXSxlMR6bWgNg/wAn6Kizp2DWx9TMesMf9Joa IKSnkc7rPV8bp2YG3xcHVNx7Hs3OBs0c32/o3O9vsUujZPV+odN6h03NywLWtGzIeG79rhNjLGBy 6p/S+nPxzjOx63UuIJr2iJHCgzofR2BzW4dI9QbXkN1I/dLklPGdJY7E+r2H07ELMd3Uciyq28nc 0D3fmT/hWt2qx9WL8b6udI6jk5d/q0Y95DnVy4e2Gfo2f1l1VXQ+kUVGmnFrZW4guYBpI+i7+t/K VLqf1ZxLej5mB02qnFszGkF+32l371g/OSU3OidbwOt4LczBcXVuJaQ4Q4OHLXNV8x3WJ9V/q+3o HSq8EuFtoJdbYBG5xPZbOkykpcjt5pgOxSB0USdJSUjdELm+rOH/ADn6IOwtv/8Abe9dE+ZOsea5 nq0/86ehiebb/wD22vSU/wD/1Oj/AMXYr/5n9O9JjqxseSHd3b373j+Q930V1DTqub+oVzbfqd0x zTO2osMeLHObC6Jh/FJSUeSkohS+KSl9CkmlKe6Sl58EuU0/ckElLppgwEimJPySUvKXCYEJDkpK UTAlOozKU6JKUTqoEwDr965LqPUOpt6vlMrz3MqbYK6qWtZ7ZZvfu/OcsTqvWfrFjtptpz7bT1Ss MxWNY32XBwa5sR+57klPpAgeaEcvG9QV+sz1HaBu4SY/koPS6MrHwKacu85WQxoFlzgAXO5+i1cJ 9Yul9HZV1bMpmvOqvacU1uIdv9jnNY0H89+5JT6JYZHChv7xGi8wd9cfrFb1Q2VZO2hlrKG0Oa0V gQPV9Td+l9Vv76tWfW7quP0vBvszGuyHZjqbGbWy6sO2/pGf1UlPozXDbrx4qbLK7Gbq3B7T+c0y D8wuDzuo9a6nmvwcPPbi77jT6QYCG1Bvusda76brP3EboVtnSGVYlFzfsVuXbQ2kgbhz+kdZu/eS U9qLGF5YHAub9JoOonxRAvKcTOyej/XDqGR1LqpYKXMGQ41iLmuH6OprJ3M2fvsVnD+tf1hzetsF GUa6Mh76gyxjBWwe5tbma732Vwkp9NJ90R80jA17LzjpGd9feo3epj59OQMbJ9HJqIY0emD/ADn0 d3vXoN7G2Y9ldmrXNId20I1SUkD2kHa4GOYPCfRebusPQrMHPx6jWx4tFrmWOsNjoLmMfQf3o+kq /wBXfrT9aepdSGLbkjbm1WbXPY0NqeG+11W12+xqSn07c0gmdByQnDmwvMPq31bL6F0jN+1Zosvu tsZiUWgybGO22P3Pd9F8/QV1v1q67iYPUbr7vtD6mVuoD6tpaXHY4+w7HVt3JKfQwQASkAR3Xn31 e+sn1lu+20XWDIdRU3IqssY1riCfezbWfofuLofqz1Lq/U7MnKvdX+zw814rWtIcdv0nl5/NSU75 IbzokHtIkEFcv9fKhZiYdrbbKrqb91ZrcQ7gl30fpcLn6OpdRxMx1mBafX6nkCoX5Di+qpkOeP0R P03bUlPpU8JwZXmeV9fOvNxqcACuvPsyX41mb/ggG/nsb+97lY6X9cPrNl4oqa/Hdk05Rw32lh22 EiWWN2w1uz89JT6KmXD9R+sH1tw8VmNk110Zt9tjacitnqbq2jcHtoZ+etDoP1nub0J2f9YnNxnU 2Gp9paWbh/g3el9JrnJKelc0TwEtQUPGzMfLx68nGeLabQCx7eCD3VXqmZfjtrbQ3c+x0cTAA52t SU3WkzrzzEp/iIXEZzeoZHWOm9RxrHNzH+pS5m53oAV7ve+v/vqN1j6z9fowMM4TKW5VrrG3ueHO aBWY9lbff70lPYFwDgPFOXa/kXB9ftyerfVbG6y+y3Fz6S0NZU9zGlzntY6WKx9e8Fr+iDqgyb6s rHYxrRXYWscSQJcxp+l/LSU9pEnTlMRyg4Ti7DoeXbyWNJd3Mge4rjc1vUuk/WbqWX06z7QTQMm6 nIsO0NJ9zKmx7fopKe62tIT6hcfnfWzq/wBpoq6bjUuqdS2619ji4y4SK2Nr9yr9U+unXcK7IrGL jgmqu3BaS9zrPUIZt/NbuSU9vOqcc+a4Dqv12+seNlOZjYtW3BFf26pwc5z3OaH2eg5v0a2bvpru se718eu4e0WMDo7jcJ5SUlKW7TX8F5c3qn1h+rnW+sPoe/O6fiuD7mZVhLg1/ua6j/OXTM+uGY/p juotw2msOrhu/llm33cfzjN/0UlPVSEvdGgXA5HWvrBT9fKqLLGswXVF32cvhnon/tQ6f8Ou8ZY1 wDmmQdQRwQkpQEaKfaFxfUvrzmY+XkXU4rLemYNwx8iwuPqbnab2NA27Goo+t/VmtN+TgNbisvbQ 51byXHefY5kt/N/O3JKev/Kmd9HxXn2b/jGzaeqllFFVnT2W+g9hJ9ZxnY5zPzfpLun2FuO57NHb SWz4xpKSkhGogJ4B+K4CwdcyLqzb1DLwrb5Y9zg00OBB2fZi32sVn6ode6w3HoxeoV23sssfVTl2 OBc5zZ9jm/Sd9H6aSntC4Ax2TF86D71xP1Yy+tZH1q6s3Psvpc1kjGLg+pm4xWaz9H2rQ+r7epU9 a6riZWc/LpDWOrLyNzS4O3bWtDfTSU9I7R8nUeClIjy7rlOgs6tide6riZGZZnY9dbH0C10kF252 mm1n7qz+j9b6zh19fzcv1MqzEsafsTniK2n3/o3/ALrWJKe7ZzHPxUhzEaLjsT6+ibhnYb8dzMb7 VjtkH1G/u/yfcU/SPrl1nqPW6umWdLbTW5nq22izf6bCCWPdt9vud7UlPZhMfvUKb6rm7q3teAYJ aQR/0VU651L9k9Lvz/Sdf6IkVM0LjPzSU3xypRK4en/GO93TMjMt6a4W4rmCyptjXNDXna1+/wDr fmqxjfX6x9F9d/TLqs+rZ6eMHBxeLf5twckp6/hLsuW+p3X+sdWy+p1dSqFIxHsbXXt2ubunc1zp 962euU9Su6bY3peUMTKEOba5ocIGrmwf3klN/uUtFzP1Iyeu52Cc3qmY3JrfLKmCsNcCxxaXPePp b1c+s3WLcHHGNgy/qeSHfZWNbvI2xvsc3+Skp2YCYnTzXEdP+vOXh9Jrf1Wp+Xn5GRZTjU0tDXkV mD6kna3at/6t/WXD+sOI+6hrqraXbL6H/SY4eKSnWLv9yZI/lTFwAE6ToElI7OJXL9Xf/wBlfQRH +EyPd/6D3LprH86rlOrvj629CG0SX5BjtAx7UlP/1d7/ABadRrzvqjjMEl+GXY9gPiDvZ/4G9i6u vhcd/ioDB9T6ywQ4327z4mR/3zauxaRwkpKCE+p0mPNRadAlJ+aSmXmnCYOlPPZJSgNBPKUAlLVL ukpfsokSpEzwmSUwGmnglr34SPjKkdUlLacpidfFIgxA0SHJSU1bOm4Flnqvxq3WHUvLRM/FYbPq Vhs6yOpm6x9db/VpxTBYyyNu5v8AIb+4ulJACi09gkpQaq37PwW2C5tDBbJdu2idx5crJ45TQUlO Rf8AV7ot+U++7Epsts+m4tkk+LknfVj6vOs9V3T6DYdC7YPBahME/wAE2ndJTzrfqbjtIbXcWVep 6mjQLIne2tt/0trVtVdI6YwANxqgGv8AUA2jR3O/+srQiNPyp518ikpzM/6r9A6jmtz8zDZbk1xF hkTH0dzR7X/2kRv1c6AMp2aMKv7Q8EGyOZ50+itEDTyT7QeeySmpg9H6X0/f9hx2Y/qmX7ABJ/lK 49jHsLHatIgg9wUokJJKaNP1f6RTcMirFrbaJ2uA43fShv0ULF+rfRMDLfm4mHXVkvndYOfd9LbP 0FqCI5TO1H5Ckpx3/VjoL8mzLfh1uyLgQ9xEzu+kQ0+1u6PpI2N0DpOPTbTXi1tZeA25sSHD91yv wZ1iApthJThX/VXGqx/T6Pt6daXAvsa3duaJ/RP13bNVo9NwaemYdeHTOyoQ3xJ/OKtnj4qABLiY 0HdJTWzul4Ge2sZdQu9F2+qSRDjp+aVXs+q/Qn0PofiM2WQXRPLfoOYZ9m1aYkn4KXfxSU4+R9Ve hX4DOnvxGHHqO6tuoId+9vHv9yfF+rXRMemminEY2uhxfS3XR5+m7n3PWq6C6PDVRmH/AOvP/mSS mvn9Jweo0tpyqvUYwywyQWnjcxzfcsfrv1Rpyfq7kdK6XXXXbcQ9rri5w3yN1jnEud6m389dGDJ0 TkEapKc7oXSx0jo+L0/d6hx6w0vPc/nI+VhY2Xt9dm5zPouBIInwc0hWQATPZRPOmqSmn+x+nb6n CuDRJrgnQu+k46+5zkG76t9JvaGuqc0ifc17mu930hu3fRWkCNUm+A1hJThZX1I6DlVtqfXYGscX ANteBrGn0v5Kjd9RuhXYleFc2+ymoktDrXk6+7973LoNSddAmmJBOiSmt0/p2P03Gbi424VMPtD3 F51/lPlUsv6sdKys27Otbab8hnpWEWOALYjYGA7WrXExz8EgP96SnLr+rfS2Nb6TX17WBnte4EtH t2u1Ur/q90zJuxLbqi5+AR9ncXGdON3760wD4pwT3SU4vUvqj0jqeRZk2+rVbcA270bCwPDfo+o0 fSWsyptVTaa2wxgDWjwA0RDPIKUx/ckp5zqf1H6R1LLty73XtdkR67G2ENeB9Frm/uqeX9UOl5bR W511NLWtb6NTyxh2/Q3Nat93HHxUCCBykp5/rf1J6X1iyq66y6iyuv0XPrdrZV/ord+5bWNTVjY9 ePVIrraGMBMw1o2jVFdO3zUQQW+MpKcPK+pfRcrPdm2Cweq8WXUNdFT3t+i+ytWLPq5gPa9j7Li2 y0XFm/QOH0drYWoY58UwEnXRJTz2X9QulZecM4W3UDeLbMet0Vuc387+Tu/P2rpHVg17HatiCPLh JojupCS3UpKcsfV3CDWBll4ZVJqbvJa0n85odP0PzFUxPqli4goDcrJsGM82MBc0e46mdjF0Ex8E MGT4+aSnn+l/VBnTuov6k3qGTc+4OFtdhbDp+jucBu/R/mIuN9V2U9Rs6g3OyfUs/nGy0hwA2tbO 3d7VuaHmEp7Dt4pKeaxvqg7F6i7OHVMuyy0EWNeWw4RDd3s/MQsf6l+jXl1u6pl2tzgRfOwSSR7/ AKP0tvsXUu2+ZPkhOEGNTPnwkp47rX1EvvY27p2Xa69tIxvTs2wap9/6Tb9NWPq39XOodPuyK7Gu qxbKjU42bS5xI9vp+n9Hb/KcurpIL5EwrBEiUlPG/wCLr6uZ/Q8fOOax1Yvu/Q1OduIY3ix2327n rqOp4FXUcR2La5zWPgy3yO7X95itR4pQkp5nI+pGPfjW0MynVMuLC8MqrAOw7m+3ag3fUKy3PfnH qlrbT6fpllbBtdV/NOP7y63uPBM71Z9m0jvMpKcnpP1fs6dnX5j8yzIflAG1jmtazcNBY0M93/SV zq2Dk5uC/Hxcp2Fa/wDwzWhxA/OG1ysbrx+Y0nvDv/MU/qvmDWR8wf4pKcv6udDv6Lh/ZLcs5dbT NcsDNs6n6P0tybrXQ7M/Kxs3FyTi5WKHMD9oeHMfG5jmn4LU9Yd2Pb8p/wCpSNjDGsfEEJKeOyP8 X912NWP2k9uVRe/IovFY9ps/nG7Z925a31Z+rNPQaLgLnZORlP8AUyLnADc7+qPora3s8QfmnBbq AR8ElKjTVDJ7jhE0268BQ2gCBxMpKQPHfx4XJdXc7/np0H45Onn6FnZddaJGnYLlOrtH/O/oJkaO yR5f0e1JT//W6D/FkaHfU3C9Fu07rRb5v3u3OXUsB1lcf/iocX/VCobdorutaD+9rv3f9LYuxakp kAQVKPNMQSPA+KdoPikpWg7p2kH5KDg4ghuhPdOwOBk9+ySkkhRITk/7EonySUsJGiU+aTmyOUzQ 6NfikpUNhKTPiltgamU8SfBJStZTfPlPGseSWiSnj+r/AF2yen5mbSOmPtq6ftN9osaPa76D4/lq w765VF+7Fxn5GNVWy7Ku3Aem143Nbtd9N7d3uUupfUxmfZ1F7s66v9pBrbWtawgNYfYzUJqvqVh1 1sacq8g1CnJDYaLmt+j6rQPb7PZ7UlILfrvY21zaun2W1te5vqb2tkN+m/X83adyqXdb6zd9d8PF Y92N06youZSYc24Bu51nt97VqN+qVTBc1mVY2u973mva2AHgDY0w76O1VLvqn1Q9Uozq+rEfZhtq a+ljiGabq942/S2pKQM+voOc6i7p9lVNeR9ltyN7S1r3Haz26fSVqv67Uu6kcQ4doxxb6Dcnc2C+ dn83u37FWyfqQHi4DNfORlNy3Sxv0m9mq5X9Uaw0M+1Ocz1DbJY02Ek7vdaf3UlI6uvdZd9cX9Kd jf5PFUz7Q5uumTun+bf9HYnxPr10/K6x+zWVOFbrDTVkFzYc5vP6L6bW7kXq/wBV787Mbl0Z9mI5 1TacnYBL62O9T2P+lVuUMH6kYmF1CvKptiuu02trLG7iTPtN0btvuSU9K47WSdANfuWFj/XHp12Y 3GFVrarfUNWSW+x3pz6p09zWt2/SW6Q2CPkVh4X1Yfh3emzMeengvIxC0H+c3b2ut+nt96Smljf4 wcK+5rRh3sx7nOZjZEAtsc381rfpK1h/XTFvurY/GuoptD/TvfG0vr3F9en53tVPH+oVVN2OHZj3 YmC51mHQQBsc7gvP+E2KyPqg70cSk5ziMR9lk+m2SbJ4n6DvckpL0z64UdSufRViXNIrdbU47SHh v5nsP6Ox37r1X+qn1m6n1Vmc7OxCw473+ltEaD6OMZPuuarHSfqm3p/UK852QLXVVurAbWK9278+ 7Z/OOTV/VbMp6k7Jo6i+vGNll4o2j+ceNrfUd/hK2fupKaXRvrB1m7pXVs3IYci/FuezHxgzY9oA BDH/AJvt3e5D+r/12yrujDN6tjWA+u2gW1M9jt52tc3X8z89avQ/q91Dp9mUcvPGXXlbnOYK9hDn aOfu3O/N/NWXhfUTLpmm/qJfhUndh0tBEHd6rftP5tvuSU2ur/W44+H1F2Hi2WZXTy1haRI94llz v+CQMP671V/VynqvUKLGX2uFYqa2DY/nfTu/wSv431Xtrd1F2Tlm39ps22gNjaY27myf+isW/wDx e9QzaBXm9RDhRsGLUGn0mhg27nVuP57f3ElPQfVr6y4nXsey2qt9NlL9ltT4JB+lMtUvrB9ZsHoV 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 /pPcgdW6p1jr1P7XY44eLh2sqbXXY5r9znNBe+C2tySn07smJ7dz2Ua5NTNZ9o1+S43qONkNyn5u Vk5FTW5A9O+qwOY1hMNrdUI2/upKezcRPknkLy7q/wDjJ63R1uyvEpYcLHt9E0uY4ufB2vd6n5n8 hXGf4xOt/tb0bMOtmGL245Z7vUhxj1Tb/Nf2ElPoTXAu8058fwXA/ZLemf4xMWqjLuNGcx99tdry 8Tr+jbr9Bd+4+3TmNPBJTEn7+Qobp1Xn+BlfWDK651nB6jmMpxiPTtiwg1bh+i+xbw3+0r/1O6n1 evGxMfNHr0XmyunIc4myWF231J/M9vtSU9lJImZTaz4LhOhXdUxPrD13K6k8l9FXq+gywuqjV1e3 d+d7E/1Y+v3U+rdapw8qillOS1zmhm4PbtEjdv8A5zd/ISU92faBP+sqJdIg90Hqn2l3TskYtjas g1OFVr9GtcR7XO/qrhsXJz8RuRbjZd+VRVivGRdcR6Ruj2/ZrXbfo2fnpKe9a73QYRJM/wAF510a 7qXTXmn9PZ1LLxHW44vv9Sp7m+573N93p7VldJ6j9YuodCzjlZz6vStNlNjbIustaR6mOB9J1LWJ KfW++n3pp1gBYvQOq5eUXYudV6V9bG2DXdLHfQLuffotDq3UaemYbsm0F0FrGN8XOO1glJTa3a6q XmOFxH7W670rM6ldkOflVV01voxbHN/nLHEfo7W7P0bFPF+vXUbel5eUensfkYTh61ddkt2OH84N N3tSU9nIPHxTweFy31a+tOf1zqN9Ywm1YWOIOSHz79HbNpDfzVpfWPr7OiY9D20HIyMqwU49LTG5 5/ed+akp1TyJPHKXhp5riOofXfrA6dnMx8JuP1DBc0Xhx3htbv8AtSwe31P3FsfVi76x3MfkdWNY ouY11Fbfpg/nl0fmO/Makp6DvpqPBRdG7zUGkjjgqffhJSNw18VBw08kRxKhPY+ZSU17GiNy5Tqz SPrh0Jx4LskjX/gLF11g0jsuV6v/AOLLoIgQftMf9sWJKf/Suf4m9/7AzNzSGHKOx3j+jrBj+ou+ B00XK/4tM+zO+qlN12tzLbWWPgDcQd272Bv5jmtXUgdklJBEGe6euvYIaIHx/vTCeykNDqkpRY49 0gwgRPzJSH5UtOCkpQDxEEeeqmZ8fxUBzwkSkpkQmCZIeUpKUQEuAnTEpKWMk+SXfRMZhMCRoElM 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 ubDqmOBO4yAZKKYKkY+ASUi+z4+4Wem0vaIDoEj5pvsmKbfXNTPW49SBu/zkUJxACSlNaGhDOJjG w3GpnqOG1z4G4j90lEJ7BMwFpMuJBMiY0/khJTGnCxKNaaWVn+Q0N/IjRz4JA+HZIOHPikpmIhNp 8khB1TkhJS0aJJclN5wkpo9Zx3ZXTMqllYtc+shtZJaCfDc36KrfVTKx8npFXoU/ZxVNT6edrmGH iVf6hk/ZMO7JLTZ6LC/a0STA4AWP9S6csdNsycthpfmXPvbWRBa159u4JKejTjRRlLskpkm0KaUp hJTIJimM6J5HASUqeUwOqQIJKU/gkpc+KQKaUuySlJakcQkCDqpaQkpiddE0qU9lElJTn9W63idJ rbblNsLHGJY0uA/rIlPVsK6iq8WCpt382LDscf7Llg5GR1nLys7p2ZUfRsdtxS2vTbM73W/R+isn 6zdMzD1G0vxLcqu2hteE6s6V2N+lOnsSU9T0/wCsvT83MvwmF1d+Odrm2jbOu32a+5abcmgktFjd wMEbhM+C84uwLHOy7L8fJyMmimprXMa4fpWgNfY0x+kUn9Lssr6jk/Y8gXuqZZQIeCbCB6n/AFxJ T6TugeSycP609JzM93T6Xv8AtDSQWuY4D286qz0yx9nTcd9gc15rbua8EOmPzgVxb+qv6Z13q+UM O0ueA2glji0ub/V/Nckp737Xj7zX6jN45ZuE/wCbKYZVB4sae3I/vXj23NdmuzMii5tz799jQ2ze Gu+n7/o7Nrler6FnjJZjjGvFd1zai+XaNJ3+oT/U/eSU+sb2gEk6ATKyavrT0W3LbituPqucWMJa Q1x/kv8AouVttDasP0WguY2vYG9yANq4zE3B+Li49FrvSsPq03s9tTD9J1V0NSU94LWOMBzSTwAR KkTK4fofRcXOfY9j8nGdj5G+snc2a53MZ7/3vz1pY/1ozrPrLZ0R+A9lVYJGTJMgD6fGza5JT0jj 4fcsKz6z47etHpLKnWOraXX3AjZXpu9y2+edAuG6ZYzF671/ByWudkXONtYAlz64/MP53P0UlPT4 3X+m5Vwort/SunY0gjcB3arrcmp2gcJGhAIJXFF2U6wfYWvte2qwM9Wra6shvs2u9q5LpOR1WrNc /HdYMjZZ9oaA5zzAO/duG1r0lPsFmXTXW+xzxtqBc+NSAOdAqXTPrF0zqlV1mA91voavZtIdrMbW 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 ------=_NextPart_000_0000_01C9B307.13EEF460 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.archivesindex.sc.gov/onlinearchives/images/bg_right.gif R0lGODlhCwABAJEDADMzMyMjIxMTEwAAACH5BAEAAAMALAAAAAALAAEAQAIEVDCpWQA7 ------=_NextPart_000_0000_01C9B307.13EEF460 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.archivesindex.sc.gov/onlinearchives/images/footer_left.gif R0lGODlhHgA0ANUiAP7+/hMTExkZGSMjIyQkJBQUFB0dHSkpKScnJ7m5uWFhYRsbGysrKygoKBgY GKOjo1NTU7e3t+bm5iYmJqamppSUlC8vLxYWFhwcHCwsLNDQzs7Oznt7exoaGi4uLh4eHjMzM/// /////wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEAACIALAAAAAAeADQAQAb7QJFw KPR8OoCQcslsLolEo8BJdUKHxk51q7wWj9ytVwQyBhRh6xgKYnwugQ6CQ1Emk6G1fj/Opql9YH9N gVqDTIEBD4dPa2UfAQYRIXhcfJeXfoxdXpqbhZucV1KheZ2Cn6dIoYWVh2MgBAUIrpRhjhkYARCM fCAHApEVd3a2jZggZQ0DH83OzpjR0tOjH1OsqqWg2NWGqd3a2dxQnr2qtX/b3+So5tXX61Htr+Lx WEcb40QgA2f6QyAaOOigoVg6WLIMSHDnJVaBDg/QVdnTZkGAAQkOUjxgsYOFBMTUXCoz4YODAHE6 qFzZgVqyMh5iyoxJrabNmzhtBgEAOw== ------=_NextPart_000_0000_01C9B307.13EEF460 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.archivesindex.sc.gov/onlinearchives/images/footer_right.gif R0lGODlhHgA0AMQcADMzMxMTEywsLB0dHRwcHCQkJCcnJxQUFM7OzigoKKSkpBgYGP7+/mFhYbm5 ub6+vnBwcObm5pSUlF1dXB8fHyoqKhcXFyMjIxoaGh4eHi4uLv///////wAAAAAAAAAAACH5BAEA ABwALAAAAAAeADQAQAXW4CaOZElimcat7Gq+Jqq2LGyLMl3fcK5zPFMjkPq5GCPkBmKgBCwZAcBI rVp1wZcPmy1taV1v8RceKYgzbtAxQE+v8Hh59G3NcWN1ub6b8113f0CBeWCEaYZlBgcFb3pBEwEE UlRBEm2TjlQZnJ2eCRUAmnGkpaZVdxuCqauHRqyFdq5ks49drX6xfXu6gLmIsr+vtYm8wLtdCLhh QxejyEHKCwnPvlkRA4zV1jwKGNqoQQ+YlOEwDhoYkuVWGO7v7wELGAYa2z8a+fr796f+/wADCvwR AgA7 ------=_NextPart_000_0000_01C9B307.13EEF460 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.archivesindex.sc.gov/onlinearchives/images/bg_footer.gif R0lGODlhAQA0AKIEAB4eHhoaGi4uLv///////wAAAAAAAAAAACH5BAEAAAQALAAAAAABADQAQAMN OLq02i4CAqO9QVCaAAA7 ------=_NextPart_000_0000_01C9B307.13EEF460 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.archivesindex.sc.gov/onlinearchives/adminForms.css FORM { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } INPUT { BORDER-RIGHT: #7f9db9 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: = #7f9db9 1px solid; PADDING-LEFT: 0px; BACKGROUND: #f5f5f5; = PADDING-BOTTOM: 0px; MARGIN: 0px; FONT: 11px Verdana, Geneva, Arial, = Helvetica, sans-serif; BORDER-LEFT: #7f9db9 1px solid; COLOR: #333333; = PADDING-TOP: 0px; BORDER-BOTTOM: #7f9db9 1px solid } TEXTAREA { BORDER-RIGHT: #7f9db9 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: = #7f9db9 1px solid; PADDING-LEFT: 0px; BACKGROUND: #f5f5f5; = PADDING-BOTTOM: 0px; MARGIN: 0px; FONT: 11px Verdana, Geneva, Arial, = Helvetica, sans-serif; BORDER-LEFT: #7f9db9 1px solid; COLOR: #333333; = PADDING-TOP: 0px; BORDER-BOTTOM: #7f9db9 1px solid } SELECT { BORDER-RIGHT: #7f9db9 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: = #7f9db9 1px solid; PADDING-LEFT: 0px; BACKGROUND: #f5f5f5; = PADDING-BOTTOM: 0px; MARGIN: 0px; FONT: 11px Verdana, Geneva, Arial, = Helvetica, sans-serif; BORDER-LEFT: #7f9db9 1px solid; COLOR: #333333; = PADDING-TOP: 0px; BORDER-BOTTOM: #7f9db9 1px solid } .editable { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #ff0000; = PADDING-BOTTOM: 0px; MARGIN: 0px; FONT: 11px Verdana, Geneva, Arial, = Helvetica, sans-serif; COLOR: #333333; PADDING-TOP: 0px } .button { BORDER-RIGHT: #c43a0c 1px solid; BORDER-TOP: #fe8f01 1px solid; = BACKGROUND: #f35605; PADDING-BOTTOM: 2px; FONT: bold 10px Geneva, = Verdana, Arial, Helvetica, sans-serif; BORDER-LEFT: #fe8f01 1px solid; = CURSOR: hand; COLOR: #fefefe; PADDING-TOP: 2px; BORDER-BOTTOM: #c43a0c = 1px solid; TEXT-ALIGN: center } .button { BORDER-RIGHT: #c43a0c 1px solid; BORDER-TOP: #fe8f01 1px solid; = BACKGROUND: #f35605; PADDING-BOTTOM: 0px; FONT: bold 11px 'trebuchet = ms', helvetica, sans-serif; TEXT-TRANSFORM: uppercase; BORDER-LEFT: = #fe8f01 1px solid; COLOR: #ffffff; PADDING-TOP: 2px; BORDER-BOTTOM: = #c43a0c 1px solid } SELECT.SelectPark { WIDTH: 275px; HEIGHT: 18px } INPUT.SignIn { WIDTH: 275px; HEIGHT: 18px } ------=_NextPart_000_0000_01C9B307.13EEF460 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.archivesindex.sc.gov/onlinearchives/css/adminMaster.css @import url( adminForms.css ); BODY { FONT: 11px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: = #222222 } TD { FONT: 11px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: = #222222 } P { FONT: 11px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: = #222222 } DIV { FONT: 11px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: = #222222 } BODY#global { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: = url(../admin/images/bg_global_02.gif); PADDING-BOTTOM: 0px; MARGIN: 0px; = PADDING-TOP: 0px } TD.justify { TEXT-ALIGN: justify } P { MARGIN-TOP: 5px; MARGIN-BOTTOM: 10px } .error { FONT: bold 11px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: = #ff3333 } .header { MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px; FONT: bold 16px Verdana, Geneva, = Arial, Helvetica, sans-serif; COLOR: #4292a9 } .subheader { MARGIN: 0px 0px 7px; FONT: bold 12px Verdana, Geneva, Arial, Helvetica, = sans-serif; COLOR: #0668a5 } .title { MARGIN: 0px 0px 7px; FONT: bold 11px Verdana, Arial, Helvetica, = sans-serif; TEXT-TRANSFORM: uppercase; COLOR: #280d0c } .white { FONT: 11px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: = #ffffff } .note { FONT: 9px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: #777777 } A.note:link { FONT: 9px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: #777777 } A.note:visited { FONT: 9px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: #777777 } A.note:hover { COLOR: #990000; TEXT-DECORATION: underline } A.note:active { COLOR: #990000; TEXT-DECORATION: underline } .small { FONT: 9px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: #333333 } A.small:link { FONT: 9px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: #333333 } A.small:visited { FONT: 9px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: #333333 } A.small:hover { COLOR: #990000; TEXT-DECORATION: underline } A.small:active { COLOR: #990000; TEXT-DECORATION: underline } .subnav { FONT: bold 10px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: = #343434; TEXT-DECORATION: none } A.subnav:link { FONT: bold 10px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: = #343434; TEXT-DECORATION: none } A.subnav:visited { FONT: bold 10px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: = #343434; TEXT-DECORATION: none } A.subnav:hover { COLOR: #4492a9; TEXT-DECORATION: underline } A.subnav:active { COLOR: #4492a9; TEXT-DECORATION: underline } .date { FONT: bold 9px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: = #999999 } .arrow { FONT: bold 10px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: = #c5292c } .alert { FONT: bold 12px Verdana, Geneva, Arial, Helvetica, sans-serif; COLOR: = #990000 } A { COLOR: #333333; TEXT-DECORATION: underline } A:link { COLOR: #333333; TEXT-DECORATION: underline } A:visited { COLOR: #333333; TEXT-DECORATION: underline } A:hover { COLOR: #990000; TEXT-DECORATION: underline } A:active { COLOR: #990000; TEXT-DECORATION: underline } #MenuBG { BACKGROUND: url(../admin/images/Menu/menuBG.gif) #929ba0 } #menuTitleBG { BACKGROUND: #c5292c } #tdMenuTitle { PADDING-LEFT: 4px; BACKGROUND: #c5292c; FONT: bold 10px Geneva, = Verdana, Arial, Helvetica, sans-serif; COLOR: #ffffff; HEIGHT: 14px } #tdTitleBG { BACKGROUND: #4492a9 } #tdTitle { PADDING-LEFT: 4px; FONT: bold 11px Geneva, Verdana, Arial, Helvetica, = sans-serif; TEXT-TRANSFORM: uppercase; COLOR: #343434; HEIGHT: 25px } #tdSubTitle { PADDING-LEFT: 7px; BACKGROUND: #444444; FONT: bold 11px Geneva, = Verdana, Arial, Helvetica, sans-serif; COLOR: #ffffff; HEIGHT: 16px } #tdName { BORDER-TOP: #000000 1px solid; PADDING-LEFT: 7px; BACKGROUND: = url(../admin/images/Table/bg_td_title.gif) #a6d6da; FONT: bold 9px = Geneva, Verdana, Arial, Helvetica, sans-serif; COLOR: #333333; = BORDER-BOTTOM: #000000 1px solid; HEIGHT: 15px } #trDark { BACKGROUND: #edf3fe } #trLight { BACKGROUND: #fefefe } #whiteBG { BACKGROUND: #ffffff } #tableBG { BACKGROUND: #cccccc } DIV#border { BORDER-RIGHT: #c5292c 2px solid; PADDING-RIGHT: 10px; BORDER-TOP: = #c5292c 2px solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; = BORDER-LEFT: #c5292c 2px solid; WIDTH: 100%; PADDING-TOP: 10px; = BORDER-BOTTOM: #c5292c 2px solid } A.explainHover { BORDER-TOP-WIDTH: 0px; DISPLAY: block; BORDER-LEFT-WIDTH: 0px; = BORDER-BOTTOM-WIDTH: 0px; FONT: 10px Arial; COLOR: black; MARGIN-RIGHT: = 10px; POSITION: relative; BACKGROUND-COLOR: white; TEXT-ALIGN: left; = BORDER-RIGHT-WIDTH: 0px; TEXT-DECORATION: none } A.explainHover:hover { BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: = none; TEXT-DECORATION: none; BORDER-BOTTOM-STYLE: none } A.explainHover SPAN { DISPLAY: none; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; = BORDER-LEFT-STYLE: none; TEXT-DECORATION: none; BORDER-BOTTOM-STYLE: = none } A.explainHover:hover SPAN { PADDING-RIGHT: 10px; DISPLAY: inline; PADDING-LEFT: 10px; FONT-SIZE: = small; Z-INDEX: 200; BACKGROUND: lightsteelblue; LEFT: -200px; = PADDING-BOTTOM: 10px; MARGIN: 10px; WIDTH: 150px; COLOR: black; = PADDING-TOP: 10px; POSITION: absolute; TOP: -60px; TEXT-ALIGN: left; = TEXT-DECORATION: none } ------=_NextPart_000_0000_01C9B307.13EEF460 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.archivesindex.sc.gov/OnlineArchives/WebResource.axd?d=icHYY39vHN59JW_86a4gnw2&t=633367405228392006 function WebForm_PostBackOptions(eventTarget, eventArgument, validation, = validationGroup, actionUrl, trackFocus, clientSubmit) { this.eventTarget =3D eventTarget; this.eventArgument =3D eventArgument; this.validation =3D validation; this.validationGroup =3D validationGroup; this.actionUrl =3D actionUrl; this.trackFocus =3D trackFocus; this.clientSubmit =3D clientSubmit; } function WebForm_DoPostBackWithOptions(options) { var validationResult =3D true; if (options.validation) { if (typeof(Page_ClientValidate) =3D=3D 'function') { validationResult =3D = Page_ClientValidate(options.validationGroup); } } if (validationResult) { if ((typeof(options.actionUrl) !=3D "undefined") && = (options.actionUrl !=3D null) && (options.actionUrl.length > 0)) { theForm.action =3D options.actionUrl; } if (options.trackFocus) { var lastFocus =3D theForm.elements["__LASTFOCUS"]; if ((typeof(lastFocus) !=3D "undefined") && (lastFocus !=3D = null)) { if (typeof(document.activeElement) =3D=3D "undefined") { lastFocus.value =3D options.eventTarget; } else { var active =3D document.activeElement; if ((typeof(active) !=3D "undefined") && (active = !=3D null)) { if ((typeof(active.id) !=3D "undefined") && = (active.id !=3D null) && (active.id.length > 0)) { lastFocus.value =3D active.id; } else if (typeof(active.name) !=3D "undefined") { lastFocus.value =3D active.name; } } } } } } if (options.clientSubmit) { __doPostBack(options.eventTarget, options.eventArgument); } } var __pendingCallbacks =3D new Array(); var __synchronousCallBackIndex =3D -1; function WebForm_DoCallback(eventTarget, eventArgument, eventCallback, = context, errorCallback, useAsync) { var postData =3D __theFormPostData + "__CALLBACKID=3D" + WebForm_EncodeCallback(eventTarget) = + "&__CALLBACKPARAM=3D" + = WebForm_EncodeCallback(eventArgument); if (theForm["__EVENTVALIDATION"]) { postData +=3D "&__EVENTVALIDATION=3D" + = WebForm_EncodeCallback(theForm["__EVENTVALIDATION"].value); } var xmlRequest,e; try { xmlRequest =3D new XMLHttpRequest(); } catch(e) { try { xmlRequest =3D new ActiveXObject("Microsoft.XMLHTTP"); } catch(e) { } } var setRequestHeaderMethodExists =3D true; try { setRequestHeaderMethodExists =3D (xmlRequest && = xmlRequest.setRequestHeader); } catch(e) {} var callback =3D new Object(); callback.eventCallback =3D eventCallback; callback.context =3D context; callback.errorCallback =3D errorCallback; callback.async =3D useAsync; var callbackIndex =3D = WebForm_FillFirstAvailableSlot(__pendingCallbacks, callback); if (!useAsync) { if (__synchronousCallBackIndex !=3D -1) { __pendingCallbacks[__synchronousCallBackIndex] =3D null; } __synchronousCallBackIndex =3D callbackIndex; } if (setRequestHeaderMethodExists) { xmlRequest.onreadystatechange =3D WebForm_CallbackComplete; callback.xmlRequest =3D xmlRequest; xmlRequest.open("POST", theForm.action, true); xmlRequest.setRequestHeader("Content-Type", = "application/x-www-form-urlencoded"); xmlRequest.send(postData); return; } callback.xmlRequest =3D new Object(); var callbackFrameID =3D "__CALLBACKFRAME" + callbackIndex; var xmlRequestFrame =3D document.frames[callbackFrameID]; if (!xmlRequestFrame) { xmlRequestFrame =3D document.createElement("IFRAME"); xmlRequestFrame.width =3D "1"; xmlRequestFrame.height =3D "1"; xmlRequestFrame.frameBorder =3D "0"; xmlRequestFrame.id =3D callbackFrameID; xmlRequestFrame.name =3D callbackFrameID; xmlRequestFrame.style.position =3D "absolute"; xmlRequestFrame.style.top =3D "-100px" xmlRequestFrame.style.left =3D "-100px"; try { if (callBackFrameUrl) { xmlRequestFrame.src =3D callBackFrameUrl; } } catch(e) {} document.body.appendChild(xmlRequestFrame); } var interval =3D window.setInterval(function() { xmlRequestFrame =3D document.frames[callbackFrameID]; if (xmlRequestFrame && xmlRequestFrame.document) { window.clearInterval(interval); xmlRequestFrame.document.write(""); xmlRequestFrame.document.close(); xmlRequestFrame.document.write('
'); xmlRequestFrame.document.close(); xmlRequestFrame.document.forms[0].action =3D theForm.action; var count =3D __theFormPostCollection.length; var element; for (var i =3D 0; i < count; i++) { element =3D __theFormPostCollection[i]; if (element) { var fieldElement =3D = xmlRequestFrame.document.createElement("INPUT"); fieldElement.type =3D "hidden"; fieldElement.name =3D element.name; fieldElement.value =3D element.value; = xmlRequestFrame.document.forms[0].appendChild(fieldElement); } } var callbackIdFieldElement =3D = xmlRequestFrame.document.createElement("INPUT"); callbackIdFieldElement.type =3D "hidden"; callbackIdFieldElement.name =3D "__CALLBACKID"; callbackIdFieldElement.value =3D eventTarget; = xmlRequestFrame.document.forms[0].appendChild(callbackIdFieldElement); var callbackParamFieldElement =3D = xmlRequestFrame.document.createElement("INPUT"); callbackParamFieldElement.type =3D "hidden"; callbackParamFieldElement.name =3D "__CALLBACKPARAM"; callbackParamFieldElement.value =3D eventArgument; = xmlRequestFrame.document.forms[0].appendChild(callbackParamFieldElement);= if (theForm["__EVENTVALIDATION"]) { var callbackValidationFieldElement =3D = xmlRequestFrame.document.createElement("INPUT"); callbackValidationFieldElement.type =3D "hidden"; callbackValidationFieldElement.name =3D = "__EVENTVALIDATION"; callbackValidationFieldElement.value =3D = theForm["__EVENTVALIDATION"].value; = xmlRequestFrame.document.forms[0].appendChild(callbackValidationFieldElem= ent); } var callbackIndexFieldElement =3D = xmlRequestFrame.document.createElement("INPUT"); callbackIndexFieldElement.type =3D "hidden"; callbackIndexFieldElement.name =3D "__CALLBACKINDEX"; callbackIndexFieldElement.value =3D callbackIndex; = xmlRequestFrame.document.forms[0].appendChild(callbackIndexFieldElement);= xmlRequestFrame.document.forms[0].submit(); } }, 10); } function WebForm_CallbackComplete() { for (i =3D 0; i < __pendingCallbacks.length; i++) { callbackObject =3D __pendingCallbacks[i]; if (callbackObject && callbackObject.xmlRequest && = (callbackObject.xmlRequest.readyState =3D=3D 4)) { WebForm_ExecuteCallback(callbackObject); if (!__pendingCallbacks[i].async) { __synchronousCallBackIndex =3D -1; } __pendingCallbacks[i] =3D null; var callbackFrameID =3D "__CALLBACKFRAME" + i; var xmlRequestFrame =3D = document.getElementById(callbackFrameID); if (xmlRequestFrame) { xmlRequestFrame.parentNode.removeChild(xmlRequestFrame); } } } } function WebForm_ExecuteCallback(callbackObject) { var response =3D callbackObject.xmlRequest.responseText; if (response.charAt(0) =3D=3D "s") { if ((typeof(callbackObject.eventCallback) !=3D "undefined") && = (callbackObject.eventCallback !=3D null)) { callbackObject.eventCallback(response.substring(1), = callbackObject.context); } } else if (response.charAt(0) =3D=3D "e") { if ((typeof(callbackObject.errorCallback) !=3D "undefined") && = (callbackObject.errorCallback !=3D null)) { callbackObject.errorCallback(response.substring(1), = callbackObject.context); } } else { var separatorIndex =3D response.indexOf("|"); if (separatorIndex !=3D -1) { var validationFieldLength =3D parseInt(response.substring(0, = separatorIndex)); if (!isNaN(validationFieldLength)) { var validationField =3D = response.substring(separatorIndex + 1, separatorIndex + = validationFieldLength + 1); if (validationField !=3D "") { var validationFieldElement =3D = theForm["__EVENTVALIDATION"]; if (!validationFieldElement) { validationFieldElement =3D = document.createElement("INPUT"); validationFieldElement.type =3D "hidden"; validationFieldElement.name =3D = "__EVENTVALIDATION"; theForm.appendChild(validationFieldElement); } validationFieldElement.value =3D validationField; } if ((typeof(callbackObject.eventCallback) !=3D = "undefined") && (callbackObject.eventCallback !=3D null)) { = callbackObject.eventCallback(response.substring(separatorIndex + = validationFieldLength + 1), callbackObject.context); } } } } } function WebForm_FillFirstAvailableSlot(array, element) { var i; for (i =3D 0; i < array.length; i++) { if (!array[i]) break; } array[i] =3D element; return i; } var __nonMSDOMBrowser =3D = (window.navigator.appName.toLowerCase().indexOf('explorer') =3D=3D -1); var __theFormPostData =3D ""; var __theFormPostCollection =3D new Array(); function WebForm_InitCallback() { var count =3D theForm.elements.length; var element; for (var i =3D 0; i < count; i++) { element =3D theForm.elements[i]; var tagName =3D element.tagName.toLowerCase(); if (tagName =3D=3D "input") { var type =3D element.type; if ((type =3D=3D "text" || type =3D=3D "hidden" || type = =3D=3D "password" || ((type =3D=3D "checkbox" || type =3D=3D "radio") && = element.checked)) && (element.id !=3D "__EVENTVALIDATION")) { WebForm_InitCallbackAddField(element.name, = element.value); } } else if (tagName =3D=3D "select") { var selectCount =3D element.options.length; for (var j =3D 0; j < selectCount; j++) { var selectChild =3D element.options[j]; if (selectChild.selected =3D=3D true) { WebForm_InitCallbackAddField(element.name, = element.value); } } } else if (tagName =3D=3D "textarea") { WebForm_InitCallbackAddField(element.name, element.value); } } } function WebForm_InitCallbackAddField(name, value) { var nameValue =3D new Object(); nameValue.name =3D name; nameValue.value =3D value; __theFormPostCollection[__theFormPostCollection.length] =3D = nameValue; __theFormPostData +=3D name + "=3D" + WebForm_EncodeCallback(value) = + "&"; } function WebForm_EncodeCallback(parameter) { if (encodeURIComponent) { return encodeURIComponent(parameter); } else { return escape(parameter); } } var __disabledControlArray =3D new Array(); function WebForm_ReEnableControls() { if (typeof(__enabledControlArray) =3D=3D 'undefined') { return false; } var disabledIndex =3D 0; for (var i =3D 0; i < __enabledControlArray.length; i++) { var c; if (__nonMSDOMBrowser) { c =3D document.getElementById(__enabledControlArray[i]); } else { c =3D document.all[__enabledControlArray[i]]; } if ((typeof(c) !=3D "undefined") && (c !=3D null) && (c.disabled = =3D=3D true)) { c.disabled =3D false; __disabledControlArray[disabledIndex++] =3D c; } } setTimeout("WebForm_ReDisableControls()", 0); return true; } function WebForm_ReDisableControls() { for (var i =3D 0; i < __disabledControlArray.length; i++) { __disabledControlArray[i].disabled =3D true; } } function WebForm_FireDefaultButton(event, target) { if (event.keyCode =3D=3D 13 && !(event.srcElement && = (event.srcElement.tagName.toLowerCase() =3D=3D "textarea"))) { var defaultButton; if (__nonMSDOMBrowser) { defaultButton =3D document.getElementById(target); } else { defaultButton =3D document.all[target]; } if (defaultButton && typeof(defaultButton.click) !=3D = "undefined") { defaultButton.click(); event.cancelBubble =3D true; if (event.stopPropagation) event.stopPropagation(); return false; } } return true; } function WebForm_GetScrollX() { if (__nonMSDOMBrowser) { return window.pageXOffset; } else { if (document.documentElement && = document.documentElement.scrollLeft) { return document.documentElement.scrollLeft; } else if (document.body) { return document.body.scrollLeft; } } return 0; } function WebForm_GetScrollY() { if (__nonMSDOMBrowser) { return window.pageYOffset; } else { if (document.documentElement && = document.documentElement.scrollTop) { return document.documentElement.scrollTop; } else if (document.body) { return document.body.scrollTop; } } return 0; } function WebForm_SaveScrollPositionSubmit() { if (__nonMSDOMBrowser) { theForm.elements['__SCROLLPOSITIONY'].value =3D = window.pageYOffset; theForm.elements['__SCROLLPOSITIONX'].value =3D = window.pageXOffset; } else { theForm.__SCROLLPOSITIONX.value =3D WebForm_GetScrollX(); theForm.__SCROLLPOSITIONY.value =3D WebForm_GetScrollY(); } if ((typeof(this.oldSubmit) !=3D "undefined") && (this.oldSubmit = !=3D null)) { return this.oldSubmit(); } return true; } function WebForm_SaveScrollPositionOnSubmit() { theForm.__SCROLLPOSITIONX.value =3D WebForm_GetScrollX(); theForm.__SCROLLPOSITIONY.value =3D WebForm_GetScrollY(); if ((typeof(this.oldOnSubmit) !=3D "undefined") && (this.oldOnSubmit = !=3D null)) { return this.oldOnSubmit(); } return true; } function WebForm_RestoreScrollPosition() { if (__nonMSDOMBrowser) { window.scrollTo(theForm.elements['__SCROLLPOSITIONX'].value, = theForm.elements['__SCROLLPOSITIONY'].value); } else { window.scrollTo(theForm.__SCROLLPOSITIONX.value, = theForm.__SCROLLPOSITIONY.value); } if ((typeof(theForm.oldOnLoad) !=3D "undefined") && = (theForm.oldOnLoad !=3D null)) { return theForm.oldOnLoad(); } return true; } function WebForm_TextBoxKeyHandler(event) { if (event.keyCode =3D=3D 13) { var target; if (__nonMSDOMBrowser) { target =3D event.target; } else { target =3D event.srcElement; } if ((typeof(target) !=3D "undefined") && (target !=3D null)) { if (typeof(target.onchange) !=3D "undefined") { target.onchange(); event.cancelBubble =3D true; if (event.stopPropagation) event.stopPropagation(); return false; } } } return true; } function WebForm_AppendToClassName(element, className) { var current =3D element.className; if (current) { if (current.charAt(current.length - 1) !=3D ' ') { current +=3D ' '; } current +=3D className; } else { current =3D className; } element.className =3D current; } function WebForm_RemoveClassName(element, className) { var current =3D element.className; if (current) { if (current.substring(current.length - className.length - 1, = current.length) =3D=3D ' ' + className) { element.className =3D current.substring(0, current.length - = className.length - 1); return; } if (current =3D=3D className) { element.className =3D ""; return; } var index =3D current.indexOf(' ' + className + ' '); if (index !=3D -1) { element.className =3D current.substring(0, index) + = current.substring(index + className.length + 2, current.length); return; } if (current.substring(0, className.length) =3D=3D className + ' = ') { element.className =3D current.substring(className.length + = 1, current.length); } } } function WebForm_GetElementById(elementId) { if (document.getElementById) { return document.getElementById(elementId); } else if (document.all) { return document.all[elementId]; } else return null; } function WebForm_GetElementByTagName(element, tagName) { var elements =3D WebForm_GetElementsByTagName(element, tagName); if (elements && elements.length > 0) { return elements[0]; } else return null; } function WebForm_GetElementsByTagName(element, tagName) { if (element && tagName) { if (element.getElementsByTagName) { return element.getElementsByTagName(tagName); } if (element.all && element.all.tags) { return element.all.tags(tagName); } } return null; } function WebForm_GetElementDir(element) { if (element) { if (element.dir) { return element.dir; } return WebForm_GetElementDir(element.parentNode); } return "ltr"; } function WebForm_GetElementPosition(element) { var result =3D new Object(); result.x =3D 0; result.y =3D 0; result.width =3D 0; result.height =3D 0; if (element.offsetParent) { result.x =3D element.offsetLeft; result.y =3D element.offsetTop; var parent =3D element.offsetParent; while (parent) { result.x +=3D parent.offsetLeft; result.y +=3D parent.offsetTop; var parentTagName =3D parent.tagName.toLowerCase(); if (parentTagName !=3D "table" && parentTagName !=3D "body" &&=20 parentTagName !=3D "html" &&=20 parentTagName !=3D "div" &&=20 parent.clientTop &&=20 parent.clientLeft) { result.x +=3D parent.clientLeft; result.y +=3D parent.clientTop; } parent =3D parent.offsetParent; } } else if (element.left && element.top) { result.x =3D element.left; result.y =3D element.top; } else { if (element.x) { result.x =3D element.x; } if (element.y) { result.y =3D element.y; } } if (element.offsetWidth && element.offsetHeight) { result.width =3D element.offsetWidth; result.height =3D element.offsetHeight; } else if (element.style && element.style.pixelWidth && = element.style.pixelHeight) { result.width =3D element.style.pixelWidth; result.height =3D element.style.pixelHeight; } return result; } function WebForm_GetParentByTagName(element, tagName) { var parent =3D element.parentNode; var upperTagName =3D tagName.toUpperCase(); while (parent && (parent.tagName.toUpperCase() !=3D upperTagName)) { parent =3D parent.parentNode ? parent.parentNode : = parent.parentElement; } return parent; } function WebForm_SetElementHeight(element, height) { if (element && element.style) { element.style.height =3D height + "px"; } } function WebForm_SetElementWidth(element, width) { if (element && element.style) { element.style.width =3D width + "px"; } } function WebForm_SetElementX(element, x) { if (element && element.style) { element.style.left =3D x + "px"; } } function WebForm_SetElementY(element, y) { if (element && element.style) { element.style.top =3D y + "px"; } } ------=_NextPart_000_0000_01C9B307.13EEF460 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.archivesindex.sc.gov/OnlineArchives/ScriptResource.axd?d=iXduWNih5Kl9Ef4qEzt-ntYc_4VMjA1TS9nwhB9yDIJZcmFN6CL_HPMs8hjb_bwqdOiIgwNOiSq4YYE-njcUXYrKBu0EAdZVOmuVYqtBw4I1&t=633258921393729367 =EF=BB=BF//--------------------------------------------------------------= --------- // Copyright (C) Microsoft Corporation. All rights reserved. //-----------------------------------------------------------------------= // MicrosoftAjax.js // Microsoft AJAX Framework. Function.__typeName =3D 'Function'; Function.__class =3D true; Function.createCallback =3D function Function$createCallback(method, = context) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "method", type: Function}, {name: "context", mayBeNull: true} ]); if (e) throw e; =20 return function() { var l =3D arguments.length; if (l > 0) { var args =3D []; for (var i =3D 0; i < l; i++) { args[i] =3D arguments[i]; } args[l] =3D context; return method.apply(this, args); } return method.call(this, context); } } Function.createDelegate =3D function Function$createDelegate(instance, = method) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "instance", mayBeNull: true}, {name: "method", type: Function} ]); if (e) throw e; =20 return function() { return method.apply(instance, arguments); } } Function.emptyFunction =3D Function.emptyMethod =3D function = Function$emptyMethod() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); } Function._validateParams =3D function Function$_validateParams(params, = expectedParams) { = =20 var e; e =3D Function._validateParameterCount(params, expectedParams); if (e) { e.popStackFrame(); return e; } for (var i=3D0; i < params.length; i++) { var expectedParam =3D = expectedParams[Math.min(i, expectedParams.length - 1)]; var paramName =3D expectedParam.name; if (expectedParam.parameterArray) { paramName +=3D "[" + (i - expectedParams.length = + 1) + "]"; } e =3D Function._validateParameter(params[i], expectedParam, = paramName); if (e) { e.popStackFrame(); return e; } } return null; } Function._validateParameterCount =3D function = Function$_validateParameterCount(params, expectedParams) { var maxParams =3D expectedParams.length; var minParams =3D 0; for (var i=3D0; i < expectedParams.length; i++) { if (expectedParams[i].parameterArray) { maxParams =3D Number.MAX_VALUE; } else if (!expectedParams[i].optional) { minParams++; } } if (params.length < minParams || params.length > maxParams) { var e =3D Error.parameterCount(); e.popStackFrame(); return e; } return null; } Function._validateParameter =3D function = Function$_validateParameter(param, expectedParam, paramName) { var e; var expectedType =3D expectedParam.type; var expectedInteger =3D !!expectedParam.integer; var expectedDomElement =3D !!expectedParam.domElement; var mayBeNull =3D !!expectedParam.mayBeNull; e =3D Function._validateParameterType(param, expectedType, = expectedInteger, expectedDomElement, mayBeNull, paramName); if (e) { e.popStackFrame(); return e; } var expectedElementType =3D expectedParam.elementType; var elementMayBeNull =3D !!expectedParam.elementMayBeNull; if (expectedType =3D=3D=3D Array && typeof(param) !=3D=3D = "undefined" && param !=3D=3D null && (expectedElementType || !elementMayBeNull)) { var expectedElementInteger =3D !!expectedParam.elementInteger; var expectedElementDomElement =3D = !!expectedParam.elementDomElement; for (var i=3D0; i < param.length; i++) { var elem =3D param[i]; e =3D Function._validateParameterType(elem, = expectedElementType, expectedElementInteger, expectedElementDomElement, = elementMayBeNull, paramName + "[" + i + "]"); if (e) { e.popStackFrame(); return e; } } } return null; } Function._validateParameterType =3D function = Function$_validateParameterType(param, expectedType, expectedInteger, = expectedDomElement, mayBeNull, paramName) { var e; if (typeof(param) =3D=3D=3D "undefined") { if (mayBeNull) { return null; } else { e =3D Error.argumentUndefined(paramName); e.popStackFrame(); return e; } } if (param =3D=3D=3D null) { if (mayBeNull) { return null; } else { e =3D Error.argumentNull(paramName); e.popStackFrame(); return e; } } if (expectedType && expectedType.__enum) { if (typeof(param) !=3D=3D 'number') { e =3D Error.argumentType(paramName, Object.getType(param), = expectedType); e.popStackFrame(); return e; } if ((param % 1) =3D=3D=3D 0) { var values =3D expectedType.prototype; if (!expectedType.__flags || (param =3D=3D=3D 0)) { for (var i in values) { if (values[i] =3D=3D=3D param) return null; } } else { var v =3D param; for (var i in values) { var vali =3D values[i]; if (vali =3D=3D=3D 0) continue; if ((vali & param) =3D=3D=3D vali) { v -=3D vali; } if (v =3D=3D=3D 0) return null; } } } e =3D Error.argumentOutOfRange(paramName, param, = String.format(Sys.Res.enumInvalidValue, param, expectedType.getName())); e.popStackFrame(); return e; } if (expectedDomElement && (param !=3D=3D window) && = (param !=3D=3D document) && !(window.HTMLElement && (param instanceof HTMLElement)) && (typeof(param.nodeName) !=3D=3D 'string')) { e =3D Error.argument(paramName, Sys.Res.argumentDomElement); e.popStackFrame(); return e; } if (expectedType && !expectedType.isInstanceOfType(param)) { e =3D Error.argumentType(paramName, Object.getType(param), = expectedType); e.popStackFrame(); return e; } if (expectedType =3D=3D=3D Number && expectedInteger) { if ((param % 1) !=3D=3D 0) { e =3D Error.argumentOutOfRange(paramName, param, = Sys.Res.argumentInteger); e.popStackFrame(); return e; } } return null; } Error.__typeName =3D 'Error'; Error.__class =3D true; Error.create =3D function Error$create(message, errorInfo) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "message", type: String, mayBeNull: true, optional: = true}, {name: "errorInfo", mayBeNull: true, optional: true} ]); if (e) throw e; var e =3D new Error(message); e.message =3D message; if (errorInfo) { for (var v in errorInfo) { e[v] =3D errorInfo[v]; } } e.popStackFrame(); return e; } Error.argument =3D function Error$argument(paramName, message) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "paramName", type: String, mayBeNull: true, optional: = true}, {name: "message", type: String, mayBeNull: true, optional: true} ]); if (e) throw e; var displayMessage =3D "Sys.ArgumentException: " + (message ? = message : Sys.Res.argument); if (paramName) { displayMessage +=3D "\n" + String.format(Sys.Res.paramName, = paramName); } var e =3D Error.create(displayMessage, { name: = "Sys.ArgumentException", paramName: paramName }); e.popStackFrame(); return e; } Error.argumentNull =3D function Error$argumentNull(paramName, message) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "paramName", type: String, mayBeNull: true, optional: = true}, {name: "message", type: String, mayBeNull: true, optional: true} ]); if (e) throw e; var displayMessage =3D "Sys.ArgumentNullException: " + (message ? = message : Sys.Res.argumentNull); if (paramName) { displayMessage +=3D "\n" + String.format(Sys.Res.paramName, = paramName); } var e =3D Error.create(displayMessage, { name: = "Sys.ArgumentNullException", paramName: paramName }); e.popStackFrame(); return e; } Error.argumentOutOfRange =3D function = Error$argumentOutOfRange(paramName, actualValue, message) { /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "paramName", type: String, mayBeNull: true, optional: = true}, {name: "actualValue", mayBeNull: true, optional: true}, {name: "message", type: String, mayBeNull: true, optional: true} ]); if (e) throw e; var displayMessage =3D "Sys.ArgumentOutOfRangeException: " + = (message ? message : Sys.Res.argumentOutOfRange); if (paramName) { displayMessage +=3D "\n" + String.format(Sys.Res.paramName, = paramName); } if (typeof(actualValue) !=3D=3D "undefined" && = actualValue !=3D=3D null) { displayMessage +=3D "\n" + String.format(Sys.Res.actualValue, = actualValue); } var e =3D Error.create(displayMessage, { name: "Sys.ArgumentOutOfRangeException", paramName: paramName, actualValue: actualValue }); e.popStackFrame(); return e; } Error.argumentType =3D function Error$argumentType(paramName, = actualType, expectedType, message) { /// /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "paramName", type: String, mayBeNull: true, optional: = true}, {name: "actualType", type: Type, mayBeNull: true, optional: = true}, {name: "expectedType", type: Type, mayBeNull: true, optional: = true}, {name: "message", type: String, mayBeNull: true, optional: true} ]); if (e) throw e; var displayMessage =3D "Sys.ArgumentTypeException: "; if (message) { displayMessage +=3D message; } else if (actualType && expectedType) { displayMessage +=3D String.format(Sys.Res.argumentTypeWithTypes, = actualType.getName(), expectedType.getName()); } else { displayMessage +=3D Sys.Res.argumentType; } if (paramName) { displayMessage +=3D "\n" + String.format(Sys.Res.paramName, = paramName); } var e =3D Error.create(displayMessage, { name: "Sys.ArgumentTypeException", paramName: paramName, actualType: actualType, expectedType: expectedType }); e.popStackFrame(); return e; } Error.argumentUndefined =3D function Error$argumentUndefined(paramName, = message) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "paramName", type: String, mayBeNull: true, optional: = true}, {name: "message", type: String, mayBeNull: true, optional: true} ]); if (e) throw e; var displayMessage =3D "Sys.ArgumentUndefinedException: " + (message = ? message : Sys.Res.argumentUndefined); if (paramName) { displayMessage +=3D "\n" + String.format(Sys.Res.paramName, = paramName); } var e =3D Error.create(displayMessage, { name: = "Sys.ArgumentUndefinedException", paramName: paramName }); e.popStackFrame(); return e; } Error.format =3D function Error$format(message) { /// /// var e =3D Function._validateParams(arguments, [ {name: "message", type: String, mayBeNull: true, optional: true} ]); if (e) throw e; var displayMessage =3D "Sys.FormatException: " + (message ? message = : Sys.Res.format); var e =3D Error.create(displayMessage, {name: = 'Sys.FormatException'}); e.popStackFrame(); return e; } Error.invalidOperation =3D function Error$invalidOperation(message) { /// /// var e =3D Function._validateParams(arguments, [ {name: "message", type: String, mayBeNull: true, optional: true} ]); if (e) throw e; var displayMessage =3D "Sys.InvalidOperationException: " + (message = ? message : Sys.Res.invalidOperation); var e =3D Error.create(displayMessage, {name: = 'Sys.InvalidOperationException'}); e.popStackFrame(); return e; } Error.notImplemented =3D function Error$notImplemented(message) { /// /// var e =3D Function._validateParams(arguments, [ {name: "message", type: String, mayBeNull: true, optional: true} ]); if (e) throw e; var displayMessage =3D "Sys.NotImplementedException: " + (message ? = message : Sys.Res.notImplemented); var e =3D Error.create(displayMessage, {name: = 'Sys.NotImplementedException'}); e.popStackFrame(); return e; } Error.parameterCount =3D function Error$parameterCount(message) { /// /// var e =3D Function._validateParams(arguments, [ {name: "message", type: String, mayBeNull: true, optional: true} ]); if (e) throw e; var displayMessage =3D "Sys.ParameterCountException: " + (message ? = message : Sys.Res.parameterCount); var e =3D Error.create(displayMessage, {name: = 'Sys.ParameterCountException'}); e.popStackFrame(); return e; } Error.prototype.popStackFrame =3D function Error$popStackFrame() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); =20 if (typeof(this.stack) =3D=3D=3D "undefined" || this.stack =3D=3D=3D = null || typeof(this.fileName) =3D=3D=3D "undefined" || this.fileName = =3D=3D=3D null || typeof(this.lineNumber) =3D=3D=3D "undefined" || this.lineNumber = =3D=3D=3D null) { return; } var stackFrames =3D this.stack.split("\n"); var currentFrame =3D stackFrames[0]; var pattern =3D this.fileName + ":" + this.lineNumber; while(typeof(currentFrame) !=3D=3D "undefined" && currentFrame !=3D=3D null && currentFrame.indexOf(pattern) =3D=3D=3D -1) { stackFrames.shift(); currentFrame =3D stackFrames[0]; } var nextFrame =3D stackFrames[1]; if (typeof(nextFrame) =3D=3D=3D "undefined" || nextFrame = =3D=3D=3D null) { return; } var nextFrameParts =3D nextFrame.match(/@(.*):(\d+)$/); if (typeof(nextFrameParts) =3D=3D=3D "undefined" || nextFrameParts = =3D=3D=3D null) { return; } this.fileName =3D nextFrameParts[1]; this.lineNumber =3D parseInt(nextFrameParts[2]); stackFrames.shift(); this.stack =3D stackFrames.join("\n"); } if (!window) this.window =3D this; window.Type =3D Function; window.__rootNamespaces =3D []; window.__registeredTypes =3D {}; Type.__fullyQualifiedIdentifierRegExp =3D new RegExp("^[^.0-9 = \\s|,;:&*=3D+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]([^ = \\s|,;:&*=3D+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]*[^. = \\s|,;:&*=3D+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\])?$", "i"); Type.__identifierRegExp =3D new RegExp("^[^.0-9 = \\s|,;:&*=3D+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\][^. = \\s|,;:&*=3D+\\-()\\[\\]{}^%#@!~\\n\\r\\t\\f\\\\]*$", "i"); Type.prototype.callBaseMethod =3D function Type$callBaseMethod(instance, = name, baseArguments) { /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "instance"}, {name: "name", type: String}, {name: "baseArguments", type: Array, mayBeNull: true, optional: = true, elementMayBeNull: true} ]); if (e) throw e; var baseMethod =3D this.getBaseMethod(instance, name); if (!baseMethod) throw = Error.invalidOperation(String.format(Sys.Res.methodNotFound, name)); if (!baseArguments) { return baseMethod.apply(instance); } else { return baseMethod.apply(instance, baseArguments); } } Type.prototype.getBaseMethod =3D function Type$getBaseMethod(instance, = name) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "instance"}, {name: "name", type: String} ]); if (e) throw e; if (!this.isInstanceOfType(instance)) throw = Error.argumentType('instance', Object.getType(instance), this); var baseType =3D this.getBaseType(); if (baseType) { var baseMethod =3D baseType.prototype[name]; return (baseMethod instanceof Function) ? baseMethod : null; } return null; } Type.prototype.getBaseType =3D function Type$getBaseType() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return (typeof(this.__baseType) =3D=3D=3D "undefined") ? null : = this.__baseType; } Type.prototype.getInterfaces =3D function Type$getInterfaces() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); var result =3D []; var type =3D this; while(type) { var interfaces =3D type.__interfaces; if (interfaces) { for (var i =3D 0, l =3D interfaces.length; i < l; i++) { var interfaceType =3D interfaces[i]; if (!Array.contains(result, interfaceType)) { result[result.length] =3D interfaceType; } } } type =3D type.__baseType; } return result; } Type.prototype.getName =3D function Type$getName() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return (typeof(this.__typeName) =3D=3D=3D "undefined") ? "" : = this.__typeName; } Type.prototype.implementsInterface =3D function = Type$implementsInterface(interfaceType) { /// /// var e =3D Function._validateParams(arguments, [ {name: "interfaceType", type: Type} ]); if (e) throw e; this.resolveInheritance(); var interfaceName =3D interfaceType.getName(); var cache =3D this.__interfaceCache; if (cache) { var cacheEntry =3D cache[interfaceName]; if (typeof(cacheEntry) !=3D=3D 'undefined') return cacheEntry; } else { cache =3D this.__interfaceCache =3D {}; } var baseType =3D this; while (baseType) { var interfaces =3D baseType.__interfaces; if (interfaces) { if (Array.indexOf(interfaces, interfaceType) !=3D=3D -1) { return cache[interfaceName] =3D true; } } baseType =3D baseType.__baseType; } return cache[interfaceName] =3D false; } Type.prototype.inheritsFrom =3D function Type$inheritsFrom(parentType) { /// /// var e =3D Function._validateParams(arguments, [ {name: "parentType", type: Type} ]); if (e) throw e; this.resolveInheritance(); var baseType =3D this.__baseType; while (baseType) { if (baseType =3D=3D=3D parentType) { return true; } baseType =3D baseType.__baseType; } return false; } Type.prototype.initializeBase =3D function Type$initializeBase(instance, = baseArguments) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "instance"}, {name: "baseArguments", type: Array, mayBeNull: true, optional: = true, elementMayBeNull: true} ]); if (e) throw e; if (!this.isInstanceOfType(instance)) throw = Error.argumentType('instance', Object.getType(instance), this); this.resolveInheritance(); if (this.__baseType) { if (!baseArguments) { this.__baseType.apply(instance); } else { this.__baseType.apply(instance, baseArguments); } } return instance; } Type.prototype.isImplementedBy =3D function = Type$isImplementedBy(instance) { /// /// var e =3D Function._validateParams(arguments, [ {name: "instance", mayBeNull: true} ]); if (e) throw e; if (typeof(instance) =3D=3D=3D "undefined" || instance =3D=3D=3D = null) return false; var instanceType =3D Object.getType(instance); return !!(instanceType.implementsInterface && = instanceType.implementsInterface(this)); } Type.prototype.isInstanceOfType =3D function = Type$isInstanceOfType(instance) { /// /// var e =3D Function._validateParams(arguments, [ {name: "instance", mayBeNull: true} ]); if (e) throw e; if (typeof(instance) =3D=3D=3D "undefined" || instance =3D=3D=3D = null) return false; if (instance instanceof this) return true; var instanceType =3D Object.getType(instance); return !!(instanceType =3D=3D=3D this) || (instanceType.inheritsFrom && = instanceType.inheritsFrom(this)) || (instanceType.implementsInterface && = instanceType.implementsInterface(this)); } Type.prototype.registerClass =3D function Type$registerClass(typeName, = baseType, interfaceTypes) { /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "typeName", type: String}, {name: "baseType", type: Type, mayBeNull: true, optional: true}, {name: "interfaceTypes", type: Type, parameterArray: true} ]); if (e) throw e; if (!Type.__fullyQualifiedIdentifierRegExp.test(typeName)) throw = Error.argument('typeName', Sys.Res.notATypeName); var parsedName; try { parsedName =3D eval(typeName); } catch(e) { throw Error.argument('typeName', Sys.Res.argumentTypeName); } if (parsedName !=3D=3D this) throw Error.argument('typeName', = Sys.Res.badTypeName); if (window.__registeredTypes[typeName]) throw = Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice, = typeName)); if ((arguments.length > 1) && (typeof(baseType) =3D=3D=3D = 'undefined')) throw Error.argumentUndefined('baseType'); if (baseType && !baseType.__class) throw Error.argument('baseType', = Sys.Res.baseNotAClass); this.prototype.constructor =3D this; this.__typeName =3D typeName; this.__class =3D true; if (baseType) { this.__baseType =3D baseType; this.__basePrototypePending =3D true; } if (!window.__classes) window.__classes =3D {}; window.__classes[typeName.toUpperCase()] =3D this; if (interfaceTypes) { this.__interfaces =3D []; for (var i =3D 2; i < arguments.length; i++) { var interfaceType =3D arguments[i]; if (!interfaceType.__interface) throw = Error.argument('interfaceTypes[' + (i - 2) + ']', = Sys.Res.notAnInterface); this.resolveInheritance(); for (var methodName in interfaceType.prototype) { var method =3D interfaceType.prototype[methodName]; if (!this.prototype[methodName]) { this.prototype[methodName] =3D method; } } this.__interfaces.push(interfaceType); } } window.__registeredTypes[typeName] =3D true; return this; } Type.prototype.registerInterface =3D function = Type$registerInterface(typeName) { /// /// var e =3D Function._validateParams(arguments, [ {name: "typeName", type: String} ]); if (e) throw e; if (!Type.__fullyQualifiedIdentifierRegExp.test(typeName)) throw = Error.argument('typeName', Sys.Res.notATypeName); var parsedName; try { parsedName =3D eval(typeName); } catch(e) { throw Error.argument('typeName', Sys.Res.argumentTypeName); } if (parsedName !=3D=3D this) throw Error.argument('typeName', = Sys.Res.badTypeName); if (window.__registeredTypes[typeName]) throw = Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice, = typeName)); this.prototype.constructor =3D this; this.__typeName =3D typeName; this.__interface =3D true; window.__registeredTypes[typeName] =3D true; return this; } Type.prototype.resolveInheritance =3D function Type$resolveInheritance() = { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (this.__basePrototypePending) { var baseType =3D this.__baseType; baseType.resolveInheritance(); for (var memberName in baseType.prototype) { var memberValue =3D baseType.prototype[memberName]; if (!this.prototype[memberName]) { this.prototype[memberName] =3D memberValue; } } delete this.__basePrototypePending; } } Type.getRootNamespaces =3D function Type$getRootNamespaces() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return Array.clone(window.__rootNamespaces); } Type.isClass =3D function Type$isClass(type) { /// /// var e =3D Function._validateParams(arguments, [ {name: "type", mayBeNull: true} ]); if (e) throw e; if ((typeof(type) =3D=3D=3D 'undefined') || (type =3D=3D=3D null)) = return false; return !!type.__class; } Type.isInterface =3D function Type$isInterface(type) { /// /// var e =3D Function._validateParams(arguments, [ {name: "type", mayBeNull: true} ]); if (e) throw e; if ((typeof(type) =3D=3D=3D 'undefined') || (type =3D=3D=3D null)) = return false; return !!type.__interface; } Type.isNamespace =3D function Type$isNamespace(object) { /// /// var e =3D Function._validateParams(arguments, [ {name: "object", mayBeNull: true} ]); if (e) throw e; if ((typeof(object) =3D=3D=3D 'undefined') || (object =3D=3D=3D = null)) return false; return !!object.__namespace; } Type.parse =3D function Type$parse(typeName, ns) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "typeName", type: String, mayBeNull: true}, {name: "ns", mayBeNull: true, optional: true} ]); if (e) throw e; var fn; if (ns) { if (!window.__classes) return null; fn =3D window.__classes[ns.getName().toUpperCase() + '.' + = typeName.toUpperCase()]; return fn || null; } if (!typeName) return null; if (!Type.__htClasses) { Type.__htClasses =3D {}; } fn =3D Type.__htClasses[typeName]; if (!fn) { fn =3D eval(typeName); if (typeof(fn) !=3D=3D 'function') throw = Error.argument('typeName', Sys.Res.notATypeName); Type.__htClasses[typeName] =3D fn; } return fn; } Type.registerNamespace =3D function = Type$registerNamespace(namespacePath) { /// var e =3D Function._validateParams(arguments, [ {name: "namespacePath", type: String} ]); if (e) throw e; if (!Type.__fullyQualifiedIdentifierRegExp.test(namespacePath)) = throw Error.argument('namespacePath', Sys.Res.invalidNameSpace); var rootObject =3D window; var namespaceParts =3D namespacePath.split('.'); for (var i =3D 0; i < namespaceParts.length; i++) { var currentPart =3D namespaceParts[i]; var ns =3D rootObject[currentPart]; if (ns && !ns.__namespace) { throw = Error.invalidOperation(String.format(Sys.Res.namespaceContainsObject, = namespaceParts.splice(0, i + 1).join('.'))); } if (!ns) { ns =3D rootObject[currentPart] =3D {}; if (i =3D=3D=3D 0) { window.__rootNamespaces[window.__rootNamespaces.length] = =3D ns; } ns.__namespace =3D true; ns.__typeName =3D namespaceParts.slice(0, i + 1).join('.'); var parsedName; try { parsedName =3D eval(ns.__typeName); } catch(e) { parsedName =3D null; } if (parsedName !=3D=3D ns) { delete rootObject[currentPart]; throw Error.argument('namespacePath', = Sys.Res.invalidNameSpace); } ns.getName =3D function ns$getName() {return = this.__typeName;} } rootObject =3D ns; } } Object.__typeName =3D 'Object'; Object.__class =3D true; Object.getType =3D function Object$getType(instance) { /// /// var e =3D Function._validateParams(arguments, [ {name: "instance"} ]); if (e) throw e; var ctor =3D instance.constructor; if (!ctor || (typeof(ctor) !=3D=3D "function") || !ctor.__typeName = || (ctor.__typeName =3D=3D=3D 'Object')) { return Object; } return ctor; } Object.getTypeName =3D function Object$getTypeName(instance) { /// /// var e =3D Function._validateParams(arguments, [ {name: "instance"} ]); if (e) throw e; return Object.getType(instance).getName(); } Boolean.__typeName =3D 'Boolean'; Boolean.__class =3D true; Boolean.parse =3D function Boolean$parse(value) { /// /// var e =3D Function._validateParams(arguments, [ {name: "value", type: String} ]); if (e) throw e; var v =3D value.trim().toLowerCase(); if (v =3D=3D=3D 'false') return false; if (v =3D=3D=3D 'true') return true; throw Error.argumentOutOfRange('value', value, = Sys.Res.boolTrueOrFalse); } Date.__typeName =3D 'Date'; Date.__class =3D true; Date._appendPreOrPostMatch =3D function = Date$_appendPreOrPostMatch(preMatch, strBuilder) { var quoteCount =3D 0; var escaped =3D false; for (var i =3D 0, il =3D preMatch.length; i < il; i++) { var c =3D preMatch.charAt(i); switch (c) { case '\'': if (escaped) strBuilder.append("'"); else quoteCount++; escaped =3D false; break; case '\\': if (escaped) strBuilder.append("\\"); escaped =3D !escaped; break; default: strBuilder.append(c); escaped =3D false; break; } } return quoteCount; } Date._expandFormat =3D function Date$_expandFormat(dtf, format) { if (!format) { format =3D "F"; } if (format.length =3D=3D=3D 1) { switch (format) { case "d": return dtf.ShortDatePattern; case "D": return dtf.LongDatePattern; case "t": return dtf.ShortTimePattern; case "T": return dtf.LongTimePattern; case "F": return dtf.FullDateTimePattern; case "M": case "m": return dtf.MonthDayPattern; case "s": return dtf.SortableDateTimePattern; case "Y": case "y": return dtf.YearMonthPattern; default: throw Error.format(Sys.Res.formatInvalidString); } } return format; } Date._expandYear =3D function Date$_expandYear(dtf, year) { if (year < 100) { var curr =3D new Date().getFullYear(); year +=3D curr - (curr % 100); if (year > dtf.Calendar.TwoDigitYearMax) { return year - 100; } } return year; } Date._getParseRegExp =3D function Date$_getParseRegExp(dtf, format) { if (!dtf._parseRegExp) { dtf._parseRegExp =3D {}; } else if (dtf._parseRegExp[format]) { return dtf._parseRegExp[format]; } var expFormat =3D Date._expandFormat(dtf, format); expFormat =3D expFormat.replace(/([\^\$\.\*\+\?\|\[\]\(\)\{\}])/g, = "\\\\$1"); var regexp =3D new Sys.StringBuilder("^"); var groups =3D []; var index =3D 0; var quoteCount =3D 0; var tokenRegExp =3D Date._getTokenRegExp(); var match; while ((match =3D tokenRegExp.exec(expFormat)) !=3D=3D null) { var preMatch =3D expFormat.slice(index, match.index); index =3D tokenRegExp.lastIndex; quoteCount +=3D Date._appendPreOrPostMatch(preMatch, = regexp); if ((quoteCount%2) =3D=3D=3D 1) { regexp.append(match[0]); continue; } switch (match[0]) { case 'dddd': case 'ddd': case 'MMMM': case 'MMM': regexp.append("(\\D+)"); break; case 'tt': case 't': regexp.append("(\\D*)"); break; case 'yyyy': regexp.append("(\\d{4})"); break; case 'fff': regexp.append("(\\d{3})"); break; case 'ff': regexp.append("(\\d{2})"); break; case 'f': regexp.append("(\\d)"); break; case 'dd': case 'd': case 'MM': case 'M': case 'yy': case 'y': case 'HH': case 'H': case 'hh': case 'h': case 'mm': case 'm': case 'ss': case 's': regexp.append("(\\d\\d?)"); break; case 'zzz': regexp.append("([+-]?\\d\\d?:\\d{2})"); break; case 'zz': case 'z': regexp.append("([+-]?\\d\\d?)"); break; } Array.add(groups, match[0]); } Date._appendPreOrPostMatch(expFormat.slice(index), regexp); regexp.append("$"); var regexpStr =3D regexp.toString().replace(/\s+/g, "\\s+"); var parseRegExp =3D {'regExp': regexpStr, 'groups': groups}; dtf._parseRegExp[format] =3D parseRegExp; return parseRegExp; } Date._getTokenRegExp =3D function Date$_getTokenRegExp() { return = /dddd|ddd|dd|d|MMMM|MMM|MM|M|yyyy|yy|y|hh|h|HH|H|mm|m|ss|s|tt|t|fff|ff|f|= zzz|zz|z/g; } Date.parseLocale =3D function Date$parseLocale(value, formats) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "value", type: String}, {name: "formats", mayBeNull: true, optional: true, = parameterArray: true} ]); if (e) throw e; return Date._parse(value, Sys.CultureInfo.CurrentCulture, = arguments); } Date.parseInvariant =3D function Date$parseInvariant(value, formats) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "value", type: String}, {name: "formats", mayBeNull: true, optional: true, = parameterArray: true} ]); if (e) throw e; return Date._parse(value, Sys.CultureInfo.InvariantCulture, = arguments); } Date._parse =3D function Date$_parse(value, cultureInfo, args) { var custom =3D false; for (var i =3D 1, il =3D args.length; i < il; i++) { var format =3D args[i]; if (format) { custom =3D true; var date =3D Date._parseExact(value, format, cultureInfo); if (date) return date; } } if (! custom) { var formats =3D cultureInfo._getDateTimeFormats(); for (var i =3D 0, il =3D formats.length; i < il; i++) { var date =3D Date._parseExact(value, formats[i], = cultureInfo); if (date) return date; } } return null; } Date._parseExact =3D function Date$_parseExact(value, format, = cultureInfo) { value =3D value.trim(); var dtf =3D cultureInfo.dateTimeFormat; var parseInfo =3D Date._getParseRegExp(dtf, format); var match =3D new RegExp(parseInfo.regExp).exec(value); if (match !=3D=3D null) { var groups =3D parseInfo.groups; var year =3D null, month =3D null, date =3D null, weekDay =3D = null; var hour =3D 0, min =3D 0, sec =3D 0, msec =3D 0, tzMinOffset = =3D null; var pmHour =3D false; for (var j =3D 0, jl =3D groups.length; j < jl; j++) { var matchGroup =3D match[j+1]; if (matchGroup) { switch (groups[j]) { case 'dd': case 'd': date =3D = Date._parseInt(matchGroup); if ((date < 1) || (date = > 31)) return null; break; case 'MMMM': month =3D = cultureInfo._getMonthIndex(matchGroup); if ((month < 0) || (month > 11)) return null; break; case 'MMM': month =3D = cultureInfo._getAbbrMonthIndex(matchGroup); if ((month < 0) || (month > 11)) return null; break; case 'M': case 'MM': var month =3D = Date._parseInt(matchGroup) - 1; if ((month < 0) || (month > 11)) return null; break; case 'y': case 'yy': year =3D = Date._expandYear(dtf,Date._parseInt(matchGroup)); if ((year < 0) || (year > 9999)) return null; break; case 'yyyy': year =3D = Date._parseInt(matchGroup); if ((year < 0) || (year > 9999)) return null; break; case 'h': case 'hh': hour =3D = Date._parseInt(matchGroup); if (hour =3D=3D=3D 12) hour =3D 0; if ((hour < 0) || (hour > 11)) return null; break; case 'H': case 'HH': hour =3D = Date._parseInt(matchGroup); if ((hour < 0) || (hour > 23)) return null; break; case 'm': case 'mm': min =3D = Date._parseInt(matchGroup); if ((min < 0) || (min > 59)) return null; break; case 's': case 'ss': sec =3D = Date._parseInt(matchGroup); if ((sec < 0) || (sec > 59)) return null; break; case 'tt': case 't': var upperToken =3D = matchGroup.toUpperCase(); pmHour =3D (upperToken =3D=3D=3D = dtf.PMDesignator.toUpperCase()); if (!pmHour && (upperToken !=3D=3D = dtf.AMDesignator.toUpperCase())) return null; break; case 'f': msec =3D = Date._parseInt(matchGroup) * 100; if ((msec < 0) || (msec > 999)) return null; break; case 'ff': msec =3D = Date._parseInt(matchGroup) * 10; if ((msec < 0) || (msec > 999)) return null; break; case 'fff': msec =3D = Date._parseInt(matchGroup); if ((msec < 0) || (msec > 999)) return null; break; case 'dddd': weekDay =3D = cultureInfo._getDayIndex(matchGroup); if ((weekDay < 0) || (weekDay > 6)) return null; break; case 'ddd': weekDay =3D = cultureInfo._getAbbrDayIndex(matchGroup); if ((weekDay < 0) || (weekDay > 6)) return null; break; case 'zzz': var offsets =3D = matchGroup.split(/:/); if (offsets.length !=3D=3D 2) return null; var hourOffset =3D Date._parseInt(offsets[0]); if ((hourOffset < -12) || (hourOffset > 13)) = return null; var minOffset =3D Date._parseInt(offsets[1]); if ((minOffset < 0) || (minOffset > 59)) return = null; tzMinOffset =3D (hourOffset * 60) + = (matchGroup.startsWith('-')? -minOffset : minOffset); break; case 'z': case 'zz': var hourOffset =3D = Date._parseInt(matchGroup); if ((hourOffset < -12) || (hourOffset > 13)) = return null; tzMinOffset =3D hourOffset * 60; break; } } } var result =3D new Date(); if (year =3D=3D=3D null) { year =3D result.getFullYear(); } if (month =3D=3D=3D null) { month =3D result.getMonth(); } if (date =3D=3D=3D null) { date =3D result.getDate(); } result.setFullYear(year, month, date); if (result.getDate() !=3D=3D date) return null; if ((weekDay !=3D=3D null) && (result.getDay() !=3D=3D = weekDay)) { return null; } if (pmHour && (hour < 12)) { hour +=3D 12; } result.setHours(hour, min, sec, msec); if (tzMinOffset !=3D=3D null) { var adjustedMin =3D result.getMinutes() - = (tzMinOffset + result.getTimezoneOffset()); = result.setHours(result.getHours() + parseInt(adjustedMin/60), = adjustedMin%60); } return result; } } Date._parseInt =3D function Date$_parseInt(value) { return parseInt(value.replace(/^[\s0]+(\d+)$/,"$1")); } Date.prototype.format =3D function Date$format(format) { /// /// var e =3D Function._validateParams(arguments, [ {name: "format", type: String} ]); if (e) throw e; return this._toFormattedString(format, = Sys.CultureInfo.InvariantCulture); } Date.prototype.localeFormat =3D function Date$localeFormat(format) { /// /// var e =3D Function._validateParams(arguments, [ {name: "format", type: String} ]); if (e) throw e; return this._toFormattedString(format, = Sys.CultureInfo.CurrentCulture); } Date.prototype._toFormattedString =3D function = Date$_toFormattedString(format, cultureInfo) { if (!format || (format.length =3D=3D=3D 0) || (format =3D=3D=3D = 'i')) { if (cultureInfo && (cultureInfo.name.length > 0)) { return this.toLocaleString(); } else { return this.toString(); } } var dtf =3D cultureInfo.dateTimeFormat; format =3D Date._expandFormat(dtf, format); var ret =3D new Sys.StringBuilder(); var hour; function addLeadingZero(num) { if (num < 10) { return '0' + num; } return num.toString(); } function addLeadingZeros(num) { if (num < 10) { return '00' + num; } if (num < 100) { return '0' + num; } return num.toString(); } var quoteCount =3D 0; var tokenRegExp =3D Date._getTokenRegExp(); for (;;) { var index =3D tokenRegExp.lastIndex; var ar =3D tokenRegExp.exec(format); var preMatch =3D format.slice(index, ar ? ar.index : = format.length); quoteCount +=3D Date._appendPreOrPostMatch(preMatch, ret); if (!ar) break; if ((quoteCount%2) =3D=3D=3D 1) { ret.append(ar[0]); continue; } switch (ar[0]) { case "dddd": ret.append(dtf.DayNames[this.getDay()]); break; case "ddd": = ret.append(dtf.AbbreviatedDayNames[this.getDay()]); break; case "dd": ret.append(addLeadingZero(this.getDate())); break; case "d": ret.append(this.getDate()); break; case "MMMM": ret.append(dtf.MonthNames[this.getMonth()]); break; case "MMM": = ret.append(dtf.AbbreviatedMonthNames[this.getMonth()]); break; case "MM": ret.append(addLeadingZero(this.getMonth() + 1)); break; case "M": ret.append(this.getMonth() + 1); break; case "yyyy": ret.append(this.getFullYear()); break; case "yy": ret.append(addLeadingZero(this.getFullYear() % = 100)); break; case "y": ret.append(this.getFullYear() % 100); break; case "hh": hour =3D this.getHours() % 12; if (hour =3D=3D=3D 0) hour =3D 12; ret.append(addLeadingZero(hour)); break; case "h": hour =3D this.getHours() % 12; if (hour =3D=3D=3D 0) hour =3D 12; ret.append(hour); break; case "HH": ret.append(addLeadingZero(this.getHours())); break; case "H": ret.append(this.getHours()); break; case "mm": ret.append(addLeadingZero(this.getMinutes())); break; case "m": ret.append(this.getMinutes()); break; case "ss": ret.append(addLeadingZero(this.getSeconds())); break; case "s": ret.append(this.getSeconds()); break; case "tt": ret.append((this.getHours() < 12) ? = dtf.AMDesignator : dtf.PMDesignator); break; case "t": ret.append(((this.getHours() < 12) ? = dtf.AMDesignator : dtf.PMDesignator).charAt(0)); break; case "f": = ret.append(addLeadingZeros(this.getMilliseconds()).charAt(0)); break; case "ff": = ret.append(addLeadingZeros(this.getMilliseconds()).substr(0, 2)); break; case "fff": = ret.append(addLeadingZeros(this.getMilliseconds())); break; case "z": hour =3D this.getTimezoneOffset() / 60; ret.append(((hour >=3D 0) ? '+' : '-') + = Math.floor(Math.abs(hour))); break; case "zz": hour =3D this.getTimezoneOffset() / 60; ret.append(((hour >=3D 0) ? '+' : '-') + = addLeadingZero(Math.floor(Math.abs(hour)))); break; case "zzz": hour =3D this.getTimezoneOffset() / 60; ret.append(((hour >=3D 0) ? '+' : '-') + = addLeadingZero(Math.floor(Math.abs(hour))) + dtf.TimeSeparator + = addLeadingZero(Math.abs(this.getTimezoneOffset() % 60))); break; } } return ret.toString(); } Number.__typeName =3D 'Number'; Number.__class =3D true; Number.parseLocale =3D function Number$parseLocale(value) { /// /// var e =3D Function._validateParams(arguments, [ {name: "value", type: String} ]); if (e) throw e; return Number._parse(value, Sys.CultureInfo.CurrentCulture); } Number.parseInvariant =3D function Number$parseInvariant(value) { /// /// var e =3D Function._validateParams(arguments, [ {name: "value", type: String} ]); if (e) throw e; return Number._parse(value, Sys.CultureInfo.InvariantCulture); } Number._parse =3D function Number$_parse(value, cultureInfo) { var valueStr =3D value.trim(); if (valueStr.match(/infinity/i) !=3D=3D null) { return parseFloat(valueStr); } if (valueStr.match(/^0x[a-f0-9]+$/i) !=3D=3D null) { return parseInt(valueStr); } var numFormat =3D cultureInfo.numberFormat; var decSeparator =3D numFormat.NumberDecimalSeparator; var grpSeparator =3D numFormat.NumberGroupSeparator; var numberFormatRegex =3D new RegExp("^[+-]?[\\d\\" + = grpSeparator + "]*\\" + decSeparator + "?\\d*([eE][+-]?\\d+)?$"); if (!valueStr.match(numberFormatRegex)) { return Number.NaN; } valueStr =3D valueStr.split(grpSeparator).join(""); valueStr =3D valueStr.replace(decSeparator, "."); return parseFloat(valueStr); } Number.prototype.format =3D function Number$format(format) { /// /// var e =3D Function._validateParams(arguments, [ {name: "format", type: String} ]); if (e) throw e; return this._toFormattedString(format, = Sys.CultureInfo.InvariantCulture); } Number.prototype.localeFormat =3D function Number$localeFormat(format) { /// /// var e =3D Function._validateParams(arguments, [ {name: "format", type: String} ]); if (e) throw e; return this._toFormattedString(format, = Sys.CultureInfo.CurrentCulture); } Number.prototype._toFormattedString =3D function = Number$_toFormattedString(format, cultureInfo) { if (!format || (format.length =3D=3D=3D 0) || (format =3D=3D=3D = 'i')) { if (cultureInfo && (cultureInfo.name.length > 0)) { return this.toLocaleString(); } else { return this.toString(); } } var _percentPositivePattern =3D ["n %", "n%", "%n" ]; var _percentNegativePattern =3D ["-n %", "-n%", "-%n"]; var _numberNegativePattern =3D ["(n)","-n","- n","n-","n -"]; var _currencyPositivePattern =3D ["$n","n$","$ n","n $"]; var _currencyNegativePattern =3D = ["($n)","-$n","$-n","$n-","(n$)","-n$","n-$","n$-","-n $","-$ n","n = $-","$ n-","$ -n","n- $","($ n)","(n $)"]; function expandNumber(number, precision, groupSizes, sep, = decimalChar) { =20 var curSize =3D groupSizes[0]; var curGroupIndex =3D 1; var numberString =3D number.toString(); var right =3D ""; var exponent =3D ""; var decimalSplit =3D numberString.split('.'); if (decimalSplit.length > 1) { numberString =3D decimalSplit[0]; right =3D decimalSplit[1]; var exponentSplit =3D right.split(/e/i); if (exponentSplit.length > 1) { right =3D exponentSplit[0]; exponent =3D "e" + exponentSplit[1]; } } if (precision > 0) { var rightDifference =3D right.length - = precision; if (rightDifference > 0) { right =3D right.slice(0, precision); } else if (rightDifference < 0) { for (var i=3D0; i=3D 0) { if (curSize =3D=3D=3D 0 || curSize > = stringIndex) { if (ret.length > 0) return numberString.slice(0, stringIndex + 1) + sep = + ret + right; else return numberString.slice(0, stringIndex + 1) + = right; } if (ret.length > 0) ret =3D numberString.slice(stringIndex - curSize + 1, = stringIndex+1) + sep + ret; else ret =3D numberString.slice(stringIndex - curSize + 1, = stringIndex+1); stringIndex -=3D curSize; if (curGroupIndex < groupSizes.length) { curSize =3D groupSizes[curGroupIndex]; curGroupIndex++; } } return numberString.slice(0, stringIndex + 1) + sep + ret + = right; } var nf =3D cultureInfo.numberFormat; var number =3D Math.abs(this); if (!format) format =3D "D"; var precision =3D -1; if (format.length > 1) precision =3D parseInt(format.slice(1)); var pattern; switch (format.charAt(0)) { case "d": case "D": pattern =3D 'n'; if (precision !=3D=3D -1) { var numberStr =3D ""+number; var zerosToAdd =3D precision - numberStr.length; if (zerosToAdd > 0) { for (var i=3D0; i /// var e =3D Function._validateParams(arguments, [ {name: "array", type: Array, elementMayBeNull: true}, {name: "item", mayBeNull: true} ]); if (e) throw e; array[array.length] =3D item; } Array.addRange =3D function Array$addRange(array, items) { /// /// var e =3D Function._validateParams(arguments, [ {name: "array", type: Array, elementMayBeNull: true}, {name: "items", type: Array, elementMayBeNull: true} ]); if (e) throw e; array.push.apply(array, items); } Array.clear =3D function Array$clear(array) { /// var e =3D Function._validateParams(arguments, [ {name: "array", type: Array, elementMayBeNull: true} ]); if (e) throw e; array.length =3D 0; } Array.clone =3D function Array$clone(array) { /// /// var e =3D Function._validateParams(arguments, [ {name: "array", type: Array, elementMayBeNull: true} ]); if (e) throw e; if (array.length =3D=3D=3D 1) { return [array[0]]; } else { return Array.apply(null, array); } } Array.contains =3D function Array$contains(array, item) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "array", type: Array, elementMayBeNull: true}, {name: "item", mayBeNull: true} ]); if (e) throw e; return (Array.indexOf(array, item) >=3D 0); } Array.dequeue =3D function Array$dequeue(array) { /// /// var e =3D Function._validateParams(arguments, [ {name: "array", type: Array, elementMayBeNull: true} ]); if (e) throw e; return array.shift(); } Array.forEach =3D function Array$forEach(array, method, instance) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "array", type: Array, elementMayBeNull: true}, {name: "method", type: Function}, {name: "instance", mayBeNull: true, optional: true} ]); if (e) throw e; for (var i =3D 0, l =3D array.length; i < l; i++) { var elt =3D array[i]; if (typeof(elt) !=3D=3D 'undefined') method.call(instance, elt, = i, array); } } Array.indexOf =3D function Array$indexOf(array, item, start) { /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "array", type: Array, elementMayBeNull: true}, {name: "item", mayBeNull: true, optional: true}, {name: "start", mayBeNull: true, optional: true} ]); if (e) throw e; if (typeof(item) =3D=3D=3D "undefined") return -1; var length =3D array.length; if (length !=3D=3D 0) { start =3D start - 0; if (isNaN(start)) { start =3D 0; } else { if (isFinite(start)) { start =3D start - (start % 1); } if (start < 0) { start =3D Math.max(0, length + start); } } for (var i =3D start; i < length; i++) { if ((typeof(array[i]) !=3D=3D "undefined") && (array[i] = =3D=3D=3D item)) { return i; } } } return -1; } Array.insert =3D function Array$insert(array, index, item) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "array", type: Array, elementMayBeNull: true}, {name: "index", mayBeNull: true}, {name: "item", mayBeNull: true} ]); if (e) throw e; array.splice(index, 0, item); } Array.parse =3D function Array$parse(value) { /// /// var e =3D Function._validateParams(arguments, [ {name: "value", type: String, mayBeNull: true} ]); if (e) throw e; if (!value) return []; var v =3D eval(value); if (!Array.isInstanceOfType(v)) throw Error.argument('value', = Sys.Res.arrayParseBadFormat); return v; } Array.remove =3D function Array$remove(array, item) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "array", type: Array, elementMayBeNull: true}, {name: "item", mayBeNull: true} ]); if (e) throw e; var index =3D Array.indexOf(array, item); if (index >=3D 0) { array.splice(index, 1); } return (index >=3D 0); } Array.removeAt =3D function Array$removeAt(array, index) { /// /// var e =3D Function._validateParams(arguments, [ {name: "array", type: Array, elementMayBeNull: true}, {name: "index", mayBeNull: true} ]); if (e) throw e; array.splice(index, 1); } String.__typeName =3D 'String'; String.__class =3D true; String.prototype.endsWith =3D function String$endsWith(suffix) { /// /// var e =3D Function._validateParams(arguments, [ {name: "suffix", type: String} ]); if (e) throw e; return (this.substr(this.length - suffix.length) =3D=3D=3D suffix); } String.prototype.startsWith =3D function String$startsWith(prefix) { /// /// var e =3D Function._validateParams(arguments, [ {name: "prefix", type: String} ]); if (e) throw e; return (this.substr(0, prefix.length) =3D=3D=3D prefix); } String.prototype.trim =3D function String$trim() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this.replace(/^\s+|\s+$/g, ''); } String.prototype.trimEnd =3D function String$trimEnd() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this.replace(/\s+$/, ''); } String.prototype.trimStart =3D function String$trimStart() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this.replace(/^\s+/, ''); } String.format =3D function String$format(format, args) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "format", type: String}, {name: "args", mayBeNull: true, parameterArray: true} ]); if (e) throw e; return String._toFormattedString(false, arguments); } String.localeFormat =3D function String$localeFormat(format, args) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "format", type: String}, {name: "args", mayBeNull: true, parameterArray: true} ]); if (e) throw e; return String._toFormattedString(true, arguments); } String._toFormattedString =3D function = String$_toFormattedString(useLocale, args) { var result =3D ''; var format =3D args[0]; for (var i=3D0;;) { var open =3D format.indexOf('{', i); var close =3D format.indexOf('}', i); if ((open < 0) && (close < 0)) { result +=3D format.slice(i); break; } if ((close > 0) && ((close < open) || (open < 0))) { if (format.charAt(close + 1) !=3D=3D '}') { throw Error.argument('format', = Sys.Res.stringFormatBraceMismatch); } result +=3D format.slice(i, close + 1); i =3D close + 2; continue; } result +=3D format.slice(i, open); i =3D open + 1; if (format.charAt(i) =3D=3D=3D '{') { result +=3D '{'; i++; continue; } if (close < 0) throw Error.argument('format', = Sys.Res.stringFormatBraceMismatch); =20 var brace =3D format.substring(i, close); var colonIndex =3D brace.indexOf(':'); var argNumber =3D parseInt((colonIndex < 0)? brace : = brace.substring(0, colonIndex)) + 1; if (isNaN(argNumber)) throw Error.argument('format', = Sys.Res.stringFormatInvalid); var argFormat =3D (colonIndex < 0)? '' : = brace.substring(colonIndex + 1); var arg =3D args[argNumber]; if (typeof(arg) =3D=3D=3D "undefined" || arg =3D=3D=3D null) { arg =3D ''; } if (arg.toFormattedString) { result +=3D arg.toFormattedString(argFormat); } else if (useLocale && arg.localeFormat) { result +=3D arg.localeFormat(argFormat); } else if (arg.format) { result +=3D arg.format(argFormat); } else result +=3D arg.toString(); i =3D close + 1; } return result; } Type.registerNamespace('Sys'); Sys.IDisposable =3D function Sys$IDisposable() { throw Error.notImplemented(); } function Sys$IDisposable$dispose() { throw Error.notImplemented(); } Sys.IDisposable.prototype =3D { dispose: Sys$IDisposable$dispose } Sys.IDisposable.registerInterface('Sys.IDisposable'); Sys.StringBuilder =3D function Sys$StringBuilder(initialText) { /// var e =3D Function._validateParams(arguments, [ {name: "initialText", mayBeNull: true, optional: true} ]); if (e) throw e; this._parts =3D (typeof(initialText) !=3D=3D 'undefined' && = initialText !=3D=3D null && initialText !=3D=3D '') ? [initialText.toString()] : []; this._value =3D {}; this._len =3D 0; } function Sys$StringBuilder$append(text) { /// var e =3D Function._validateParams(arguments, [ {name: "text", mayBeNull: true} ]); if (e) throw e; this._parts[this._parts.length] =3D text; } function Sys$StringBuilder$appendLine(text) { /// var e =3D Function._validateParams(arguments, [ {name: "text", mayBeNull: true, optional: true} ]); if (e) throw e; this._parts[this._parts.length] =3D ((typeof(text) =3D=3D=3D 'undefined') || (text =3D=3D=3D = null) || (text =3D=3D=3D '')) ? '\r\n' : text + '\r\n'; } function Sys$StringBuilder$clear() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); this._parts =3D []; this._value =3D {}; this._len =3D 0; } function Sys$StringBuilder$isEmpty() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (this._parts.length =3D=3D=3D 0) return true; return this.toString() =3D=3D=3D ''; } function Sys$StringBuilder$toString(separator) { /// /// var e =3D Function._validateParams(arguments, [ {name: "separator", type: String, mayBeNull: true, optional: = true} ]); if (e) throw e; separator =3D separator || ''; var parts =3D this._parts; if (this._len !=3D=3D parts.length) { this._value =3D {}; this._len =3D parts.length; } var val =3D this._value; if (typeof(val[separator]) =3D=3D=3D 'undefined') { if (separator !=3D=3D '') { for (var i =3D 0; i < parts.length;) { if ((typeof(parts[i]) =3D=3D=3D 'undefined') || = (parts[i] =3D=3D=3D '') || (parts[i] =3D=3D=3D null)) { parts.splice(i, 1); } else { i++; } } } val[separator] =3D this._parts.join(separator); } return val[separator]; } Sys.StringBuilder.prototype =3D { append: Sys$StringBuilder$append, appendLine: Sys$StringBuilder$appendLine, clear: Sys$StringBuilder$clear, isEmpty: Sys$StringBuilder$isEmpty, toString: Sys$StringBuilder$toString } Sys.StringBuilder.registerClass('Sys.StringBuilder'); if (!window.XMLHttpRequest) { window.XMLHttpRequest =3D function window$XMLHttpRequest() { var progIDs =3D [ 'Msxml2.XMLHTTP', 'Microsoft.XMLHTTP' ]; =20 for (var i =3D 0; i < progIDs.length; i++) { try { var xmlHttp =3D new ActiveXObject(progIDs[i]); return xmlHttp; } catch (ex) { } } =20 return null; } } Sys.Browser =3D {}; Sys.Browser.InternetExplorer =3D {}; Sys.Browser.Firefox =3D {}; Sys.Browser.Safari =3D {}; Sys.Browser.Opera =3D {}; Sys.Browser.agent =3D null; Sys.Browser.hasDebuggerStatement =3D false; Sys.Browser.name =3D navigator.appName; Sys.Browser.version =3D parseFloat(navigator.appVersion); if (navigator.userAgent.indexOf(' MSIE ') > -1) { Sys.Browser.agent =3D Sys.Browser.InternetExplorer; Sys.Browser.version =3D parseFloat(navigator.userAgent.match(/MSIE = (\d+\.\d+)/)[1]); Sys.Browser.hasDebuggerStatement =3D true; } else if (navigator.userAgent.indexOf(' Firefox/') > -1) { Sys.Browser.agent =3D Sys.Browser.Firefox; Sys.Browser.version =3D parseFloat(navigator.userAgent.match(/ = Firefox\/(\d+\.\d+)/)[1]); Sys.Browser.name =3D 'Firefox'; Sys.Browser.hasDebuggerStatement =3D true; } else if (navigator.userAgent.indexOf(' Safari/') > -1) { Sys.Browser.agent =3D Sys.Browser.Safari; Sys.Browser.version =3D parseFloat(navigator.userAgent.match(/ = Safari\/(\d+\.\d+)/)[1]); Sys.Browser.name =3D 'Safari'; } else if (navigator.userAgent.indexOf('Opera/') > -1) { Sys.Browser.agent =3D Sys.Browser.Opera; } Type.registerNamespace('Sys.UI'); Sys._Debug =3D function Sys$_Debug() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); } function Sys$_Debug$_appendConsole(text) { if ((typeof(Debug) !=3D=3D 'undefined') && = Debug.writeln) { Debug.writeln(text); } if (window.console && window.console.log) { window.console.log(text); } if (window.opera) { window.opera.postError(text); } if (window.debugService) { window.debugService.trace(text); } } function Sys$_Debug$_appendTrace(text) { var traceElement =3D document.getElementById('TraceConsole'); if (traceElement && (traceElement.tagName.toUpperCase() = =3D=3D=3D 'TEXTAREA')) { traceElement.value +=3D text + '\n'; } } function Sys$_Debug$assert(condition, message, displayCaller) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "condition", type: Boolean}, {name: "message", type: String, mayBeNull: true, optional: = true}, {name: "displayCaller", type: Boolean, optional: true} ]); if (e) throw e; if (!condition) { message =3D (displayCaller && this.assert.caller) ? String.format(Sys.Res.assertFailedCaller, message, = this.assert.caller) : String.format(Sys.Res.assertFailed, message); if (confirm(String.format(Sys.Res.breakIntoDebugger, = message))) { this.fail(message); } } } function Sys$_Debug$clearTrace() { var traceElement =3D document.getElementById('TraceConsole'); if (traceElement && (traceElement.tagName.toUpperCase() = =3D=3D=3D 'TEXTAREA')) { traceElement.value =3D ''; } } function Sys$_Debug$fail(message) { /// var e =3D Function._validateParams(arguments, [ {name: "message", type: String, mayBeNull: true} ]); if (e) throw e; this._appendConsole(message); if (Sys.Browser.hasDebuggerStatement) { eval('debugger'); } } function Sys$_Debug$trace(text) { /// var e =3D Function._validateParams(arguments, [ {name: "text"} ]); if (e) throw e; this._appendConsole(text); this._appendTrace(text); } function Sys$_Debug$traceDump(object, name) { /// /// var e =3D Function._validateParams(arguments, [ {name: "object", mayBeNull: true}, {name: "name", type: String, mayBeNull: true, optional: = true} ]); if (e) throw e; var text =3D this._traceDump(object, name, true); } function Sys$_Debug$_traceDump(object, name, recursive, = indentationPadding, loopArray) { name =3D name? name : 'traceDump'; indentationPadding =3D indentationPadding? indentationPadding : = ''; if (object =3D=3D=3D null) { this.trace(indentationPadding + name + ': null'); return; } switch(typeof(object)) { case 'undefined': this.trace(indentationPadding + name + ': Undefined'); break; case 'number': case 'string': case 'boolean': this.trace(indentationPadding + name + ': ' + object); break; default: if (Date.isInstanceOfType(object) || = RegExp.isInstanceOfType(object)) { this.trace(indentationPadding + name + ': ' + = object.toString()); break; } if (!loopArray) { loopArray =3D []; } else if (Array.contains(loopArray, object)) { this.trace(indentationPadding + name + ': ...'); return; } Array.add(loopArray, object); if = ((object =3D=3D window) || (object =3D=3D=3D document) || (window.HTMLElement && (object instanceof = HTMLElement)) || (typeof(object.nodeName) =3D=3D=3D 'string')) { var tag =3D object.tagName? object.tagName : = 'DomElement'; if (object.id) { tag +=3D ' - ' + object.id; } this.trace(indentationPadding + name + ' {' + tag + = '}'); } else { var typeName =3D Object.getTypeName(object); this.trace(indentationPadding + name + = (typeof(typeName) =3D=3D=3D 'string' ? ' {' + typeName + '}' : '')); if ((indentationPadding =3D=3D=3D '') || recursive) = { indentationPadding +=3D " "; var i, length, properties, p, v; if (Array.isInstanceOfType(object)) { length =3D object.length; for (i =3D 0; i < length; i++) { this._traceDump(object[i], '[' + i + = ']', recursive, indentationPadding, loopArray); } } else { for (p in object) { v =3D object[p]; if (!Function.isInstanceOfType(v)) { this._traceDump(v, p, recursive, = indentationPadding, loopArray); } } } } } Array.remove(loopArray, object); } } Sys._Debug.prototype =3D { _appendConsole: Sys$_Debug$_appendConsole, _appendTrace: Sys$_Debug$_appendTrace, assert: Sys$_Debug$assert, clearTrace: Sys$_Debug$clearTrace, fail: Sys$_Debug$fail, trace: Sys$_Debug$trace, traceDump: Sys$_Debug$traceDump, _traceDump: Sys$_Debug$_traceDump } Sys._Debug.registerClass('Sys._Debug'); Sys.Debug =3D new Sys._Debug(); Sys.Debug.isDebug =3D true; function Sys$Enum$parse(value, ignoreCase) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "value", type: String}, {name: "ignoreCase", type: Boolean, optional: true} ]); if (e) throw e; var values, parsed, val; if (ignoreCase) { values =3D this.__lowerCaseValues; if (!values) { this.__lowerCaseValues =3D values =3D {}; var prototype =3D this.prototype; for (var name in prototype) { values[name.toLowerCase()] =3D prototype[name]; } } } else { values =3D this.prototype; } if (!this.__flags) { val =3D (ignoreCase ? value.toLowerCase() : value); parsed =3D values[val.trim()]; if (typeof(parsed) !=3D=3D 'number') throw = Error.argument('value', String.format(Sys.Res.enumInvalidValue, value, = this.__typeName)); return parsed; } else { var parts =3D (ignoreCase ? value.toLowerCase() : = value).split(','); var v =3D 0; for (var i =3D parts.length - 1; i >=3D 0; i--) { var part =3D parts[i].trim(); parsed =3D values[part]; if (typeof(parsed) !=3D=3D 'number') throw = Error.argument('value', String.format(Sys.Res.enumInvalidValue, = value.split(',')[i].trim(), this.__typeName)); v |=3D parsed; } return v; } } function Sys$Enum$toString(value) { /// /// var e =3D Function._validateParams(arguments, [ {name: "value", mayBeNull: true, optional: true} ]); if (e) throw e; if ((typeof(value) =3D=3D=3D 'undefined') || (value = =3D=3D=3D null)) return this.__string; if ((typeof(value) !=3D 'number') || ((value % 1) !=3D=3D 0)) throw = Error.argumentType('value', Object.getType(value), this); var values =3D this.prototype; var i; if (!this.__flags || (value =3D=3D=3D 0)) { for (i in values) { if (values[i] =3D=3D=3D value) { return i; } } } else { var sorted =3D this.__sortedValues; if (!sorted) { sorted =3D []; for (i in values) { sorted[sorted.length] =3D {key: i, value: values[i]}; } sorted.sort(function(a, b) { return a.value - b.value; }); this.__sortedValues =3D sorted; } var parts =3D []; var v =3D value; for (i =3D sorted.length - 1; i >=3D 0; i--) { var kvp =3D sorted[i]; var vali =3D kvp.value; if (vali =3D=3D=3D 0) continue; if ((vali & value) =3D=3D=3D vali) { parts[parts.length] =3D kvp.key; v -=3D vali; if (v =3D=3D=3D 0) break; } } if (parts.length && v =3D=3D=3D 0) return = parts.reverse().join(', '); } throw Error.argumentOutOfRange('value', value, = String.format(Sys.Res.enumInvalidValue, value, this.__typeName)); } Type.prototype.registerEnum =3D function Type$registerEnum(name, flags) = { /// /// var e =3D Function._validateParams(arguments, [ {name: "name", type: String}, {name: "flags", type: Boolean, optional: true} ]); if (e) throw e; if (!Type.__fullyQualifiedIdentifierRegExp.test(name)) throw = Error.argument('name', Sys.Res.notATypeName); var parsedName; try { parsedName =3D eval(name); } catch(e) { throw Error.argument('name', Sys.Res.argumentTypeName); } if (parsedName !=3D=3D this) throw Error.argument('name', = Sys.Res.badTypeName); if (window.__registeredTypes[name]) throw = Error.invalidOperation(String.format(Sys.Res.typeRegisteredTwice, = name)); for (var i in this.prototype) { var val =3D this.prototype[i]; if (!Type.__identifierRegExp.test(i)) throw = Error.invalidOperation(String.format(Sys.Res.enumInvalidValueName, i)); if (typeof(val) !=3D=3D 'number' || (val % 1) !=3D=3D 0) throw = Error.invalidOperation(Sys.Res.enumValueNotInteger); if (typeof(this[i]) !=3D=3D 'undefined') throw = Error.invalidOperation(String.format(Sys.Res.enumReservedName, i)); } for (var i in this.prototype) { this[i] =3D this.prototype[i]; } this.__typeName =3D name; this.parse =3D Sys$Enum$parse; this.__string =3D this.toString(); this.toString =3D Sys$Enum$toString; this.__flags =3D flags; this.__enum =3D true; window.__registeredTypes[name] =3D true; } Type.isEnum =3D function Type$isEnum(type) { /// /// var e =3D Function._validateParams(arguments, [ {name: "type", mayBeNull: true} ]); if (e) throw e; if ((typeof(type) =3D=3D=3D 'undefined') || (type =3D=3D=3D null)) = return false; return !!type.__enum; } Type.isFlags =3D function Type$isFlags(type) { /// /// var e =3D Function._validateParams(arguments, [ {name: "type", mayBeNull: true} ]); if (e) throw e; if ((typeof(type) =3D=3D=3D 'undefined') || (type =3D=3D=3D null)) = return false; return !!type.__flags; } Sys.EventHandlerList =3D function Sys$EventHandlerList() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); this._list =3D {}; } function Sys$EventHandlerList$addHandler(id, handler) { /// /// var e =3D Function._validateParams(arguments, [ {name: "id", type: String}, {name: "handler", type: Function} ]); if (e) throw e; Array.add(this._getEvent(id, true), handler); } function Sys$EventHandlerList$removeHandler(id, handler) { /// /// var e =3D Function._validateParams(arguments, [ {name: "id", type: String}, {name: "handler", type: Function} ]); if (e) throw e; var evt =3D this._getEvent(id); if (!evt) return; Array.remove(evt, handler); } function Sys$EventHandlerList$getHandler(id) { /// /// var e =3D Function._validateParams(arguments, [ {name: "id", type: String} ]); if (e) throw e; var evt =3D this._getEvent(id); if (!evt || (evt.length =3D=3D=3D 0)) return null; evt =3D Array.clone(evt); if (!evt._handler) { evt._handler =3D function(source, args) { for (var i =3D 0, l =3D evt.length; i < l; i++) { evt[i](source, args); } }; } return evt._handler; } function Sys$EventHandlerList$_getEvent(id, create) { if (!this._list[id]) { if (!create) return null; this._list[id] =3D []; } return this._list[id]; } Sys.EventHandlerList.prototype =3D { addHandler: Sys$EventHandlerList$addHandler, removeHandler: Sys$EventHandlerList$removeHandler, getHandler: Sys$EventHandlerList$getHandler, _getEvent: Sys$EventHandlerList$_getEvent } Sys.EventHandlerList.registerClass('Sys.EventHandlerList'); Sys.EventArgs =3D function Sys$EventArgs() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); } Sys.EventArgs.registerClass('Sys.EventArgs'); Sys.EventArgs.Empty =3D new Sys.EventArgs(); Sys.CancelEventArgs =3D function Sys$CancelEventArgs() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); Sys.CancelEventArgs.initializeBase(this); this._cancel =3D false; } function Sys$CancelEventArgs$get_cancel() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._cancel; } function Sys$CancelEventArgs$set_cancel(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: Boolean}]); if (e) throw e; this._cancel =3D value; } Sys.CancelEventArgs.prototype =3D { get_cancel: Sys$CancelEventArgs$get_cancel, set_cancel: Sys$CancelEventArgs$set_cancel } Sys.CancelEventArgs.registerClass('Sys.CancelEventArgs', Sys.EventArgs); Sys.INotifyPropertyChange =3D function Sys$INotifyPropertyChange() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } function Sys$INotifyPropertyChange$add_propertyChanged(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; throw Error.notImplemented(); } function Sys$INotifyPropertyChange$remove_propertyChanged(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; throw Error.notImplemented(); } Sys.INotifyPropertyChange.prototype =3D { add_propertyChanged: Sys$INotifyPropertyChange$add_propertyChanged, remove_propertyChanged: = Sys$INotifyPropertyChange$remove_propertyChanged } Sys.INotifyPropertyChange.registerInterface('Sys.INotifyPropertyChange');= Sys.PropertyChangedEventArgs =3D function = Sys$PropertyChangedEventArgs(propertyName) { /// var e =3D Function._validateParams(arguments, [ {name: "propertyName", type: String} ]); if (e) throw e; Sys.PropertyChangedEventArgs.initializeBase(this); this._propertyName =3D propertyName; } =20 function Sys$PropertyChangedEventArgs$get_propertyName() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._propertyName; } Sys.PropertyChangedEventArgs.prototype =3D { get_propertyName: Sys$PropertyChangedEventArgs$get_propertyName } Sys.PropertyChangedEventArgs.registerClass('Sys.PropertyChangedEventArgs'= , Sys.EventArgs); Sys.INotifyDisposing =3D function Sys$INotifyDisposing() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } function Sys$INotifyDisposing$add_disposing(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; throw Error.notImplemented(); } function Sys$INotifyDisposing$remove_disposing(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; throw Error.notImplemented(); } Sys.INotifyDisposing.prototype =3D { add_disposing: Sys$INotifyDisposing$add_disposing, remove_disposing: Sys$INotifyDisposing$remove_disposing } Sys.INotifyDisposing.registerInterface("Sys.INotifyDisposing"); Sys.Component =3D function Sys$Component() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (Sys.Application) Sys.Application.registerDisposableObject(this); } function Sys$Component$get_events() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (!this._events) { this._events =3D new Sys.EventHandlerList(); } return this._events; } function Sys$Component$get_id() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._id; } function Sys$Component$set_id(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: String}]); if (e) throw e; if (this._idSet) throw = Error.invalidOperation(Sys.Res.componentCantSetIdTwice); this._idSet =3D true; var oldId =3D this.get_id(); if (oldId && Sys.Application.findComponent(oldId)) throw = Error.invalidOperation(Sys.Res.componentCantSetIdAfterAddedToApp); this._id =3D value; } function Sys$Component$get_isInitialized() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._initialized; } function Sys$Component$get_isUpdating() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._updating; } function Sys$Component$add_disposing(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this.get_events().addHandler("disposing", handler); } function Sys$Component$remove_disposing(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this.get_events().removeHandler("disposing", handler); } function Sys$Component$add_propertyChanged(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this.get_events().addHandler("propertyChanged", handler); } function Sys$Component$remove_propertyChanged(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this.get_events().removeHandler("propertyChanged", handler); } function Sys$Component$beginUpdate() { this._updating =3D true; } function Sys$Component$dispose() { if (this._events) { var handler =3D this._events.getHandler("disposing"); if (handler) { handler(this, Sys.EventArgs.Empty); } } delete this._events; Sys.Application.unregisterDisposableObject(this); Sys.Application.removeComponent(this); } function Sys$Component$endUpdate() { this._updating =3D false; if (!this._initialized) this.initialize(); this.updated(); } function Sys$Component$initialize() { this._initialized =3D true; } function Sys$Component$raisePropertyChanged(propertyName) { /// var e =3D Function._validateParams(arguments, [ {name: "propertyName", type: String} ]); if (e) throw e; if (!this._events) return; var handler =3D this._events.getHandler("propertyChanged"); if (handler) { handler(this, new = Sys.PropertyChangedEventArgs(propertyName)); } } function Sys$Component$updated() { } Sys.Component.prototype =3D { _id: null, _idSet: false, _initialized: false, _updating: false, get_events: Sys$Component$get_events, get_id: Sys$Component$get_id, set_id: Sys$Component$set_id, get_isInitialized: Sys$Component$get_isInitialized, get_isUpdating: Sys$Component$get_isUpdating, add_disposing: Sys$Component$add_disposing, remove_disposing: Sys$Component$remove_disposing, add_propertyChanged: Sys$Component$add_propertyChanged, remove_propertyChanged: Sys$Component$remove_propertyChanged, beginUpdate: Sys$Component$beginUpdate, dispose: Sys$Component$dispose, endUpdate: Sys$Component$endUpdate, initialize: Sys$Component$initialize, raisePropertyChanged: Sys$Component$raisePropertyChanged, updated: Sys$Component$updated } Sys.Component.registerClass('Sys.Component', null, Sys.IDisposable, = Sys.INotifyPropertyChange, Sys.INotifyDisposing); function Sys$Component$_setProperties(target, properties) { /// /// var e =3D Function._validateParams(arguments, [ {name: "target"}, {name: "properties"} ]); if (e) throw e; var current; var targetType =3D Object.getType(target); var isObject =3D (targetType =3D=3D=3D Object) || (targetType = =3D=3D=3D Sys.UI.DomElement); var isComponent =3D Sys.Component.isInstanceOfType(target) && = !target.get_isUpdating(); if (isComponent) target.beginUpdate(); for (var name in properties) { var val =3D properties[name]; var getter =3D isObject ? null : target["get_" + name]; if (isObject || typeof(getter) !=3D=3D 'function') { var targetVal =3D target[name]; if (!isObject && typeof(targetVal) =3D=3D=3D 'undefined') = throw Error.invalidOperation(String.format(Sys.Res.propertyUndefined, = name)); if (!val || (typeof(val) !=3D=3D 'object') || (isObject && = !targetVal)) { target[name] =3D val; } else { Sys$Component$_setProperties(targetVal, val); } } else { var setter =3D target["set_" + name]; if (typeof(setter) =3D=3D=3D 'function') { setter.apply(target, [val]); } else if (val instanceof Array) { current =3D getter.apply(target); if (!(current instanceof Array)) throw new = Error.invalidOperation(String.format(Sys.Res.propertyNotAnArray, name)); for (var i =3D 0, j =3D current.length, l=3D val.length; = i < l; i++, j++) { current[j] =3D val[i]; } } else if ((typeof(val) =3D=3D=3D 'object') && = (Object.getType(val) =3D=3D=3D Object)) { current =3D getter.apply(target); if ((typeof(current) =3D=3D=3D 'undefined') || (current = =3D=3D=3D null)) throw new = Error.invalidOperation(String.format(Sys.Res.propertyNullOrUndefined, = name)); Sys$Component$_setProperties(current, val); } else { throw new = Error.invalidOperation(String.format(Sys.Res.propertyNotWritable, = name)); } } } if (isComponent) target.endUpdate(); } function Sys$Component$_setReferences(component, references) { for (var name in references) { var setter =3D component["set_" + name]; var reference =3D $find(references[name]); if (typeof(setter) !=3D=3D 'function') throw new = Error.invalidOperation(String.format(Sys.Res.propertyNotWritable, = name)); if (!reference) throw = Error.invalidOperation(String.format(Sys.Res.referenceNotFound, = references[name])); setter.apply(component, [reference]); } } var $create =3D Sys.Component.create =3D function = Sys$Component$create(type, properties, events, references, element) { /// /// /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "type", type: Type}, {name: "properties", mayBeNull: true, optional: true}, {name: "events", mayBeNull: true, optional: true}, {name: "references", mayBeNull: true, optional: true}, {name: "element", mayBeNull: true, domElement: true, optional: = true} ]); if (e) throw e; if (!type.inheritsFrom(Sys.Component)) { throw Error.argument('type', = String.format(Sys.Res.createNotComponent, type.getName())); } if (type.inheritsFrom(Sys.UI.Behavior) || = type.inheritsFrom(Sys.UI.Control)) { if (!element) throw Error.argument('element', = Sys.Res.createNoDom); } else if (element) throw Error.argument('element', = Sys.Res.createComponentOnDom); var component =3D (element ? new type(element): new type()); var app =3D Sys.Application; var creatingComponents =3D app.get_isCreatingComponents(); component.beginUpdate(); if (properties) { Sys$Component$_setProperties(component, properties); } if (events) { for (var name in events) { if (!(component["add_" + name] instanceof Function)) throw = new Error.invalidOperation(String.format(Sys.Res.undefinedEvent, name)); if (!(events[name] instanceof Function)) throw new = Error.invalidOperation(Sys.Res.eventHandlerNotFunction); component["add_" + name](events[name]); } } app._createdComponents[app._createdComponents.length] =3D component; if (component.get_id()) { app.addComponent(component); } if (creatingComponents) { if (references) { app._addComponentToSecondPass(component, references); } else { component.endUpdate(); } } else { if (references) { Sys$Component$_setReferences(component, references); } component.endUpdate(); } return component; } Sys.UI.MouseButton =3D function Sys$UI$MouseButton() { /// /// /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } Sys.UI.MouseButton.prototype =3D { leftButton: 0, middleButton: 1, rightButton: 2 } Sys.UI.MouseButton.registerEnum("Sys.UI.MouseButton"); Sys.UI.Key =3D function Sys$UI$Key() { /// /// /// /// /// /// /// /// /// /// /// /// /// /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } Sys.UI.Key.prototype =3D { backspace: 8, tab: 9, enter: 13, esc: 27, space: 32, pageUp: 33, pageDown: 34, end: 35, home: 36, left: 37, up: 38, right: 39, down: 40, del: 127 } Sys.UI.Key.registerEnum("Sys.UI.Key"); Sys.UI.DomEvent =3D function Sys$UI$DomEvent(eventObject) { /// /// /// /// /// /// /// /// /// /// /// /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "eventObject"} ]); if (e) throw e; var e =3D eventObject; this.rawEvent =3D e; this.altKey =3D e.altKey; if (typeof(e.button) !=3D=3D 'undefined') { this.button =3D (typeof(e.which) !=3D=3D 'undefined') ? e.button = : (e.button =3D=3D=3D 4) ? Sys.UI.MouseButton.middleButton : (e.button =3D=3D=3D 2) ? Sys.UI.MouseButton.rightButton : Sys.UI.MouseButton.leftButton; } if (e.type =3D=3D=3D 'keypress') { this.charCode =3D e.charCode || e.keyCode; } else if (e.keyCode && (e.keyCode =3D=3D=3D 46)) { this.keyCode =3D 127; } else { this.keyCode =3D e.keyCode; } this.clientX =3D e.clientX; this.clientY =3D e.clientY; this.ctrlKey =3D e.ctrlKey; this.target =3D e.target ? e.target : e.srcElement; if (this.target) { var loc =3D Sys.UI.DomElement.getLocation(this.target); this.offsetX =3D (typeof(e.offsetX) !=3D=3D 'undefined') ? = e.offsetX : window.pageXOffset + (e.clientX || 0) - loc.x; this.offsetY =3D (typeof(e.offsetY) !=3D=3D 'undefined') ? = e.offsetY : window.pageYOffset + (e.clientY || 0) - loc.y; } this.screenX =3D e.screenX; this.screenY =3D e.screenY; this.shiftKey =3D e.shiftKey; this.type =3D e.type; } function Sys$UI$DomEvent$preventDefault() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (this.rawEvent.preventDefault) { this.rawEvent.preventDefault(); } else if (window.event) { window.event.returnValue =3D false; } } function Sys$UI$DomEvent$stopPropagation() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (this.rawEvent.stopPropagation) { this.rawEvent.stopPropagation(); } else if (window.event) { window.event.cancelBubble =3D true; } } Sys.UI.DomEvent.prototype =3D { preventDefault: Sys$UI$DomEvent$preventDefault, stopPropagation: Sys$UI$DomEvent$stopPropagation } Sys.UI.DomEvent.registerClass('Sys.UI.DomEvent'); var $addHandler =3D Sys.UI.DomEvent.addHandler =3D function = Sys$UI$DomEvent$addHandler(element, eventName, handler) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true}, {name: "eventName", type: String}, {name: "handler", type: Function} ]); if (e) throw e; if (!element._events) { element._events =3D {}; } var eventCache =3D element._events[eventName]; if (!eventCache) { element._events[eventName] =3D eventCache =3D []; } var browserHandler; if (element.addEventListener) { browserHandler =3D function(e) { return handler.call(element, new Sys.UI.DomEvent(e)); } element.addEventListener(eventName, browserHandler, false); } else if (element.attachEvent) { browserHandler =3D function() { return handler.call(element, new = Sys.UI.DomEvent(window.event)); } element.attachEvent('on' + eventName, browserHandler); } eventCache[eventCache.length] =3D {handler: handler, browserHandler: = browserHandler}; } var $addHandlers =3D Sys.UI.DomEvent.addHandlers =3D function = Sys$UI$DomEvent$addHandlers(element, events, handlerOwner) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true}, {name: "events", type: Object}, {name: "handlerOwner", optional: true} ]); if (e) throw e; for (var name in events) { var handler =3D events[name]; if (typeof(handler) !=3D=3D 'function') throw = Error.invalidOperation(Sys.Res.cantAddNonFunctionhandler); if (handlerOwner) { handler =3D Function.createDelegate(handlerOwner, handler); } $addHandler(element, name, handler); } } var $clearHandlers =3D Sys.UI.DomEvent.clearHandlers =3D function = Sys$UI$DomEvent$clearHandlers(element) { /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true} ]); if (e) throw e; if (element._events) { var cache =3D element._events; for (var name in cache) { var handlers =3D cache[name]; for (var i =3D handlers.length - 1; i >=3D 0; i--) { $removeHandler(element, name, handlers[i].handler); } } element._events =3D null; } } var $removeHandler =3D Sys.UI.DomEvent.removeHandler =3D function = Sys$UI$DomEvent$removeHandler(element, eventName, handler) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true}, {name: "eventName", type: String}, {name: "handler", type: Function} ]); if (e) throw e; var browserHandler =3D null; if ((typeof(element._events) !=3D=3D 'object') || (element._events = =3D=3D null)) throw Error.invalidOperation(Sys.Res.eventHandlerInvalid); var cache =3D element._events[eventName]; if (!(cache instanceof Array)) throw = Error.invalidOperation(Sys.Res.eventHandlerInvalid); var browserHandler =3D null; for (var i =3D 0, l =3D cache.length; i < l; i++) { if (cache[i].handler =3D=3D=3D handler) { browserHandler =3D cache[i].browserHandler; break; } } if (typeof(browserHandler) !=3D=3D 'function') throw = Error.invalidOperation(Sys.Res.eventHandlerInvalid); if (element.removeEventListener) { element.removeEventListener(eventName, browserHandler, false); } else if (element.detachEvent) { element.detachEvent('on' + eventName, browserHandler); } cache.splice(i, 1); } Sys.IContainer =3D function Sys$IContainer() { throw Error.notImplemented(); } function Sys$IContainer$addComponent(component) { /// var e =3D Function._validateParams(arguments, [ {name: "component", type: Sys.Component} ]); if (e) throw e; throw Error.notImplemented(); } function Sys$IContainer$removeComponent(component) { /// var e =3D Function._validateParams(arguments, [ {name: "component", type: Sys.Component} ]); if (e) throw e; throw Error.notImplemented(); } function Sys$IContainer$findComponent(id) { /// /// var e =3D Function._validateParams(arguments, [ {name: "id", type: String} ]); if (e) throw e; throw Error.notImplemented(); } function Sys$IContainer$getComponents() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } Sys.IContainer.prototype =3D { addComponent: Sys$IContainer$addComponent, removeComponent: Sys$IContainer$removeComponent, findComponent: Sys$IContainer$findComponent, getComponents: Sys$IContainer$getComponents } Sys.IContainer.registerInterface("Sys.IContainer"); Sys._ScriptLoader =3D function Sys$_ScriptLoader() { this._scriptsToLoad =3D null; this._scriptLoadedDelegate =3D Function.createDelegate(this, = this._scriptLoadedHandler); } function Sys$_ScriptLoader$dispose() { this._stopLoading(); if(this._events) { delete this._events; } this._scriptLoadedDelegate =3D null; =20 } function Sys$_ScriptLoader$loadScripts(scriptTimeout, = allScriptsLoadedCallback, scriptLoadFailedCallback, = scriptLoadTimeoutCallback) { /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "scriptTimeout", type: Number, integer: true}, {name: "allScriptsLoadedCallback", type: Function, = mayBeNull: true}, {name: "scriptLoadFailedCallback", type: Function, = mayBeNull: true}, {name: "scriptLoadTimeoutCallback", type: Function, = mayBeNull: true} ]); if (e) throw e; if(this._loading) { throw = Error.invalidOperation(Sys.Res.scriptLoaderAlreadyLoading); } this._loading =3D true; this._allScriptsLoadedCallback =3D allScriptsLoadedCallback; this._scriptLoadFailedCallback =3D scriptLoadFailedCallback; this._scriptLoadTimeoutCallback =3D scriptLoadTimeoutCallback; =20 this._loadScriptsInternal(); } function Sys$_ScriptLoader$notifyScriptLoaded() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); =20 if(!this._loading) { return; } this._currentTask._notified++; =20 if(Sys.Browser.agent =3D=3D=3D Sys.Browser.Safari) { =20 if(this._currentTask._notified =3D=3D=3D 1) { = = window.setTimeout(Function.createDelegate(this, function() { = this._scriptLoadedHandler(this._currentTask.get_scriptElement(), true); }), 0); } } } function Sys$_ScriptLoader$queueCustomScriptTag(scriptAttributes) { /// var e =3D Function._validateParams(arguments, [ {name: "scriptAttributes"} ]); if (e) throw e; if(!this._scriptsToLoad) { this._scriptsToLoad =3D []; } Array.add(this._scriptsToLoad, scriptAttributes); } function Sys$_ScriptLoader$queueScriptBlock(scriptContent) { /// var e =3D Function._validateParams(arguments, [ {name: "scriptContent", type: String} ]); if (e) throw e; if(!this._scriptsToLoad) { this._scriptsToLoad =3D []; } Array.add(this._scriptsToLoad, {text: scriptContent}); } function Sys$_ScriptLoader$queueScriptReference(scriptUrl) { /// var e =3D Function._validateParams(arguments, [ {name: "scriptUrl", type: String} ]); if (e) throw e; if(!this._scriptsToLoad) { this._scriptsToLoad =3D []; } Array.add(this._scriptsToLoad, {src: scriptUrl}); } function Sys$_ScriptLoader$_createScriptElement(queuedScript) { var scriptElement =3D document.createElement('SCRIPT'); scriptElement.type =3D 'text/javascript'; for (var attr in queuedScript) { scriptElement[attr] =3D queuedScript[attr]; } =20 return scriptElement; } function Sys$_ScriptLoader$_loadScriptsInternal() { if (this._scriptsToLoad && this._scriptsToLoad.length > = 0) { var nextScript =3D Array.dequeue(this._scriptsToLoad); var scriptElement =3D = this._createScriptElement(nextScript); =20 if (scriptElement.text && Sys.Browser.agent =3D=3D=3D = Sys.Browser.Safari) { scriptElement.innerHTML =3D = scriptElement.text; delete scriptElement.text; } =20 if = (typeof(nextScript.src) =3D=3D=3D "string") { this._currentTask =3D new = Sys._ScriptLoaderTask(scriptElement, this._scriptLoadedDelegate); = this._currentTask.execute(); } else { = document.getElementsByTagName('HEAD')[0].appendChild(scriptElement); =20 = Sys._ScriptLoader._clearScript(scriptElement); = this._loadScriptsInternal(); } } else { var callback =3D this._allScriptsLoadedCallback; this._stopLoading(); if(callback) { callback(this); } } } function Sys$_ScriptLoader$_raiseError(multipleCallbacks) { var callback =3D this._scriptLoadFailedCallback; var scriptElement =3D this._currentTask.get_scriptElement(); this._stopLoading(); =20 if(callback) { callback(this, scriptElement, multipleCallbacks); } else { throw = Sys._ScriptLoader._errorScriptLoadFailed(scriptElement.src, = multipleCallbacks); } } function Sys$_ScriptLoader$_scriptLoadedHandler(scriptElement, = loaded) { if(loaded && = this._currentTask._notified) { if(this._currentTask._notified > 1) { this._raiseError(true); } else { = Array.add(Sys._ScriptLoader._getLoadedScripts(), scriptElement.src); this._currentTask.dispose(); this._currentTask =3D null; this._loadScriptsInternal(); } } else { this._raiseError(false); } } function Sys$_ScriptLoader$_scriptLoadTimeoutHandler() { var callback =3D this._scriptLoadTimeoutCallback; this._stopLoading(); if(callback) { callback(this); } } function Sys$_ScriptLoader$_stopLoading() { if(this._timeoutCookie) { window.clearTimeout(this._timeoutCookie); this._timeoutCookie =3D null; } if(this._currentTask) { this._currentTask.dispose(); this._currentTask =3D null; } this._scriptsToLoad =3D null; this._loading =3D null; =20 this._allScriptsLoadedCallback =3D null; this._scriptLoadFailedCallback =3D null; this._scriptLoadTimeoutCallback =3D null; } Sys._ScriptLoader.prototype =3D { dispose: Sys$_ScriptLoader$dispose, =20 loadScripts: Sys$_ScriptLoader$loadScripts, =20 notifyScriptLoaded: Sys$_ScriptLoader$notifyScriptLoaded, =20 queueCustomScriptTag: Sys$_ScriptLoader$queueCustomScriptTag, queueScriptBlock: Sys$_ScriptLoader$queueScriptBlock, queueScriptReference: Sys$_ScriptLoader$queueScriptReference, =20 _createScriptElement: Sys$_ScriptLoader$_createScriptElement, =20 _loadScriptsInternal: Sys$_ScriptLoader$_loadScriptsInternal, =20 _raiseError: Sys$_ScriptLoader$_raiseError, =20 _scriptLoadedHandler: Sys$_ScriptLoader$_scriptLoadedHandler, =20 _scriptLoadTimeoutHandler: = Sys$_ScriptLoader$_scriptLoadTimeoutHandler, =20 _stopLoading: Sys$_ScriptLoader$_stopLoading =20 } Sys._ScriptLoader.registerClass('Sys._ScriptLoader', null, = Sys.IDisposable); Sys._ScriptLoader.getInstance =3D function = Sys$_ScriptLoader$getInstance() { var sl =3D Sys._ScriptLoader._activeInstance; if(!sl) { sl =3D Sys._ScriptLoader._activeInstance =3D new = Sys._ScriptLoader(); } return sl; } Sys._ScriptLoader.isScriptLoaded =3D function = Sys$_ScriptLoader$isScriptLoaded(scriptSrc) { var dummyScript =3D = document.createElement('script'); dummyScript.src =3D scriptSrc; return Array.contains(Sys._ScriptLoader._getLoadedScripts(), = dummyScript.src); } Sys._ScriptLoader.readLoadedScripts =3D function = Sys$_ScriptLoader$readLoadedScripts() { if(!Sys._ScriptLoader._referencedScripts) { var referencedScripts =3D Sys._ScriptLoader._referencedScripts = =3D []; var existingScripts =3D document.getElementsByTagName('SCRIPT'); for (i =3D existingScripts.length - 1; i >=3D 0; i--) { var scriptNode =3D existingScripts[i]; var scriptSrc =3D scriptNode.src; if (scriptSrc.length) { if (!Array.contains(referencedScripts, scriptSrc)) { Array.add(referencedScripts, scriptSrc); } } } } } Sys._ScriptLoader._clearScript =3D function = Sys$_ScriptLoader$_clearScript(scriptElement) { if (!Sys.Debug.isDebug) { = scriptElement.parentNode.removeChild(scriptElement); } } Sys._ScriptLoader._errorScriptLoadFailed =3D function = Sys$_ScriptLoader$_errorScriptLoadFailed(scriptUrl, multipleCallbacks) { var errorMessage; if(multipleCallbacks) { errorMessage =3D Sys.Res.scriptLoadMultipleCallbacks; } else { errorMessage =3D Sys.Res.scriptLoadFailedDebug; } var displayMessage =3D "Sys.ScriptLoadFailedException: " + = String.format(errorMessage, scriptUrl); var e =3D Error.create(displayMessage, {name: = 'Sys.ScriptLoadFailedException', 'scriptUrl': scriptUrl }); e.popStackFrame(); return e; } Sys._ScriptLoader._getLoadedScripts =3D function = Sys$_ScriptLoader$_getLoadedScripts() { if(!Sys._ScriptLoader._referencedScripts) { Sys._ScriptLoader._referencedScripts =3D []; Sys._ScriptLoader.readLoadedScripts(); } return Sys._ScriptLoader._referencedScripts; } Sys._ScriptLoaderTask =3D function Sys$_ScriptLoaderTask(scriptElement, = completedCallback) { /// /// var e =3D Function._validateParams(arguments, [ {name: "scriptElement", domElement: true}, {name: "completedCallback", type: Function} ]); if (e) throw e; this._scriptElement =3D scriptElement; this._completedCallback =3D completedCallback; this._notified =3D 0; } function Sys$_ScriptLoaderTask$get_scriptElement() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._scriptElement; } function Sys$_ScriptLoaderTask$dispose() { if(this._disposed) { return; } this._disposed =3D true; this._removeScriptElementHandlers(); Sys._ScriptLoader._clearScript(this._scriptElement); this._scriptElement =3D null; } function Sys$_ScriptLoaderTask$execute() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); this._addScriptElementHandlers(); = document.getElementsByTagName('HEAD')[0].appendChild(this._scriptElement)= ; } function Sys$_ScriptLoaderTask$_addScriptElementHandlers() { this._scriptLoadDelegate =3D = Function.createDelegate(this, this._scriptLoadHandler); =20 if (Sys.Browser.agent !=3D=3D Sys.Browser.InternetExplorer) { this._scriptElement.readyState =3D 'loaded'; $addHandler(this._scriptElement, 'load', = this._scriptLoadDelegate); } else { $addHandler(this._scriptElement, 'readystatechange', = this._scriptLoadDelegate); } =20 this._scriptErrorDelegate =3D = Function.createDelegate(this, this._scriptErrorHandler); $addHandler(this._scriptElement, 'error', = this._scriptErrorDelegate); } function Sys$_ScriptLoaderTask$_removeScriptElementHandlers() { if(this._scriptLoadDelegate) { var scriptElement =3D this.get_scriptElement(); if (Sys.Browser.agent !=3D=3D Sys.Browser.InternetExplorer) = { $removeHandler(scriptElement, 'load', = this._scriptLoadDelegate); } else { $removeHandler(scriptElement, 'readystatechange', = this._scriptLoadDelegate); } $removeHandler(scriptElement, 'error', = this._scriptErrorDelegate); this._scriptErrorDelegate =3D null; this._scriptLoadDelegate =3D null; } } function Sys$_ScriptLoaderTask$_scriptErrorHandler() { if(this._disposed) { return; } =20 this._completedCallback(this.get_scriptElement(), = false); } function Sys$_ScriptLoaderTask$_scriptLoadHandler() { if(this._disposed) { return; } var scriptElement =3D this.get_scriptElement(); if ((scriptElement.readyState !=3D=3D 'loaded') && (scriptElement.readyState !=3D=3D 'complete')) { return; } =20 var _this =3D this; window.setTimeout(function() { _this._completedCallback(scriptElement, true); }, 0); } Sys._ScriptLoaderTask.prototype =3D { get_scriptElement: Sys$_ScriptLoaderTask$get_scriptElement, =20 dispose: Sys$_ScriptLoaderTask$dispose, =20 execute: Sys$_ScriptLoaderTask$execute, =20 _addScriptElementHandlers: = Sys$_ScriptLoaderTask$_addScriptElementHandlers, =20 =20 _removeScriptElementHandlers: = Sys$_ScriptLoaderTask$_removeScriptElementHandlers, =20 _scriptErrorHandler: Sys$_ScriptLoaderTask$_scriptErrorHandler, =20 _scriptLoadHandler: Sys$_ScriptLoaderTask$_scriptLoadHandler =20 } Sys._ScriptLoaderTask.registerClass("Sys._ScriptLoaderTask", null, = Sys.IDisposable); Sys.ApplicationLoadEventArgs =3D function = Sys$ApplicationLoadEventArgs(components, isPartialLoad) { /// /// var e =3D Function._validateParams(arguments, [ {name: "components", type: Array, elementType: Sys.Component}, {name: "isPartialLoad", type: Boolean} ]); if (e) throw e; Sys.ApplicationLoadEventArgs.initializeBase(this); this._components =3D components; this._isPartialLoad =3D isPartialLoad; } =20 function Sys$ApplicationLoadEventArgs$get_components() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._components; } function Sys$ApplicationLoadEventArgs$get_isPartialLoad() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._isPartialLoad; } Sys.ApplicationLoadEventArgs.prototype =3D { get_components: Sys$ApplicationLoadEventArgs$get_components, get_isPartialLoad: Sys$ApplicationLoadEventArgs$get_isPartialLoad } Sys.ApplicationLoadEventArgs.registerClass('Sys.ApplicationLoadEventArgs'= , Sys.EventArgs); Sys._Application =3D function Sys$_Application() { Sys._Application.initializeBase(this); this._disposableObjects =3D []; this._components =3D {}; this._createdComponents =3D []; this._secondPassComponents =3D []; this._unloadHandlerDelegate =3D Function.createDelegate(this, = this._unloadHandler); this._loadHandlerDelegate =3D Function.createDelegate(this, = this._loadHandler); Sys.UI.DomEvent.addHandler(window, "unload", = this._unloadHandlerDelegate); Sys.UI.DomEvent.addHandler(window, "load", = this._loadHandlerDelegate); } function Sys$_Application$get_isCreatingComponents() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._creatingComponents; } function Sys$_Application$add_load(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this.get_events().addHandler("load", handler); } function Sys$_Application$remove_load(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this.get_events().removeHandler("load", handler); } function Sys$_Application$add_init(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; if (this._initialized) { handler(this, Sys.EventArgs.Empty); } else { this.get_events().addHandler("init", handler); } } function Sys$_Application$remove_init(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this.get_events().removeHandler("init", handler); } function Sys$_Application$add_unload(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this.get_events().addHandler("unload", handler); } function Sys$_Application$remove_unload(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this.get_events().removeHandler("unload", handler); } function Sys$_Application$addComponent(component) { /// var e =3D Function._validateParams(arguments, [ {name: "component", type: Sys.Component} ]); if (e) throw e; var id =3D component.get_id(); if (!id) throw Error.invalidOperation(Sys.Res.cantAddWithoutId); if (typeof(this._components[id]) !=3D=3D 'undefined') throw = Error.invalidOperation(String.format(Sys.Res.appDuplicateComponent, = id)); this._components[id] =3D component; } function Sys$_Application$beginCreateComponents() { this._creatingComponents =3D true; } function Sys$_Application$dispose() { if (!this._disposing) { this._disposing =3D true; if (window.pageUnload) { window.pageUnload(this, Sys.EventArgs.Empty); } var unloadHandler =3D = this.get_events().getHandler("unload"); if (unloadHandler) { unloadHandler(this, Sys.EventArgs.Empty); } var disposableObjects =3D = Array.clone(this._disposableObjects); for (var i =3D 0, l =3D disposableObjects.length; i < l; = i++) { disposableObjects[i].dispose(); } Array.clear(this._disposableObjects); Sys.UI.DomEvent.removeHandler(window, "unload", = this._unloadHandlerDelegate); if(this._loadHandlerDelegate) { Sys.UI.DomEvent.removeHandler(window, "load", = this._loadHandlerDelegate); this._loadHandlerDelegate =3D null; } var sl =3D Sys._ScriptLoader.getInstance(); if(sl) { sl.dispose(); } Sys._Application.callBaseMethod(this, 'dispose'); } } function Sys$_Application$endCreateComponents() { var components =3D this._secondPassComponents; for (var i =3D 0, l =3D components.length; i < l; i++) { var component =3D components[i].component; Sys$Component$_setReferences(component, = components[i].references); component.endUpdate(); } this._secondPassComponents =3D []; this._creatingComponents =3D false; } function Sys$_Application$findComponent(id, parent) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "id", type: String}, {name: "parent", mayBeNull: true, optional: true} ]); if (e) throw e; return (parent ? ((Sys.IContainer.isInstanceOfType(parent)) ? parent.findComponent(id) : parent[id] || null) : Sys.Application._components[id] || null); } function Sys$_Application$getComponents() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); var res =3D []; var components =3D this._components; for (var name in components) { res[res.length] =3D components[name]; } return res; } function Sys$_Application$initialize() { if(!this._initialized && !this._initializing) { this._initializing =3D true; = window.setTimeout(Function.createDelegate(this, this._doInitialize), 0); } } function Sys$_Application$notifyScriptLoaded() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); var sl =3D Sys._ScriptLoader.getInstance(); if(sl) { sl.notifyScriptLoaded(); } } function Sys$_Application$registerDisposableObject(object) { /// var e =3D Function._validateParams(arguments, [ {name: "object", type: Sys.IDisposable} ]); if (e) throw e; if (!this._disposing) { this._disposableObjects[this._disposableObjects.length] =3D = object; } } function Sys$_Application$raiseLoad() { var h =3D this.get_events().getHandler("load"); var args =3D new = Sys.ApplicationLoadEventArgs(Array.clone(this._createdComponents), = !this._initializing); if (h) { h(this, args); } if (window.pageLoad) { window.pageLoad(this, args); } this._createdComponents =3D []; } function Sys$_Application$removeComponent(component) { /// var e =3D Function._validateParams(arguments, [ {name: "component", type: Sys.Component} ]); if (e) throw e; var id =3D component.get_id(); if (id) delete this._components[id]; } function Sys$_Application$unregisterDisposableObject(object) { /// var e =3D Function._validateParams(arguments, [ {name: "object", type: Sys.IDisposable} ]); if (e) throw e; if (!this._disposing) { Array.remove(this._disposableObjects, object); } } function Sys$_Application$_addComponentToSecondPass(component, = references) { this._secondPassComponents[this._secondPassComponents.length] = =3D {component: component, references: references}; } function Sys$_Application$_doInitialize() { Sys._Application.callBaseMethod(this, 'initialize'); var handler =3D this.get_events().getHandler("init"); if (handler) { this.beginCreateComponents(); handler(this, Sys.EventArgs.Empty); this.endCreateComponents(); } this.raiseLoad(); this._initializing =3D false; } function Sys$_Application$_loadHandler() { if(this._loadHandlerDelegate) { Sys.UI.DomEvent.removeHandler(window, "load", = this._loadHandlerDelegate); this._loadHandlerDelegate =3D null; } this.initialize(); } function Sys$_Application$_unloadHandler(event) { this.dispose(); } Sys._Application.prototype =3D { _creatingComponents: false, _disposing: false, get_isCreatingComponents: Sys$_Application$get_isCreatingComponents, add_load: Sys$_Application$add_load, remove_load: Sys$_Application$remove_load, add_init: Sys$_Application$add_init, remove_init: Sys$_Application$remove_init, add_unload: Sys$_Application$add_unload, remove_unload: Sys$_Application$remove_unload, addComponent: Sys$_Application$addComponent, beginCreateComponents: Sys$_Application$beginCreateComponents, dispose: Sys$_Application$dispose, endCreateComponents: Sys$_Application$endCreateComponents, findComponent: Sys$_Application$findComponent, getComponents: Sys$_Application$getComponents, initialize: Sys$_Application$initialize, notifyScriptLoaded: Sys$_Application$notifyScriptLoaded, registerDisposableObject: Sys$_Application$registerDisposableObject, raiseLoad: Sys$_Application$raiseLoad, removeComponent: Sys$_Application$removeComponent, unregisterDisposableObject: = Sys$_Application$unregisterDisposableObject, _addComponentToSecondPass: = Sys$_Application$_addComponentToSecondPass, _doInitialize: Sys$_Application$_doInitialize, =20 _loadHandler: Sys$_Application$_loadHandler, _unloadHandler: Sys$_Application$_unloadHandler } Sys._Application.registerClass('Sys._Application', Sys.Component, = Sys.IContainer); Sys.Application =3D new Sys._Application(); var $find =3D Sys.Application.findComponent; Type.registerNamespace('Sys.Net'); Sys.Net.WebRequestExecutor =3D function Sys$Net$WebRequestExecutor() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); this._webRequest =3D null; this._resultObject =3D null; } function Sys$Net$WebRequestExecutor$get_webRequest() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._webRequest; } function Sys$Net$WebRequestExecutor$_set_webRequest(value) { if (this.get_started()) { throw = Error.invalidOperation(String.format(Sys.Res.cannotCallOnceStarted, = 'set_webRequest')); } this._webRequest =3D value; } function Sys$Net$WebRequestExecutor$get_started() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } function Sys$Net$WebRequestExecutor$get_responseAvailable() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } function Sys$Net$WebRequestExecutor$get_timedOut() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } function Sys$Net$WebRequestExecutor$get_aborted() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } function Sys$Net$WebRequestExecutor$get_responseData() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } function Sys$Net$WebRequestExecutor$get_statusCode() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } function Sys$Net$WebRequestExecutor$get_statusText() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } function Sys$Net$WebRequestExecutor$get_xml() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } function Sys$Net$WebRequestExecutor$get_object() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (!this._resultObject) { this._resultObject =3D = Sys.Serialization.JavaScriptSerializer.deserialize(this.get_responseData(= )); } return this._resultObject; } function Sys$Net$WebRequestExecutor$executeRequest() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } function Sys$Net$WebRequestExecutor$abort() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } function Sys$Net$WebRequestExecutor$getResponseHeader(header) { /// var e =3D Function._validateParams(arguments, [ {name: "header", type: String} ]); if (e) throw e; throw Error.notImplemented(); } function Sys$Net$WebRequestExecutor$getAllResponseHeaders() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } Sys.Net.WebRequestExecutor.prototype =3D { get_webRequest: Sys$Net$WebRequestExecutor$get_webRequest, _set_webRequest: Sys$Net$WebRequestExecutor$_set_webRequest, get_started: Sys$Net$WebRequestExecutor$get_started, get_responseAvailable: = Sys$Net$WebRequestExecutor$get_responseAvailable, get_timedOut: Sys$Net$WebRequestExecutor$get_timedOut, get_aborted: Sys$Net$WebRequestExecutor$get_aborted, get_responseData: Sys$Net$WebRequestExecutor$get_responseData, get_statusCode: Sys$Net$WebRequestExecutor$get_statusCode, get_statusText: Sys$Net$WebRequestExecutor$get_statusText, get_xml: Sys$Net$WebRequestExecutor$get_xml, get_object: Sys$Net$WebRequestExecutor$get_object, executeRequest: Sys$Net$WebRequestExecutor$executeRequest, abort: Sys$Net$WebRequestExecutor$abort, getResponseHeader: Sys$Net$WebRequestExecutor$getResponseHeader, getAllResponseHeaders: = Sys$Net$WebRequestExecutor$getAllResponseHeaders } Sys.Net.WebRequestExecutor.registerClass('Sys.Net.WebRequestExecutor'); window.XMLDOM =3D function window$XMLDOM(markup) { if (!window.DOMParser) { var progIDs =3D [ 'Msxml2.DOMDocument.3.0', 'Msxml2.DOMDocument' = ]; for (var i =3D 0; i < progIDs.length; i++) { try { var xmlDOM =3D new ActiveXObject(progIDs[i]); xmlDOM.async =3D false; xmlDOM.loadXML(markup); xmlDOM.setProperty('SelectionLanguage', 'XPath'); return xmlDOM; } catch (ex) { } } return null; } else { try { var domParser =3D new window.DOMParser(); return domParser.parseFromString(markup, 'text/xml'); } catch (ex) { return null; } } return null; } Sys.Net.XMLHttpExecutor =3D function Sys$Net$XMLHttpExecutor() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); Sys.Net.XMLHttpExecutor.initializeBase(this); var _this =3D this; this._xmlHttpRequest =3D null; this._webRequest =3D null; this._responseAvailable =3D false; this._timedOut =3D false; this._timer =3D null; this._aborted =3D false; this._started =3D false; this._onReadyStateChange =3D function () { =20 if (_this._xmlHttpRequest.readyState =3D=3D=3D 4 ) { _this._clearTimer(); _this._responseAvailable =3D true; _this._webRequest.completed(Sys.EventArgs.Empty); if (_this._xmlHttpRequest !=3D null) { _this._xmlHttpRequest.onreadystatechange =3D = Function.emptyMethod; _this._xmlHttpRequest =3D null; } } } this._clearTimer =3D function this$_clearTimer() { if (_this._timer !=3D null) { window.clearTimeout(_this._timer); _this._timer =3D null; } } this._onTimeout =3D function this$_onTimeout() { if (!_this._responseAvailable) { _this._clearTimer(); _this._timedOut =3D true; _this._xmlHttpRequest.onreadystatechange =3D = Function.emptyMethod; _this._xmlHttpRequest.abort(); _this._webRequest.completed(Sys.EventArgs.Empty); _this._xmlHttpRequest =3D null; } } } function Sys$Net$XMLHttpExecutor$get_timedOut() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._timedOut; } function Sys$Net$XMLHttpExecutor$get_started() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._started; } function Sys$Net$XMLHttpExecutor$get_responseAvailable() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._responseAvailable; } function Sys$Net$XMLHttpExecutor$get_aborted() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._aborted; } function Sys$Net$XMLHttpExecutor$executeRequest() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); this._webRequest =3D this.get_webRequest(); if (this._started) { throw = Error.invalidOperation(String.format(Sys.Res.cannotCallOnceStarted, = 'executeRequest')); } if (this._webRequest =3D=3D=3D null) { throw Error.invalidOperation(Sys.Res.nullWebRequest); } var body =3D this._webRequest.get_body(); var headers =3D this._webRequest.get_headers(); this._xmlHttpRequest =3D new XMLHttpRequest(); this._xmlHttpRequest.onreadystatechange =3D = this._onReadyStateChange; var verb =3D this._webRequest.get_httpVerb(); this._xmlHttpRequest.open(verb, = this._webRequest.getResolvedUrl(), true ); if (headers) { for (var header in headers) { var val =3D headers[header]; if (typeof(val) !=3D=3D "function") this._xmlHttpRequest.setRequestHeader(header, val); } } if (verb.toLowerCase() =3D=3D=3D "post") { if ((headers =3D=3D=3D null) || = !headers['Content-Type']) { this._xmlHttpRequest.setRequestHeader('Content-Type', = 'application/x-www-form-urlencoded'); } if (!body) { body =3D ""; } } var timeout =3D this._webRequest.get_timeout(); if (timeout > 0) { this._timer =3D = window.setTimeout(Function.createDelegate(this, this._onTimeout), = timeout); } this._xmlHttpRequest.send(body); this._started =3D true; } function Sys$Net$XMLHttpExecutor$getResponseHeader(header) { /// /// var e =3D Function._validateParams(arguments, [ {name: "header", type: String} ]); if (e) throw e; if (!this._responseAvailable) { throw = Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, = 'getResponseHeader')); } if (!this._xmlHttpRequest) { throw = Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, = 'getResponseHeader')); } var result; try { result =3D this._xmlHttpRequest.getResponseHeader(header); } catch (e) { } if (!result) result =3D ""; return result; } function Sys$Net$XMLHttpExecutor$getAllResponseHeaders() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (!this._responseAvailable) { throw = Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, = 'getAllResponseHeaders')); } if (!this._xmlHttpRequest) { throw = Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, = 'getAllResponseHeaders')); } return this._xmlHttpRequest.getAllResponseHeaders(); } function Sys$Net$XMLHttpExecutor$get_responseData() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (!this._responseAvailable) { throw = Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, = 'get_responseData')); } if (!this._xmlHttpRequest) { throw = Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, = 'get_responseData')); } return this._xmlHttpRequest.responseText; } function Sys$Net$XMLHttpExecutor$get_statusCode() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (!this._responseAvailable) { throw = Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, = 'get_statusCode')); } if (!this._xmlHttpRequest) { throw = Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, = 'get_statusCode')); } return this._xmlHttpRequest.status; } function Sys$Net$XMLHttpExecutor$get_statusText() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (!this._responseAvailable) { throw = Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, = 'get_statusText')); } if (!this._xmlHttpRequest) { throw = Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, = 'get_statusText')); } return this._xmlHttpRequest.statusText; } function Sys$Net$XMLHttpExecutor$get_xml() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (!this._responseAvailable) { throw = Error.invalidOperation(String.format(Sys.Res.cannotCallBeforeResponse, = 'get_xml')); } if (!this._xmlHttpRequest) { throw = Error.invalidOperation(String.format(Sys.Res.cannotCallOutsideHandler, = 'get_xml')); } var xml =3D this._xmlHttpRequest.responseXML; if (!xml || !xml.documentElement) { xml =3D new = XMLDOM(this._xmlHttpRequest.responseText); if (!xml || !xml.documentElement) return null; } else if (navigator.userAgent.indexOf('MSIE') !=3D=3D -1) = { xml.setProperty('SelectionLanguage', 'XPath'); } if (xml.documentElement.namespaceURI =3D=3D=3D = "http://www.mozilla.org/newlayout/xml/parsererror.xml" && xml.documentElement.tagName =3D=3D=3D "parsererror") { return null; } =20 if (xml.documentElement.firstChild && = xml.documentElement.firstChild.tagName =3D=3D=3D "parsererror") { return null; } =20 return xml; } function Sys$Net$XMLHttpExecutor$abort() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (!this._started) { throw = Error.invalidOperation(Sys.Res.cannotAbortBeforeStart); } if (this._aborted || this._responseAvailable || = this._timedOut) return; this._aborted =3D true; this._clearTimer(); if (this._xmlHttpRequest && !this._responseAvailable) { this._xmlHttpRequest.onreadystatechange =3D = Function.emptyMethod; this._xmlHttpRequest.abort(); this._xmlHttpRequest =3D null; var handler =3D = this._webRequest._get_eventHandlerList().getHandler("completed"); if (handler) { handler(this, Sys.EventArgs.Empty); } } } Sys.Net.XMLHttpExecutor.prototype =3D { get_timedOut: Sys$Net$XMLHttpExecutor$get_timedOut, get_started: Sys$Net$XMLHttpExecutor$get_started, get_responseAvailable: = Sys$Net$XMLHttpExecutor$get_responseAvailable, get_aborted: Sys$Net$XMLHttpExecutor$get_aborted, executeRequest: Sys$Net$XMLHttpExecutor$executeRequest, getResponseHeader: Sys$Net$XMLHttpExecutor$getResponseHeader, getAllResponseHeaders: = Sys$Net$XMLHttpExecutor$getAllResponseHeaders, get_responseData: Sys$Net$XMLHttpExecutor$get_responseData, get_statusCode: Sys$Net$XMLHttpExecutor$get_statusCode, get_statusText: Sys$Net$XMLHttpExecutor$get_statusText, get_xml: Sys$Net$XMLHttpExecutor$get_xml, abort: Sys$Net$XMLHttpExecutor$abort } Sys.Net.XMLHttpExecutor.registerClass('Sys.Net.XMLHttpExecutor', = Sys.Net.WebRequestExecutor); Sys.Net._WebRequestManager =3D function Sys$Net$_WebRequestManager() { this._this =3D this; this._defaultTimeout =3D 0; this._defaultExecutorType =3D "Sys.Net.XMLHttpExecutor"; } function Sys$Net$_WebRequestManager$add_invokingRequest(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this._get_eventHandlerList().addHandler("invokingRequest", = handler); } function Sys$Net$_WebRequestManager$remove_invokingRequest(handler) = { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this._get_eventHandlerList().removeHandler("invokingRequest", = handler); } function Sys$Net$_WebRequestManager$add_completedRequest(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this._get_eventHandlerList().addHandler("completedRequest", = handler); } function Sys$Net$_WebRequestManager$remove_completedRequest(handler) = { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this._get_eventHandlerList().removeHandler("completedRequest", = handler); } function Sys$Net$_WebRequestManager$_get_eventHandlerList() { if (!this._events) { this._events =3D new Sys.EventHandlerList(); } return this._events; } function Sys$Net$_WebRequestManager$get_defaultTimeout() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._defaultTimeout; } function Sys$Net$_WebRequestManager$set_defaultTimeout(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: Number}]); if (e) throw e; if (value < 0) { throw Error.argumentOutOfRange("value", value, = Sys.Res.invalidTimeout); } this._defaultTimeout =3D value; } function Sys$Net$_WebRequestManager$get_defaultExecutorType() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._defaultExecutorType; } function Sys$Net$_WebRequestManager$set_defaultExecutorType(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: String}]); if (e) throw e; this._defaultExecutorType =3D value; } function Sys$Net$_WebRequestManager$executeRequest(webRequest) { /// var e =3D Function._validateParams(arguments, [ {name: "webRequest", type: Sys.Net.WebRequest} ]); if (e) throw e; var executor =3D webRequest.get_executor(); if (!executor) { =20 var failed =3D false; try { var executorType =3D eval(this._defaultExecutorType); executor =3D new executorType(); } catch (e) { failed =3D true; } if (failed || = !Sys.Net.WebRequestExecutor.isInstanceOfType(executor) || !executor) { throw Error.argument("defaultExecutorType", = String.format(Sys.Res.invalidExecutorType, this._defaultExecutorType)); } webRequest.set_executor(executor); } if (executor.get_aborted()) { return; } var evArgs =3D new Sys.Net.NetworkRequestEventArgs(webRequest); var handler =3D = this._get_eventHandlerList().getHandler("invokingRequest"); if (handler) { handler(this, evArgs); } if (!evArgs.get_cancel()) { executor.executeRequest(); } } Sys.Net._WebRequestManager.prototype =3D { add_invokingRequest: Sys$Net$_WebRequestManager$add_invokingRequest, remove_invokingRequest: = Sys$Net$_WebRequestManager$remove_invokingRequest, add_completedRequest: = Sys$Net$_WebRequestManager$add_completedRequest, remove_completedRequest: = Sys$Net$_WebRequestManager$remove_completedRequest, _get_eventHandlerList: = Sys$Net$_WebRequestManager$_get_eventHandlerList, get_defaultTimeout: Sys$Net$_WebRequestManager$get_defaultTimeout, set_defaultTimeout: Sys$Net$_WebRequestManager$set_defaultTimeout, get_defaultExecutorType: = Sys$Net$_WebRequestManager$get_defaultExecutorType, set_defaultExecutorType: = Sys$Net$_WebRequestManager$set_defaultExecutorType, executeRequest: Sys$Net$_WebRequestManager$executeRequest } Sys.Net._WebRequestManager.registerClass('Sys.Net._WebRequestManager'); Sys.Net.WebRequestManager =3D new Sys.Net._WebRequestManager(); Sys.Net.NetworkRequestEventArgs =3D function = Sys$Net$NetworkRequestEventArgs(webRequest) { /// var e =3D Function._validateParams(arguments, [ {name: "webRequest", type: Sys.Net.WebRequest} ]); if (e) throw e; Sys.Net.NetworkRequestEventArgs.initializeBase(this); this._webRequest =3D webRequest; } function Sys$Net$NetworkRequestEventArgs$get_webRequest() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._webRequest; } Sys.Net.NetworkRequestEventArgs.prototype =3D { get_webRequest: Sys$Net$NetworkRequestEventArgs$get_webRequest } Sys.Net.NetworkRequestEventArgs.registerClass('Sys.Net.NetworkRequestEven= tArgs', Sys.CancelEventArgs); Sys.Net.WebRequest =3D function Sys$Net$WebRequest() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); this._url =3D ""; this._headers =3D { }; this._body =3D null; this._userContext =3D null; this._httpVerb =3D null; this._executor =3D null; this._invokeCalled =3D false; this._timeout =3D 0; } function Sys$Net$WebRequest$add_completed(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this._get_eventHandlerList().addHandler("completed", handler); } function Sys$Net$WebRequest$remove_completed(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this._get_eventHandlerList().removeHandler("completed", = handler); } function Sys$Net$WebRequest$completed(eventArgs) { /// var e =3D Function._validateParams(arguments, [ {name: "eventArgs", type: Sys.EventArgs} ]); if (e) throw e; var handler =3D = Sys.Net.WebRequestManager._get_eventHandlerList().getHandler("completedRe= quest"); if (handler) { handler(this._executor, eventArgs); } handler =3D = this._get_eventHandlerList().getHandler("completed"); if (handler) { handler(this._executor, eventArgs); } } function Sys$Net$WebRequest$_get_eventHandlerList() { if (!this._events) { this._events =3D new Sys.EventHandlerList(); } return this._events; } function Sys$Net$WebRequest$get_url() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._url; } function Sys$Net$WebRequest$set_url(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: String}]); if (e) throw e; this._url =3D value; } function Sys$Net$WebRequest$get_headers() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._headers; } function Sys$Net$WebRequest$get_httpVerb() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (this._httpVerb =3D=3D=3D null) { if (this._body =3D=3D=3D null) { return "GET"; } return "POST"; } return this._httpVerb; } function Sys$Net$WebRequest$set_httpVerb(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: String}]); if (e) throw e; if (value.length =3D=3D=3D 0) { throw Error.argument('value', Sys.Res.invalidHttpVerb); } this._httpVerb =3D value; } function Sys$Net$WebRequest$get_body() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._body; } function Sys$Net$WebRequest$set_body(value) { var e =3D Function._validateParams(arguments, [{name: "value", = mayBeNull: true}]); if (e) throw e; this._body =3D value; } function Sys$Net$WebRequest$get_userContext() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._userContext; } function Sys$Net$WebRequest$set_userContext(value) { var e =3D Function._validateParams(arguments, [{name: "value", = mayBeNull: true}]); if (e) throw e; this._userContext =3D value; } function Sys$Net$WebRequest$get_executor() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._executor; } function Sys$Net$WebRequest$set_executor(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: Sys.Net.WebRequestExecutor}]); if (e) throw e; if (this._executor !=3D=3D null && this._executor.get_started()) = { throw = Error.invalidOperation(Sys.Res.setExecutorAfterActive); } this._executor =3D value; this._executor._set_webRequest(this); } function Sys$Net$WebRequest$get_timeout() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (this._timeout =3D=3D=3D 0) { return Sys.Net.WebRequestManager.get_defaultTimeout(); } return this._timeout; } function Sys$Net$WebRequest$set_timeout(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: Number}]); if (e) throw e; if (value < 0) { throw Error.argumentOutOfRange("value", value, = Sys.Res.invalidTimeout); } this._timeout =3D value; } function Sys$Net$WebRequest$getResolvedUrl() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return Sys.Net.WebRequest._resolveUrl(this._url); } function Sys$Net$WebRequest$invoke() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (this._invokeCalled) { throw Error.invalidOperation(Sys.Res.invokeCalledTwice); } Sys.Net.WebRequestManager.executeRequest(this); this._invokeCalled =3D true; } Sys.Net.WebRequest.prototype =3D { add_completed: Sys$Net$WebRequest$add_completed, remove_completed: Sys$Net$WebRequest$remove_completed, completed: Sys$Net$WebRequest$completed, _get_eventHandlerList: Sys$Net$WebRequest$_get_eventHandlerList, get_url: Sys$Net$WebRequest$get_url, set_url: Sys$Net$WebRequest$set_url, get_headers: Sys$Net$WebRequest$get_headers, get_httpVerb: Sys$Net$WebRequest$get_httpVerb, set_httpVerb: Sys$Net$WebRequest$set_httpVerb, get_body: Sys$Net$WebRequest$get_body, set_body: Sys$Net$WebRequest$set_body, get_userContext: Sys$Net$WebRequest$get_userContext, set_userContext: Sys$Net$WebRequest$set_userContext, get_executor: Sys$Net$WebRequest$get_executor, set_executor: Sys$Net$WebRequest$set_executor, get_timeout: Sys$Net$WebRequest$get_timeout, set_timeout: Sys$Net$WebRequest$set_timeout, getResolvedUrl: Sys$Net$WebRequest$getResolvedUrl, invoke: Sys$Net$WebRequest$invoke } Sys.Net.WebRequest._resolveUrl =3D function = Sys$Net$WebRequest$_resolveUrl(url, baseUrl) { if (url && url.indexOf('://') !=3D=3D -1) { return url; } if (!baseUrl || baseUrl.length =3D=3D=3D 0) { var baseElement =3D document.getElementsByTagName('base')[0]; if (baseElement && baseElement.href && baseElement.href.length > = 0) { baseUrl =3D baseElement.href; } else { baseUrl =3D document.URL; } } var qsStart =3D baseUrl.indexOf('?'); if (qsStart !=3D=3D -1) { baseUrl =3D baseUrl.substr(0, qsStart); } baseUrl =3D baseUrl.substr(0, baseUrl.lastIndexOf('/') + 1); if (!url || url.length =3D=3D=3D 0) { return baseUrl; } if (url.charAt(0) =3D=3D=3D '/') { var slashslash =3D baseUrl.indexOf('://'); if (slashslash =3D=3D=3D -1) { throw Error.argument("baseUrl", Sys.Res.badBaseUrl1); } var nextSlash =3D baseUrl.indexOf('/', slashslash + 3); if (nextSlash =3D=3D=3D -1) { throw Error.argument("baseUrl", Sys.Res.badBaseUrl2); } return baseUrl.substr(0, nextSlash) + url; } else { var lastSlash =3D baseUrl.lastIndexOf('/'); if (lastSlash =3D=3D=3D -1) { throw Error.argument("baseUrl", Sys.Res.badBaseUrl3); } return baseUrl.substr(0, lastSlash+1) + url; } } Sys.Net.WebRequest._createQueryString =3D function = Sys$Net$WebRequest$_createQueryString(queryString, encodeMethod) { if (!encodeMethod) encodeMethod =3D encodeURIComponent; var sb =3D new Sys.StringBuilder(); var i =3D 0; for (var arg in queryString) { var obj =3D queryString[arg]; if (typeof(obj) =3D=3D=3D "function") continue; var val =3D = Sys.Serialization.JavaScriptSerializer.serialize(obj); if (i !=3D=3D 0) { sb.append('&'); } sb.append(arg); sb.append('=3D'); sb.append(encodeMethod(val)); i++; } return sb.toString(); } Sys.Net.WebRequest._createUrl =3D function = Sys$Net$WebRequest$_createUrl(url, queryString) { if (!queryString) { return url; } var qs =3D Sys.Net.WebRequest._createQueryString(queryString); if (qs.length > 0) { var sep =3D '?'; if (url && url.indexOf('?') !=3D=3D -1) sep =3D '&'; return url + sep + qs; } else { return url; } } Sys.Net.WebRequest.registerClass('Sys.Net.WebRequest'); Sys.Net.WebServiceProxy =3D function Sys$Net$WebServiceProxy() { } function Sys$Net$WebServiceProxy$set_timeout(value) { this._timeout =3D value; } function Sys$Net$WebServiceProxy$get_timeout() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._timeout; } function Sys$Net$WebServiceProxy$set_defaultUserContext(value) { this._userContext =3D value; } function Sys$Net$WebServiceProxy$get_defaultUserContext() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._userContext; } function Sys$Net$WebServiceProxy$set_defaultSucceededCallback(value) = { this._succeeded =3D value; } function Sys$Net$WebServiceProxy$get_defaultSucceededCallback() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._succeeded; } function Sys$Net$WebServiceProxy$set_defaultFailedCallback(value) { this._failed =3D value; } function Sys$Net$WebServiceProxy$get_defaultFailedCallback() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._failed; } function Sys$Net$WebServiceProxy$set_path(value) { this._path =3D value; } function Sys$Net$WebServiceProxy$get_path() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._path; } function Sys$Net$WebServiceProxy$_invoke(servicePath, methodName, = useGet, params, onSuccess, onFailure, userContext) { /// /// /// /// /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "servicePath", type: String}, {name: "methodName", type: String}, {name: "useGet", type: Boolean}, {name: "params"}, {name: "onSuccess", type: Function, mayBeNull: true, = optional: true}, {name: "onFailure", type: Function, mayBeNull: true, = optional: true}, {name: "userContext", mayBeNull: true, optional: true} ]); if (e) throw e; if (onSuccess =3D=3D=3D null || typeof onSuccess = =3D=3D=3D 'undefined') onSuccess =3D = this.get_defaultSucceededCallback(); if (onFailure =3D=3D=3D null || typeof onFailure =3D=3D=3D = 'undefined') onFailure =3D this.get_defaultFailedCallback(); if (userContext =3D=3D=3D null || typeof userContext =3D=3D=3D = 'undefined') userContext =3D this.get_defaultUserContext(); =20 return Sys.Net.WebServiceProxy.invoke(servicePath, methodName, = useGet, params, onSuccess, onFailure, userContext, this.get_timeout()); } Sys.Net.WebServiceProxy.prototype =3D { set_timeout: Sys$Net$WebServiceProxy$set_timeout, get_timeout: Sys$Net$WebServiceProxy$get_timeout, set_defaultUserContext: = Sys$Net$WebServiceProxy$set_defaultUserContext, get_defaultUserContext: = Sys$Net$WebServiceProxy$get_defaultUserContext, set_defaultSucceededCallback: = Sys$Net$WebServiceProxy$set_defaultSucceededCallback, get_defaultSucceededCallback: = Sys$Net$WebServiceProxy$get_defaultSucceededCallback, set_defaultFailedCallback: = Sys$Net$WebServiceProxy$set_defaultFailedCallback, get_defaultFailedCallback: = Sys$Net$WebServiceProxy$get_defaultFailedCallback, set_path: Sys$Net$WebServiceProxy$set_path, get_path: Sys$Net$WebServiceProxy$get_path, _invoke: Sys$Net$WebServiceProxy$_invoke } Sys.Net.WebServiceProxy.registerClass('Sys.Net.WebServiceProxy'); Sys.Net.WebServiceProxy.invoke =3D function = Sys$Net$WebServiceProxy$invoke(servicePath, methodName, useGet, params, = onSuccess, onFailure, userContext, timeout) { /// /// /// /// /// /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "servicePath", type: String}, {name: "methodName", type: String}, {name: "useGet", type: Boolean, optional: true}, {name: "params", mayBeNull: true, optional: true}, {name: "onSuccess", type: Function, mayBeNull: true, optional: = true}, {name: "onFailure", type: Function, mayBeNull: true, optional: = true}, {name: "userContext", mayBeNull: true, optional: true}, {name: "timeout", type: Number, optional: true} ]); if (e) throw e; var request =3D new Sys.Net.WebRequest(); request.get_headers()['Content-Type'] =3D 'application/json; = charset=3Dutf-8'; if (!params) params =3D {}; var urlParams =3D params; if (!useGet || !urlParams) urlParams =3D {}; = request.set_url(Sys.Net.WebRequest._createUrl(servicePath+"/"+methodName,= urlParams)); var body =3D null; if (!useGet) { body =3D = Sys.Serialization.JavaScriptSerializer.serialize(params); if (body =3D=3D=3D "{}") body =3D ""; } request.set_body(body); request.add_completed(onComplete); if (timeout && timeout > 0) request.set_timeout(timeout); request.invoke(); function onComplete(response, eventArgs) { if (response.get_responseAvailable()) { var statusCode =3D response.get_statusCode(); var result =3D null; try { var contentType =3D = response.getResponseHeader("Content-Type"); if (contentType.startsWith("application/json")) { result =3D response.get_object(); } else if (contentType.startsWith("text/xml")) { result =3D response.get_xml(); } else { result =3D response.get_responseData(); } } catch (ex) { } var error =3D response.getResponseHeader("jsonerror"); var errorObj =3D (error =3D=3D=3D "true"); if (errorObj) { result =3D new Sys.Net.WebServiceError(false, = result.Message, result.StackTrace, result.ExceptionType); } if (((statusCode < 200) || (statusCode >=3D 300)) || = errorObj) { if (onFailure) { if (!result || !errorObj) { result =3D new Sys.Net.WebServiceError(false , = String.format(Sys.Res.webServiceFailedNoMsg, methodName), "", ""); } result._statusCode =3D statusCode; onFailure(result, userContext, methodName); } else { var error; if (result && errorObj) { error =3D = result.get_exceptionType() + "-- " + result.get_message(); } else { = error =3D response.get_responseData(); } alert(String.format(Sys.Res.webServiceFailed, = methodName, error)); } } else if (onSuccess) { onSuccess(result, userContext, methodName); } } else { var msg; if (response.get_timedOut()) { msg =3D String.format(Sys.Res.webServiceTimedOut, = methodName); } else { msg =3D String.format(Sys.Res.webServiceFailedNoMsg, = methodName) } if (onFailure) { onFailure(new = Sys.Net.WebServiceError(response.get_timedOut(), msg, "", ""), = userContext, methodName); } else { alert(msg); } } } return request; } Sys.Net.WebServiceProxy._generateTypedConstructor =3D function = Sys$Net$WebServiceProxy$_generateTypedConstructor(type) { return function(properties) { if (properties) { for (var name in properties) { this[name] =3D properties[name]; } } this.__type =3D type; } } Sys.Net.WebServiceError =3D function Sys$Net$WebServiceError(timedOut, = message, stackTrace, exceptionType) { /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "timedOut", type: Boolean}, {name: "message", type: String, mayBeNull: true}, {name: "stackTrace", type: String, mayBeNull: true}, {name: "exceptionType", type: String, mayBeNull: true} ]); if (e) throw e; this._timedOut =3D timedOut; this._message =3D message; this._stackTrace =3D stackTrace; this._exceptionType =3D exceptionType; this._statusCode =3D -1; } function Sys$Net$WebServiceError$get_timedOut() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._timedOut; } function Sys$Net$WebServiceError$get_statusCode() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._statusCode; } function Sys$Net$WebServiceError$get_message() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._message; } function Sys$Net$WebServiceError$get_stackTrace() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._stackTrace; } function Sys$Net$WebServiceError$get_exceptionType() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._exceptionType; } Sys.Net.WebServiceError.prototype =3D { get_timedOut: Sys$Net$WebServiceError$get_timedOut, get_statusCode: Sys$Net$WebServiceError$get_statusCode, get_message: Sys$Net$WebServiceError$get_message, get_stackTrace: Sys$Net$WebServiceError$get_stackTrace, get_exceptionType: Sys$Net$WebServiceError$get_exceptionType } Sys.Net.WebServiceError.registerClass('Sys.Net.WebServiceError'); Type.registerNamespace('Sys.Services'); Sys.Services._ProfileService =3D function Sys$Services$_ProfileService() = { Sys.Services._ProfileService.initializeBase(this); this.properties =3D {}; } Sys.Services._ProfileService.DefaultWebServicePath =3D ''; function Sys$Services$_ProfileService$get_defaultFailedCallback() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._defaultFailedCallback; } function = Sys$Services$_ProfileService$set_defaultFailedCallback(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: Function, mayBeNull: true}]); if (e) throw e; this._defaultFailedCallback =3D value; } function = Sys$Services$_ProfileService$get_defaultLoadCompletedCallback() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._defaultLoadCompletedCallback; } function = Sys$Services$_ProfileService$set_defaultLoadCompletedCallback(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: Function, mayBeNull: true}]); if (e) throw e; this._defaultLoadCompletedCallback =3D value; } function = Sys$Services$_ProfileService$get_defaultSaveCompletedCallback() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._defaultSaveCompletedCallback; } function = Sys$Services$_ProfileService$set_defaultSaveCompletedCallback(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: Function, mayBeNull: true}]); if (e) throw e; this._defaultSaveCompletedCallback =3D value; } function Sys$Services$_ProfileService$get_path() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._path; } function Sys$Services$_ProfileService$set_path(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: String, mayBeNull: true}]); if (e) throw e; if((!value) || (!value.length)) { value =3D ''; } this._path =3D value; } function Sys$Services$_ProfileService$get_timeout() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._timeout; } function Sys$Services$_ProfileService$set_timeout(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: Number}]); if (e) throw e; this._timeout =3D value; } function Sys$Services$_ProfileService$load(propertyNames, = loadCompletedCallback, failedCallback, userContext) { /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "propertyNames", type: Array, mayBeNull: true, = optional: true, elementType: String}, {name: "loadCompletedCallback", type: Function, mayBeNull: = true, optional: true}, {name: "failedCallback", type: Function, mayBeNull: true, = optional: true}, {name: "userContext", mayBeNull: true, optional: true} ]); if (e) throw e; var parameters =3D {}; var methodName; if(!propertyNames) { methodName =3D "GetAllPropertiesForCurrentUser"; } else { methodName =3D "GetPropertiesForCurrentUser"; parameters =3D { properties: = this._clonePropertyNames(propertyNames) }; } this._invoke(this._get_path(), methodName, false, parameters, Function.createDelegate(this, = this._onLoadComplete), Function.createDelegate(this, = this._onLoadFailed), = [loadCompletedCallback, failedCallback, userContext]); } function Sys$Services$_ProfileService$save(propertyNames, = saveCompletedCallback, failedCallback, userContext) { /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "propertyNames", type: Array, mayBeNull: true, = optional: true, elementType: String}, {name: "saveCompletedCallback", type: Function, mayBeNull: = true, optional: true}, {name: "failedCallback", type: Function, mayBeNull: true, = optional: true}, {name: "userContext", mayBeNull: true, optional: true} ]); if (e) throw e; var flattenedProperties =3D = this._flattenProperties(propertyNames, this.properties); this._invoke(this._get_path(), "SetPropertiesForCurrentUser", false, { values: flattenedProperties }, Function.createDelegate(this, = this._onSaveComplete), Function.createDelegate(this, = this._onSaveFailed), [saveCompletedCallback, = failedCallback, userContext]); } function Sys$Services$_ProfileService$_clonePropertyNames(arr) { var nodups =3D []; var seen =3D {}; for(var i=3D0; i < arr.length; i++) { var prop =3D arr[i]; if(!seen[prop]) { Array.add(nodups, prop); = seen[prop]=3Dtrue; }; } return nodups; } function = Sys$Services$_ProfileService$_flattenProperties(propertyNames, = properties, groupName) { var flattenedProperties =3D {}; var val; var key; if(propertyNames && propertyNames.length =3D=3D=3D 0) { return flattenedProperties; } for (var property in properties) { val =3D properties[property]; key =3D groupName ? groupName + "." + property : property; = if(Sys.Services.ProfileGroup.isInstanceOfType(val)) { var groupProperties =3D = this._flattenProperties(propertyNames, val, key); = for(var subKey in = groupProperties) { var subVal =3D groupProperties[subKey]; flattenedProperties[subKey] =3D subVal; } } else { if(!propertyNames || = Array.indexOf(propertyNames, key) !=3D=3D -1) { flattenedProperties[key] =3D val; } } } return flattenedProperties; } function Sys$Services$_ProfileService$_get_path() { var path =3D this.get_path(); if(!path.length) { path =3D Sys.Services._ProfileService.DefaultWebServicePath; } if(!path || !path.length) { throw Error.invalidOperation(Sys.Res.servicePathNotSet); } return path; } function Sys$Services$_ProfileService$_onLoadComplete(result, = context, methodName) { if(typeof(result) !=3D=3D "object") { throw = Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,= methodName, "Object")); } var unflattened =3D this._unflattenProperties(result); for(var name in unflattened) { this.properties[name] =3D unflattened[name]; } =20 var userCallback =3D context[0]; var callback =3D userCallback ? userCallback : = this._defaultLoadCompletedCallback; if(callback) { callback(result.length, context[2], = "Sys.Services.ProfileService.load"); } } function Sys$Services$_ProfileService$_onLoadFailed(err, context, = methodName) { var userCallback =3D context[1]; var callback =3D userCallback ? userCallback : = this._defaultFailedCallback; if(callback) { callback(err, context[2], = "Sys.Services.ProfileService.load"); } } function Sys$Services$_ProfileService$_onSaveComplete(result, = context, methodName) { if(typeof(result) !=3D=3D "number") { throw = Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,= methodName, "Number")); } =20 var userCallback =3D context[0]; var userContext =3D context[2]; var callback =3D userCallback ? userCallback : = this._defaultSaveCompletedCallback; if(callback) { callback(result, userContext, = "Sys.Services.ProfileService.save"); } } function Sys$Services$_ProfileService$_onSaveFailed(err, context, = methodName) { var userCallback =3D context[1]; var userContext =3D context[2]; var callback =3D userCallback ? userCallback : = this._defaultFailedCallback; if(callback) { callback(err, userContext, = "Sys.Services.ProfileService.save"); } } function = Sys$Services$_ProfileService$_unflattenProperties(properties) { var unflattenedProperties =3D {}; var dotIndex; var val; var count =3D 0; for(var key in properties) { count++; val =3D properties[key]; dotIndex =3D key.indexOf('.'); if(dotIndex !=3D=3D -1) { var groupName =3D key.substr(0, dotIndex); key =3D key.substr(dotIndex+1); var group =3D unflattenedProperties[groupName]; if((!group) || = (!Sys.Services.ProfileGroup.isInstanceOfType(group))) { group =3D new Sys.Services.ProfileGroup(); unflattenedProperties[groupName] =3D group; } group[key] =3D val; } else { unflattenedProperties[key] =3D val; } } properties.length =3D count; return unflattenedProperties; } Sys.Services._ProfileService.prototype =3D { _defaultFailedCallback: null, _defaultLoadCompletedCallback: null, _defaultSaveCompletedCallback: null, _path: '', _timeout: 0, get_defaultFailedCallback: = Sys$Services$_ProfileService$get_defaultFailedCallback, set_defaultFailedCallback: = Sys$Services$_ProfileService$set_defaultFailedCallback, get_defaultLoadCompletedCallback: = Sys$Services$_ProfileService$get_defaultLoadCompletedCallback, set_defaultLoadCompletedCallback: = Sys$Services$_ProfileService$set_defaultLoadCompletedCallback, get_defaultSaveCompletedCallback: = Sys$Services$_ProfileService$get_defaultSaveCompletedCallback, set_defaultSaveCompletedCallback: = Sys$Services$_ProfileService$set_defaultSaveCompletedCallback, =20 =20 get_path: Sys$Services$_ProfileService$get_path, set_path: Sys$Services$_ProfileService$set_path, =20 get_timeout: Sys$Services$_ProfileService$get_timeout, set_timeout: Sys$Services$_ProfileService$set_timeout, =20 load: Sys$Services$_ProfileService$load, save: Sys$Services$_ProfileService$save, =20 _clonePropertyNames: = Sys$Services$_ProfileService$_clonePropertyNames, =20 _flattenProperties: = Sys$Services$_ProfileService$_flattenProperties, =20 _get_path: Sys$Services$_ProfileService$_get_path, =20 _onLoadComplete: Sys$Services$_ProfileService$_onLoadComplete, =20 _onLoadFailed: Sys$Services$_ProfileService$_onLoadFailed, =20 _onSaveComplete: Sys$Services$_ProfileService$_onSaveComplete, =20 _onSaveFailed: Sys$Services$_ProfileService$_onSaveFailed, =20 _unflattenProperties: = Sys$Services$_ProfileService$_unflattenProperties } Sys.Services._ProfileService.registerClass('Sys.Services._ProfileService'= , Sys.Net.WebServiceProxy); Sys.Services.ProfileService =3D new Sys.Services._ProfileService(); Sys.Services.ProfileGroup =3D function = Sys$Services$ProfileGroup(properties) { /// var e =3D Function._validateParams(arguments, [ {name: "properties", mayBeNull: true, optional: true} ]); if (e) throw e; if(properties) { for(var property in properties) { this[property] =3D properties[property]; } } } Sys.Services.ProfileGroup.registerClass('Sys.Services.ProfileGroup'); Sys.Services._AuthenticationService =3D function = Sys$Services$_AuthenticationService() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); Sys.Services._AuthenticationService.initializeBase(this); } Sys.Services._AuthenticationService.DefaultWebServicePath =3D ''; function = Sys$Services$_AuthenticationService$get_defaultFailedCallback() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._defaultFailedCallback; } function = Sys$Services$_AuthenticationService$set_defaultFailedCallback(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: Function, mayBeNull: true}]); if (e) throw e; this._defaultFailedCallback =3D value; } function = Sys$Services$_AuthenticationService$get_defaultLoginCompletedCallback() = { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._defaultLoginCompletedCallback; } function = Sys$Services$_AuthenticationService$set_defaultLoginCompletedCallback(val= ue) { var e =3D Function._validateParams(arguments, [{name: "value", = type: Function, mayBeNull: true}]); if (e) throw e; this._defaultLoginCompletedCallback =3D value; } function = Sys$Services$_AuthenticationService$get_defaultLogoutCompletedCallback() = { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._defaultLogoutCompletedCallback; } function = Sys$Services$_AuthenticationService$set_defaultLogoutCompletedCallback(va= lue) { var e =3D Function._validateParams(arguments, [{name: "value", = type: Function, mayBeNull: true}]); if (e) throw e; this._defaultLogoutCompletedCallback =3D value; } function Sys$Services$_AuthenticationService$get_isLoggedIn() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._authenticated; } function Sys$Services$_AuthenticationService$get_path() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._path; } function Sys$Services$_AuthenticationService$set_path(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: String, mayBeNull: true}]); if (e) throw e; if((!value) || (!value.length)) { value =3D ''; } this._path =3D value; } function Sys$Services$_AuthenticationService$get_timeout() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._timeout; } function Sys$Services$_AuthenticationService$set_timeout(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: Number}]); if (e) throw e; this._timeout =3D value; } function Sys$Services$_AuthenticationService$login(username, = password, isPersistent, customInfo, redirectUrl, loginCompletedCallback, = failedCallback, userContext) { /// /// /// /// /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "username", type: String}, {name: "password", type: String, mayBeNull: true}, {name: "isPersistent", type: Boolean, mayBeNull: true, = optional: true}, {name: "customInfo", type: String, mayBeNull: true, = optional: true}, {name: "redirectUrl", type: String, mayBeNull: true, = optional: true}, {name: "loginCompletedCallback", type: Function, mayBeNull: = true, optional: true}, {name: "failedCallback", type: Function, mayBeNull: true, = optional: true}, {name: "userContext", mayBeNull: true, optional: true} ]); if (e) throw e; this._invoke(this._get_path(), "Login", false, { userName: username, password: = password, createPersistentCookie: isPersistent }, Function.createDelegate(this, = this._onLoginComplete), Function.createDelegate(this, = this._onLoginFailed), [username, password, = isPersistent, redirectUrl, loginCompletedCallback, failedCallback, = userContext]); } function Sys$Services$_AuthenticationService$logout(redirectUrl, = logoutCompletedCallback, failedCallback, userContext) { /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "redirectUrl", type: String, mayBeNull: true, = optional: true}, {name: "logoutCompletedCallback", type: Function, mayBeNull: = true, optional: true}, {name: "failedCallback", type: Function, mayBeNull: true, = optional: true}, {name: "userContext", mayBeNull: true, optional: true} ]); if (e) throw e; this._invoke(this._get_path(), "Logout", false, {},=20 Function.createDelegate(this, = this._onLogoutComplete), Function.createDelegate(this, = this._onLogoutFailed), [redirectUrl, = logoutCompletedCallback, failedCallback, userContext]); } function Sys$Services$_AuthenticationService$_get_path() { var path =3D this.get_path(); if(!path.length) { path =3D = Sys.Services._AuthenticationService.DefaultWebServicePath; } if(!path || !path.length) { throw Error.invalidOperation(Sys.Res.servicePathNotSet); } return path; } function = Sys$Services$_AuthenticationService$_onLoginComplete(result, context, = methodName) { if(typeof(result) !=3D=3D "boolean") { throw = Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,= methodName, "Boolean")); } =20 var redirectUrl =3D context[3]; var userCallback =3D context[4]; var userContext =3D context[6]; var callback =3D userCallback ? userCallback : = this._defaultLoginCompletedCallback; =20 if(result) { this._authenticated =3D true; if(callback) { callback(true, userContext, = "Sys.Services.AuthenticationService.login"); } =20 if(typeof(redirectUrl) !=3D=3D "undefined" && redirectUrl = !=3D=3D null) { window.location.href =3D redirectUrl; } } else if (callback) { callback(false, userContext, = "Sys.Services.AuthenticationService.login"); } } function Sys$Services$_AuthenticationService$_onLoginFailed(err, = context, methodName) { var userCallback =3D context[5]; var callback =3D userCallback ? userCallback : = this._defaultFailedCallback; if(callback) { callback(err, context[6], = "Sys.Services.AuthenticationService.login"); } } function = Sys$Services$_AuthenticationService$_onLogoutComplete(result, context, = methodName) { if(result !=3D=3D null) { throw = Error.invalidOperation(String.format(Sys.Res.webServiceInvalidReturnType,= methodName, "null")); } =20 var redirectUrl =3D context[0]; var userCallback =3D context[1]; var userContext =3D context[3]; var callback =3D userCallback ? userCallback : = this._defaultLogoutCompletedCallback; this._authenticated =3D false; =20 if (callback) { callback(null, userContext, = "Sys.Services.AuthenticationService.logout"); } =20 if(!redirectUrl) { window.location.reload(); } else { window.location.href =3D redirectUrl; } } function Sys$Services$_AuthenticationService$_onLogoutFailed(err, = context, methodName) { var userCallback =3D context[2]; var callback =3D userCallback ? userCallback : = this._defaultFailedCallback; if(callback) { callback(err, context[3], = "Sys.Services.AuthenticationService.logout"); } } function = Sys$Services$_AuthenticationService$_setAuthenticated(authenticated) { this._authenticated =3D authenticated; } Sys.Services._AuthenticationService.prototype =3D { _defaultFailedCallback: null, _defaultLoginCompletedCallback: null, _defaultLogoutCompletedCallback: null, _path: '', _timeout: 0, _authenticated: false, =20 get_defaultFailedCallback: = Sys$Services$_AuthenticationService$get_defaultFailedCallback, set_defaultFailedCallback: = Sys$Services$_AuthenticationService$set_defaultFailedCallback, get_defaultLoginCompletedCallback: = Sys$Services$_AuthenticationService$get_defaultLoginCompletedCallback, set_defaultLoginCompletedCallback: = Sys$Services$_AuthenticationService$set_defaultLoginCompletedCallback, get_defaultLogoutCompletedCallback: = Sys$Services$_AuthenticationService$get_defaultLogoutCompletedCallback, set_defaultLogoutCompletedCallback: = Sys$Services$_AuthenticationService$set_defaultLogoutCompletedCallback, get_isLoggedIn: Sys$Services$_AuthenticationService$get_isLoggedIn, get_path: Sys$Services$_AuthenticationService$get_path, set_path: Sys$Services$_AuthenticationService$set_path, =20 get_timeout: Sys$Services$_AuthenticationService$get_timeout, set_timeout: Sys$Services$_AuthenticationService$set_timeout, =20 =20 login: Sys$Services$_AuthenticationService$login, =20 logout: Sys$Services$_AuthenticationService$logout, =20 _get_path: Sys$Services$_AuthenticationService$_get_path, =20 _onLoginComplete: = Sys$Services$_AuthenticationService$_onLoginComplete, =20 _onLoginFailed: Sys$Services$_AuthenticationService$_onLoginFailed, =20 _onLogoutComplete: = Sys$Services$_AuthenticationService$_onLogoutComplete, =20 _onLogoutFailed: = Sys$Services$_AuthenticationService$_onLogoutFailed, =20 _setAuthenticated: = Sys$Services$_AuthenticationService$_setAuthenticated =20 } Sys.Services._AuthenticationService.registerClass('Sys.Services._Authenti= cationService', Sys.Net.WebServiceProxy); Sys.Services.AuthenticationService =3D new = Sys.Services._AuthenticationService(); Type.registerNamespace('Sys.Serialization'); Sys.Serialization.JavaScriptSerializer =3D function = Sys$Serialization$JavaScriptSerializer() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); } Sys.Serialization.JavaScriptSerializer.registerClass('Sys.Serialization.J= avaScriptSerializer'); Sys.Serialization.JavaScriptSerializer._stringRegEx =3D new = RegExp('["\b\f\n\r\t\\\\\x00-\x1F]', 'i'); Sys.Serialization.JavaScriptSerializer._serializeWithBuilder =3D = function = Sys$Serialization$JavaScriptSerializer$_serializeWithBuilder(object, = stringBuilder, sort) { var i; switch (typeof object) { case 'object': if (object) { if (Array.isInstanceOfType(object)) { stringBuilder.append('['); for (i =3D 0; i < object.length; ++i) { if (i > 0) { stringBuilder.append(','); } = Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(object[i], = stringBuilder); } stringBuilder.append(']'); } else { if = (Date.isInstanceOfType(object)) { stringBuilder.append('"\\/Date('); stringBuilder.append(object.getTime()); stringBuilder.append(')\\/"'); break; } var properties =3D []; var propertyCount =3D 0; for (var name in object) { if (name.startsWith('$')) { continue; } properties[propertyCount++] =3D name; } if (sort) properties.sort(); stringBuilder.append('{'); var needComma =3D false; for (i=3D0; i=3D ' ') { if (curChar =3D=3D=3D '\\' || = curChar =3D=3D=3D '"') { stringBuilder.append('\\'); } stringBuilder.append(curChar); } else { switch (curChar) { case '\b': stringBuilder.append('\\b'); break; case '\f': stringBuilder.append('\\f'); break; case '\n': stringBuilder.append('\\n'); break; case '\r': stringBuilder.append('\\r'); break; case '\t': stringBuilder.append('\\t'); break; default: = stringBuilder.append('\\u00'); if (curChar.charCodeAt() < 16) = stringBuilder.append('0'); = stringBuilder.append(curChar.charCodeAt().toString(16)); } } } } else { stringBuilder.append(object); } stringBuilder.append('"'); break; case 'boolean': stringBuilder.append(object.toString()); break; default: stringBuilder.append('null'); break; } } Sys.Serialization.JavaScriptSerializer.serialize =3D function = Sys$Serialization$JavaScriptSerializer$serialize(object) { /// /// var e =3D Function._validateParams(arguments, [ {name: "object", mayBeNull: true} ]); if (e) throw e; var stringBuilder =3D new Sys.StringBuilder(); Sys.Serialization.JavaScriptSerializer._serializeWithBuilder(object, = stringBuilder, false); return stringBuilder.toString(); } Sys.Serialization.JavaScriptSerializer.deserialize =3D function = Sys$Serialization$JavaScriptSerializer$deserialize(data) { /// /// var e =3D Function._validateParams(arguments, [ {name: "data", type: String} ]); if (e) throw e; if (data.length =3D=3D=3D 0) throw Error.argument('data', = Sys.Res.cannotDeserializeEmptyString); =20 try { =20 var exp =3D data.replace(new = RegExp('(^|[^\\\\])\\"\\\\/Date\\((-?[0-9]+)\\)\\\\/\\"', 'g'), "$1new = Date($2)"); return eval('(' + exp + ')'); } catch (e) { throw Error.argument('data', = Sys.Res.cannotDeserializeInvalidJson); } } Sys.CultureInfo =3D function Sys$CultureInfo(name, numberFormat, = dateTimeFormat) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "name", type: String}, {name: "numberFormat", type: Object}, {name: "dateTimeFormat", type: Object} ]); if (e) throw e; this.name =3D name; this.numberFormat =3D numberFormat; this.dateTimeFormat =3D dateTimeFormat; } function Sys$CultureInfo$_getDateTimeFormats() { if (! this._dateTimeFormats) { var dtf =3D this.dateTimeFormat; this._dateTimeFormats =3D [ dtf.MonthDayPattern, dtf.YearMonthPattern, dtf.ShortDatePattern, dtf.ShortTimePattern, dtf.LongDatePattern, dtf.LongTimePattern, dtf.FullDateTimePattern, dtf.RFC1123Pattern, dtf.SortableDateTimePattern, dtf.UniversalSortableDateTimePattern ]; } return this._dateTimeFormats; } function Sys$CultureInfo$_getMonthIndex(value) { if (!this._upperMonths) { this._upperMonths =3D = this._toUpperArray(this.dateTimeFormat.MonthNames); } return Array.indexOf(this._upperMonths, this._toUpper(value)); } function Sys$CultureInfo$_getAbbrMonthIndex(value) { if (!this._upperAbbrMonths) { this._upperAbbrMonths =3D = this._toUpperArray(this.dateTimeFormat.AbbreviatedMonthNames); } return Array.indexOf(this._upperMonths, this._toUpper(value)); } function Sys$CultureInfo$_getDayIndex(value) { if (!this._upperDays) { this._upperDays =3D = this._toUpperArray(this.dateTimeFormat.DayNames); } return Array.indexOf(this._upperDays, this._toUpper(value)); } function Sys$CultureInfo$_getAbbrDayIndex(value) { if (!this._upperAbbrDays) { this._upperAbbrDays =3D = this._toUpperArray(this.dateTimeFormat.AbbreviatedDayNames); } return Array.indexOf(this._upperAbbrDays, this._toUpper(value)); } function Sys$CultureInfo$_toUpperArray(arr) { var result =3D []; for (var i =3D 0, il =3D arr.length; i < il; i++) { result[i] =3D this._toUpper(arr[i]); } return result; } function Sys$CultureInfo$_toUpper(value) { return value.split("\u00A0").join(' = ').toUpperCase(); } Sys.CultureInfo.prototype =3D { _getDateTimeFormats: Sys$CultureInfo$_getDateTimeFormats, _getMonthIndex: Sys$CultureInfo$_getMonthIndex, _getAbbrMonthIndex: Sys$CultureInfo$_getAbbrMonthIndex, _getDayIndex: Sys$CultureInfo$_getDayIndex, _getAbbrDayIndex: Sys$CultureInfo$_getAbbrDayIndex, _toUpperArray: Sys$CultureInfo$_toUpperArray, _toUpper: Sys$CultureInfo$_toUpper } Sys.CultureInfo._parse =3D function Sys$CultureInfo$_parse(value) { var cultureInfo =3D = Sys.Serialization.JavaScriptSerializer.deserialize(value); return new Sys.CultureInfo(cultureInfo.name, = cultureInfo.numberFormat, cultureInfo.dateTimeFormat); } Sys.CultureInfo.registerClass('Sys.CultureInfo'); Sys.CultureInfo.InvariantCulture =3D = Sys.CultureInfo._parse('{"name":"","numberFormat":{"CurrencyDecimalDigits= ":2,"CurrencyDecimalSeparator":".","IsReadOnly":true,"CurrencyGroupSizes"= :[3],"NumberGroupSizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparat= or":",","CurrencySymbol":"\u00A4","NaNSymbol":"NaN","CurrencyNegativePatt= ern":0,"NumberNegativePattern":1,"PercentPositivePattern":0,"PercentNegat= ivePattern":0,"NegativeInfinitySymbol":"-Infinity","NegativeSign":"-","Nu= mberDecimalDigits":2,"NumberDecimalSeparator":".","NumberGroupSeparator":= ",","CurrencyPositivePattern":0,"PositiveInfinitySymbol":"Infinity","Posi= tiveSign":"+","PercentDecimalDigits":2,"PercentDecimalSeparator":".","Per= centGroupSeparator":",","PercentSymbol":"%","PerMilleSymbol":"\u2030","Na= tiveDigits":["0","1","2","3","4","5","6","7","8","9"],"DigitSubstitution"= :1},"dateTimeFormat":{"AMDesignator":"AM","Calendar":{"MinSupportedDateTi= me":"@-62135568000000@","MaxSupportedDateTime":"@253402300799999@","Algor= ithmType":1,"CalendarType":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnl= y":true},"DateSeparator":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"Ful= lDateTimePattern":"dddd, dd MMMM yyyy HH:mm:ss","LongDatePattern":"dddd, = dd MMMM yyyy","LongTimePattern":"HH:mm:ss","MonthDayPattern":"MMMM = dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy = HH\':\'mm\':\'ss = \'GMT\'","ShortDatePattern":"MM/dd/yyyy","ShortTimePattern":"HH:mm","Sort= ableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","TimeSepar= ator":":","UniversalSortableDateTimePattern":"yyyy\'-\'MM\'-\'dd = HH\':\'mm\':\'ss\'Z\'","YearMonthPattern":"yyyy = MMMM","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"= ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunda= y","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"Abbrev= iatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","= Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","= May","June","July","August","September","October","November","December","= "],"IsReadOnly":true,"NativeCalendarName":"Gregorian = Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May",= "Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["Janu= ary","February","March","April","May","June","July","August","September",= "October","November","December",""]}}'); if (typeof(__cultureInfo) =3D=3D=3D 'undefined') { var __cultureInfo =3D = '{"name":"en-US","numberFormat":{"CurrencyDecimalDigits":2,"CurrencyDecim= alSeparator":".","IsReadOnly":false,"CurrencyGroupSizes":[3],"NumberGroup= Sizes":[3],"PercentGroupSizes":[3],"CurrencyGroupSeparator":",","Currency= Symbol":"$","NaNSymbol":"NaN","CurrencyNegativePattern":0,"NumberNegative= Pattern":1,"PercentPositivePattern":0,"PercentNegativePattern":0,"Negativ= eInfinitySymbol":"-Infinity","NegativeSign":"-","NumberDecimalDigits":2,"= NumberDecimalSeparator":".","NumberGroupSeparator":",","CurrencyPositiveP= attern":0,"PositiveInfinitySymbol":"Infinity","PositiveSign":"+","Percent= DecimalDigits":2,"PercentDecimalSeparator":".","PercentGroupSeparator":",= ","PercentSymbol":"%","PerMilleSymbol":"\u2030","NativeDigits":["0","1","= 2","3","4","5","6","7","8","9"],"DigitSubstitution":1},"dateTimeFormat":{= "AMDesignator":"AM","Calendar":{"MinSupportedDateTime":"@-62135568000000@= ","MaxSupportedDateTime":"@253402300799999@","AlgorithmType":1,"CalendarT= ype":1,"Eras":[1],"TwoDigitYearMax":2029,"IsReadOnly":false},"DateSeparat= or":"/","FirstDayOfWeek":0,"CalendarWeekRule":0,"FullDateTimePattern":"dd= dd, MMMM dd, yyyy h:mm:ss tt","LongDatePattern":"dddd, MMMM dd, = yyyy","LongTimePattern":"h:mm:ss tt","MonthDayPattern":"MMMM = dd","PMDesignator":"PM","RFC1123Pattern":"ddd, dd MMM yyyy = HH\':\'mm\':\'ss = \'GMT\'","ShortDatePattern":"M/d/yyyy","ShortTimePattern":"h:mm = tt","SortableDateTimePattern":"yyyy\'-\'MM\'-\'dd\'T\'HH\':\'mm\':\'ss","= TimeSeparator":":","UniversalSortableDateTimePattern":"yyyy\'-\'MM\'-\'dd= HH\':\'mm\':\'ss\'Z\'","YearMonthPattern":"MMMM, = yyyy","AbbreviatedDayNames":["Sun","Mon","Tue","Wed","Thu","Fri","Sat"],"= ShortestDayNames":["Su","Mo","Tu","We","Th","Fr","Sa"],"DayNames":["Sunda= y","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"],"Abbrev= iatedMonthNames":["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","= Oct","Nov","Dec",""],"MonthNames":["January","February","March","April","= May","June","July","August","September","October","November","December","= "],"IsReadOnly":false,"NativeCalendarName":"Gregorian = Calendar","AbbreviatedMonthGenitiveNames":["Jan","Feb","Mar","Apr","May",= "Jun","Jul","Aug","Sep","Oct","Nov","Dec",""],"MonthGenitiveNames":["Janu= ary","February","March","April","May","June","July","August","September",= "October","November","December",""]}}'; } Sys.CultureInfo.CurrentCulture =3D = Sys.CultureInfo._parse(__cultureInfo); delete __cultureInfo; Sys.UI.Point =3D function Sys$UI$Point(x, y) { /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "x", type: Number, integer: true}, {name: "y", type: Number, integer: true} ]); if (e) throw e; this.x =3D x; this.y =3D y; } Sys.UI.Point.registerClass('Sys.UI.Point'); Sys.UI.Bounds =3D function Sys$UI$Bounds(x, y, width, height) { /// /// /// /// /// /// /// /// var e =3D Function._validateParams(arguments, [ {name: "x", type: Number, integer: true}, {name: "y", type: Number, integer: true}, {name: "height", type: Number, integer: true}, {name: "width", type: Number, integer: true} ]); if (e) throw e; this.x =3D x; this.y =3D y; this.height =3D height; this.width =3D width; } Sys.UI.Bounds.registerClass('Sys.UI.Bounds'); Sys.UI.DomElement =3D function Sys$UI$DomElement() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } Sys.UI.DomElement.registerClass('Sys.UI.DomElement'); Sys.UI.DomElement.addCssClass =3D function = Sys$UI$DomElement$addCssClass(element, className) { /// /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true}, {name: "className", type: String} ]); if (e) throw e; if (!Sys.UI.DomElement.containsCssClass(element, className)) { if (element.className =3D=3D=3D '') { element.className =3D className; } else { element.className +=3D ' ' + className; } } } Sys.UI.DomElement.containsCssClass =3D function = Sys$UI$DomElement$containsCssClass(element, className) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true}, {name: "className", type: String} ]); if (e) throw e; return Array.contains(element.className.split(' '), className); } Sys.UI.DomElement.getBounds =3D function = Sys$UI$DomElement$getBounds(element) { /// /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true} ]); if (e) throw e; var offset =3D Sys.UI.DomElement.getLocation(element); return new Sys.UI.Bounds(offset.x, offset.y, element.offsetWidth || = 0, element.offsetHeight || 0); } var $get =3D Sys.UI.DomElement.getElementById =3D function = Sys$UI$DomElement$getElementById(id, element) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "id", type: String}, {name: "element", mayBeNull: true, domElement: true, optional: = true} ]); if (e) throw e; if (!element) return document.getElementById(id); if (element.getElementById) return element.getElementById(id); var nodeQueue =3D []; var childNodes =3D element.childNodes; for (var i =3D 0; i < childNodes.length; i++) { var node =3D childNodes[i]; if (node.nodeType =3D=3D 1) { nodeQueue[nodeQueue.length] =3D node; } } while (nodeQueue.length) { node =3D nodeQueue.shift(); if (node.id =3D=3D id) { return node; } childNodes =3D node.childNodes; for (i =3D 0; i < childNodes.length; i++) { node =3D childNodes[i]; if (node.nodeType =3D=3D 1) { nodeQueue[nodeQueue.length] =3D node; } } } return null; } switch(Sys.Browser.agent) { case Sys.Browser.InternetExplorer: Sys.UI.DomElement.getLocation =3D function = Sys$UI$DomElement$getLocation(element) { /// /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true} ]); if (e) throw e; if (element.self || element.nodeType =3D=3D=3D = 9) return new Sys.UI.Point(0,0); var clientRects =3D = element.getClientRects(); if (!clientRects || !clientRects.length) { return new Sys.UI.Point(0,0); } var w =3D element.ownerDocument.parentWindow; var offsetL =3D = w.screenLeft - top.screenLeft - top.document.documentElement.scrollLeft = + 2; var offsetT =3D w.screenTop - top.screenTop - = top.document.documentElement.scrollTop + 2; = var f =3D w.frameElement || null; if (f) { = var fstyle =3D f.currentStyle; offsetL +=3D (f.frameBorder || 1) * 2 + (parseInt(fstyle.paddingLeft) || 0) + (parseInt(fstyle.borderLeftWidth) || 0) - element.ownerDocument.documentElement.scrollLeft; offsetT +=3D (f.frameBorder || 1) * 2 + (parseInt(fstyle.paddingTop) || 0) + (parseInt(fstyle.borderTopWidth) || 0) - element.ownerDocument.documentElement.scrollTop; } var clientRect =3D clientRects[0]; return new Sys.UI.Point( clientRect.left - offsetL, clientRect.top - offsetT); } break; case Sys.Browser.Safari: Sys.UI.DomElement.getLocation =3D function = Sys$UI$DomElement$getLocation(element) { /// /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true} ]); if (e) throw e; if ((element.window && (element.window =3D=3D=3D = element)) || element.nodeType =3D=3D=3D 9) return new Sys.UI.Point(0,0); var offsetX =3D 0; var offsetY =3D 0; var previous =3D null; var previousStyle =3D null; var currentStyle; for (var parent =3D element; parent; previous =3D parent, = previousStyle =3D currentStyle, parent =3D parent.offsetParent) { currentStyle =3D = Sys.UI.DomElement._getCurrentStyle(parent); var tagName =3D parent.tagName; = if ((parent.offsetLeft || parent.offsetTop) && ((tagName !=3D=3D "BODY") || (!previousStyle || = previousStyle.position !=3D=3D "absolute"))) { offsetX +=3D parent.offsetLeft; offsetY +=3D parent.offsetTop; } } currentStyle =3D = Sys.UI.DomElement._getCurrentStyle(element); var elementPosition =3D currentStyle ? currentStyle.position = : null; var elementPositioned =3D elementPosition && = (elementPosition !=3D=3D "static"); if (!elementPosition || (elementPosition !=3D=3D = "absolute")) { for (var parent =3D element.parentNode; = parent; parent =3D parent.parentNode) { tagName =3D parent.tagName; if ((tagName !=3D=3D "BODY") && (tagName !=3D=3D = "HTML") && (parent.scrollLeft || parent.scrollTop)) { offsetX -=3D (parent.scrollLeft || 0); offsetY -=3D (parent.scrollTop || 0); } currentStyle =3D = Sys.UI.DomElement._getCurrentStyle(parent); var parentPosition =3D currentStyle ? = currentStyle.position : null; if (parentPosition && = (parentPosition =3D=3D=3D "absolute")) break; } } return new Sys.UI.Point(offsetX, offsetY); } break; case Sys.Browser.Opera: Sys.UI.DomElement.getLocation =3D function = Sys$UI$DomElement$getLocation(element) { /// /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true} ]); if (e) throw e; if ((element.window && (element.window =3D=3D=3D = element)) || element.nodeType =3D=3D=3D 9) return new Sys.UI.Point(0,0); var offsetX =3D 0; var offsetY =3D 0; var previous =3D null; for (var parent =3D element; parent; previous =3D parent, = parent =3D parent.offsetParent) { var tagName =3D parent.tagName; offsetX +=3D parent.offsetLeft || 0; offsetY +=3D parent.offsetTop || 0; } var elementPosition =3D element.style.position; var elementPositioned =3D elementPosition && = (elementPosition !=3D=3D "static"); for (var parent =3D element.parentNode; parent; = parent =3D parent.parentNode) { tagName =3D parent.tagName; if ((tagName !=3D=3D "BODY") && (tagName !=3D=3D "HTML") = && (parent.scrollLeft || parent.scrollTop) && ((elementPositioned && ((parent.style.overflow =3D=3D=3D "scroll") || = (parent.style.overflow =3D=3D=3D "auto"))))) { =20 offsetX -=3D (parent.scrollLeft || 0); offsetY -=3D (parent.scrollTop || 0); } var parentPosition =3D (parent && parent.style) ? = parent.style.position : null; elementPositioned =3D elementPositioned = || (parentPosition && (parentPosition !=3D=3D "static")); } return new Sys.UI.Point(offsetX, offsetY); } break; default: Sys.UI.DomElement.getLocation =3D function = Sys$UI$DomElement$getLocation(element) { /// /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true} ]); if (e) throw e; if ((element.window && (element.window =3D=3D=3D = element)) || element.nodeType =3D=3D=3D 9) return new Sys.UI.Point(0,0); var offsetX =3D 0; var offsetY =3D 0; var previous =3D null; var previousStyle =3D null; var currentStyle =3D null; for (var parent =3D element; parent; previous =3D parent, = previousStyle =3D currentStyle, parent =3D parent.offsetParent) { var tagName =3D parent.tagName; currentStyle =3D = Sys.UI.DomElement._getCurrentStyle(parent); if ((parent.offsetLeft = || parent.offsetTop) && !((tagName =3D=3D=3D "BODY") && (!previousStyle || previousStyle.position !=3D=3D = "absolute"))) { offsetX +=3D parent.offsetLeft; offsetY +=3D parent.offsetTop; } if (previous !=3D=3D = null && currentStyle) { = if = ((tagName !=3D=3D "TABLE") && (tagName !=3D=3D "TD") && (tagName !=3D=3D = "HTML")) { offsetX +=3D = parseInt(currentStyle.borderLeftWidth) || 0; offsetY +=3D = parseInt(currentStyle.borderTopWidth) || 0; } if (tagName =3D=3D=3D "TABLE" && (currentStyle.position =3D=3D=3D "relative" || = currentStyle.position =3D=3D=3D "absolute")) { offsetX +=3D parseInt(currentStyle.marginLeft) = || 0; offsetY +=3D parseInt(currentStyle.marginTop) || = 0; } } } currentStyle =3D = Sys.UI.DomElement._getCurrentStyle(element); var elementPosition =3D currentStyle ? currentStyle.position = : null; var elementPositioned =3D elementPosition && = (elementPosition !=3D=3D "static"); if (!elementPosition || (elementPosition !=3D=3D = "absolute")) { = for (var parent =3D element.parentNode; parent; parent =3D = parent.parentNode) { = tagName =3D parent.tagName; if ((tagName !=3D=3D "BODY") && (tagName !=3D=3D = "HTML") && (parent.scrollLeft || parent.scrollTop)) { offsetX -=3D (parent.scrollLeft || 0); offsetY -=3D (parent.scrollTop || 0); currentStyle =3D = Sys.UI.DomElement._getCurrentStyle(parent); offsetX +=3D = parseInt(currentStyle.borderLeftWidth) || 0; offsetY +=3D = parseInt(currentStyle.borderTopWidth) || 0; } } } return new Sys.UI.Point(offsetX, offsetY); } break; } Sys.UI.DomElement.removeCssClass =3D function = Sys$UI$DomElement$removeCssClass(element, className) { /// /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true}, {name: "className", type: String} ]); if (e) throw e; var currentClassName =3D ' ' + element.className + ' '; var index =3D currentClassName.indexOf(' ' + className + ' '); if (index >=3D 0) { element.className =3D (currentClassName.substr(0, index) + ' ' + currentClassName.substring(index + className.length + 1, = currentClassName.length)).trim(); } } Sys.UI.DomElement.setLocation =3D function = Sys$UI$DomElement$setLocation(element, x, y) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true}, {name: "x", type: Number, integer: true}, {name: "y", type: Number, integer: true} ]); if (e) throw e; var style =3D element.style; style.position =3D 'absolute'; style.left =3D x + "px"; style.top =3D y + "px"; } Sys.UI.DomElement.toggleCssClass =3D function = Sys$UI$DomElement$toggleCssClass(element, className) { /// /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true}, {name: "className", type: String} ]); if (e) throw e; if (Sys.UI.DomElement.containsCssClass(element, className)) { Sys.UI.DomElement.removeCssClass(element, className); } else { Sys.UI.DomElement.addCssClass(element, className); } } Sys.UI.DomElement._getCurrentStyle =3D function = Sys$UI$DomElement$_getCurrentStyle(element) { var w =3D (element.ownerDocument ? element.ownerDocument : = element.documentElement).defaultView; return ((w && (element !=3D=3D w) && w.getComputedStyle) ? = w.getComputedStyle(element, null) : element.style); } Sys.UI.Behavior =3D function Sys$UI$Behavior(element) { /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true} ]); if (e) throw e; Sys.UI.Behavior.initializeBase(this); this._element =3D element; var behaviors =3D element._behaviors; if (!behaviors) { element._behaviors =3D [this]; } else { behaviors[behaviors.length] =3D this; } } function Sys$UI$Behavior$get_element() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._element; } function Sys$UI$Behavior$get_id() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); var baseId =3D Sys.UI.Behavior.callBaseMethod(this, 'get_id'); if (baseId) return baseId; if (!this._element || !this._element.id) return ''; return this._element.id + '$' + this.get_name(); } function Sys$UI$Behavior$get_name() { if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (this._name) return this._name; var name =3D Object.getTypeName(this); var i =3D name.lastIndexOf('.'); if (i !=3D -1) name =3D name.substr(i + 1); if (!this.get_isInitialized()) this._name =3D name; return name; } function Sys$UI$Behavior$set_name(value) { if ((value =3D=3D=3D '') || (value.charAt(0) =3D=3D=3D ' ') || = (value.charAt(value.length - 1) =3D=3D=3D ' ')) throw Error.argument('value', Sys.Res.invalidId); if (typeof(this._element[value]) !=3D=3D 'undefined') throw = Error.invalidOperation(String.format(Sys.Res.behaviorDuplicateName, = value)); if (this.get_isInitialized()) throw = Error.invalidOperation(Sys.Res.cantSetNameAfterInit); this._name =3D value; } function Sys$UI$Behavior$initialize() { Sys.UI.Behavior.callBaseMethod(this, 'initialize'); var name =3D this.get_name(); if (name) this._element[name] =3D this; } function Sys$UI$Behavior$dispose() { Sys.UI.Behavior.callBaseMethod(this, 'dispose'); if (this._element) { var name =3D this.get_name(); if (name) { this._element[name] =3D null; } Array.remove(this._element._behaviors, this); delete this._element; } } Sys.UI.Behavior.prototype =3D { _name: null, get_element: Sys$UI$Behavior$get_element, get_id: Sys$UI$Behavior$get_id, get_name: Sys$UI$Behavior$get_name, set_name: Sys$UI$Behavior$set_name, initialize: Sys$UI$Behavior$initialize, dispose: Sys$UI$Behavior$dispose } Sys.UI.Behavior.registerClass('Sys.UI.Behavior', Sys.Component); Sys.UI.Behavior.getBehaviorByName =3D function = Sys$UI$Behavior$getBehaviorByName(element, name) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true}, {name: "name", type: String} ]); if (e) throw e; var b =3D element[name]; return (b && Sys.UI.Behavior.isInstanceOfType(b)) ? b : null; } Sys.UI.Behavior.getBehaviors =3D function = Sys$UI$Behavior$getBehaviors(element) { /// /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true} ]); if (e) throw e; if (!element._behaviors) return []; return Array.clone(element._behaviors); } Sys.UI.Behavior.getBehaviorsByType =3D function = Sys$UI$Behavior$getBehaviorsByType(element, type) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true}, {name: "type", type: Type} ]); if (e) throw e; var behaviors =3D element._behaviors; var results =3D []; if (behaviors) { for (var i =3D 0, l =3D behaviors.length; i < l; i++) { if (type.isInstanceOfType(behaviors[i])) { results[results.length] =3D behaviors[i]; } } } return results; } Sys.UI.VisibilityMode =3D function Sys$UI$VisibilityMode() { /// /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); throw Error.notImplemented(); } Sys.UI.VisibilityMode.prototype =3D { hide: 0, collapse: 1 } Sys.UI.VisibilityMode.registerEnum("Sys.UI.VisibilityMode"); Sys.UI.Control =3D function Sys$UI$Control(element) { /// var e =3D Function._validateParams(arguments, [ {name: "element", domElement: true} ]); if (e) throw e; if (typeof(element.control) !=3D 'undefined') throw = Error.invalidOperation(Sys.Res.controlAlreadyDefined); Sys.UI.Control.initializeBase(this); this._element =3D element; element.control =3D this; this._oldDisplayMode =3D this._element.style.display; if (!this._oldDisplayMode || (this._oldDisplayMode =3D=3D 'none')) { this._oldDisplayMode =3D ''; } } function Sys$UI$Control$get_element() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._element; } function Sys$UI$Control$get_id() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (!this._element) return ''; return this._element.id; } function Sys$UI$Control$set_id(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: String}]); if (e) throw e; throw Error.invalidOperation(Sys.Res.cantSetId); } function Sys$UI$Control$get_parent() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); if (this._parent) { return this._parent; } else { var parentElement =3D this._element.parentNode; while (parentElement) { if (parentElement.control) { return parentElement.control; } parentElement =3D parentElement.parentNode; } return null; } } function Sys$UI$Control$set_parent(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: Sys.UI.Control}]); if (e) throw e; var parents =3D [this]; var current =3D value; while (current) { if (Array.contains(parents, current)) throw = Error.invalidOperation(Sys.Res.circularParentChain); parents[parents.length] =3D current; current =3D current.get_parent(); } this._parent =3D value; } function Sys$UI$Control$get_visibilityMode() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._visibilityMode; } function Sys$UI$Control$set_visibilityMode(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: Sys.UI.VisibilityMode}]); if (e) throw e; if (this._visibilityMode !=3D=3D value) { this._visibilityMode =3D value; if (this.get_visible() =3D=3D=3D false) { if (this._visibilityMode =3D=3D=3D = Sys.UI.VisibilityMode.hide) { this._element.style.display =3D = this._oldDisplayMode; } else { this._element.style.display =3D 'none'; } } } this._visibilityMode =3D value; } function Sys$UI$Control$get_visible() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return (this._element.style.visibility !=3D 'hidden'); } function Sys$UI$Control$set_visible(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: Boolean}]); if (e) throw e; if (value !=3D this.get_visible()) { this._element.style.visibility =3D value ? 'visible' : = 'hidden'; if (value || (this._visibilityMode =3D=3D=3D = Sys.UI.VisibilityMode.hide)) { this._element.style.display =3D this._oldDisplayMode; } else { this._element.style.display =3D 'none'; } } } function Sys$UI$Control$addCssClass(className) { /// var e =3D Function._validateParams(arguments, [ {name: "className", type: String} ]); if (e) throw e; Sys.UI.DomElement.addCssClass(this._element, className); } function Sys$UI$Control$dispose() { Sys.UI.Control.callBaseMethod(this, 'dispose'); if (this._element) { this._element.control =3D undefined; delete this._element; } } function Sys$UI$Control$initialize() { Sys.UI.Control.callBaseMethod(this, 'initialize'); var elt =3D this._element; } function Sys$UI$Control$onBubbleEvent(source, args) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "source"}, {name: "args", type: Sys.EventArgs} ]); if (e) throw e; return false; } function Sys$UI$Control$raiseBubbleEvent(source, args) { /// /// var e =3D Function._validateParams(arguments, [ {name: "source"}, {name: "args", type: Sys.EventArgs} ]); if (e) throw e; var currentTarget =3D this.get_parent(); while (currentTarget) { if (currentTarget.onBubbleEvent(source, args)) { return; } currentTarget =3D currentTarget.get_parent(); } } function Sys$UI$Control$removeCssClass(className) { /// var e =3D Function._validateParams(arguments, [ {name: "className", type: String} ]); if (e) throw e; Sys.UI.DomElement.removeCssClass(this._element, className); } function Sys$UI$Control$toggleCssClass(className) { /// var e =3D Function._validateParams(arguments, [ {name: "className", type: String} ]); if (e) throw e; Sys.UI.DomElement.toggleCssClass(this._element, className); } Sys.UI.Control.prototype =3D { _parent: null, _visibilityMode: Sys.UI.VisibilityMode.hide, get_element: Sys$UI$Control$get_element, get_id: Sys$UI$Control$get_id, set_id: Sys$UI$Control$set_id, get_parent: Sys$UI$Control$get_parent, set_parent: Sys$UI$Control$set_parent, get_visibilityMode: Sys$UI$Control$get_visibilityMode, set_visibilityMode: Sys$UI$Control$set_visibilityMode, get_visible: Sys$UI$Control$get_visible, set_visible: Sys$UI$Control$set_visible, addCssClass: Sys$UI$Control$addCssClass, dispose: Sys$UI$Control$dispose, initialize: Sys$UI$Control$initialize, onBubbleEvent: Sys$UI$Control$onBubbleEvent, raiseBubbleEvent: Sys$UI$Control$raiseBubbleEvent, removeCssClass: Sys$UI$Control$removeCssClass, toggleCssClass: Sys$UI$Control$toggleCssClass } Sys.UI.Control.registerClass('Sys.UI.Control', Sys.Component); Type.registerNamespace('Sys'); Sys.Res=3D{ "argumentTypeName":"Value is not the name of an existing type.", "methodRegisteredTwice":"Method {0} has already been registered.", "cantSetIdAfterInit":"The id property can\u0027t be set on this object = after initialization.", "componentCantSetIdAfterAddedToApp":"The id property of a component = can\u0027t be set after it\u0027s been added to the Application = object.", "behaviorDuplicateName":"A behavior with name \u0027{0}\u0027 already = exists or it is the name of an existing property on the target = element.", "notATypeName":"Value is not a valid type name.", "typeShouldBeTypeOrString":"Value is not a valid type or a valid type = name.", "boolTrueOrFalse":"Value must be \u0027true\u0027 or = \u0027false\u0027.", "stringFormatInvalid":"The format string is invalid.", "referenceNotFound":"Component \u0027{0}\u0027 was not found.", "enumReservedName":"\u0027{0}\u0027 is a reserved name that can\u0027t = be used as an enum value name.", "eventHandlerNotFound":"Handler not found.", "circularParentChain":"The chain of control parents can\u0027t have = circular references.", "undefinedEvent":"\u0027{0}\u0027 is not an event.", "notAMethod":"{0} is not a method.", "propertyUndefined":"\u0027{0}\u0027 is not a property or an existing = field.", "eventHandlerInvalid":"Handler was not added through the = Sys.UI.DomEvent.addHandler method.", "scriptLoadFailedDebug":"The script \u0027{0}\u0027 failed to load. = Check for:\r\n Inaccessible path.\r\n Script errors. (IE) Enable = \u0027Display a notification about every script error\u0027 under = advanced settings.\r\n Missing call to = Sys.Application.notifyScriptLoaded().", "propertyNotWritable":"\u0027{0}\u0027 is not a writable property.", "enumInvalidValueName":"\u0027{0}\u0027 is not a valid name for an enum = value.", "controlAlreadyDefined":"A control is already associated with the = element.", "namespaceContainsObject":"Object {0} already exists and is not a = namespace.", "cantAddNonFunctionhandler":"Can\u0027t add a handler that is not a = function.", "scriptLoaderAlreadyLoading":"ScriptLoader.loadScripts cannot be called = while the ScriptLoader is already loading scripts.", "invalidNameSpace":"Value is not a valid namespace identifier.", "notAnInterface":"Value is not a valid interface.", "eventHandlerNotFunction":"Handler must be a function.", "propertyNotAnArray":"\u0027{0}\u0027 is not an Array property.", "typeRegisteredTwice":"Type {0} has already been registered.", "cantSetNameAfterInit":"The name property can\u0027t be set on this = object after initialization.", "appDuplicateComponent":"Two components with the same id \u0027{0}\u0027 = can\u0027t be added to the application.", "appComponentMustBeInitialized":"Components must be initialized before = they are added to the Application object.", "baseNotAClass":"Value is not a class.", "methodNotFound":"No method found with name \u0027{0}\u0027.", "arrayParseBadFormat":"Value must be a valid string representation for = an array. It must start with a \u0027[\u0027 and end with a = \u0027]\u0027.", "cantSetId":"The id property can\u0027t be set on this object.", "stringFormatBraceMismatch":"The format string contains an unmatched = opening or closing brace.", "enumValueNotInteger":"An enumeration definition can only contain = integer values.", "propertyNullOrUndefined":"Cannot set the properties of \u0027{0}\u0027 = because it returned a null value.", "componentCantSetIdTwice":"The id property of a component can\u0027t be = set more than once.", "createComponentOnDom":"Value must be null for Components that are not = Controls or Behaviors.", "createNotComponent":"{0} does not derive from Sys.Component.", "createNoDom":"Value must not be null for Controls and Behaviors.", "cantAddWithoutId":"Can\u0027t add a component that doesn\u0027t have an = id.", "badTypeName":"Value is not the name of the type being registered or the = name is a reserved word.", "argumentInteger":"Value must be an integer.", "scriptLoadMultipleCallbacks":"The script \u0027{0}\u0027 contains = multiple calls to Sys.Application.notifyScriptLoaded(). Only one is = allowed.", "invokeCalledTwice":"Cannot call invoke more than once.", "webServiceFailed":"The server method \u0027{0}\u0027 failed with the = following error: {1}", "argumentType":"Object cannot be converted to the required type.", "argumentNull":"Value cannot be null.", "controlCantSetId":"The id property can\u0027t be set on a control.", "formatBadFormatSpecifier":"Format specifier was invalid.", "webServiceFailedNoMsg":"The server method \u0027{0}\u0027 failed.", "argumentDomElement":"Value must be a DOM element.", "invalidExecutorType":"Could not create a valid = Sys.Net.WebRequestExecutor from: {0}.", "cannotCallBeforeResponse":"Cannot call {0} when responseAvailable is = false.", "actualValue":"Actual value was {0}.", "enumInvalidValue":"\u0027{0}\u0027 is not a valid value for enum {1}.", "scriptLoadFailed":"The script \u0027{0}\u0027 could not be loaded.", "parameterCount":"Parameter count mismatch.", "cannotDeserializeEmptyString":"Cannot deserialize empty string.", "formatInvalidString":"Input string was not in a correct format.", "invalidTimeout":"Value must be greater than or equal to zero.", "cannotAbortBeforeStart":"Cannot abort when executor has not started.", "argument":"Value does not fall within the expected range.", "cannotDeserializeInvalidJson":"Cannot deserialize. The data does not = correspond to valid JSON.", "invalidHttpVerb":"httpVerb cannot be set to an empty or null string.", "nullWebRequest":"Cannot call executeRequest with a null webRequest.", "eventHandlerInvalid":"Handler was not added through the = Sys.UI.DomEvent.addHandler method.", "cannotSerializeNonFiniteNumbers":"Cannot serialize non finite = numbers.", "argumentUndefined":"Value cannot be undefined.", "webServiceInvalidReturnType":"The server method \u0027{0}\u0027 = returned an invalid type. Expected type: {1}", "servicePathNotSet":"The path to the web service has not been set.", "argumentTypeWithTypes":"Object of type \u0027{0}\u0027 cannot be = converted to type \u0027{1}\u0027.", "cannotCallOnceStarted":"Cannot call {0} once started.", "badBaseUrl1":"Base URL does not contain ://.", "badBaseUrl2":"Base URL does not contain another /.", "badBaseUrl3":"Cannot find last / in base URL.", "setExecutorAfterActive":"Cannot set executor after it has become = active.", "paramName":"Parameter name: {0}", "cannotCallOutsideHandler":"Cannot call {0} outside of a completed event = handler.", "format":"One of the identified items was in an invalid format.", "assertFailedCaller":"Assertion Failed: {0}\r\nat {1}", "argumentOutOfRange":"Specified argument was out of the range of valid = values.", "webServiceTimedOut":"The server method \u0027{0}\u0027 timed out.", "notImplemented":"The method or operation is not implemented.", "assertFailed":"Assertion Failed: {0}", "invalidOperation":"Operation is not valid due to the current state of = the object.", "breakIntoDebugger":"{0}\r\n\r\nBreak into debugger?" }; if(typeof(Sys)!=3D=3D'undefined')Sys.Application.notifyScriptLoaded(); ------=_NextPart_000_0000_01C9B307.13EEF460 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.archivesindex.sc.gov/OnlineArchives/ScriptResource.axd?d=iXduWNih5Kl9Ef4qEzt-ntYc_4VMjA1TS9nwhB9yDIJZcmFN6CL_HPMs8hjb_bwqdOiIgwNOiSq4YYE-njcUXbSOXpmdhM_aNfNfCq-IASel27s8C5cR37TEarXKvwah0&t=633258921393729367 =EF=BB=BF//--------------------------------------------------------------= --------- // Copyright (C) Microsoft Corporation. All rights reserved. //-----------------------------------------------------------------------= // MicrosoftAjaxWebForms.js // Microsoft AJAX ASP.NET WebForms Framework. Type.registerNamespace('Sys.WebForms'); Sys.WebForms.BeginRequestEventArgs =3D function = Sys$WebForms$BeginRequestEventArgs(request, postBackElement) { /// /// var e =3D Function._validateParams(arguments, [ {name: "request", type: Sys.Net.WebRequest}, {name: "postBackElement", domElement: true} ]); if (e) throw e; Sys.WebForms.BeginRequestEventArgs.initializeBase(this); this._request =3D request; this._postBackElement =3D postBackElement; } function Sys$WebForms$BeginRequestEventArgs$get_postBackElement() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._postBackElement; } function Sys$WebForms$BeginRequestEventArgs$get_request() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._request; } Sys.WebForms.BeginRequestEventArgs.prototype =3D { get_postBackElement: = Sys$WebForms$BeginRequestEventArgs$get_postBackElement, get_request: Sys$WebForms$BeginRequestEventArgs$get_request } Sys.WebForms.BeginRequestEventArgs.registerClass('Sys.WebForms.BeginReque= stEventArgs', Sys.EventArgs); Sys.WebForms.EndRequestEventArgs =3D function = Sys$WebForms$EndRequestEventArgs(error, dataItems, response) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "error", type: Error, mayBeNull: true}, {name: "dataItems", type: Object, mayBeNull: true}, {name: "response", type: Sys.Net.WebRequestExecutor} ]); if (e) throw e; Sys.WebForms.EndRequestEventArgs.initializeBase(this); this._errorHandled =3D false; this._error =3D error; this._dataItems =3D dataItems || new Object(); this._response =3D response; } function Sys$WebForms$EndRequestEventArgs$get_dataItems() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._dataItems; } function Sys$WebForms$EndRequestEventArgs$get_error() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._error; } function Sys$WebForms$EndRequestEventArgs$get_errorHandled() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._errorHandled; } function Sys$WebForms$EndRequestEventArgs$set_errorHandled(value) { var e =3D Function._validateParams(arguments, [{name: "value", = type: Boolean}]); if (e) throw e; this._errorHandled =3D value; } function Sys$WebForms$EndRequestEventArgs$get_response() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._response; } Sys.WebForms.EndRequestEventArgs.prototype =3D { get_dataItems: Sys$WebForms$EndRequestEventArgs$get_dataItems, get_error: Sys$WebForms$EndRequestEventArgs$get_error, get_errorHandled: Sys$WebForms$EndRequestEventArgs$get_errorHandled, set_errorHandled: Sys$WebForms$EndRequestEventArgs$set_errorHandled, get_response: Sys$WebForms$EndRequestEventArgs$get_response } Sys.WebForms.EndRequestEventArgs.registerClass('Sys.WebForms.EndRequestEv= entArgs', Sys.EventArgs); Sys.WebForms.InitializeRequestEventArgs =3D function = Sys$WebForms$InitializeRequestEventArgs(request, postBackElement) { /// /// var e =3D Function._validateParams(arguments, [ {name: "request", type: Sys.Net.WebRequest}, {name: "postBackElement", domElement: true} ]); if (e) throw e; Sys.WebForms.InitializeRequestEventArgs.initializeBase(this); this._request =3D request; this._postBackElement =3D postBackElement; } function = Sys$WebForms$InitializeRequestEventArgs$get_postBackElement() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._postBackElement; } function Sys$WebForms$InitializeRequestEventArgs$get_request() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._request; } Sys.WebForms.InitializeRequestEventArgs.prototype =3D { get_postBackElement: = Sys$WebForms$InitializeRequestEventArgs$get_postBackElement, get_request: Sys$WebForms$InitializeRequestEventArgs$get_request } Sys.WebForms.InitializeRequestEventArgs.registerClass('Sys.WebForms.Initi= alizeRequestEventArgs', Sys.CancelEventArgs); Sys.WebForms.PageLoadedEventArgs =3D function = Sys$WebForms$PageLoadedEventArgs(panelsUpdated, panelsCreated, = dataItems) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "panelsUpdated", type: Array}, {name: "panelsCreated", type: Array}, {name: "dataItems", type: Object, mayBeNull: true} ]); if (e) throw e; Sys.WebForms.PageLoadedEventArgs.initializeBase(this); this._panelsUpdated =3D panelsUpdated; this._panelsCreated =3D panelsCreated; this._dataItems =3D dataItems || new Object(); } function Sys$WebForms$PageLoadedEventArgs$get_dataItems() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._dataItems; } function Sys$WebForms$PageLoadedEventArgs$get_panelsCreated() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._panelsCreated; } function Sys$WebForms$PageLoadedEventArgs$get_panelsUpdated() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._panelsUpdated; } Sys.WebForms.PageLoadedEventArgs.prototype =3D { get_dataItems: Sys$WebForms$PageLoadedEventArgs$get_dataItems, get_panelsCreated: = Sys$WebForms$PageLoadedEventArgs$get_panelsCreated, get_panelsUpdated: = Sys$WebForms$PageLoadedEventArgs$get_panelsUpdated } Sys.WebForms.PageLoadedEventArgs.registerClass('Sys.WebForms.PageLoadedEv= entArgs', Sys.EventArgs); Sys.WebForms.PageLoadingEventArgs =3D function = Sys$WebForms$PageLoadingEventArgs(panelsUpdating, panelsDeleting, = dataItems) { /// /// /// var e =3D Function._validateParams(arguments, [ {name: "panelsUpdating", type: Array}, {name: "panelsDeleting", type: Array}, {name: "dataItems", type: Object, mayBeNull: true} ]); if (e) throw e; Sys.WebForms.PageLoadingEventArgs.initializeBase(this); this._panelsUpdating =3D panelsUpdating; this._panelsDeleting =3D panelsDeleting; this._dataItems =3D dataItems || new Object(); } function Sys$WebForms$PageLoadingEventArgs$get_dataItems() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._dataItems; } function Sys$WebForms$PageLoadingEventArgs$get_panelsDeleting() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._panelsDeleting; } function Sys$WebForms$PageLoadingEventArgs$get_panelsUpdating() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._panelsUpdating; } Sys.WebForms.PageLoadingEventArgs.prototype =3D { get_dataItems: Sys$WebForms$PageLoadingEventArgs$get_dataItems, get_panelsDeleting: = Sys$WebForms$PageLoadingEventArgs$get_panelsDeleting, get_panelsUpdating: = Sys$WebForms$PageLoadingEventArgs$get_panelsUpdating } Sys.WebForms.PageLoadingEventArgs.registerClass('Sys.WebForms.PageLoading= EventArgs', Sys.EventArgs); Sys.WebForms.PageRequestManager =3D function = Sys$WebForms$PageRequestManager() { this._form =3D null; this._updatePanelIDs =3D null; this._updatePanelClientIDs =3D null; this._oldUpdatePanelIDs =3D null; this._childUpdatePanelIDs =3D null; this._panelsToRefreshIDs =3D null; this._updatePanelHasChildrenAsTriggers =3D null; this._asyncPostBackControlIDs =3D null; this._asyncPostBackControlClientIDs =3D null; this._postBackControlIDs =3D null; this._postBackControlClientIDs =3D null; this._scriptManagerID =3D null; this._pageLoadedHandler =3D null; this._additionalInput =3D null; this._onsubmit =3D null; this._onSubmitStatements =3D []; this._originalDoPostBack =3D null; this._postBackSettings =3D null; this._request =3D null; this._onFormSubmitHandler =3D null; this._onFormElementClickHandler =3D null; this._onWindowUnloadHandler =3D null; this._asyncPostBackTimeout =3D null; this._controlIDToFocus =3D null; this._scrollPosition =3D null; this._dataItems =3D null; this._response =3D null; this._processingRequest =3D false; this._scriptDisposes =3D {}; } function Sys$WebForms$PageRequestManager$_get_eventHandlerList() { if (!this._events) { this._events =3D new Sys.EventHandlerList(); } return this._events; } function Sys$WebForms$PageRequestManager$get_isInAsyncPostBack() { /// if (arguments.length !=3D=3D 0) throw Error.parameterCount(); return this._request !=3D=3D null; } function Sys$WebForms$PageRequestManager$add_beginRequest(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this._get_eventHandlerList().addHandler("beginRequest", = handler); } function = Sys$WebForms$PageRequestManager$remove_beginRequest(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this._get_eventHandlerList().removeHandler("beginRequest", = handler); } function Sys$WebForms$PageRequestManager$add_endRequest(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this._get_eventHandlerList().addHandler("endRequest", handler); } function Sys$WebForms$PageRequestManager$remove_endRequest(handler) = { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this._get_eventHandlerList().removeHandler("endRequest", = handler); } function = Sys$WebForms$PageRequestManager$add_initializeRequest(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this._get_eventHandlerList().addHandler("initializeRequest", = handler); } function = Sys$WebForms$PageRequestManager$remove_initializeRequest(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this._get_eventHandlerList().removeHandler("initializeRequest", = handler); } function Sys$WebForms$PageRequestManager$add_pageLoaded(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this._get_eventHandlerList().addHandler("pageLoaded", handler); } function Sys$WebForms$PageRequestManager$remove_pageLoaded(handler) = { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this._get_eventHandlerList().removeHandler("pageLoaded", = handler); } function Sys$WebForms$PageRequestManager$add_pageLoading(handler) { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this._get_eventHandlerList().addHandler("pageLoading", handler); } function Sys$WebForms$PageRequestManager$remove_pageLoading(handler) = { var e =3D Function._validateParams(arguments, [{name: "handler", = type: Function}]); if (e) throw e; this._get_eventHandlerList().removeHandler("pageLoading", = handler); } function Sys$WebForms$PageRequestManager$abortPostBack() { if (!this._processingRequest && this._request) { this._request.get_executor().abort(); this._request =3D null; } } function = Sys$WebForms$PageRequestManager$_createPageRequestManagerTimeoutError() = { var displayMessage =3D = "Sys.WebForms.PageRequestManagerTimeoutException: " + = Sys.WebForms.Res.PRM_TimeoutError; var e =3D Error.create(displayMessage, {name: = 'Sys.WebForms.PageRequestManagerTimeoutException'}); e.popStackFrame(); return e; } function = Sys$WebForms$PageRequestManager$_createPageRequestManagerServerError(http= StatusCode, message) { var displayMessage =3D message || = ("Sys.WebForms.PageRequestManagerServerErrorException: " + = String.format(Sys.WebForms.Res.PRM_ServerError, httpStatusCode)); var e =3D Error.create(displayMessage, { name: 'Sys.WebForms.PageRequestManagerServerErrorException', httpStatusCode: httpStatusCode }); e.popStackFrame(); return e; } function = Sys$WebForms$PageRequestManager$_createPageRequestManagerParserError(pars= erErrorMessage) { var displayMessage =3D = "Sys.WebForms.PageRequestManagerParserErrorException: " + = String.format(Sys.WebForms.Res.PRM_ParserError, parserErrorMessage); var e =3D Error.create(displayMessage, {name: = 'Sys.WebForms.PageRequestManagerParserErrorException'}); e.popStackFrame(); return e; } function = Sys$WebForms$PageRequestManager$_createPostBackSettings(async, panelID, = sourceElement) { return { async:async, panelID:panelID, = sourceElement:sourceElement }; } function Sys$WebForms$PageRequestManager$_convertToClientIDs(source, = destinationIDs, destinationClientIDs) { if (source) { for (var i =3D 0; i < source.length; i++) { Array.add(destinationIDs, source[i]); Array.add(destinationClientIDs, = this._uniqueIDToClientID(source[i])); } } } function Sys$WebForms$PageRequestManager$_decodeString(encodedValue) = { return encodedValue.replace(/\\\u00FF\\/g, = "\u0000").replace(/\u00FF\u00FF/g, "\u00FF"); } function Sys$WebForms$PageRequestManager$_destroyTree(element) { if (element.nodeType =3D=3D=3D 1) { var childNodes =3D = element.childNodes; for (var i =3D childNodes.length - 1; i >=3D 0; i--) { var node =3D childNodes[i]; if (node.nodeType =3D=3D=3D 1) { if (node.dispose && typeof(node.dispose) =3D=3D=3D = "function") { node.dispose(); } else if (node.control && = typeof(node.control.dispose) =3D=3D=3D "function") { node.control.dispose(); } var behaviors =3D = Sys.UI.Behavior.getBehaviors(node); for (var j =3D behaviors.length - 1; j >=3D 0; j--) = { behaviors[j].dispose(); } this._destroyTree(node); } } } } function Sys$WebForms$PageRequestManager$dispose() { if (this._form) { Sys.UI.DomEvent.removeHandler(this._form, 'submit', = this._onFormSubmitHandler); Sys.UI.DomEvent.removeHandler(this._form, 'click', = this._onFormElementClickHandler); Sys.UI.DomEvent.removeHandler(window, 'unload', = this._onWindowUnloadHandler); Sys.UI.DomEvent.removeHandler(window, 'load', = this._pageLoadedHandler); } if (this._originalDoPostBack) { window.__doPostBack =3D this._originalDoPostBack; this._originalDoPostBack =3D null; } this._form =3D null; this._updatePanelIDs =3D null; this._oldUpdatePanelIDs =3D null; this._childUpdatePanelIDs =3D null; this._updatePanelClientIDs =3D null; this._asyncPostBackControlIDs =3D null; this._asyncPostBackControlClientIDs =3D null; this._postBackControlIDs =3D null; this._postBackControlClientIDs =3D null; this._asyncPostBackTimeout =3D null; this._scrollPosition =3D null; this._dataItems =3D null; } function Sys$WebForms$PageRequestManager$_doPostBack(eventTarget, = eventArgument) { this._additionalInput =3D null; var form =3D this._form; if (form.action !=3D=3D form._initialAction) { this._postBackSettings =3D = this._createPostBackSettings(false, null, null); } else { var clientID =3D = this._uniqueIDToClientID(eventTarget); var postBackElement =3D document.getElementById(clientID); if (!postBackElement) { = if (Array.contains(this._asyncPostBackControlIDs, eventTarget)) { this._postBackSettings =3D = this._createPostBackSettings(true, this._scriptManagerID + '|' + = eventTarget, null); } else { if (Array.contains(this._postBackControlIDs, = eventTarget)) { this._postBackSettings = =3D this._createPostBackSettings(false, null, null); } else { = var nearestUniqueIDMatch =3D = this._findNearestElement(eventTarget); if (nearestUniqueIDMatch) { = this._postBackSettings =3D = this._getPostBackSettings(nearestUniqueIDMatch, eventTarget); } else { = this._postBackSettings =3D = this._createPostBackSettings(false, null, null); } } } } else { this._postBackSettings = =3D this._getPostBackSettings(postBackElement, eventTarget); } } if (!this._postBackSettings.async) { form.onsubmit =3D this._onsubmit; this._originalDoPostBack(eventTarget, eventArgument); form.onsubmit =3D null; return; } form.__EVENTTARGET.value =3D eventTarget; form.__EVENTARGUMENT.value =3D eventArgument; this._onFormSubmit(); } function Sys$WebForms$PageRequestManager$_elementContains(container, = element) { while (element) { if (element =3D=3D=3D container) { return true; } element =3D element.parentNode; } return false; } function Sys$WebForms$PageRequestManager$_endPostBack(error, = response) { this._processingRequest =3D false; this._request =3D null; this._additionalInput =3D null; var handler =3D = this._get_eventHandlerList().getHandler("endRequest"); var errorHandled =3D false; if (handler) { var eventArgs =3D new = Sys.WebForms.EndRequestEventArgs(error, this._dataItems, response); handler(this, eventArgs); errorHandled =3D eventArgs.get_errorHandled(); } this._dataItems =3D null; if (error && !errorHandled) { alert(error.message); } } function = Sys$WebForms$PageRequestManager$_findNearestElement(uniqueID) { while (uniqueID.length > 0) { var clientID =3D this._uniqueIDToClientID(uniqueID); var element =3D document.getElementById(clientID); if (element) { return element; } var indexOfLastDollar =3D uniqueID.lastIndexOf('$'); if (indexOfLastDollar =3D=3D=3D -1) { return null; } uniqueID =3D uniqueID.substring(0, indexOfLastDollar); } return null; } function Sys$WebForms$PageRequestManager$_findText(text, location) { var startIndex =3D Math.max(0, location - 20); var endIndex =3D Math.min(text.length, location + 20); return text.substring(startIndex, endIndex); } function = Sys$WebForms$PageRequestManager$_getPageLoadedEventArgs(initialLoad) { = =20 var updated =3D []; var created =3D []; var oldIDs =3D this._oldUpdatePanelIDs || []; = var newIDs =3D this._updatePanelIDs; var childIDs =3D = this._childUpdatePanelIDs || []; var refreshedIDs =3D = this._panelsToRefreshIDs || [];=20 for (var i =3D 0; i < refreshedIDs.length; i++) { Array.add(updated, = document.getElementById(this._uniqueIDToClientID(refreshedIDs[i]))); } for (var i =3D 0; i < newIDs.length; i++) { if (initialLoad || Array.indexOf(childIDs, newIDs[i]) = !=3D=3D -1) { Array.add(created, = document.getElementById(this._uniqueIDToClientID(newIDs[i]))); } } return new Sys.WebForms.PageLoadedEventArgs(updated, created, = this._dataItems); } function Sys$WebForms$PageRequestManager$_getPageLoadingEventArgs() = { = =20 var updated =3D []; var deleted =3D []; var oldIDs =3D this._oldUpdatePanelIDs; var newIDs =3D this._updatePanelIDs; var childIDs =3D this._childUpdatePanelIDs; var refreshedIDs =3D this._panelsToRefreshIDs; for (var i =3D 0; i < refreshedIDs.length; i++) { Array.add(updated, = document.getElementById(this._uniqueIDToClientID(refreshedIDs[i]))); } for (var i =3D 0; i < oldIDs.length; i++) { if (Array.indexOf(refreshedIDs, oldIDs[i]) =3D=3D=3D -1 && (Array.indexOf(newIDs, oldIDs[i]) =3D=3D=3D -1 || = Array.indexOf(childIDs, oldIDs[i]) > -1)) { Array.add(deleted, = document.getElementById(this._uniqueIDToClientID(oldIDs[i]))); } } return new Sys.WebForms.PageLoadingEventArgs(updated, deleted, = this._dataItems); } function = Sys$WebForms$PageRequestManager$_getPostBackSettings(element, = elementUniqueID) { var originalElement =3D element; var proposedSettings =3D null; while (element) { if (element.id) { if (!proposedSettings && = Array.contains(this._asyncPostBackControlClientIDs, element.id)) { proposedSettings =3D = this._createPostBackSettings(true, this._scriptManagerID + '|' + = elementUniqueID, originalElement); } else { if (!proposedSettings && = Array.contains(this._postBackControlClientIDs, element.id)) { return = this._createPostBackSettings(false, null, null); } else { var indexOfPanel =3D = Array.indexOf(this._updatePanelClientIDs, element.id); if (indexOfPanel !=3D=3D -1) { if = (this._updatePanelHasChildrenAsTriggers[indexOfPanel]) { =20 = return = this._createPostBackSettings(true, this._updatePanelIDs[indexOfPanel] + = '|' + elementUniqueID, originalElement); } else { = return this._createPostBackSettings(true, = this._scriptManagerID + '|' + elementUniqueID, originalElement); } } } } if (!proposedSettings && = this._matchesParentIDInList(element.id, = this._asyncPostBackControlClientIDs)) { proposedSettings =3D = this._createPostBackSettings(true, this._scriptManagerID + '|' + = elementUniqueID, originalElement); } else { if (!proposedSettings && = this._matchesParentIDInList(element.id, this._postBackControlClientIDs)) = { return = this._createPostBackSettings(false, null, null); } } } element =3D element.parentNode; } if (!proposedSettings) { return this._createPostBackSettings(false, null, = null); } else { return proposedSettings; } } function Sys$WebForms$PageRequestManager$_getScrollPosition() { var d =3D document.documentElement; if (d && (this._validPosition(d.scrollLeft) || = this._validPosition(d.scrollTop))) { return { x: d.scrollLeft, y: d.scrollTop }; } else { d =3D document.body; if (d && (this._validPosition(d.scrollLeft) || = this._validPosition(d.scrollTop))) { return { x: d.scrollLeft, y: d.scrollTop }; } else { if (this._validPosition(window.pageXOffset) || = this._validPosition(window.pageYOffset)) { return { x: window.pageXOffset, y: window.pageYOffset }; } else { return { x: 0, y: 0 }; } } } } function = Sys$WebForms$PageRequestManager$_initializeInternal(scriptManagerID, = formElement) { this._scriptManagerID =3D scriptManagerID; this._form =3D formElement; =20 this._form._initialAction =3D this._form.action; this._onsubmit =3D this._form.onsubmit; this._form.onsubmit =3D null; this._onFormSubmitHandler =3D Function.createDelegate(this, = this._onFormSubmit); this._onFormElementClickHandler =3D = Function.createDelegate(this, this._onFormElementClick); this._onWindowUnloadHandler =3D 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 =3D window.__doPostBack; if (this._originalDoPostBack) { window.__doPostBack =3D Function.createDelegate(this, = this._doPostBack); } this._pageLoadedHandler =3D Function.createDelegate(this, = this._pageLoadedInitialLoad); Sys.UI.DomEvent.addHandler(window, 'load', = this._pageLoadedHandler); } function = Sys$WebForms$PageRequestManager$_matchesParentIDInList(clientID, = parentIDList) { for (var i =3D 0; i < parentIDList.length; i++) { if (clientID.startsWith(parentIDList[i] + "_")) { return true; } } return false; } function Sys$WebForms$PageRequestManager$_onFormElementClick(evt) { var element =3D evt.target; if (element.disabled) { return; } this._postBackSettings =3D = this._getPostBackSettings(element, element.name); if (element.name) { if (element.tagName =3D=3D=3D 'INPUT') { var type =3D element.type; if (type =3D=3D=3D 'submit') { this._additionalInput =3D element.name + '=3D' + = encodeURIComponent(element.value); } else if (type =3D=3D=3D 'image') { var x =3D evt.offsetX; var y =3D evt.offsetY; this._additionalInput =3D element.name + '.x=3D' + x = + '&' + element.name + '.y=3D' + y; } } else if ((element.tagName =3D=3D=3D 'BUTTON') && = (element.name.length !=3D=3D 0) && (element.type =3D=3D=3D 'submit')) { this._additionalInput =3D element.name + '=3D' + = encodeURIComponent(element.value); } } } function Sys$WebForms$PageRequestManager$_onFormSubmit(evt) { var continueSubmit =3D true; if (this._onsubmit) { continueSubmit =3D this._onsubmit(); } if (continueSubmit) { for (var i =3D 0; i < this._onSubmitStatements.length; i++) = { if (!this._onSubmitStatements[i]()) { continueSubmit =3D false; break; } } } if (!continueSubmit) { if (evt) { evt.preventDefault(); } return; } var form =3D this._form; if (form.action !=3D=3D form._initialAction) { return; } if (!this._postBackSettings.async) { return; } var formBody =3D new Sys.StringBuilder(); formBody.append(this._scriptManagerID + '=3D' + = this._postBackSettings.panelID + '&'); var count =3D form.elements.length; for (var i =3D 0; i < count; i++) { var element =3D form.elements[i]; var name =3D element.name; if (typeof(name) =3D=3D=3D "undefined" || (name =3D=3D=3D = null) || (name.length =3D=3D=3D 0)) { continue; } var tagName =3D element.tagName; if (tagName =3D=3D=3D 'INPUT') { var type =3D element.type; if ((type =3D=3D=3D 'text') || (type =3D=3D=3D 'password') || (type =3D=3D=3D 'hidden') || (((type =3D=3D=3D 'checkbox') || (type =3D=3D=3D = 'radio')) && element.checked)) { formBody.append(name); formBody.append('=3D'); formBody.append(encodeURIComponent(element.value)); formBody.append('&'); } } else if (tagName =3D=3D=3D 'SELECT') { var optionCount =3D element.options.length; for (var j =3D 0; j < optionCount; j++) { var option =3D element.options[j]; if (option.selected) { formBody.append(name); formBody.append('=3D'); = formBody.append(encodeURIComponent(option.value)); formBody.append('&'); } } } else if (tagName =3D=3D=3D 'TEXTAREA') { formBody.append(name); formBody.append('=3D'); formBody.append(encodeURIComponent(element.value)); formBody.append('&'); } } if (this._additionalInput) { formBody.append(this._additionalInput); this._additionalInput =3D null; } var request =3D new Sys.Net.WebRequest(); request.set_url(form.action); request.get_headers()['X-MicrosoftAjax'] =3D 'Delta=3Dtrue'; request.get_headers()['Cache-Control'] =3D 'no-cache'; request.set_timeout(this._asyncPostBackTimeout); request.add_completed(Function.createDelegate(this, = this._onFormSubmitCompleted)); request.set_body(formBody.toString()); var handler =3D = this._get_eventHandlerList().getHandler("initializeRequest"); if (handler) { var eventArgs =3D new = Sys.WebForms.InitializeRequestEventArgs(request, = this._postBackSettings.sourceElement); handler(this, eventArgs); continueSubmit =3D !eventArgs.get_cancel(); } if (!continueSubmit) { if (evt) { evt.preventDefault(); } return; } this._scrollPosition =3D this._getScrollPosition(); this.abortPostBack(); handler =3D = this._get_eventHandlerList().getHandler("beginRequest"); if (handler) { var eventArgs =3D new = Sys.WebForms.BeginRequestEventArgs(request, = this._postBackSettings.sourceElement); handler(this, eventArgs); } this._request =3D request; request.invoke(); if (evt) { evt.preventDefault(); } } function = Sys$WebForms$PageRequestManager$_onFormSubmitCompleted(sender, = eventArgs) { this._processingRequest =3D true; var delimitByLengthDelimiter =3D '|'; =20 if (sender.get_timedOut()) { = this._endPostBack(this._createPageRequestManagerTimeoutError(), sender); return; } if (sender.get_aborted()) { this._endPostBack(null, sender); return; } if (!this._request || sender.get_webRequest() !=3D=3D = this._request) { return; } var errorMessage; var delta =3D []; if (sender.get_statusCode() !=3D=3D 200) { = this._endPostBack(this._createPageRequestManagerServerError(sender.get_st= atusCode()), sender); return; } var reply =3D sender.get_responseData(); var delimiterIndex, len, type, id, content; var replyIndex =3D 0; var parserErrorDetails =3D null; while (replyIndex < reply.length) { delimiterIndex =3D = reply.indexOf(delimitByLengthDelimiter, replyIndex); if (delimiterIndex =3D=3D=3D -1) { parserErrorDetails =3D this._findText(reply, = replyIndex); break; } len =3D parseInt(reply.substring(replyIndex, = delimiterIndex), 10); if ((len % 1) !=3D=3D 0) { parserErrorDetails =3D this._findText(reply, = replyIndex); break; } replyIndex =3D delimiterIndex + 1; delimiterIndex =3D = reply.indexOf(delimitByLengthDelimiter, replyIndex); if (delimiterIndex =3D=3D=3D -1) { parserErrorDetails =3D this._findText(reply, = replyIndex); break; } type =3D reply.substring(replyIndex, delimiterIndex); replyIndex =3D delimiterIndex + 1; delimiterIndex =3D = reply.indexOf(delimitByLengthDelimiter, replyIndex); if (delimiterIndex =3D=3D=3D -1) { parserErrorDetails =3D this._findText(reply, = replyIndex); break; } id =3D reply.substring(replyIndex, delimiterIndex); replyIndex =3D delimiterIndex + 1; if ((replyIndex + len) >=3D reply.length) { parserErrorDetails =3D this._findText(reply, = reply.length); break; } content =3D this._decodeString(reply.substr(replyIndex, = len)); replyIndex +=3D len; if (reply.charAt(replyIndex) !=3D=3D = delimitByLengthDelimiter) { parserErrorDetails =3D this._findText(reply, = replyIndex); break; } replyIndex++; Array.add(delta, {type: type, id: id, content: content}); } if (parserErrorDetails) { = this._endPostBack(this._createPageRequestManagerParserError(String.format= (Sys.WebForms.Res.PRM_ParserErrorDetails, parserErrorDetails)), sender); return; } var updatePanelNodes =3D []; var hiddenFieldNodes =3D []; var arrayDeclarationNodes =3D []; var scriptBlockNodes =3D []; var expandoNodes =3D []; var onSubmitNodes =3D []; var dataItemNodes =3D []; var dataItemJsonNodes =3D []; var scriptDisposeNodes =3D []; var asyncPostBackControlIDsNode, postBackControlIDsNode, updatePanelIDsNode, asyncPostBackTimeoutNode, childUpdatePanelIDsNode, panelsToRefreshNode, = formActionNode; for (var i =3D 0; i < delta.length; i++) { var deltaNode =3D delta[i]; switch (deltaNode.type) { case "updatePanel": Array.add(updatePanelNodes, deltaNode); break; case "hiddenField": Array.add(hiddenFieldNodes, deltaNode); break; case "arrayDeclaration": Array.add(arrayDeclarationNodes, deltaNode); break; case "scriptBlock": Array.add(scriptBlockNodes, deltaNode); break; case "expando": Array.add(expandoNodes, deltaNode); break; case "onSubmit": Array.add(onSubmitNodes, deltaNode); break; case "asyncPostBackControlIDs": asyncPostBackControlIDsNode =3D deltaNode; break; case "postBackControlIDs": postBackControlIDsNode =3D deltaNode; break; case "updatePanelIDs": updatePanelIDsNode =3D deltaNode; break; case "asyncPostBackTimeout": asyncPostBackTimeoutNode =3D deltaNode; break; case "childUpdatePanelIDs": childUpdatePanelIDsNode =3D deltaNode; break; case "panelsToRefreshIDs": panelsToRefreshNode =3D deltaNode; break; case "formAction": formActionNode =3D deltaNode; break; case "dataItem": Array.add(dataItemNodes, deltaNode); break; case "dataItemJson": Array.add(dataItemJsonNodes, deltaNode); break; case "scriptDispose": Array.add(scriptDisposeNodes, deltaNode); break; case "pageRedirect": window.location.href =3D deltaNode.content; return; case "error": = this._endPostBack(this._createPageRequestManagerServerError(Number.parseI= nvariant(deltaNode.id), deltaNode.content), sender); return; case "pageTitle": document.title =3D deltaNode.content; break; case "focus": this._controlIDToFocus =3D deltaNode.content; break; default: = this._endPostBack(this._createPageRequestManagerParserError(String.format= (Sys.WebForms.Res.PRM_UnknownToken, deltaNode.type)), sender); return; } } var i; if (asyncPostBackControlIDsNode && = postBackControlIDsNode && updatePanelIDsNode && panelsToRefreshNode && asyncPostBackTimeoutNode && childUpdatePanelIDsNode) { this._oldUpdatePanelIDs =3D this._updatePanelIDs; var childUpdatePanelIDsString =3D = childUpdatePanelIDsNode.content; this._childUpdatePanelIDs =3D = childUpdatePanelIDsString.length ? childUpdatePanelIDsString.split(',') = : []; var asyncPostBackControlIDsArray =3D = this._splitNodeIntoArray(asyncPostBackControlIDsNode); var postBackControlIDsArray =3D = this._splitNodeIntoArray(postBackControlIDsNode); var updatePanelIDsArray =3D = this._splitNodeIntoArray(updatePanelIDsNode); this._panelsToRefreshIDs =3D = this._splitNodeIntoArray(panelsToRefreshNode); for (i =3D 0; i < = this._panelsToRefreshIDs.length; i++) { var panelClientID =3D = this._uniqueIDToClientID(this._panelsToRefreshIDs[i]); if (!document.getElementById(panelClientID)) { = this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.P= RM_MissingPanel, panelClientID)), sender); return; } } var asyncPostBackTimeout =3D = asyncPostBackTimeoutNode.content; this._updateControls(updatePanelIDsArray, = asyncPostBackControlIDsArray, postBackControlIDsArray, = asyncPostBackTimeout); } this._dataItems =3D {}; for (i =3D 0; i < dataItemNodes.length; i++) { var dataItemNode =3D dataItemNodes[i]; this._dataItems[dataItemNode.id] =3D dataItemNode.content; } for (i =3D 0; i < dataItemJsonNodes.length; i++) { var dataItemJsonNode =3D dataItemJsonNodes[i]; this._dataItems[dataItemJsonNode.id] =3D = eval(dataItemJsonNode.content); } var handler =3D = this._get_eventHandlerList().getHandler("pageLoading"); if (handler) { handler(this, this._getPageLoadingEventArgs()); } if (formActionNode) { this._form.action =3D formActionNode.content; = this._form._initialAction =3D this._form.action; } for (i =3D 0; i < = updatePanelNodes.length; i++) { var deltaUpdatePanel =3D updatePanelNodes[i]; var deltaPanelID =3D deltaUpdatePanel.id; var deltaPanelRendering =3D deltaUpdatePanel.content; var updatePanelElement =3D = document.getElementById(deltaPanelID); if (!updatePanelElement) { = this._endPostBack(Error.invalidOperation(String.format(Sys.WebForms.Res.P= RM_MissingPanel, deltaPanelID)), sender); return; } this._updatePanel(updatePanelElement, deltaPanelRendering); } for (i =3D 0; i < = scriptDisposeNodes.length; i++) { var disposePanelId =3D scriptDisposeNodes[i].id; var disposeScript =3D scriptDisposeNodes[i].content; this._registerDisposeScript(disposePanelId, disposeScript); } for (i =3D 0; i < hiddenFieldNodes.length; i++) { var id =3D hiddenFieldNodes[i].id; var value =3D hiddenFieldNodes[i].content; var hiddenFieldElement =3D document.getElementById(id); if (!hiddenFieldElement) { hiddenFieldElement =3D = document.createElement('input'); hiddenFieldElement.id =3D id; hiddenFieldElement.name =3D id; hiddenFieldElement.type =3D 'hidden'; this._form.appendChild(hiddenFieldElement); } hiddenFieldElement.value =3D value; } var arrayScript =3D ''; for (i =3D 0; i < arrayDeclarationNodes.length; i++) { arrayScript +=3D = "Sys.WebForms.PageRequestManager._addArrayElement('" + = arrayDeclarationNodes[i].id + "', " + arrayDeclarationNodes[i].content + = ");\r\n"; } var expandoScript =3D ''; for (i =3D 0; i < expandoNodes.length; i++) { var propertyReference =3D expandoNodes[i].id; var propertyValue =3D expandoNodes[i].content; expandoScript +=3D propertyReference + " =3D " + = propertyValue + "\r\n"; } Sys._ScriptLoader.readLoadedScripts(); Sys.Application.beginCreateComponents(); var scriptLoader =3D Sys._ScriptLoader.getInstance(); if (arrayScript.length) { scriptLoader.queueScriptBlock(arrayScript); } if (expandoScript.length) { scriptLoader.queueScriptBlock(expandoScript); } for (i =3D 0; i < scriptBlockNodes.length; i++) { var scriptBlockType =3D scriptBlockNodes[i].id; switch (scriptBlockType) { case "ScriptContentNoTags": = scriptLoader.queueScriptBlock(scriptBlockNodes[i].content); break; case "ScriptContentWithTags": var scriptTagAttributes; eval("scriptTagAttributes =3D " + = scriptBlockNodes[i].content); if (scriptTagAttributes.src && = Sys._ScriptLoader.isScriptLoaded(scriptTagAttributes.src)) { continue; } = scriptLoader.queueCustomScriptTag(scriptTagAttributes); break; case "ScriptPath": if = (Sys._ScriptLoader.isScriptLoaded(scriptBlockNodes[i].content)) { continue; } = scriptLoader.queueScriptReference(scriptBlockNodes[i].content); break; } } var onSubmitStatementScript =3D ''; for (var i =3D 0; i < onSubmitNodes.length; i++) { if (i =3D=3D=3D 0) { onSubmitStatementScript =3D = 'Array.add(Sys.WebForms.PageRequestManager.getInstance()._onSubmitStateme= nts, function() {\r\n'; } onSubmitStatementScript +=3D onSubmitNodes[i].content + = "\r\n"; } if (onSubmitStatementScript.length) { onSubmitStatementScript +=3D "\r\nreturn true;\r\n});\r\n"; scriptLoader.queueScriptBlock(onSubmitStatementScript); } this._response =3D sender; scriptLoader.loadScripts(0, = Function.createDelegate(this, this._scriptsLoadComplete), null, null); } function Sys$WebForms$PageRequestManager$_onWindowUnload(evt) { this.dispose(); } function Sys$WebForms$PageRequestManager$_pageLoaded(initialLoad) { var handler =3D = this._get_eventHandlerList().getHandler("pageLoaded"); if (handler) { handler(this, this._getPageLoadedEventArgs(initialLoad)); } if (!initialLoad) { Sys.Application.raiseLoad(); } } function Sys$WebForms$PageRequestManager$_pageLoadedInitialLoad(evt) = { this._pageLoaded(true); } function = Sys$WebForms$PageRequestManager$_registerDisposeScript(panelID, = disposeScript) { if (!this._scriptDisposes[panelID]) { this._scriptDisposes[panelID] =3D [disposeScript]; } else { Array.add(this._scriptDisposes[panelID], disposeScript); } } function Sys$WebForms$PageRequestManager$_scriptsLoadComplete() { =20 if = (window.__theFormPostData) { window.__theFormPostData =3D ""; } if (window.__theFormPostCollection) { window.__theFormPostCollection =3D []; } if (window.WebForm_InitCallback) { window.WebForm_InitCallback(); } if (this._scrollPosition) { if (window.scrollTo) { window.scrollTo(this._scrollPosition.x, = this._scrollPosition.y); } this._scrollPosition =3D null; } Sys.Application.endCreateComponents(); this._pageLoaded(false); this._endPostBack(null, this._response); this._response =3D null; if (this._controlIDToFocus) { var focusTarget; var oldContentEditableSetting; if (Sys.Browser.agent =3D=3D=3D = Sys.Browser.InternetExplorer) { = var targetControl =3D $get(this._controlIDToFocus); var focusTarget =3D targetControl; if (targetControl && = (!WebForm_CanFocus(targetControl))) { focusTarget =3D = WebForm_FindFirstFocusableChild(targetControl); } if (focusTarget && = (typeof(focusTarget.contentEditable) !=3D=3D "undefined")) { oldContentEditableSetting =3D = focusTarget.contentEditable; focusTarget.contentEditable =3D false; } else { focusTarget =3D null; } } WebForm_AutoFocus(this._controlIDToFocus); if (focusTarget) { focusTarget.contentEditable =3D = oldContentEditableSetting; } this._controlIDToFocus =3D null; } } function Sys$WebForms$PageRequestManager$_splitNodeIntoArray(node) { var str =3D node.content; var arr =3D str.length ? str.split(',') : []; return arr; } function = Sys$WebForms$PageRequestManager$_uniqueIDToClientID(uniqueID) { return uniqueID.replace(/\$/g, '_'); } function = Sys$WebForms$PageRequestManager$_updateControls(updatePanelIDs, = asyncPostBackControlIDs, postBackControlIDs, asyncPostBackTimeout) { if (updatePanelIDs) { this._updatePanelIDs =3D = new Array(updatePanelIDs.length); this._updatePanelClientIDs =3D new = Array(updatePanelIDs.length); this._updatePanelHasChildrenAsTriggers =3D new = Array(updatePanelIDs.length); for (var i =3D 0; i < updatePanelIDs.length; i++) { var realPanelID =3D updatePanelIDs[i].substr(1); var childrenAsTriggers =3D (updatePanelIDs[i].charAt(0) = =3D=3D=3D 't'); = this._updatePanelHasChildrenAsTriggers[i] =3D childrenAsTriggers; this._updatePanelIDs[i] =3D realPanelID; this._updatePanelClientIDs[i] =3D = this._uniqueIDToClientID(realPanelID); } this._asyncPostBackTimeout =3D asyncPostBackTimeout * 1000; } else { this._updatePanelIDs =3D []; this._updatePanelClientIDs =3D []; this._updatePanelHasChildrenAsTriggers =3D []; this._asyncPostBackTimeout =3D 0; } this._asyncPostBackControlIDs =3D []; this._asyncPostBackControlClientIDs =3D []; this._convertToClientIDs(asyncPostBackControlIDs, = this._asyncPostBackControlIDs, this._asyncPostBackControlClientIDs); this._postBackControlIDs =3D []; this._postBackControlClientIDs =3D []; this._convertToClientIDs(postBackControlIDs, = this._postBackControlIDs, this._postBackControlClientIDs); } function = Sys$WebForms$PageRequestManager$_updatePanel(updatePanelElement, = rendering) { for (var updatePanelID in this._scriptDisposes) { if (this._elementContains(updatePanelElement, = document.getElementById(updatePanelID))) { var disposeScripts =3D = this._scriptDisposes[updatePanelID]; for (var i =3D 0; i < disposeScripts.length; i++) { eval(disposeScripts[i]); } delete = this._scriptDisposes[updatePanelID]; } } this._destroyTree(updatePanelElement); updatePanelElement.innerHTML =3D rendering; } function Sys$WebForms$PageRequestManager$_validPosition(position) { return (typeof(position) !=3D=3D "undefined") && (position = !=3D=3D null) && (position !=3D=3D 0); } Sys.WebForms.PageRequestManager.prototype =3D { _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_i