From: <Saved by Windows Internet Explorer 7>
Subject: =?Windows-1252?Q?.::_Confirmado.net_::._-_117_observadores_de_la_UE_vigil?=
	=?Windows-1252?Q?ar=E1n_los_comicios?=
Date: Tue, 21 Apr 2009 18:37:32 -0500
MIME-Version: 1.0
Content-Type: multipart/related;
	type="multipart/alternative";
	boundary="----=_NextPart_000_0000_01C9C2B0.3B521EC0"
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579

This is a multi-part message in MIME format.

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/images/user-increase.gif

R0lGODlhCAAIAIABAGZmZv///yH5BAEAAAEALAAAAAAIAAgAAAINjI8BkMq34pML1XTbKQA7

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/images/user-reset.gif

R0lGODlhCAAIAIABAGZmZv///yH5BAEAAAEALAAAAAAIAAgAAAIOjH8AprzR0kPRWfgqMgUAOw==

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/images/user-decrease.gif

R0lGODlhCAAIAIABAGZmZv///yH5BAEAAAEALAAAAAAIAAgAAAIKjI+pCO3m3pq0AAA7

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/images/arrow.png

iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAMAAAC3r6aQAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ
bWFnZVJlYWR5ccllPAAAAAZQTFRFzMzM////040VdgAAAAJ0Uk5T/wDltzBKAAAAF0lEQVR42mJg
YGRkYGAAYQYIzcgIEGAAAEwAB25XbCQAAAAASUVORK5CYII=

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/images/pdf_button.png

iVBORw0KGgoAAAANSUhEUgAAAAwAAAANCAMAAACq939wAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ
bWFnZVJlYWR5ccllPAAAALpQTFRFXFxcgYGBZWVlcHBwPz8/WVlZbGxsZmZm39/fcXFxdXV1srKy
VVVVY2NjVlZWMTExKioqxMTEenp6eHh4aWlpu7u7Li4uKSkpMzMzkZGRODg4+Pj4X19fgoKCQ0ND
tra2RUVFOzs7dnZ2mZmZrKysXV1dxcXFampq0dHRMjIy5eXlTExMioqK7Ozsy8vLmpqazs7OZ2dn
tbW1PDw89PT03t7e+fn5yMjIf39/6+vr6urqfn5+NDQ0////fzsF7wAAAD50Uk5T////////////
/////////////////////////////////////////////////////////////////////wC6+3E2
AAAAe0lEQVR42jzLRQ7DQBQE0W/HDGEmhzlxmOv+18p4IrkWLb1FC5O+H5hmvD2A+PA4A6vTAilA
1Fbg5lYyxJcMeI4swbE0SOUDwWij8ZQdWF07fCsYoqa5bg2L7l2j1PFejfq4pxB+p9f/X6Fc3ZMj
IW8gs6M9F11U+wkwAH+4GSftpYHnAAAAAElFTkSuQmCC

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/images/printButton.png

iVBORw0KGgoAAAANSUhEUgAAAA4AAAANCAMAAACuAq9NAAAABGdBTUEAAK/INwWK6QAAABl0RVh0
U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAASUExURTMzM9fX1+vr68zMzHx8fP///24K
e/IAAAAGdFJOU///////ALO/pL8AAABCSURBVHjahI5BDgAhDAKnq/z/y0ZUPHhY0gMEaItUbJSE
Z4FfmabbxLP/ypu17DSDvsJ8xmTenGKhHD608rKGAAMA0AICD+TS7XcAAAAASUVORK5CYII=

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/images/emailButton.png

iVBORw0KGgoAAAANSUhEUgAAABAAAAANCAMAAACXZR4WAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ
bWFnZVJlYWR5ccllPAAAAAxQTFRFlZWVfHx8MzMz////DrgUaAAAAAR0Uk5T////AEAqqfQAAABF
SURBVHjaZM9RCgAgCANQp/e/c3NhivkR60loFqvMVxFmPyGG8EJoyZxQoijQwfwAemgoUFDjAnoK
EjD3gP+b7r8cAQYA6J8CFWWes1EAAAAASUVORK5CYII=

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://www.confirmado.net/images/stories/veedores_ue.jpg

/9j/4AAQSkZJRgABAgEASABIAAD/4hxtSUNDX1BST0ZJTEUAAQEAABxdTGlubwIQAABtbnRyUkdC
IFhZWiAHzgACAAkABgAxAABhY3NwTVNGVAAAAABJRUMgc1JHQgAAAAAAAAAAAAAAAAAA9tYAAQAA
AADTLUhQICAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABFj
cHJ0AAABUAAAADNkZXNjAAABgwAAAGx3dHB0AAAB7wAAABRia3B0AAACAwAAABRyWFlaAAACFwAA
ABRnWFlaAAACKwAAABRiWFlaAAACPwAAABRkbW5kAAACUwAAAHBkbWRkAAACwwAAAIh2dWVkAAAD
SwAAAIZ2aWV3AAAD0QAAACRsdW1pAAAD9QAAABRtZWFzAAAECQAAACR0ZWNoAAAELQAAAAxyVFJD
AAAEOQAACAxnVFJDAAAMRQAACAxiVFJDAAAUUQAACAx0ZXh0AAAAAENvcHlyaWdodCAoYykgMTk5
OCBIZXdsZXR0LVBhY2thcmQgQ29tcGFueQBkZXNjAAAAAAAAABJzUkdCIElFQzYxOTY2LTIuMQAA
AAAAAAAAAAAAEnNSR0IgSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAABYWVogAAAAAAAA81EAAQAAAAEWzFhZWiAAAAAAAAAAAAAAAAAA
AAAAWFlaIAAAAAAAAG+iAAA49QAAA5BYWVogAAAAAAAAYpkAALeFAAAY2lhZWiAAAAAAAAAkoAAA
D4QAALbPZGVzYwAAAAAAAAAWSUVDIGh0dHA6Ly93d3cuaWVjLmNoAAAAAAAAAAAAAAAWSUVDIGh0
dHA6Ly93d3cuaWVjLmNoAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAGRlc2MAAAAAAAAALklFQyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0g
c1JHQgAAAAAAAAAAAAAALklFQyA2MTk2Ni0yLjEgRGVmYXVsdCBSR0IgY29sb3VyIHNwYWNlIC0g
c1JHQgAAAAAAAAAAAAAAAAAAAAAAAAAAAABkZXNjAAAAAAAAACxSZWZlcmVuY2UgVmlld2luZyBD
b25kaXRpb24gaW4gSUVDNjE5NjYtMi4xAAAAAAAAAAAAAAAsUmVmZXJlbmNlIFZpZXdpbmcgQ29u
ZGl0aW9uIGluIElFQzYxOTY2LTIuMQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHZpZXcAAAAAABOk
/gAUXy4AEM8UAAPtzAAEEwsAA1yeAAAAAVhZWiAAAAAAAEwJVgBQAAAAVx/nbWVhcwAAAAAAAAAB
AAAAAAAAAo8AAAACAAAAAAAAAAAAAAAAc2lnIAAAAABDUlQgY3VydgAAAAAAAAQAAAAABQAKAA8A
FAAZAB4AIwAoAC0AMgA3ADsAQABFAEoATwBUAFkAXgBjAGgAbQByAHcAfACBAIYAiwCQAJUAmgCf
AKQAqQCuALIAtwC8AMEAxgDLANAA1QDbAOAA5QDrAPAA9gD7AQEBBwENARMBGQEfASUBKwEyATgB
PgFFAUwBUgFZAWABZwFuAXUBfAGDAYsBkgGaAaEBqQGxAbkBwQHJAdEB2QHhAekB8gH6AgMCDAIU
Ah0CJgIvAjgCQQJLAlQCXQJnAnECegKEAo4CmAKiAqwCtgLBAssC1QLgAusC9QMAAwsDFgMhAy0D
OANDA08DWgNmA3IDfgOKA5YDogOuA7oDxwPTA+AD7AP5BAYEEwQgBC0EOwRIBFUEYwRxBH4EjASa
BKgEtgTEBNME4QTwBP4FDQUcBSsFOgVJBVgFZwV3BYYFlgWmBbUFxQXVBeUF9gYGBhYGJwY3BkgG
WQZqBnsGjAadBq8GwAbRBuMG9QcHBxkHKwc9B08HYQd0B4YHmQesB78H0gflB/gICwgfCDIIRgha
CG4IggiWCKoIvgjSCOcI+wkQCSUJOglPCWQJeQmPCaQJugnPCeUJ+woRCicKPQpUCmoKgQqYCq4K
xQrcCvMLCwsiCzkLUQtpC4ALmAuwC8gL4Qv5DBIMKgxDDFwMdQyODKcMwAzZDPMNDQ0mDUANWg10
DY4NqQ3DDd4N+A4TDi4OSQ5kDn8Omw62DtIO7g8JDyUPQQ9eD3oPlg+zD88P7BAJECYQQxBhEH4Q
mxC5ENcQ9RETETERTxFtEYwRqhHJEegSBxImEkUSZBKEEqMSwxLjEwMTIxNDE2MTgxOkE8UT5RQG
FCcUSRRqFIsUrRTOFPAVEhU0FVYVeBWbFb0V4BYDFiYWSRZsFo8WshbWFvoXHRdBF2UXiReuF9IX
9xgbGEAYZRiKGK8Y1Rj6GSAZRRlrGZEZtxndGgQaKhpRGncanhrFGuwbFBs7G2MbihuyG9ocAhwq
HFIcexyjHMwc9R0eHUcdcB2ZHcMd7B4WHkAeah6UHr4e6R8THz4faR+UH78f6iAVIEEgbCCYIMQg
8CEcIUghdSGhIc4h+yInIlUigiKvIt0jCiM4I2YjlCPCI/AkHyRNJHwkqyTaJQklOCVoJZclxyX3
JicmVyaHJrcm6CcYJ0kneierJ9woDSg/KHEooijUKQYpOClrKZ0p0CoCKjUqaCqbKs8rAis2K2kr
nSvRLAUsOSxuLKIs1y0MLUEtdi2rLeEuFi5MLoIuty7uLyQvWi+RL8cv/jA1MGwwpDDbMRIxSjGC
Mbox8jIqMmMymzLUMw0zRjN/M7gz8TQrNGU0njTYNRM1TTWHNcI1/TY3NnI2rjbpNyQ3YDecN9c4
FDhQOIw4yDkFOUI5fzm8Ofk6Njp0OrI67zstO2s7qjvoPCc8ZTykPOM9Ij1hPaE94D4gPmA+oD7g
PyE/YT+iP+JAI0BkQKZA50EpQWpBrEHuQjBCckK1QvdDOkN9Q8BEA0RHRIpEzkUSRVVFmkXeRiJG
Z0arRvBHNUd7R8BIBUhLSJFI10kdSWNJqUnwSjdKfUrESwxLU0uaS+JMKkxyTLpNAk1KTZNN3E4l
Tm5Ot08AT0lPk0/dUCdQcVC7UQZRUFGbUeZSMVJ8UsdTE1NfU6pT9lRCVI9U21UoVXVVwlYPVlxW
qVb3V0RXklfgWC9YfVjLWRpZaVm4WgdaVlqmWvVbRVuVW+VcNVyGXNZdJ114XcleGl5sXr1fD19h
X7NgBWBXYKpg/GFPYaJh9WJJYpxi8GNDY5dj62RAZJRk6WU9ZZJl52Y9ZpJm6Gc9Z5Nn6Wg/aJZo
7GlDaZpp8WpIap9q92tPa6dr/2xXbK9tCG1gbbluEm5rbsRvHm94b9FwK3CGcOBxOnGVcfByS3Km
cwFzXXO4dBR0cHTMdSh1hXXhdj52m3b4d1Z3s3gReG54zHkqeYl553pGeqV7BHtje8J8IXyBfOF9
QX2hfgF+Yn7CfyN/hH/lgEeAqIEKgWuBzYIwgpKC9INXg7qEHYSAhOOFR4Wrhg6GcobXhzuHn4gE
iGmIzokziZmJ/opkisqLMIuWi/yMY4zKjTGNmI3/jmaOzo82j56QBpBukNaRP5GokhGSepLjk02T
tpQglIqU9JVflcmWNJaflwqXdZfgmEyYuJkkmZCZ/JpomtWbQpuvnByciZz3nWSd0p5Anq6fHZ+L
n/qgaaDYoUehtqImopajBqN2o+akVqTHpTilqaYapoum/adup+CoUqjEqTepqaocqo+rAqt1q+ms
XKzQrUStuK4trqGvFq+LsACwdbDqsWCx1rJLssKzOLOutCW0nLUTtYq2AbZ5tvC3aLfguFm40blK
ucK6O7q1uy67p7whvJu9Fb2Pvgq+hL7/v3q/9cBwwOzBZ8Hjwl/C28NYw9TEUcTOxUvFyMZGxsPH
Qce/yD3IvMk6ybnKOMq3yzbLtsw1zLXNNc21zjbOts83z7jQOdC60TzRvtI/0sHTRNPG1EnUy9VO
1dHWVdbY11zX4Nhk2OjZbNnx2nba+9uA3AXcit0Q3ZbeHN6i3ynfr+A24L3hROHM4lPi2+Nj4+vk
c+T85YTmDeaW5x/nqegy6LzpRunQ6lvq5etw6/vshu0R7ZzuKO6070DvzPBY8OXxcvH/8ozzGfOn
9DT0wvVQ9d72bfb794r4Gfio+Tj5x/pX+uf7d/wH/Jj9Kf26/kv+3P9t//9jdXJ2AAAAAAAABAAA
AAAFAAoADwAUABkAHgAjACgALQAyADcAOwBAAEUASgBPAFQAWQBeAGMAaABtAHIAdwB8AIEAhgCL
AJAAlQCaAJ8ApACpAK4AsgC3ALwAwQDGAMsA0ADVANsA4ADlAOsA8AD2APsBAQEHAQ0BEwEZAR8B
JQErATIBOAE+AUUBTAFSAVkBYAFnAW4BdQF8AYMBiwGSAZoBoQGpAbEBuQHBAckB0QHZAeEB6QHy
AfoCAwIMAhQCHQImAi8COAJBAksCVAJdAmcCcQJ6AoQCjgKYAqICrAK2AsECywLVAuAC6wL1AwAD
CwMWAyEDLQM4A0MDTwNaA2YDcgN+A4oDlgOiA64DugPHA9MD4APsA/kEBgQTBCAELQQ7BEgEVQRj
BHEEfgSMBJoEqAS2BMQE0wThBPAE/gUNBRwFKwU6BUkFWAVnBXcFhgWWBaYFtQXFBdUF5QX2BgYG
FgYnBjcGSAZZBmoGewaMBp0GrwbABtEG4wb1BwcHGQcrBz0HTwdhB3QHhgeZB6wHvwfSB+UH+AgL
CB8IMghGCFoIbgiCCJYIqgi+CNII5wj7CRAJJQk6CU8JZAl5CY8JpAm6Cc8J5Qn7ChEKJwo9ClQK
agqBCpgKrgrFCtwK8wsLCyILOQtRC2kLgAuYC7ALyAvhC/kMEgwqDEMMXAx1DI4MpwzADNkM8w0N
DSYNQA1aDXQNjg2pDcMN3g34DhMOLg5JDmQOfw6bDrYO0g7uDwkPJQ9BD14Peg+WD7MPzw/sEAkQ
JhBDEGEQfhCbELkQ1xD1ERMRMRFPEW0RjBGqEckR6BIHEiYSRRJkEoQSoxLDEuMTAxMjE0MTYxOD
E6QTxRPlFAYUJxRJFGoUixStFM4U8BUSFTQVVhV4FZsVvRXgFgMWJhZJFmwWjxayFtYW+hcdF0EX
ZReJF64X0hf3GBsYQBhlGIoYrxjVGPoZIBlFGWsZkRm3Gd0aBBoqGlEadxqeGsUa7BsUGzsbYxuK
G7Ib2hwCHCocUhx7HKMczBz1HR4dRx1wHZkdwx3sHhYeQB5qHpQevh7pHxMfPh9pH5Qfvx/qIBUg
QSBsIJggxCDwIRwhSCF1IaEhziH7IiciVSKCIq8i3SMKIzgjZiOUI8Ij8CQfJE0kfCSrJNolCSU4
JWgllyXHJfcmJyZXJocmtyboJxgnSSd6J6sn3CgNKD8ocSiiKNQpBik4KWspnSnQKgIqNSpoKpsq
zysCKzYraSudK9EsBSw5LG4soizXLQwtQS12Last4S4WLkwugi63Lu4vJC9aL5Evxy/+MDUwbDCk
MNsxEjFKMYIxujHyMioyYzKbMtQzDTNGM38zuDPxNCs0ZTSeNNg1EzVNNYc1wjX9Njc2cjauNuk3
JDdgN5w31zgUOFA4jDjIOQU5Qjl/Obw5+To2OnQ6sjrvOy07azuqO+g8JzxlPKQ84z0iPWE9oT3g
PiA+YD6gPuA/IT9hP6I/4kAjQGRApkDnQSlBakGsQe5CMEJyQrVC90M6Q31DwEQDREdEikTORRJF
VUWaRd5GIkZnRqtG8Ec1R3tHwEgFSEtIkUjXSR1JY0mpSfBKN0p9SsRLDEtTS5pL4kwqTHJMuk0C
TUpNk03cTiVObk63TwBPSU+TT91QJ1BxULtRBlFQUZtR5lIxUnxSx1MTU19TqlP2VEJUj1TbVShV
dVXCVg9WXFapVvdXRFeSV+BYL1h9WMtZGllpWbhaB1pWWqZa9VtFW5Vb5Vw1XIZc1l0nXXhdyV4a
XmxevV8PX2Ffs2AFYFdgqmD8YU9homH1YklinGLwY0Njl2PrZEBklGTpZT1lkmXnZj1mkmboZz1n
k2fpaD9olmjsaUNpmmnxakhqn2r3a09rp2v/bFdsr20IbWBtuW4SbmtuxG8eb3hv0XArcIZw4HE6
cZVx8HJLcqZzAXNdc7h0FHRwdMx1KHWFdeF2Pnabdvh3VnezeBF4bnjMeSp5iXnnekZ6pXsEe2N7
wnwhfIF84X1BfaF+AX5ifsJ/I3+Ef+WAR4CogQqBa4HNgjCCkoL0g1eDuoQdhICE44VHhauGDoZy
hteHO4efiASIaYjOiTOJmYn+imSKyoswi5aL/IxjjMqNMY2Yjf+OZo7OjzaPnpAGkG6Q1pE/kaiS
EZJ6kuOTTZO2lCCUipT0lV+VyZY0lp+XCpd1l+CYTJi4mSSZkJn8mmia1ZtCm6+cHJyJnPedZJ3S
nkCerp8dn4uf+qBpoNihR6G2oiailqMGo3aj5qRWpMelOKWpphqmi6b9p26n4KhSqMSpN6mpqhyq
j6sCq3Wr6axcrNCtRK24ri2uoa8Wr4uwALB1sOqxYLHWskuywrM4s660JbSctRO1irYBtnm28Ldo
t+C4WbjRuUq5wro7urW7LrunvCG8m70VvY++Cr6Evv+/er/1wHDA7MFnwePCX8Lbw1jD1MRRxM7F
S8XIxkbGw8dBx7/IPci8yTrJuco4yrfLNsu2zDXMtc01zbXONs62zzfPuNA50LrRPNG+0j/SwdNE
08bUSdTL1U7V0dZV1tjXXNfg2GTY6Nls2fHadtr724DcBdyK3RDdlt4c3qLfKd+v4DbgveFE4czi
U+Lb42Pj6+Rz5PzlhOYN5pbnH+ep6DLovOlG6dDqW+rl63Dr++yG7RHtnO4o7rTvQO/M8Fjw5fFy
8f/yjPMZ86f0NPTC9VD13vZt9vv3ivgZ+Kj5OPnH+lf65/t3/Af8mP0p/br+S/7c/23//2N1cnYA
AAAAAAAEAAAAAAUACgAPABQAGQAeACMAKAAtADIANwA7AEAARQBKAE8AVABZAF4AYwBoAG0AcgB3
AHwAgQCGAIsAkACVAJoAnwCkAKkArgCyALcAvADBAMYAywDQANUA2wDgAOUA6wDwAPYA+wEBAQcB
DQETARkBHwElASsBMgE4AT4BRQFMAVIBWQFgAWcBbgF1AXwBgwGLAZIBmgGhAakBsQG5AcEByQHR
AdkB4QHpAfIB+gIDAgwCFAIdAiYCLwI4AkECSwJUAl0CZwJxAnoChAKOApgCogKsArYCwQLLAtUC
4ALrAvUDAAMLAxYDIQMtAzgDQwNPA1oDZgNyA34DigOWA6IDrgO6A8cD0wPgA+wD+QQGBBMEIAQt
BDsESARVBGMEcQR+BIwEmgSoBLYExATTBOEE8AT+BQ0FHAUrBToFSQVYBWcFdwWGBZYFpgW1BcUF
1QXlBfYGBgYWBicGNwZIBlkGagZ7BowGnQavBsAG0QbjBvUHBwcZBysHPQdPB2EHdAeGB5kHrAe/
B9IH5Qf4CAsIHwgyCEYIWghuCIIIlgiqCL4I0gjnCPsJEAklCToJTwlkCXkJjwmkCboJzwnlCfsK
EQonCj0KVApqCoEKmAquCsUK3ArzCwsLIgs5C1ELaQuAC5gLsAvIC+EL+QwSDCoMQwxcDHUMjgyn
DMAM2QzzDQ0NJg1ADVoNdA2ODakNww3eDfgOEw4uDkkOZA5/DpsOtg7SDu4PCQ8lD0EPXg96D5YP
sw/PD+wQCRAmEEMQYRB+EJsQuRDXEPURExExEU8RbRGMEaoRyRHoEgcSJhJFEmQShBKjEsMS4xMD
EyMTQxNjE4MTpBPFE+UUBhQnFEkUahSLFK0UzhTwFRIVNBVWFXgVmxW9FeAWAxYmFkkWbBaPFrIW
1hb6Fx0XQRdlF4kXrhfSF/cYGxhAGGUYihivGNUY+hkgGUUZaxmRGbcZ3RoEGioaURp3Gp4axRrs
GxQbOxtjG4obshvaHAIcKhxSHHscoxzMHPUdHh1HHXAdmR3DHeweFh5AHmoelB6+HukfEx8+H2kf
lB+/H+ogFSBBIGwgmCDEIPAhHCFIIXUhoSHOIfsiJyJVIoIiryLdIwojOCNmI5QjwiPwJB8kTSR8
JKsk2iUJJTglaCWXJccl9yYnJlcmhya3JugnGCdJJ3onqyfcKA0oPyhxKKIo1CkGKTgpaymdKdAq
Aio1KmgqmyrPKwIrNitpK50r0SwFLDksbiyiLNctDC1BLXYtqy3hLhYuTC6CLrcu7i8kL1ovkS/H
L/4wNTBsMKQw2zESMUoxgjG6MfIyKjJjMpsy1DMNM0YzfzO4M/E0KzRlNJ402DUTNU01hzXCNf02
NzZyNq426TckN2A3nDfXOBQ4UDiMOMg5BTlCOX85vDn5OjY6dDqyOu87LTtrO6o76DwnPGU8pDzj
PSI9YT2hPeA+ID5gPqA+4D8hP2E/oj/iQCNAZECmQOdBKUFqQaxB7kIwQnJCtUL3QzpDfUPARANE
R0SKRM5FEkVVRZpF3kYiRmdGq0bwRzVHe0fASAVIS0iRSNdJHUljSalJ8Eo3Sn1KxEsMS1NLmkvi
TCpMcky6TQJNSk2TTdxOJU5uTrdPAE9JT5NP3VAnUHFQu1EGUVBRm1HmUjFSfFLHUxNTX1OqU/ZU
QlSPVNtVKFV1VcJWD1ZcVqlW91dEV5JX4FgvWH1Yy1kaWWlZuFoHWlZaplr1W0VblVvlXDVchlzW
XSddeF3JXhpebF69Xw9fYV+zYAVgV2CqYPxhT2GiYfViSWKcYvBjQ2OXY+tkQGSUZOllPWWSZedm
PWaSZuhnPWeTZ+loP2iWaOxpQ2maafFqSGqfavdrT2una/9sV2yvbQhtYG25bhJua27Ebx5veG/R
cCtwhnDgcTpxlXHwcktypnMBc11zuHQUdHB0zHUodYV14XY+dpt2+HdWd7N4EXhueMx5KnmJeed6
RnqlewR7Y3vCfCF8gXzhfUF9oX4BfmJ+wn8jf4R/5YBHgKiBCoFrgc2CMIKSgvSDV4O6hB2EgITj
hUeFq4YOhnKG14c7h5+IBIhpiM6JM4mZif6KZIrKizCLlov8jGOMyo0xjZiN/45mjs6PNo+ekAaQ
bpDWkT+RqJIRknqS45NNk7aUIJSKlPSVX5XJljSWn5cKl3WX4JhMmLiZJJmQmfyaaJrVm0Kbr5wc
nImc951kndKeQJ6unx2fi5/6oGmg2KFHobaiJqKWowajdqPmpFakx6U4pammGqaLpv2nbqfgqFKo
xKk3qamqHKqPqwKrdavprFys0K1ErbiuLa6hrxavi7AAsHWw6rFgsdayS7LCszizrrQltJy1E7WK
tgG2ebbwt2i34LhZuNG5SrnCuju6tbsuu6e8IbybvRW9j74KvoS+/796v/XAcMDswWfB48JfwtvD
WMPUxFHEzsVLxcjGRsbDx0HHv8g9yLzJOsm5yjjKt8s2y7bMNcy1zTXNtc42zrbPN8+40DnQutE8
0b7SP9LB00TTxtRJ1MvVTtXR1lXW2Ndc1+DYZNjo2WzZ8dp22vvbgNwF3IrdEN2W3hzeot8p36/g
NuC94UThzOJT4tvjY+Pr5HPk/OWE5g3mlucf56noMui86Ubp0Opb6uXrcOv77IbtEe2c7ijutO9A
78zwWPDl8XLx//KM8xnzp/Q09ML1UPXe9m32+/eK+Bn4qPk4+cf6V/rn+3f8B/yY/Sn9uv5L/tz/
bf///8AAEQgAyQEsAwERAAIRAQMRAf/bAIQABgQFBgUEBgYFBgcHBggKEQsKCQkKFQ8QDBEZFhoa
GBYYFxsfKCEbHSUeFxgiLyMlKSosLSwbITE0MCs0KCssKwEHBwcKCQoUCwsUKxwYHBwrKysrKysr
KysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysr/8QBogAAAQUBAQEBAQEA
AAAAAAAAAAECAwQFBgcICQoLEAACAQMDAgQDBQUEBAAAAX0BAgMABBEFEiExQQYTUWEHInEUMoGR
oQgjQrHBFVLR8CQzYnKCCQoWFxgZGiUmJygpKjQ1Njc4OTpDREVGR0hJSlNUVVZXWFlaY2RlZmdo
aWpzdHV2d3h5eoOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU
1dbX2Nna4eLj5OXm5+jp6vHy8/T19vf4+foBAAMBAQEBAQEBAQEAAAAAAAABAgMEBQYHCAkKCxEA
AgECBAQDBAcFBAQAAQJ3AAECAxEEBSExBhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl
8RcYGRomJygpKjU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImK
kpOUlZaXmJmaoqOkpaanqKmqsrO0tba3uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP0
9fb3+Pn6/9oADAMBAAIRAxEAPwDzCwsIntoiYo8+Wv8AAPSsjUtjToSAfJi/74FAgOmwZyIYv++B
QIQ6dDj/AFMX/fA/woAQadCv/LKLP+4KCkZ3iKxiTQr1lijDBBj5B6irhuTI862jHSuqxmG0EA4p
WATYPSlYAKDHSiwAUBNDQFnTYI5buOKRSQ5wCO3f+lc9e8IOS3LpJOWo7VbJLW6KrIjA8hR1X61O
Gq+0hqh1IKL0HWenLdWs0kZzKnRcd/8A9VKrW5JqIRhzK5nhSjdMEH0rqsQa1lqiqdt3Cki/3goD
ColC+pUZW0Om01LW5jMkKxuMDI2jIPofQ1y1ItI6INXNJbSEL/qov++BXA2zuikUb6ziK5WOP/vg
VvSkY1UjLktI+oRcj/ZFdaehxyQLbJuA2R/981LKirmvaWEZtmPlx/8AfIrzqs7SPRpwXKZF3axk
ONq5XphRXbTezOOstbFL7Kn90flW1znsH2FXYBeCBkECpdS25Sp32LmialdaJqcd1ZtFDew52M0S
SA8EfdYEH8RUyhCrHUFKUHYjucXE8k0oBkkYsx2gZJ5NaRioqyE3d3KktuEJeNQQfvLjrVEsWOKK
RQwUfl0oEI1vGR90flSYWKk1uq5IXjuKpA0JEqD5Sox9KYEk1skiMMAHscUhmVLGUfDDB7iqTJYR
YD9MihgaccCkox8vbn+Ks3qrFRdi7q0tlK6NFaWlrtXBS03lT7kuzHP41lShJXvd+prVqcxkO8W7
iPj3NdBg9z1rSUP2aLj/AJZr/IVmUXUUgnIoAds9sUCDbjsaAEK+g4oGZPipSPD99j+4P/QhWlP4
iZbHlmMHiuvqZgRz7UABoGNpWA1dM04XsMskbhnjRgYzwdxB2ke1cGKxLpTSexvTp88WZ0iSW8rK
4ZHHBGea6bwmlymFmmJK7SEFzuIGMnriqUFFWQ22x0M8kSlVY7DncvZsjFZzpRk02hqbWiIkQuwV
Rlj0A71o3ZE77CzxPBMY5BhgAfzGaUJKauinFoWCV4XDxO0bjoynBFEknuF+x0emeJpFYJfjemMC
RR834jof0rmqYZPY6KeIa3NsXdveRFraVZB3A6j6jqK51TlB7G8pxkrlSUda3RzsYo+f2zUyCO50
FiubNq8qt8R6tP4Tnrr5Z3FejS1icFXSRSYYJ9K3MS5phUXCkjPBrkxSfLodGGa5iLxDAq3ZKj5W
GRSwc26dmPGQtO6MyKUqdsh46Bv8a7jiuWc5FHUCCaNlcyxDk9V9aTaezDXsPVw6hlP/ANagaGuu
4ds0XApSKVb2qiGSQvn5T+FIpEd9B5iblGXHb1FCGzLIxx3qiB6OQB8oNDKRK1xldqRxoD1IBOfz
JqOVtluaStYhIcnOD+VUZns+lRn7HCccGNf5CpAvFMnpzQAFfWgAK0ANx70AZfidC3h+/AHPl5/I
irpfEKWx5Rj3rse5khMZFFtBX1Exx70ihD65oGXbDUZrEYgC4ZgWyPvAdvpXNXw8a3xFxqOOxTfB
divQnitor3bEt3ENMQVNgBThwT0BzSkuaNgTs7lrU7w3rxtt27RyoOecn+mKww9H2ehcp82pTHWu
gkQ9c0gHRHE0QB6sBSnqgW53Mo5ziuVG5EPv/jUvYcdzfsD/AKMQK8qsvePVpP3TntQGLhq9Gh8B
59f4ym/tW5iPtiVlWsaqvF3NaTtJF3XF3BT/ALNceD0bR14tbMwtuTjtXptnnJAFe3QHDNEfxIqV
JN2HKLirmpf6suoWOmwLZWFstnGUEltDsefJzulbPzn37VEaXK273H7RSVjLdSHLxj5u49a1IFR1
dePXGD1FAxsibh/nmi4mioylcfpVE7FiJw4wfvDripeg07lS6tGd90a5B6jPSmpA0IloRglU/Fs/
oKYE4t+PvY/65rikNMabdc/cLe7NzRYVz1vSv+PG355Ea/yoJL2OKBht56UAIV9TQA0r6UgMvxMN
nh+/J6eUa0p/ETLY8jOK63uZITngUwFP5GkMdFC80gSFTIx52qMk0pyjFXY9WPu7WS2aNZVZWdA4
BHPNZUasaibTLlDltcgrQkSgAx3pWAMcUmgFRSzBVBLHoPWpbtqMWWJ4n2OCGAB6eozUwmpLQGmi
I9aoBYh++i/3hSewdTvZRXIdBEB8/wCNJ7DW5qWrER4rgqw1PQpuyMjUB+9auuj8Jx1/iKLd63MQ
hOJBU1Foyqe6NLV+YYmH92vOwuk2j0MV8CZhEYYn3r0dWjz1a5eAWXT3U9QciuSTcaiOtJSpsyPm
Rjt/Ku+6PPaLMBEoGDz6HtSbtqVFczsTXVm9rclZdm7byUlVwfxUkVnCopmkqfK9yPirIZBNEGWm
mQ9QhgGAU4z361TFYn8oAfMxpaBYAqDoM0XKsKWUDgAfpU3YcpUkuYlcguufrRqP3T1jSlxY259Y
1/kKozL+BigBcDNACYBoAQigDF8anb4V1A98IP8Ax8VpR+IUtjyUjjiuxmQmKQXA9BQMFJWRSG2k
H73p71M480Whxepu69qsd9Agt1yAxVt6AuOhGD2zz0rzcHhJUaj5jorVFJaGEMf/AK69Q57iEClY
VxD17fhSZQnYUgFA60nHmTQF3U7v7Y8bYICrjn6nqfpiuahQ5L+pc5c1iiVGBXQyBYx+9j/3hUvY
a3O9lFcezOjoRY+alLYaLcT4BFc00dcJaGfe8yN61vS2OestSiR1rUyGx/fFKT0HHRmnefPZL7Cv
Ppq1U9Go+akYT8V6K2PNW5dtv+PWSuSqvfR2Un7jM5wNxrr6HJ1Ll7ZGPS4LuMBWY4J9fTNctOv+
9cDpqULUlMpRy5GOjeldSVjkuPDHbyRn2pg2IzgDLHA9c4oJuIzkJhQW9s0BchLTlh9xR+OaLBcU
o56yP9On8qYxGhU8kZ/3jn+dIViIoFOMfpVAexaQMWVv7xr/ACFKxJfx1FABjtQAEUAIRQBieNeP
Ct8SeMp+Pzg1th/jInseSEc4PJH612bmSG1JQUDEPbigQH0pctthrQKLABFIBTz1GPpTEJgY71Ni
kwA4osFxyo2xmAO1SAT9en8qlzV7AkxOtNoYiD94n+8KmS0BbnfydPwritdnT0IcfPUsESgZWsZG
8dipcqNx5q4mcyi3etjMao+bNJqyGnqXWYm3I9q42v3lzs5rwsZEneu04+pbtT/oz1zVV76Oqk/d
ZQcfMa6ehzdTVebzNIaHsAMfhXnclq/Md3PejymBIu5PQ9vavTT1PNewtrH5sKszOWPXLH1P+FNk
lhokCnagH4UgFUfLz1pDFxRYYhFFwEYDFFwIHA3U7iPYNK4sLb/rmv8AIUyS9ikAA0AL2oATFAHO
+PX2eGplPR3Va6MP8REzyrgjnPFdiszK4gGfShxGmJg56cVNhiH0pWA2NH0oX8MkiSqxRWBjbghs
Hb07V5mMxroTUX1N6NHnVzKnieCZ4pBtdDgjPSu+nL2keaJlJWIxVWJF5znNAC9qAFAxQBp2s9qN
JmhkRXuGOV4wMDGMkc9ziuCrSm6ylF6G0ZLlaMvGPpXdy9TIAPnTH94VMloNbnfOPl/CuG51Ig/j
qGCJAeKzaNkytcdT9KuJnJlJu9aEEY+9SkC3LG793+Fc8lqdCloZ8nU10LYwtqT2xxEwrKoveR0U
37rKT8Ma2RhLQtQsfszjtXNKPvG8H7rKEinbgV0o5pILD/j347M38zVSIRZIJFILEcOSmT1pgPI5
pDEIpANI4oAhYfMaYWPX9J/48Lb/AK5L/IVRmX/akMTFAB2oATmgRyvxJJXQIfRrlR/463+FdGH+
ImR5ka67GQnegeguT1zzRcBBjpjrRoBf0/U59PQrb7AGYM5xkkDoOfxrkxGEhXfvmlOrKCaRRkIM
jlfu54z6VvGPLFKRDd2NA9qdhBj16igAHWlYYvYk0uoxzIVIJGO4zTVnsxO6G4o1Bi7eRjrUyWgR
ep3jAgYNee9zrWxC3DUhoXPFZs0RBP1P0qosmSKTd60IIx1pMSJB9wismtTdbFSX7xrVGY+E4U+l
Zz3NIvQrScOa1RlLcnh/493HesJfEbQfulR+RW6MWNsP9VIPSQ1T3M0Ws8dKBjIx8uMUhWHUrDEx
QAhoAgcfN1pjsevaSf8AQLY/9M1/kKoyL1IYo60wDHWkIQikByPxMkK6Naxg/euM/kp/xrqw+5Mz
zcg+1drRkIfTAH0pWBCY7cUtBiceo/OjQBDjOKTAsWdnLeSmO3Xc+MkZA4/Gsa1eNKHNIqEXJ2Q7
UbU2l7LAeQhwGx1Haow+IjVp3RVWDg7Mr4HeuqxmwxnpUta2AcoKkEHBB4xUyjzJpDWjNPWriG4F
u0MUYO3a7qMcjqAOw5rgwdGcJS5+5tVknaxl/WvQS0MLAfpzSlsHU758HOK817s609CBx8xqRoYe
lSy0yGU9celNITZTbvVkkf8AFQJDlPFZS3NYvQgkHWrRIidKllRIZepq0SySIny29ayktS47EDDj
mtUZsZY/8th6P/QVb3M0W8ZNIZGvBIFMBaQCgUhiYoCxA4+amKx65pP/AB4W3/XJf5CqIL/FIAPW
gQUwCkwOH+KBPk6auOMuT/47j+tdeGtrczqJs4Ijj/VqPqf/AK9dl+yuZWY3Ldo0/D/9dD5ukQt3
D5/7n6Uvf7DSiIRJ3Un8OlL3+xWgFW7g/lS5WFyxps/2W9iuCGPlndtHGeOBWGJoSq0nCxVOfLK5
Z1m/k1B4pCSqhOY8nCnJ6fUYP4+1Y4DCPDppv5jrVedkVpptxdRSSxRO0aqTuUZyR2+tVXxVOjJQ
loEabkrorqgEipOWRc4Y45Ud+K6nJqN49jO2qRpa3piacIQsyuWXkdCT6/SvPwGLlWcoyWtzatT5
VdGXznNd/KjIQA0MANS9gO8PQV5z3OpbEUn3qllojapGQvzn6UAU3HWrJIx96gAB61D3LjsRSdDT
QhF96TKRFJ1prYTFi6GpkOJG4q0SyOy/1s4/2gf0/wDrVXQy6lsdaBkafff6/wBBQBJikADsKCkH
UVIyFwN1Fwses6Sf9Ats/wDPNf5CtTAvYzQAgNAC5oAQ80AQT/M0IPIL/wDsrUICldaTp1zky2Vs
WP8AEIwGP4jmrU5rZicUzJuvCGlSL+4SWB8cFZCcfg2atYiaE4IxZvBMwz5OoK7ekkWP1BP8q1WK
fUn2aM+48K6rEPkjglPpG4/9mxW0cXHqQ6TM+bSdShJWSyn3DrtjLj81yKtV4PZi9myiwdHKyJtb
0Y4P5VammTawhBx06+h6UwNPRtVXT45kMTt5xAZg33QARkDuef0968rHYJ4iSklt+J0Uqvs1Yyic
sSQd2cnPNd9lblRk9XdEs11PcEGeVpGBOCeTzjP8hWdKnCm249SpTclZkXPpWlraCADmpYCngHjH
FJ7AdsjZjQ46qDXnvc6lsMkPzVDKRExqSiJzzVIllZzTAj6GgAOMmpY0RyDr0pDIxkCgpEb/AHjT
ExY6TGhj0ITIrQf6TOM9Qp/nWnQye5cApIBoXEhx3/8ArUwHYxSAAOeaC0PA46VFxpEbISeKVy7H
qWlf8eFt/wBcl/kK3OUvE/lQIBzQAlACHkUARufnT/e/oaBoaxGaAI3OBx1pCKdvp17dF/tVwqQn
7qouCPxrKVRLY66eGctWWX01bKFnWeRgo5B6mlCq7ms8OorcrtKqlRkkH1GK15jkdO2qGvtZCrKG
U9QadyLGM2h6ZPGjS2ibyB8yEp2/2cVanJdSeVMpT+F7JyTHLPH7Bgf5irWIkL2aM+XwqVDGO8B9
mT+uatYli9mUpfDl6gJDQOP9lj/Wr+sLqL2ZTfS7yFgbiIRxZAMhIIH5Gj2ysHIbuh+D9S1G087E
cMcmNjsc8Z6gD1968+tjUnY7aOClLUuan4Gv7C38yaRLqE9di4ZfwzyKzp4xbWKq4KUdbjYlZYIy
ykAgYOcgj1/z71u9dTBWGSHmkxkbGpGRHk0AQMaoRGevvQAZ61LGhjUihhPFAEbigBFH0pMaGMKa
EyO34vXHrGP5mtOhlLct0ANU/vm/3aBjzSGKOmaTKJ0GRWMnY0irjzESay9obqmeh6RkWVuc8eWu
PyFd55poGkIQdKBiHpQBFLLHDGzyuERerE8Ck3YaTZEJUkVHjdWRskEHNF7g00OJwDTEVp5VjeIN
yHcL1A6mpk9C6aTkrmhJcNb3vkOFBA3AZJLDjp27j865uW+p6XtLPlSJLxoxGruo2A5Zc9e3Wtaa
XOY123Ad9istQRTHuAIJODnH4frXVypnC5NHPsGjcxvncpwc1mw3IojmCP12j+VIBD1oAiamMif2
60hGZqnkytHDKSwLqSiglm54AHvilO9i4JXO70rxDpz20UY3i92/u7cBl3HBAGWAHbk9sV5kqb5r
s9inNcuhCdSvJ5p2jkikCYH2eRcBieeGOM44PT+dVKGmhKm5OzODvrjN/vjyltOVZoJFy1u5646c
EYPuPcGu2g242fQ87ExUZ2iRQzBwVJBdCVOO/oefWrZkhWNIoZ0b8aAIGqhEZPNAxCeTUsaGSuqD
c7AD3OKSuF0QrPE/3ZFJ+tNphdCt60hgKTGhjn2oQMrocagn+0hFa9DKW5d/GkIaeJM+ox/OgY/N
Axy1LKRahA61hM3pltQMVxy3OyOx3GkkGxtx38tf5CvYPFL/AGoEJzmkMytX+13Dpa2EnluV3M/T
aPy+tYVqnKdOHpqTdzlNX0LXICZPOlu4RhmG4kDnHANZxrprU1dBrYi8Payum3Jtr3zBG7HBJyEz
7VvHa6OeavodyWBGQQR6g1ojLyC32i4VnQOFyQC2MHsfzrOd7G+HtzXNERpNcs4G1SoBK8bqwaZ6
N09SvdrvhMOPkPBoTs7kNJ6FqGW00+NH2iLYpGScDgc9fbJrWlNuRjVpxVN3WpzAuRdlrhOVkO4e
vWtmzgSsMjIESD2oAGPPWgCNuhoAhZtz4HSkxoyZoby51mC3jRfKkcYfIABxu56n9KicrRbNacby
segwaOiWL293GSrqhEat8qIBxtPBGD0IGc849PPdSTdz1YU0i6NMtVT5w0i5wFZjtP1Xp+YqOZs1
UVHU5rxdoL+I7qG2iIFzu2rJ3x6VpRqOm7nLXpKpoczrmmx6beT2Mcu67sVRZGxjepUYP8s12xk5
K5xVIKL5exRikLoCQc01uQME0Rl2iRCwOCN3NVYm4xjyaYEZ4oGISM1LA1dO8IpqlhFfGfDyfMyA
bgARwPr+lJ1LaFKlzamV4i8PXmmM2xFeDaArocEc9wef/wBdaxkmZSpuLuU4WYwrv+8ODz1qZLUu
Ow4ltjFQSQOBjrUlkM0V4kQk3xNkZ8sDnFUrESuiqJt80MyjGAQQarpYi92TyXoG1YlyxHOe1Kwr
6iJd/Oplxt9RRYdy6GDDIPFAyRAzcKpJ9AKzZpBXLMasqhmBCms56mkdGTCZQOprmlTdzqVRWO+0
j/j0g/65r/IV6Z5Boe/agBkjiONnbooycUnorjiruxBaM/nmUuTuYfIV+VOOmffj8q4Kk+Y9WjT5
VYsr5oRxNswxJGwHpngHP86iVrFao8s15Eiv5QAN0oOCvY54/mPyrqoSvE463uyOq8K30l3pqCZf
nT+IdDW6OeS1ubB2Fgki7tx45IwQQe1TLbQug7SNeNY7fhW424KkkkVlqdrkrhDE0lu5fgk8VDd9
DVJLU878fapNBKYFwzuhWTnG0Ejj8q6aUbI4MTU5pWKvhrXoWSGymVklbhGzkH29qbS6mF2+h0UR
PlJn0oDYDyaAGMT3oFsc/qGrSDUEsbNR5jHlz2/Ck3oVHVkssr2ut2DFvlaZC57KMD+hqGuaLRov
dmmenKjTXjS+aNrKONpJzj0BHSuFTjFWseury2LL/u4zGzM7jncwA/lWcnfYdrbnJ+JNYn0x0vrI
BhE6+YM43gnG0HBxn1rWjBTdmcuJm4ao86j1GS61W4u7o4a7ZmfaOF3HPHJ4H17V6NrKx5/NzS5i
1KjwyPDLwwOCFPBrP0KH3tjpgsHdLZ0l2/e5wD9Mn60k5XNpRp8t7FO0uVnhXDZdQNwxjnFa9Tmv
bcexHWkO4x2wc/rSsFz0Pw+hm0e3WSYyLLDjK4yqkY/T86yk7M6qcbxuWNY01HtorYOdjsBndnH+
cVKk27jklax5vq/2JdWvIdNG23hk2BeeCOvXOec1uk7HO2r6EdtNBscLIolUFvmHHFHKxqSCWRRA
6qQWb7pCgHH0ppEyqmJJND9o2xJthU45PU4xWljFtX0L2n6bLdTHy8JEScMwPQ96lysawouQur28
dqIIoWznIz6mlGVxVafJsSWylII0PLKADQyUaFv8rKof5jwfT+VRo9TogrCs7ecyggoRhiePxFFt
CJblZpcMRxxUctyuax6fpH/HnAT08tf5Cug5DQyMcEHHFAEWpQSJYb5FeOOZTsdgQHA4OD39OKLX
GnZo970f4VeEW06KWK1vcuoJd5pAWJHJ2n/Cm6MS/rMzxPxilrp/iW7soJGS0huWiDyfwgHB574r
hnTTnyrY7I1Jez5mbXxD+E3hXTPC+o6oviMC8t4JJYo3lj/esozswDk5IA45Ga6oUFTWhxzxDnI8
h8D3DO1xEqEocN8o4FCYpFvxTf28djJB56+ewIAVslT+HStFFsjmsXtH8T2MWiwvPOPtCKBJEEyx
OOo7dR+vas3Sk2dkK0VG7MjVPFN/qcWI2/s2yXO7a2ZHPoDwc9OB2PPFdFLDRWrOeti5S0icgINz
F5MsxORk9K1cE9DnUnuzVsr3yLhZGhiYEAH5Rn6569PeuSph5PY66eJitzpvtFujKqXEbrICYvmG
SB1/L+tY0rpWZdfllqh5I5xWpzkcrFUJH3v4fc9v1pSasVBXkjNgeKDXkRvLJCEsoH3TtJ6+p/z0
rBN2udb5eayMjVZGeNTIN0soaR1xjGWPH04FbUznqaM9F8E2mu/8Iaut38kf2ZmEVsduXkUFgWb5
uMEBRwM856c41qMUro3o4iTdjSigkuZd1zK0pPbtXnuR6CWlzotU8NWb+C9Tu7+PbAtuzDcvygBS
dx/pXfh6LS5mefiKqb5UfNrEtMcdAoI+mK6uhyJ6mrLKzwxzSqQWG0k8Zx/9bFQlcvmtuOnu7lbO
SOOKVonXc7MDtx3x68D/AAotqaOpeOiKVzKvmW0pkDSM2GOQOD7dvWrS6Gc5J6lgtUkmbfzsH2Kx
Ax2q4xuS2dd4AvJXhKXNg00MBISYgYJJzjnv349KyqwtqjejVadmdvMJLiMtMEVQCVROe1Yx3N5d
zz6/8G3jxW134ftpJLa7i80xmVcxZ5AycbhgjB613LY4Hucxe2N5ZjF7az25JKjzI2TJ+p6/hQLU
Yl3iyMAjw/H7wHGRSsh30Kpxg8DJ46VVib2OpsLkm1h2Ou0qMhhx05/pXPKOp2Qk0roxdSvGe5kE
eACMEjn8Af8APStYRSMKk22Gm3yxXMYul3xEgFs4Kj1460pxuKE0jX8qKF5Lrz82sh+R92McdKiC
drGl9TDur4/aS1sx2gYBPU1pymcpD1vEkG522seoPrUcoKR7Dokiy2FqYyrqY1wVOQeBVED7OUS2
kUiqU3DcVPUEnkH3BoAta5pE1xbaSkMsc0l2wcLGd5jCvg5A5z90AdTuGKrlbBSSdy1Npd9YWV3Y
3UHlKLhQxD8o6g/LxkZIkBxnnjANOzsClFs4nVdLv7rUY7TzJmjlAMbOhVIh3ATgEj1PPTjNJQSd
ynNtWOu13VNRvvB402bUbhYRuDj7Q5MoyMBh0YDAPPTnim1cSseRyJLEJIZCw5G9exIrWEEkRKV2
QhQ5IwNg/WrILcdvsKtMBg/dXdz7Z9B/P8aG0CGONzbmA6Y4XA+gHYVSSFdjlQAc9atKwm7jXOCc
cH60noI6T4dyQrr2ySBHuphsid8fKeuBn19cjv61z1YrdGsZNaHTXOni6865tUAjVvuK4w446Ht3
49a57GtjmpNUgiZZFi8yJ0dlDuFIwCe/U8EY6k+/FJq+g07O5jy3iK3mWiRwKGLgEZ56ZJ78Zo5N
NhqVncTw7pOo+NvF1tpFm/7y7k+aTbxEg5ZyOMhQCfc4A5Iq4xsTKTbPrPxPpNsfD0mj2UQhSGFU
tYCcnCAbRzzn5RzSqK8Wgpu00zgvCGnwTus10VW1T75dtqt6DNefQoc0ryPSxNdRjaIz9oi+uLXw
bpsdpIhs7uYpKUGQ4XayqD2HBP4CvSl5Hlw7s+cbZRu3MMgL9fb+tQX1Om0HxhrHh2+EmhXKQ5jZ
ZBsDK2Tn8OxH0q4RJm0zOutWa6tI7VUVQX3TFiP3nOcdgB+P5UKk73G6ulkQPBHceUV8jc88irbo
F3JgKRk+nOAf9kmm1pYlbkli0NrriwahAL23R2Vk8wx7+qjlTnr71Nh3O28MeEbSytFudUtIp7yX
J8uYFhD6Lg8EjuT/AE5oRv6taz32lTRWrqk8YV7cdNrqcj6Z5B9jSaurFJ2dypZTJq1igs5jAkyk
LKV5jOcYwe+ePrXLGD5rHW5rlua9ysdpEEgURIAFjReAoxgD8BXXY429SO4s4b2yNvcQmaJ+HVxw
f/r0Bc8P8RaadG1q609pVlMJA3gY3ZUEfzpkmaeRRuA5ZZFQxiR9h/hBwKVhpsYQQM84PQ0xCUwG
kkArk7TzjNKw76DRRcQw0XGez+HtMutBjutJvXDyRMrxnPBSSNXUj2O4n8ah7h0uWb6zvl0+KSCY
xxkATfu8FScc8Dox3N/wLHas51OV7G0aXMrpnSeBry5uljfUjE1tptvJ9nbKpu25wpbg5y+4c9UH
HSumD5ldHPVjyOzL1r/ptjLeWt1KLiCUI0gVWeZmPBCYXACghiWP8IwMmqsyNOhlsYftX/H0ZHCn
E8zbsqOB3GzA2jA7AVG7KE8W6U9r4Y0qdbqKeO4Z2EZm3bRx1PAGeuM9evTFPkk3YOY8w8Uo41Z9
7KZXCliGyM45P6VpFOxPW5CuntHDGxgmedkDoirnYpzgsMd8cD0wehxTm1TXvCTu9CzdaTdW8CXE
0T/IP3o3ryc8Hhs9/Tt1rihXjUfImaONlczmLMd7HLMdxbGMn6V6MFpYyYHGKpiuQsMnNSwuWtEn
mttVt5bV2ScMNjK20g5HQ9qzn8Jaep6L4cuHFgwliK4IVAvQ/KCSPXkk1ymxWtvDVst1NqNxCl5B
aRyTizC7YxtViMkdecccAnjkE0R1YN6Hn1xAxjQucA9QBjmumULIxUtSHStU1HQy82laheWNzICr
SWk7RMyZBKkqRkEjOO9czepuaPhTxLPp2uC6uz9plcbDNOd5TkHcCeh4/nQxLXQ+o/Amr2rQXUa/
ZvIiIZGiRVV8gbuQccE4PccZAyBSikhyu2eD/G3VYb3xbcLZMiWC4wqEBGfGC2B/P2PrU35noVbl
R59bwuSTwIlG0Nzgn1/meKtRu7E30uaEdtFFCoUF9/TcvHHfHf2rqpwsk2c05Xeh6j8O/hgmuWaa
n4gLW9jIcxwINkky9mLEcL0xjk9QRwTM5rYqMbmP8S/C0XgDV7S9sY1l0y4LGBdmTC4xuRnPIU5y
pOTgEHdgscmjVHHaFqVlp/i4XN1bm7jTPlKF8w7twKtyFz0POB16VKsglqz1KYO/2dgwzITnP5k0
wERSjA+ZGzD/AGcn+dA7lGSN4Z7Ty1VUnv8AO0LjpGznPr8wJ+pNFkF3axoSwO7qzuWdmIAI6DPN
AiRwykAFhzgjPFAHnfjLRUu/FE8gLLmKIkKeSxyM9PRRWdSbjsbUqSnuY0Xhe0K+UdRRbj0YhcD6
dah1pM1WGikZWv6I2jm33zrIZd3CjpjH+NaU58y1OerDkehksSwwegqzMjxj/wDXTFcs2FtDczsl
xcGBQuQwj35PpjI96dgbJrjT7RV/c6gGfPSSFkH580mhovaLolrd28rXjHzI5Cg2uACMA+nvUNlH
scMQvtDsEtw7XcUKxDjPycMO3b5xz2KjoKwdS+rO5UYqTINQ1UWFlY6ddWa3MdtCYLt2bbK/zFg+
c88MF5H8IPGa2jKFRanNKNSl8J6D8JtIs7+J7uGXULYxs0cTRzeW4B68r75ropxUVY5a0nJnqP8A
wi2lNpJt5rrULiN33gT3bPhgDyMnjg09bmdux5xdaYNL8QWNlpkElus0zBpTGsmQMgEEjPT1rRKM
WZObkmlueq38ctr4dtQJZJJAQNw4PT6VEZpzepag1FXPlL4wTRr47vZ7k+bcJDGsUTjOSRyW9gOn
v+ddFJxV3cmXMefpJIJ/O8yQSlixcEg5PU5FZzgp/GXFuOiHy3EknEkju3XJYkmojQpx1SKlOTI+
Bnnmt46EMZJyQoznuaTGNcBVwDyaNAWpJpasdQtQp2t5qknBOBkE8Dnpn8qxqOysaR1Z3PhCK00r
QYka5R7pxmXa+8jk4UY7Dj2zmuZRbRrdHoWnWanwLr1yFYtLYTsowQeI2xVQVmS9jxC6GDGxyVUH
HfNdM9jKCuzDu1j80vEHAI3DjBHcVyHR5HefCjwhbeIdTeXWAiaZasHuZ5JvLESAEn3ycY9gHPUA
id2U9Edd8R/GGg28aWPhUoYIQVZ0fCtuxkA5yfujJAxnvxUzKh3PH7OGTU9TVp0OwAuwbI+UDPrx
nA/pRa0boTbbN62025jnmkvLJLbT44nULPEUDsox8oJDFtxUnHTJyNuabUbpU5XehDnda7HefCjw
Q+v339qazaltJQHy0fpcOD0x3QfhzgdM121KlzCMdbns16252TLbvQjBH4f4VzaXNTkvibaPrvw+
v7MW5uru1lilhjz9479uR9FZquNuopJ9DyODWL+x1a2sfEDLa28BMkiyLukGVO3kZPU55ocYdAi5
dToDrml3ccf2S9t8oSP3sixk+wDEGoKNW3BkjVha3DRgZLIgKn8c0AU7s+dqVrOBIiQyBxE5AH3J
U/P94P8AvmgChrviq00cMzmKW5wdkKNvIOeckcDr3oAo+EPEWo69qLtdwWlvYbSRJypLdgCTg8A0
2gM7xzcPba3G8MMLxzRYErDOdvUAj0yDj3HrWkaSmtSXVcdjnk1aYK+2KFSWOevJ49/pWiw8CXiJ
kD3ZnBkMNrkE5H2WLB56n5efxzVKjDoRKpJ7leW6ZUDLHa5PT/RIf/iaHSiJTZn3N5dR3ASRYcf9
cEA/QCsJwszVSuVgH3TTPsUuflCDhfYUKNgZd07RrjWppY7QKNmCXc4A46fWk2gSZhOhzzn6elTo
Vqe/6Rbz+VbvJGzxNboCPNIJ+XjOBz1NcvsnY73Xjcg1mzuRdm58obHGNqcAH6fjUunJWH7eLTPW
vg/aomlytFtVDPIEVTwFDEKDj2AH5V6EEkrXPMqPU9MhmVbeOAJMRuJ3mMqn0yfqK0fcwVjyv4oe
IB4Q1fSdSez+2Dc6lPNKEcYHOD/eA6UudX3KSvsN8XfGkW2hadMuhFhcAEEXwwMjI/g9CPQjkdjT
ioRd73uDUm7HgfjLU5Ne8Rz6jNb+RI8aKEJJwBkZz+FVSSbbQNW3MR0UnDD2I9a2auIQgDqMkdqn
lQxfMQICoyT0B70wIWITknLMenrUgNZST0y56+1DQMs6dbszySByCoAXH1z/AEH6VjMtFm1/tC41
C2srQu808oSJMZJYkCtISXLYmUXc+lNctxoXw41RPJkKmxa2A7qGXYO3bcPyrnj8Rrsj5vniM9u8
JYoW4yO1dc4c0bGMXZkFxa/8SsxLGGmIbCqPvE5xisZQtA15k5I6q+1a2tvhnpOj6Y7iV2aa/TDx
v1+VWb+Jc8j0KjvmuSFrNm7u2YMscUyMsEAiQsWAdvlGR0Cg5/M/WtIYXn1uTPEKLtY6KxuNEjij
SSz+zS7gzzoglZm74UsoC+x3dO5znjrZXW5+eDT9f6/UqGKjbVFfxRdWdysMtnDbRyEAsEOGOecE
YAJBGOFX23DJrbBKtTbjUuzOu4SScWfTCQQ28KQW4VI1C7BHwpQ8rjt0wfxraWr1JS0IbyKK4j2y
AccZIAZfxpFHHePJZ9J0W8cuSpheNGJ5JONp+oYD8/eqhHmnYmo7RueG3Mn9oMpu0jkcdZNvzH8a
9RYOHc4pYiXQrLp9uFVCrlRkD7oyDxz8uT+dDwUCViJE/lMJGaC5e2PygCIYHHAzjH1+vpWEsJZm
0a9yZtMluS7NqlzO23Iky2N2fcjsB19fbNEcInuN4hx0MW905obCVUWGWPlt6oM8E9+o71csFGKu
hLEtuxzjuSo64HT2rlcbG6ZY00lZNxPAPP8AL+tVTjqTNmkF2MwJ+Vuhz3rZdTNkCAJbsM8jOeaW
yAbp1jcarOlraLuP3mY9EXpk+2axlOxokdF4/wDD8OmaNprWg3mGQxyyEDfIXVTkn6jgds/iceZt
miVjmJtKukvk0/arTsiyfI2VAKgk59s4zRzaAelaVpkemafFbwMWZWOXIALE4OT/AC+mKybKSOJu
vDdvc6heSSSToDKSoTAGCA3f0JI/Ci4z0CD4h+GbSxtkVL25kWFA3kW/AO0f3iKrkl2DmXcfJ8Tv
D8sZj/snV3BHIeKNf13mqVKTWxPtIrqaOg6he28kx03VHs0fc6QfaJFJzIflIAYZwfSuiMnFWsvu
MJRUnf8AVmmPFmsSWyW767O1shZmuYmMbggdCvIHUdCc5H3eQVKpN9F9yCNOKMPxLcy6xpKtPc3t
4OSks0mX65wpII7A4HUjrnAqNZPUqyjsX/Fej26+BvC6T2spjYmUyRAZIO0EEjpjGMngZ4602tRJ
6nB+LtMbTtXEcMdwUaEMDLHtLfMwzgEjtjgnoa1oLQmb1MdrW4273t5kAGcshArazFdWIHBBG8FS
PwqWmNNFKSYKRtXJ5wq/w1m5WK0NTT9C1W+i86CyndGGRIE4P0J4/nU8y6hZiXOk6jaHE2nXSFuj
NGfm/HvTUkwsyxa21xDGFMEu9j02HJPoBWDbZSPpb4e/Du18L6ZHeX8Cz63INzzOgJtz/cQ9iMnL
Dk/SpvYtJGt4uha58I65CgJkazlKZGckKSP1ojuD2PleVmMm7APTp3rvWqOfqXdEMcep2UkwSSKO
dGaOToygg4PsRmoaTgy07SN34pW9rD4/1iO2MDRptjLQqArMEUMeOMltxOBjJNZUqScByqNPQ5pI
hGoRWDACt4Q5UZTnzMVUycVprYi5FcJ91cHG/nj9ahqw02fSPw+S9l8GaW2ovK128ZyZQVYKCQn/
AI6FrhlbmOqL0NkxOTIu7OAD7+n+FQUYPizTT4g02LTMAvN5m1s/dIjYr/48FP4VcHaSZMldNHzt
B8x44Ne5B32PLlpoTowJAH3uvNWIkQJtwVGGPPak7AakQENmW4+YZ+lQVqzAjl/4l1vGh5YkHJxn
Oae+g9mcleRCGaWMjOGyPavPqxs2dkJXRJZp8o6YOQfSlBaBJ3ZfB3ghudpwaskhWCa4lFtBGZJ5
m2qiiom7LUcVdno3h3RodE06WNWEtzID5soGM+gHoK4ZSbZ0RRJ4ptxf6BqEX8SRCdTjJynPH124
/GlB6lHP+HZoLzTfO2L9sij8hz3CD7o+mMfl7VU9GTHU6PJa1Zl+8ArD9RWZZh3sX+kvs4HXp68/
1oA5rTrFXjjLpvbA4HB5r24Ukzz5TNJbUJNHEIpFeQBlUj7wIznPpjnNVLliJXZ6e+mxGxilTULJ
hLbxoltdRh3diFLHABwudxByDjHvXmvXU6BjeRdafeNDf5iVUEks8DMkZAwQWZCWPJwBnAIyM7SE
2UjnvE1vMbfT4ILiOeNyxaTbgMBnJUEDrg8e1OmpN6Eya6mlq+vpfaJplj9qnnW1GxoFhjHy9Oqq
CeO5Jwea0eHqSYKpGKMZIoxdG5MKwQICqRtGqhQenQdeT3/+v10qbhG0jmnU5mWBMUWQboQdwYIx
ZuOuT+HPStGSrnR+EvAuqeI9W8vU1uNI04xed5zfKsnIwF3DGTnIOD0J9K561aMVZG1OnJnpFj8N
dM04CSyudNWVRgStdHePoe3Xt/WuGVSTOhKw658KSO/F5p7j2u1/rU+pRWfwN5hJlbSy3rJOhzQn
bYTK4+Hy8iG30d2IwQskZJH40OVwSaGp8Or6Fg1vYWURHQxyRLj8jSKL8fh7WbaF1ub9YIwMFm1B
Vx+O6hphc5HX/DeiaZJFHeWlpc25D/ajo5jmuYAANp24IAJIycNgZOO4rmlbQnlR59pl1Yal4u02
4stMS10m0uYzGJGBWVEYs3mN3Y4AzgDrWkY1UrpaAnTcrNmV4ihvotXnutWiTzryQzmZQGSQudxK
sOCDntWlKpBq2zIqU5x32M7zdj/KQc8gFv8AE1ujFoa1yVHyrM5x/cP+GP1qW2O2hd8NWx1fXtPs
pCqLLcIJg52lYgcuee4UGs5yaRUYo+q3uVvbppbfd5W3buIwDg8Y/M1xPe507IJ4SpglJ+Zc5x0I
JxQBk2uU8SQIhbNskkpBGOPlUfo36UAePfGXRY9L8V/bLOER2V8ok4UBVkHDDHbs3/Aq9PCVbqzO
LEU7O6OLRMgEdO9dpyk0SF54kHIJ5HtQ9gRY1SYfZ7jZgKke1R9aRa3OZtZgk1kruccZGfzpN2Ka
3YzxFEnnNPGFG/OYyRkd+BXPVcWaU7oqWsI8qFR94lgcd8EVMIpopy1LOnWVzfXjQ2cbPIAN57Jn
PJPboayqTUWWouSO/wBJ0m10mLMah7t1xJMeSfUD0Gf/AK9cM6jkzohFJFpSWVueuR+lQUTQuBcR
ZAIZMEHvyf8AGkBz+ieHxoyXeZfMWdgq56qozjPvyacpNiSsX9OP7uFSesbA/gaRRnzQ+Y5ySCny
mgDN0KGKKS2nlgFzCqAmFjtDcY6//Wr6P2XNG17HkOvZ6o9EbxlZpBCn9hSzRRJsjE96shQegHlD
A/2RiuJ5fd35jZYxW2KcWtSTSXbrf/ZraeMFLSWNnSFw68EFSCpXJ4HHTHAzEsLUjotUV9YpyOl0
W2n1/S4ba2hsbv7MXYKUMCITjjbGSSflzyAPmPTJrnnCa3RvCUXsyU+HfEiQ27WUsOklFKyMCfNJ
JHTap4HPfPJohyrWV7iqLmehEnw5uw7XFzqVxeSyHMm2IyMSeSdzuBnPfGfXNbfWnHSMTNUG92Xo
PDOj6fcrJOjyttwPOZdo+uMf1FZVMRU6K5rChBPcS6vdFtrvNvYadK0RG2QT2y447Ddu/QGoTqPX
YpxgtjpNM03UjJHqVl4Th3SqHS6iMJZgR13Bucg0nJdQ1N2G68RLJiTQIkXv5iKR+mTTTTAna61F
oyZ9HsFX+I+U6498gCq5Y9GFzAn8ZJZ3ht5LfQ1izhS06bm4ycbpATXdTwtGULubUu1jgq4rERna
FNNd7g3jPRotzah9itRxs8uVpCevO1N+P1rOphpbRbfyNaOIbV5xS+ZBF8TvD8R/eWdzKB245/DN
R9RqmjxVLuI/xe8NwqUt/D97vXoHCKp/Hcf5U1l9R7sh4uCOW8W/FGPxJp4tJtAZbVXy0X2v5X9m
AjDY6ZAbnvWqyx9ZEfXl0RxGr6mNfeBW0zSrAA7f9BgaJWHH3gWK5x3ABrtp0PZdbnLUq+0Zs+Dp
WeO70e6jE6xgTQxyLuTYSA4we3KnA75NeLm1Fwl7WB7mVVlOPs5nP/EjT9O06S0uNNEEAkystujg
+W3b5R075rDB1m/dka42ilaSRg+GtGvPEdw62APlQkedMQdsQOcE8Z/hPTPQ5wOa7J10kcEaTbPW
vDXwotbC8tdXivrm8nwJEMbKsUgK9QuDkEH171zSqcxsocu53dlZ3Ucp2GNQ/SJGwOBz04X1wOM+
5NZlGhPdLFbFpMsVjJCufmbA5H4c0AZ9y62+vWT5H72OSNz64AYfypsDK+IOgnxJ4dnhtQFvY8NE
H4BYMO/Y4yPxrShPklqRUjeJ8/qBb2gZxh2OMEYx7V7MZ8yuea42ZNpSMztP8u0KcH+tOQijr0oi
02UKQxkcD5TSkVHct+BvCkuvXUd5cKYtMthudyceaQAdq/oCewPrXDiK3KrLc6acHLV7Hb/FFIYf
Bl4LWGOCCCdJAkahVGd6ZAH+8K46Mm56nRNe7oeRaahaMqwyUcNyeuRjP6GvSgcs9Gdr4Qu0kgur
chRJFjYQMbkJJ/H5mY/8CFcOLjaV+50UH7prOcnNcpsNg+6frQANxJbN7f4UhiaxMbaxubhV3GKM
yhfXAzimI8sfxbqDXEVxHMkSpkeXt3Ic9c96dgNy111NTjNwWit5Cdro0mPm9Rnt0qWM3NJVEsYN
2N4RcAD2/wDrmvpobHgz3NSNIpGBVFyvDEDv1/rVkEpiRd0jKpAH0P4D8vzpjEhh+ZZrcMp6BlYq
w/Kk4pjTaLg1jVo7lIhq+ouMlQi3UnHGem73qHSh1Raqz6Mu2/iDxBbTM0Gqzsy9RKA/0+8Kj6vS
fQ0Vaoi/beMvEqnDSWl1KB1kgX+QFQ8NT6FrES6mtJ44v5yttJaaTHd4G4vbZ69MDdzUPCRK+sM3
7L4o3+k26Ry2UN0sa4CrJ5YwBwAADj8qzeAjLYqOKa3K998aNXusLYaZZWqnhvOZpG/D7oFOOWR3
bCWMeyRx+reIfE2v+Y17qrNGxOIdoQJ6Y2gEdOvWuiOGpR2RhOtUfUwSlzcXUZnm3uWKea8uWUY/
MjjH1roUIrYyc29xstkUnJuplCg8/N8vIyMMevYVRLQx7YEkRBi3VSwwp5pkDGickkgYB4IP60xE
OwK75IKFedwGRz/+ugBtnmOdRGcjORuANAIvRzLo+s2OoCR44vNEUxB4EbcNn2A5+uK4cdS9pRaP
QwVT2VVM666063vrlmm+z3MKuWjZo9/twT1HB4x3r5CM5U35n1dSMaiS6FbVtMi03ULX7J5VtaXK
B3hXhTyRgdccngepxx22qSlJHFS9ybidf4K1ltOuI7Od1Nk52jJAERJ6j0Hr+fGDlUKtnZmmIoqU
eZHV6vfLBfW7RKqyFuSAOeO9d+nQ82zvqY0gnvLokcIrmLOPXjj+v/16QEc0/wBp8SxqpXybIEyg
kHlgVAI7Z6j12kY6GhjNDTr/AO0LloBsPBGCaQHgfxSsfsnjGaKBVW3ugJ1AOcbiQ2f+BAnHoRXq
YWd4WOGvHldyrGq21ntQ/NjqK6mYFdNFn17U7HTbVlRX3PJKRxGoHJOPyHTJwM1jVqqEbmlOLkz1
PS7OGw0q00+1AWGHzIhxyevJ9zXjTk5O56KikrFDWbS31e1vtNvAxtpkG7acHqpBH0Iz+FEZWdx2
ujxi5019H1eawklEoKKRIOCVxxwen3jnrXpUZ31OSpHodpo2iDSLGG5mP+k3qbyv/PNew+uOT+Hp
XJiavNKy2NqUOVFs9K5zULf7kntQA2XlLY/3QR+lIZZmUSW67uVIKketAjwq6szbzXMbuitB94Mc
FvmC8e/OfpmrArAMRleB7ZFS7Dses6XNE9pAoJVhEO/IO2vpYbHhT3NN5GBHlsSTyeBx+f1/nVXJ
JUmCuvDFiD347fzp3AlS5j2ggtgk9QBtPU0DuIGtxMAXGeW2AnntwB9P50CEklE8pw67QvBHUGg0
RsaTtklllj5XIGQc9s8fn+lSxkeoxxPe3IYbXUowIPXIGB+lAihqI8i1t53kxDLGDkkn2/WrRLI5
mVI4S7EMTgYPDd/6UwJ7eKeV5HQnycZDZH3snj8gPzpAU3nVgyKYwynnGMnB45+mKYmTLdMHxIrN
F/D69O/59qYmDyqsboH3LjOW5x1600QyFXbld5284I7VVxWK9y+1GA3F+NxIz/nt/nmlcLD7Btqx
KWUHdkDPJpNlRRf1nY1kY254yQOKzNtehp6JqNxdaRbymX94oKNx0IPUj3HP418zisOoVWe5QxM5
QQ/UJLq6ngnluZP3abU2YAxnuB9KwcNDSNS0rjrZppUlN1dIiIMjajPu/BVJz7ViqF2dP1lJakMf
xXSC8826tZ5Z4U8seYoTnHLHLde/I79utejClKx506icrj7j4shrJktLN1nwdqyHYg9OVOSPxq/Y
snmO38AXLat4Str6WOKOW7mkllljjCDhigA6ngDAzk9ySSSc5xUWOLubewOjfugsWNsSd05HI9zk
ZPtWRRzPxU8Om40sX+xmuLDLBlH34yRk/gOT6YPqK6cPU5XYwrRujzLSrS41a4FtaRFnAyXPCoPV
j2H88HGa9CpVUFc5IU3J2PRtF0610iJo7UM0jfflcfM3t7D2FeXVqubud9OCihFJBzjGJj+p/wDr
1i9jQoyDaSwB3PGMfgp/rijoBwd7pYvviDp80kPm2i2rvID0YqWGPfBaP/Oa3U7RIa1Ol8SOWigc
gsRxx7kCsUWY4IwaAC1YEyCgBGbNurDoshFIY64naLS7mWJBJJEhdU/vEDOKBHiGq3kt/fTXM2wS
ync20YAPtVgVg0mBh8D60rID07Sv+Pa3/wCuI/pX0kNjw57mynf6/wBKGSRW332+v+FAD1+63/XT
/wBlFUhdSw3/AB8/l/WmWxw6x/7n9KTKRt+GP+PGb/rof5UhlfXf9fc/RP8A0EUAO1P/AJBVh/wH
+tWiGZbf8e0X/XRf50wNXRf+PYfQUhmVB/qJf+uf9DTIY2f/AFg/H+QpgyDUPvW//XNqaIZFF/rv
+An+a0PcFsD/AHfz/rSGLY/6+1/3m/lQxo2tU+7J/u1Jb6Efgr/kGXn/AF8t/wCgJXhZj/G+R6eA
/hP1Nwfcf/eNcB19Rtn/AMfKf57ijoC3OF8e/wDIdX/rkP5muyhsYz3OJT/jyH1b+ZrQyPqT4Nf8
k20f/dl/9HyVzz3LpG7b/wDH4v0H/oVZGpreJv8AkXNU/wCvaX/0BqcPjRNT4TyL4a/8i9ef9dT/
ACFdWJ3MaBvw9a5DpIG+63/Xb/2YUnsBUP8ArbX/AK5H+lHQOphWP/H0n+638xTewSF1r/j0h+o/
mKAMRfu0ALZ/65vpQBGv/HnN/wBdP60hko/1D/7p/lQI8JfqasCButQwP//Z

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.confirmado.net/images/M_images/rss091.gif

R0lGODlhUAAPALMAAGZmZv9mAP///4mOeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAACwAAAAAUAAPAAAElRDISau9OOvNp/hgKI5kaZ5oKglB675w3ApDbd94ru+8LqyyYJDWKxqP
uB+AJWy6iMioNAmcfV6g5/WZhNo+X++0qGQGmGiYGXsjet3fMbKsXW+t6nZNDIrLjXQzZzFrg1x+
Ynt+fz2Bhmh3WWxtcHtQfYw8jk5CiZmfA5ucMp6gjKKjeaarZSmur7CxJB20tba3FhEAADs=

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.confirmado.net/images/M_images/rss10.gif

R0lGODlhUAAPALMAAGZmZv9mAP///4mOeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAACwAAAAAUAAPAAAEjxDISau9OOvNp/hgKI5kaZ5oKglB675w3ApDbd94ru+8LqyyYJDWKxqP
uB+AJWy6iMioNAmcfV6g5/V5++S803BNyQwwz7AyNskeQMVRsla9tabbNuIbfpTPzDFqgFxdbXt8
RX6DZ3VZa3leUGCISIpOQoeUlJaXMpmafJydd6ClZCmoqaqrJB2ur7CxFhEAADs=

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.confirmado.net/images/M_images/rss20.gif

R0lGODlhUAAPALMAAGZmZv9mAP///4mOeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAACwAAAAAUAAPAAAEkBDISau9OOvNp/hgKI5kaZ5oKglB675w3ApDbd94ru+8LqyyYJDWKxqP
uB+AJWy6iMioNAmcfV6g5/V5A+U+03BNyQwwz7Ay1tcdi6dkrXprTSeh7gH+bYzPzDFqgFw2e3mG
fDx+g2d0WWuFXlBgiUiLTkKIlYmXmDKam2+dnnahpmQpqaqrrCQdr7CxshYRAAA7

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.confirmado.net/images/M_images/atom03.gif

R0lGODlhUAAPAPcAAGZmZv9mAP///4mOeQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACwAAAAAUAAPAAAIxAABCBxI
sKDBgwgTKlzIcKCAhxAjSpxIsaLFixgzChQQoKPHjyBDivQoYIDJkyhTqlzJkqWAjSNjyvxYsqXN
mzgHvATAcaZPkTVzCh26s2fHhyQjJiXJlOTJhykhDp1atKnRAFd7auWI1KlOk0FRhp1qs+pRiDTT
Yj26NivYt2LHkm1pdq1dtlbx3sUKV+7XuTfralW7VK9bsDUTQwUcGObPx14ZS9bpGPJjv5OJVrbs
E3PmnEUzih5NujTFhqhTq15tMCAAOw==

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: 7bit
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/images/

<html><body bgcolor="#FFFFFF"></body></html>
------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/png
Content-Transfer-Encoding: base64
Content-Location: http://www.confirmado.net/images/M_images/rss.png

iVBORw0KGgoAAAANSUhEUgAAACQAAAAOCAMAAABw6U76AAAASHRFWHREZXNjcmlwdGlvbgBTb2Z0
d2FyZSA6IE1hY3JvbWVkaWEgRmlyZXdvcmtzIDIuMApDcmVhdGlvbiBUaW1lIDogMTAvMjgvMDHG
tYbPAAAAB3RJTUUH0wcWBzgqVkdz2gAAAAlwSFlzAAALEgAACxIB0t1+/AAAAARnQU1BAACxjwv8
YQUAAAEgUExURZw+AD8aASEOAf+aV/9mAO9gAPdjAOZcAOxeAH0zAvSpd+Chd8ZZEfZ3IuWjd96g
dtJ9RN53M+WtiObMut+/qceCVbtLAN5ZAO6cZujCqtWnh7JREc9TAOJdBf///6ZhM/fdzO/k3KxF
AOjXzKhDAODKurd8VMVKAJRaM/DGqvXx7ZxTIsdQAMVtM9lXAPDay6x4Vdaddt+CRJk9AKqBZsmY
d6R0VLVIAN1tIt+WZrqRd5M7APC8mZtIEdNUAOyHRMWgh7NmM/bSu9Owme5+M97Jur5/VfDQu7uc
h/God6FpRNSIVbOFZfjo3bmRd9+MVY1DEdRfEfF1IrhoM++xiPSAM9JyM81cEeaFRM2FVcZjIuto
EeOYZv/m1f/IpOR3LicPx28AAAEdSURBVHjahZFZU4NAEIRR98Ara0RZMTiGaCQiEIMHRs3G+463
eOv//xfuQqUSyof0S3dtfbXTNaN9/wzUrzaClIgSyiLGOI1dR6MZ9FJMkuRVUILIG2PvHwKTzy/W
CHxKehCkqlb4YydNT+I5dcPU+6HNw2sPbtwO3Gp+ZAV34NzHD03Lz0E1k57Drglw0fJDTi/BuYoF
5zrJ/8QAWuJIznCOS+JEDTs9M/918mqxTvY9lVqiXVdPB3G+0xbAtoQo32l6ci7nPLIA9ni+0yp4
a345cMOwDusN5to8AmcjBy3auAxORTYyHFhaLsiFVAFW3IUeNDY+QdFkgU0Vpw1jZtbkeM4yjPmS
jfsglF0AK1FKscrS9e5ZtKGBGv4Dg482zTjZRL4AAAAASUVORK5CYII=

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://www.confirmado.net/modules/mod_artbannersxtd/empty.gif

R0lGODlhAQABAJEAAAAAAP////r34QAAACH5BAEAAAIALAAAAAABAAEAAAICVAEAOw==

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/jpeg
Content-Transfer-Encoding: base64
Content-Location: http://www.confirmado.net/images/stories/petroleo3_300_lnd_thumb.jpg

/9j/4AAQSkZJRgABAQAAAQABAAD//gA7Q1JFQVRPUjogZ2QtanBlZyB2MS4wICh1c2luZyBJSkcg
SlBFRyB2NjIpLCBxdWFsaXR5ID0gNzUK/9sAQwAIBgYHBgUIBwcHCQkICgwUDQwLCwwZEhMPFB0a
Hx4dGhwcICQuJyAiLCMcHCg3KSwwMTQ0NB8nOT04MjwuMzQy/9sAQwEJCQkMCwwYDQ0YMiEcITIy
MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIy/8AAEQgALABA
AwEiAAIRAQMRAf/EAB8AAAEFAQEBAQEBAAAAAAAAAAABAgMEBQYHCAkKC//EALUQAAIBAwMCBAMF
BQQEAAABfQECAwAEEQUSITFBBhNRYQcicRQygZGhCCNCscEVUtHwJDNicoIJChYXGBkaJSYnKCkq
NDU2Nzg5OkNERUZHSElKU1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6g4SFhoeIiYqSk5SVlpeYmZqi
o6Slpqeoqaqys7S1tre4ubrCw8TFxsfIycrS09TV1tfY2drh4uPk5ebn6Onq8fLz9PX29/j5+v/E
AB8BAAMBAQEBAQEBAQEAAAAAAAABAgMEBQYHCAkKC//EALURAAIBAgQEAwQHBQQEAAECdwABAgMR
BAUhMQYSQVEHYXETIjKBCBRCkaGxwQkjM1LwFWJy0QoWJDThJfEXGBkaJicoKSo1Njc4OTpDREVG
R0hJSlNUVVZXWFlaY2RlZmdoaWpzdHV2d3h5eoKDhIWGh4iJipKTlJWWl5iZmqKjpKWmp6ipqrKz
tLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uLj5OXm5+jp6vLz9PX29/j5+v/aAAwDAQACEQMRAD8A
1ce1GB6UvWlxXke3Ov2Rma1qsOkaVdXRZDJEmVQt1YnC59skV5d4V1W0sPGtzeaxeANtdfOzvVpC
QCcgdPvY7dK6z4l332PTLFBne05dSrbSCqnBB+pB/CmaT8PNMufDlqNRhkW+dfMklRyGUtzj04GO
1dMKsI0+aXUzcG5WXQ69dSsXszdx3UUluOskbBh+lWhg9q8q1fwFf6CPtelarhCdvzOYXGe2QcH9
Kr2XjnX/AA9J9k1KEXQHzfvmO8j2cEgj86ajzq9N3E9NJI9cIHpRxXJ6Z8RdCv8Aas8j2Up7TD5c
/wC8OPzxXUwzwXMKywSpLG3IdGDA/iKxlOUPiRagpbD94pQ4qoJB607zB614Htz2fqxj+I9FXW9V
0YSMght5XlkU9WA28D8cV0W4VlTokmpWkxL7olkxg/LzgHNXPMFaTxLcYq+3+ZMcLq3Yp6+8X2FF
lDEGVcbVJI565HT615tFcrH4zvNVSLfp1pKsNwkmWwj5Uk56/Nk13+u3f2e1D+WXVcu2CBgAg5rm
fAdml/ourzXahvt8xR/cYz/NjXfhq6hh5VJbbfe/8jlq0G6qgtzZ1PwBoOpZkiha0kbndbnC/wDf
PT8sVzHgqyt9N8aXduuqxSQwrtiCy7ROx9BnBwM/jiut8L30r6Y1jdt/pdg5t5M/xAfdb8RiqU2i
afE97cw20S3ltOLqORVw23IfHvkhxShipR56VST/AK6jlhr8s4ovi/UjIbil+3D1rySPxHfRSmRR
DuOf4Omfp9Kl/wCEq1LzBJmPPTGDj8s1lLKmnZM9COYQavZnqhvh5ynP8J/pT/t49a8r/wCEt1LO
dsGQMfdP+NV5fEuqyOWFzsB/hVRgfnRHKpTdk0E8xpQV2n/XzO98XXznSWSN1XzB5ZyMnDEDipfC
cy23hy3BPMhaQ/ixx+mK84udbvbyBY7hw4Vsg4x29quxeJb+3toIYhEqRoAPlPIHrzXTPAyWHVG/
W5z08VCWIdWztY7i6vBp/ia3vUbEN6ot5wD/ABj7jfzFcjdeN9YS9n2NCpyY8+WCdoY4HocZP51j
XOsX12HM027JHQYx34/Ks93aR2djlmOSfU114fAwiv3iTdkv6/rocOJxjbtSule/9f11P//Z

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: base64
Content-Location: http://c20.statcounter.com/2065915/0/25746a52/0/

iVBORw0KGgoAAAANSUhEUgAAADwAAAAOAQMAAABJgO2XAAAABlBMVEVAQED///9pZpXFAAAAUElE
QVR4nGNgwA3kbCp/GB9vbGAwTjsjUZZzGMTgMfjGc7yBwZytwnD7mbMNDNYyPMlm6TeBUgY8yd8S
7gMZCWcOmOUcbGCQq6s4ANaOGwAA2pgcUTFVaUEAAAAASUVORK5CYII=

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/highslide/highslide.css

.highslide {
	CURSOR: url(graphics/zoomin.cur), pointer; outline: none
}
.highslide-active-anchor IMG {
	VISIBILITY: hidden
}
.highslide IMG {
	BORDER-RIGHT: gray 2px solid; BORDER-TOP: gray 2px solid; BORDER-LEFT: =
gray 2px solid; BORDER-BOTTOM: gray 2px solid
}
.highslide:hover IMG {
	BORDER-RIGHT: white 2px solid; BORDER-TOP: white 2px solid; =
BORDER-LEFT: white 2px solid; BORDER-BOTTOM: white 2px solid
}
.highslide-wrapper {
	BACKGROUND: white
}
.highslide-image {
	BORDER-RIGHT: white 2px solid; BORDER-TOP: white 2px solid; =
BORDER-LEFT: white 2px solid; BORDER-BOTTOM: white 2px solid
}
.highslide-image-blur {
=09
}
.highslide-html {
	BACKGROUND-COLOR: white
}
.highslide-html-blur {
=09
}
.highslide-html-content {
	DISPLAY: none; POSITION: absolute
}
.highslide-loading {
	BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 2px; BACKGROUND-POSITION: =
3px 1px; BORDER-TOP: black 1px solid; DISPLAY: block; PADDING-LEFT: =
22px; FONT-WEIGHT: bold; FONT-SIZE: 8pt; BACKGROUND-IMAGE: =
url(graphics/loader.white.gif); PADDING-BOTTOM: 2px; BORDER-LEFT: black =
1px solid; COLOR: black; PADDING-TOP: 2px; BORDER-BOTTOM: black 1px =
solid; BACKGROUND-REPEAT: no-repeat; FONT-FAMILY: sans-serif; =
BACKGROUND-COLOR: white; TEXT-DECORATION: none
}
.highslide-wrapper {
	BACKGROUND-COLOR: white
}
.highslide-wrapper .highslide-html-content {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; WIDTH: =
400px; PADDING-TOP: 5px
}
.highslide-wrapper .highslide-header DIV {
=09
}
.highslide-wrapper .highslide-header UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none; TEXT-ALIGN: right
}
.highslide-wrapper .highslide-header UL LI {
	DISPLAY: inline; PADDING-LEFT: 1em; LIST-STYLE-TYPE: none
}
.highslide-wrapper .highslide-header UL LI A {
	LIST-STYLE-TYPE: none
}
.highslide-wrapper .highslide-header UL LI.highslide-previous {
	DISPLAY: none
}
.highslide-wrapper .highslide-header UL LI.highslide-next {
	DISPLAY: none
}
.highslide-wrapper .highslide-header A {
	FONT-WEIGHT: bold; TEXT-TRANSFORM: uppercase; COLOR: gray; =
LIST-STYLE-TYPE: none; TEXT-DECORATION: none
}
.highslide-wrapper .highslide-header A:hover {
	COLOR: black; TEXT-DECORATION: none
}
.highslide-wrapper .highslide-header .highslide-move A {
	CURSOR: move
}
.highslide-wrapper .highslide-footer {
	HEIGHT: 11px
}
.highslide-wrapper .highslide-footer .highslide-resize {
	BACKGROUND: url(graphics/resize.gif); FLOAT: right; WIDTH: 11px; =
HEIGHT: 11px
}
.highslide-wrapper .highslide-body {
	PADDING-RIGHT: 7px; PADDING-LEFT: 7px
}
.highslide-move {
	CURSOR: move
}
.highslide-resize {
	CURSOR: nw-resize
}
.highslide-display-block {
	DISPLAY: block
}
.highslide-display-none {
	DISPLAY: none
}
A:hover {
	TEXT-DECORATION: none
}
.control {
	DISPLAY: block; FONT-WEIGHT: bold; FONT-SIZE: 9pt; FLOAT: right; =
MARGIN: 1px 5px; TEXT-TRANSFORM: uppercase; POSITION: relative; =
TEXT-DECORATION: none
}
.control:hover {
	BORDER-TOP: #333 1px solid; MARGIN-TOP: 0px; MARGIN-BOTTOM: 0px; =
BORDER-BOTTOM: #333 1px solid
}
.control {
	COLOR: #666
}
.control * {
	COLOR: #666
}
A.highslide-full-expand {
	DISPLAY: block; BACKGROUND: url(graphics/fullexpand.gif) no-repeat; =
MARGIN: 0px 10px 10px 0px; WIDTH: 34px; HEIGHT: 34px
}
.highslide-caption {
	BORDER-RIGHT: white 2px solid; PADDING-RIGHT: 5px; BORDER-TOP: white =
2px; DISPLAY: none; PADDING-LEFT: 5px; FONT-SIZE: 10pt; PADDING-BOTTOM: =
5px; BORDER-LEFT: white 2px solid; PADDING-TOP: 5px; BORDER-BOTTOM: =
white 2px solid; BACKGROUND-COLOR: white
}
.highslide-caption-image {
	BORDER-RIGHT: white 5px solid; PADDING-RIGHT: 5px; BORDER-TOP: white =
5px; DISPLAY: none; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: =
white 5px solid; PADDING-TOP: 5px; BORDER-BOTTOM: white 5px solid; =
BACKGROUND-COLOR: white
}
.controlbar {
	BACKGROUND: url(graphics/controlbar4.gif); WIDTH: 167px; HEIGHT: 34px
}
.controlbar A {
	DISPLAY: block; FLOAT: left; HEIGHT: 27px
}
.controlbar A:hover {
	BACKGROUND-IMAGE: url(graphics/controlbar4-hover.gif)
}
.controlbar .previous {
	WIDTH: 50px
}
.controlbar .next {
	BACKGROUND-POSITION: -50px 0px; WIDTH: 40px
}
.controlbar .highslide-move {
	BACKGROUND-POSITION: -90px 0px; WIDTH: 40px
}
.controlbar .close {
	BACKGROUND-POSITION: -130px 0px; WIDTH: 36px
}
.highslide-overlay {
	DISPLAY: none
}
.highslide-wrapper {
	BACKGROUND-COLOR: white
}
.highslide-wrapper .highslide-html-content {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; WIDTH: =
400px; PADDING-TOP: 5px
}
.highslide-wrapper .highslide-header A {
	FONT-WEIGHT: bold; TEXT-TRANSFORM: uppercase; COLOR: gray; =
TEXT-DECORATION: none
}
.highslide-wrapper .highslide-header A:hover {
	COLOR: black
}
.highslide-wrapper .highslide-header .highslide-move A {
	CURSOR: move
}
.highslide-wrapper .highslide-footer {
	HEIGHT: 11px
}
.highslide-wrapper .highslide-footer .highslide-resize {
	BACKGROUND: url(highslide/graphics/resize.gif); FLOAT: right; WIDTH: =
11px; HEIGHT: 11px
}
.highslide-wrapper .highslide-body {
=09
}
.highslide {
	CURSOR: url(highslide/graphics/zoomin.cur), pointer; outline: none
}
.highslide-active-anchor IMG {
	VISIBILITY: hidden
}
.highslide IMG {
	BORDER-RIGHT: gray 2px solid; BORDER-TOP: gray 2px solid; BORDER-LEFT: =
gray 2px solid; BORDER-BOTTOM: gray 2px solid
}
.highslide:hover IMG {
	BORDER-RIGHT: white 2px solid; BORDER-TOP: white 2px solid; =
BORDER-LEFT: white 2px solid; BORDER-BOTTOM: white 2px solid
}
.highslide-wrapper {
	BACKGROUND: white
}
.highslide-image {
	BORDER-RIGHT: white 2px solid; BORDER-TOP: white 2px solid; =
BORDER-LEFT: white 2px solid; BORDER-BOTTOM: white 2px solid
}
.highslide-image-blur {
=09
}
.highslide-loading {
	BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 2px; BACKGROUND-POSITION: =
3px 1px; BORDER-TOP: black 1px solid; DISPLAY: block; PADDING-LEFT: =
22px; FONT-WEIGHT: bold; FONT-SIZE: 8pt; BACKGROUND-IMAGE: =
url(highslide/graphics/loader.white.gif); PADDING-BOTTOM: 2px; =
BORDER-LEFT: black 1px solid; COLOR: black; PADDING-TOP: 2px; =
BORDER-BOTTOM: black 1px solid; BACKGROUND-REPEAT: no-repeat; =
FONT-FAMILY: sans-serif; BACKGROUND-COLOR: white; TEXT-DECORATION: none
}
A.highslide-credits {
	PADDING-RIGHT: 0px; PADDING-LEFT: 5px; FONT-SIZE: 11px; BACKGROUND: =
#ffffff; PADDING-BOTTOM: 0px; COLOR: silver; PADDING-TOP: 5px; =
TEXT-DECORATION: none
}
A.highslide-credits I {
	PADDING-RIGHT: 0px; PADDING-LEFT: 5px; FONT-SIZE: 11px; BACKGROUND: =
#ffffff; PADDING-BOTTOM: 0px; COLOR: silver; PADDING-TOP: 5px; =
TEXT-DECORATION: none
}
A.highslide-credits:hover {
=09
}
A.highslide-credits:hover I {
=09
}
.highslide-move {
	CURSOR: move
}
.highslide-overlay {
	DISPLAY: none
}
A.highslide-full-expand {
	DISPLAY: block; BACKGROUND: url(highslide/graphics/fullexpand.gif) =
no-repeat; MARGIN: 0px 10px 10px 0px; WIDTH: 34px; HEIGHT: 34px
}
.controlbar {
	BACKGROUND: url(highslide/graphics/controlbar4.gif); WIDTH: 167px; =
HEIGHT: 34px
}
.controlbar A {
	DISPLAY: block; FLOAT: left; HEIGHT: 27px
}
.controlbar A:hover {
	BACKGROUND-IMAGE: url(highslide/graphics/controlbar4-hover.gif)
}
.controlbar .previous {
	WIDTH: 50px
}
.controlbar .next {
	BACKGROUND-POSITION: -50px 0px; WIDTH: 40px
}
.controlbar .highslide-move {
	BACKGROUND-POSITION: -90px 0px; WIDTH: 40px
}
.controlbar .close {
	BACKGROUND-POSITION: -130px 0px; WIDTH: 36px
}
.highslide-display-block {
	DISPLAY: block
}
.highslide-display-none {
	DISPLAY: none
}

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/css/template_css.css

HTML {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
BODY {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
FORM {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
FIELDSET {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
BODY {
	BACKGROUND: #ffffff; COLOR: #000000; LINE-HEIGHT: 1.5; FONT-FAMILY: =
Arial, sans-serif
}
BODY#bd {
	BACKGROUND: #ffffff; COLOR: #333333
}
BODY.contentpane {
	FONT-SIZE: 12px; MARGIN: 1em 2em; WIDTH: auto; COLOR: #000000; =
LINE-HEIGHT: 1.3em
}
BODY.fs1 {
	FONT-SIZE: 10px
}
BODY.fs2 {
	FONT-SIZE: 11px
}
BODY.fs3 {
	FONT-SIZE: 12px
}
BODY.fs4 {
	FONT-SIZE: 13px
}
BODY.fs5 {
	FONT-SIZE: 14px
}
BODY.fs6 {
	FONT-SIZE: 15px
}
A {
	COLOR: #006699; TEXT-DECORATION: none
}
A:hover {
	COLOR: #cc0000; TEXT-DECORATION: underline
}
A:active {
	COLOR: #cc0000; TEXT-DECORATION: underline
}
A:focus {
	COLOR: #cc0000; TEXT-DECORATION: underline
}
A IMG {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
.contentheading {
	LINE-HEIGHT: 1.1; FONT-FAMILY: Cambria, "Times New Roman", Times, serif
}
.componentheading {
	LINE-HEIGHT: 1.1; FONT-FAMILY: Cambria, "Times New Roman", Times, serif
}
H1 {
	LINE-HEIGHT: 1.1; FONT-FAMILY: Cambria, "Times New Roman", Times, serif
}
H2 {
	LINE-HEIGHT: 1.1; FONT-FAMILY: Cambria, "Times New Roman", Times, serif
}
H3 {
	LINE-HEIGHT: 1.1; FONT-FAMILY: Cambria, "Times New Roman", Times, serif
}
H4 {
	LINE-HEIGHT: 1.1; FONT-FAMILY: Cambria, "Times New Roman", Times, serif
}
SMALL {
	FONT-SIZE: 92%
}
.small {
	FONT-SIZE: 92%
}
.smalldark {
	FONT-SIZE: 92%
}
.createby {
	FONT-SIZE: 92%
}
.createdate {
	FONT-SIZE: 92%
}
.modifydate {
	FONT-SIZE: 92%
}
.img_caption {
	FONT-SIZE: 92%
}
P.site-slogan {
	FONT-SIZE: 92%
}
A.readon {
	FONT-SIZE: 92%
}
#ja-pathway {
	FONT-SIZE: 92%
}
#ja-footer {
	FONT-SIZE: 92%
}
SMALL {
	COLOR: #999999
}
.small {
	COLOR: #999999
}
IMG {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
IMG.caption {
	MARGIN-TOP: 5px
}
.img_caption {
	COLOR: #999999
}
H1 {
	FONT-WEIGHT: normal; FONT-SIZE: 225%
}
H2 {
	FONT-WEIGHT: normal; FONT-SIZE: 200%
}
H3 {
	FONT-SIZE: 150%
}
H4 {
	FONT-SIZE: 125%
}
P {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
10px 0px; PADDING-TOP: 0px
}
PRE {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
10px 0px; PADDING-TOP: 0px
}
BLOCKQUOTE {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
10px 0px; PADDING-TOP: 0px
}
UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
10px 0px; PADDING-TOP: 0px
}
OL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
10px 0px; PADDING-TOP: 0px
}
H1 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
10px 0px; PADDING-TOP: 0px
}
H2 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
10px 0px; PADDING-TOP: 0px
}
H3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
10px 0px; PADDING-TOP: 0px
}
H4 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
10px 0px; PADDING-TOP: 0px
}
H5 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
10px 0px; PADDING-TOP: 0px
}
H6 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
10px 0px; PADDING-TOP: 0px
}
UL {
	LIST-STYLE-TYPE: none
}
UL LI {
	PADDING-LEFT: 30px; BACKGROUND: url(../images/bullet.gif) no-repeat =
18px 7px; LINE-HEIGHT: 160%
}
OL LI {
	MARGIN-LEFT: 35px; LINE-HEIGHT: 180%
}
TH {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 5px; PADDING-TOP: 5px; TEXT-ALIGN: left
}
FIELDSET {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 10px; =
BORDER-TOP-STYLE: none; PADDING-TOP: 10px; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
FIELDSET A {
	FONT-WEIGHT: bold
}
FIELDSET.input {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
HR {
	BORDER-TOP: #cccccc 1px solid; BORDER-LEFT-WIDTH: 0px; =
BORDER-BOTTOM-WIDTH: 0px; HEIGHT: 1px; BORDER-RIGHT-WIDTH: 0px
}
TD {
	FONT-SIZE: 100%
}
DIV {
	FONT-SIZE: 100%
}
FORM {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
FORM LABEL {
	CURSOR: pointer
}
INPUT {
	FONT-SIZE: 100%; FONT-FAMILY: Arial, sans-serif
}
SELECT {
	FONT-SIZE: 100%; FONT-FAMILY: Arial, sans-serif
}
TEXTAREA {
	FONT-SIZE: 100%; FONT-FAMILY: Arial, sans-serif
}
.inputbox {
	FONT-SIZE: 100%; FONT-FAMILY: Arial, sans-serif
}
.inputbox {
	BORDER-RIGHT: #ababab 1px inset; PADDING-RIGHT: 3px; BORDER-TOP: =
#ababab 1px inset; PADDING-LEFT: 3px; BACKGROUND: #ffffff; =
PADDING-BOTTOM: 3px; BORDER-LEFT: #ababab 1px inset; COLOR: #333333; =
PADDING-TOP: 3px; BORDER-BOTTOM: #ababab 1px inset
}
.button {
	BORDER-RIGHT: #ababab 1px outset; PADDING-RIGHT: 8px; BORDER-TOP: =
#ababab 1px outset; PADDING-LEFT: 8px; FONT-WEIGHT: bold; FONT-SIZE: =
100%; BACKGROUND: #f7f7f7; PADDING-BOTTOM: 2px; BORDER-LEFT: #ababab 1px =
outset; PADDING-TOP: 2px; BORDER-BOTTOM: #ababab 1px outset
}
* HTML .button {
	PADDING-RIGHT: 3px! important; PADDING-LEFT: 3px! important; =
PADDING-BOTTOM: 2px! important; PADDING-TOP: 2px! important
}
* + HTML .button {
	PADDING-RIGHT: 3px! important; PADDING-LEFT: 3px! important; =
PADDING-BOTTOM: 2px! important; PADDING-TOP: 2px! important
}
TABLE.blog {
=09
}
.article_seperator {
	CLEAR: both; DISPLAY: block; BACKGROUND: url(../images/dot.gif) =
repeat-x center 50%; HEIGHT: 30px
}
.article_column {
=09
}
.column_separator {
	PADDING-RIGHT: 25px; PADDING-LEFT: 25px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
.mosimage {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; MARGIN: =
15px 10px 5px 0px; PADDING-TOP: 0px
}
.mosimage_caption {
	COLOR: #aeaeae
}
.article-content {
	PADDING-RIGHT: 10px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
.article-content .article-image {
	PADDING-RIGHT: 10px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 5px
}
.blog-content-tr {
	BACKGROUND: url(../images/dot.gif) repeat-x 50% top
}
.blog-content-table-parent {
	BACKGROUND: url(../images/dot.gif) repeat-x 0px 99%; PADDING-BOTTOM: =
20px
}
.blog-content-table {
	MARGIN-BOTTOM: 10px
}
.blog-content-td {
	BORDER-LEFT: #cccccc 1px solid
}
.blog-content-td .contentpaneopen TD {
	PADDING-LEFT: 10px! important
}
.blog-content-td-first {
=09
}
TD.sectiontableheader {
	BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 4px; BORDER-TOP: =
#cccccc 1px solid; PADDING-LEFT: 4px; BACKGROUND: #666666; =
PADDING-BOTTOM: 4px; BORDER-LEFT: #cccccc 1px solid; PADDING-TOP: 4px; =
BORDER-BOTTOM: #cccccc 1px solid
}
TR.sectiontableentry0 TD {
	PADDING-RIGHT: 4px; PADDING-LEFT: 4px; PADDING-BOTTOM: 6px; =
PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid
}
TR.sectiontableentry1 TD {
	PADDING-RIGHT: 4px; PADDING-LEFT: 4px; PADDING-BOTTOM: 6px; =
PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid
}
TR.sectiontableentry2 TD {
	PADDING-RIGHT: 4px; PADDING-LEFT: 4px; PADDING-BOTTOM: 6px; =
PADDING-TOP: 4px; BORDER-BOTTOM: #cccccc 1px solid
}
TR.sectiontableentry0:hover TD {
	BACKGROUND-COLOR: #ebf2f9
}
TR.sectiontableentry1:hover TD {
	BACKGROUND-COLOR: #ebf2f9
}
TR.sectiontableentry2:hover TD {
	BACKGROUND-COLOR: #ebf2f9
}
TR.sectiontableentry2 TD {
	BACKGROUND-COLOR: #f7f7f7
}
TABLE.contentpane {
	WIDTH: 100%; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
TABLE.contentpaneopen {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-COLLAPSE: collapse; BORDER-BOTTOM-STYLE: none; =
border-spacing: 0
}
TABLE.contenttoc {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 92%; PADDING-BOTTOM: =
0px; MARGIN: 0px 0px 10px 10px; WIDTH: 35%; PADDING-TOP: 0px
}
TABLE.contenttoc A {
=09
}
TABLE.contenttoc TD {
	PADDING-RIGHT: 5px; PADDING-LEFT: 20px; BACKGROUND: =
url(../images/bullet.gif) no-repeat 10px 9px; PADDING-BOTTOM: 1px; =
PADDING-TOP: 1px
}
TABLE.contenttoc TH {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 3px; =
TEXT-INDENT: 5px; PADDING-TOP: 0px; BORDER-BOTTOM: #cccccc 1px solid
}
TABLE.poll {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; WIDTH: =
100%; PADDING-TOP: 0px; BORDER-COLLAPSE: collapse
}
TABLE.pollstableborder {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; WIDTH: =
100%; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: =
none; BORDER-LEFT-STYLE: none; TEXT-ALIGN: left; BORDER-BOTTOM-STYLE: =
none
}
TABLE.pollstableborder IMG {
	VERTICAL-ALIGN: baseline
}
TABLE.pollstableborder TD {
	PADDING-RIGHT: 4px! important; PADDING-LEFT: 4px! important; =
BACKGROUND: none transparent scroll repeat 0% 0%; PADDING-BOTTOM: 4px! =
important; PADDING-TOP: 4px! important; BORDER-COLLAPSE: collapse; =
border-spacing: 0
}
TABLE.pollstableborder TR.sectiontableentry1 TD {
	BACKGROUND: #f7f7f7
}
TABLE.searchintro {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 10px; WIDTH: =
100%; PADDING-TOP: 10px
}
TABLE.searchintro TD {
	PADDING-RIGHT: 5px! important; PADDING-LEFT: 5px! important; =
PADDING-BOTTOM: 5px! important; PADDING-TOP: 5px! important
}
TABLE.adminform {
=09
}
.adminform .inputbox {
=09
}
.blog_more {
=09
}
.blog_more STRONG {
	DISPLAY: block; FONT-SIZE: 125%; MARGIN: 0px 0px 5px
}
.blog_more UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.blog_more UL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 17px; BACKGROUND: =
url(../images/bullet.gif) no-repeat 6px 10px; PADDING-BOTTOM: 0px; =
MARGIN: 0px; PADDING-TOP: 0px
}
.category {
	FONT-WEIGHT: bold; FONT-SIZE: 125%
}
H1.componentheading {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; MARGIN: 0px =
0px 10px; PADDING-TOP: 0px
}
.componentheading {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; MARGIN: 0px =
0px 10px; PADDING-TOP: 0px
}
.componentheading {
	FONT-WEIGHT: normal; FONT-SIZE: 250%; BORDER-BOTTOM: #ababab 5px solid
}
.contentdescription {
	PADDING-RIGHT: 10px; BORDER-TOP: #cccccc 1px solid; DISPLAY: block; =
PADDING-LEFT: 10px; FONT-SIZE: 125%; BACKGROUND: #f7f7f7; =
PADDING-BOTTOM: 10px; MARGIN: 10px 0px; PADDING-TOP: 10px; =
BORDER-BOTTOM: #cccccc 1px solid; FONT-STYLE: italic; FONT-FAMILY: =
Cambria, "Times New Roman", Times, serif
}
H2.contentheading {
	PADDING-RIGHT: 8px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.contentheading {
	PADDING-RIGHT: 8px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
.contentheading {
	FONT-SIZE: 250%
}
TABLE.blog .contentheading {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
125%; PADDING-BOTTOM: 5px; PADDING-TOP: 10px
}
A.contentpagetitle {
=09
}
A.contentpagetitle:hover {
=09
}
A.contentpagetitle:active {
=09
}
A.contentpagetitle:focus {
=09
}
A.readon {
	CLEAR: both; PADDING-RIGHT: 5px; DISPLAY: block; PADDING-LEFT: 5px; =
BACKGROUND: #666666; FLOAT: left; PADDING-BOTTOM: 0px; TEXT-TRANSFORM: =
lowercase; COLOR: #ffffff; PADDING-TOP: 0px; TEXT-ALIGN: center
}
A.readon:hover {
	BACKGROUND: #006699; COLOR: #ffffff; TEXT-DECORATION: none
}
A.readon:active {
	BACKGROUND: #006699; COLOR: #ffffff; TEXT-DECORATION: none
}
A.readon:focus {
	BACKGROUND: #006699; COLOR: #ffffff; TEXT-DECORATION: none
}
TABLE.contentpaneopen TD {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 5px
}
TABLE.contentpane TD {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 5px
}
TABLE.contentpaneopen {
	WIDTH: 100%
}
TABLE.contentpane {
	WIDTH: 100%
}
TABLE.blog {
	WIDTH: 100%
}
.moduletable {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
UL.pagination {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
15px auto 0px; PADDING-TOP: 0px
}
UL.pagination LI {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; BACKGROUND: =
none transparent scroll repeat 0% 0%; PADDING-BOTTOM: 0px; MARGIN: 0px; =
PADDING-TOP: 0px
}
UL.pagination LI SPAN {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 2px; =
PADDING-TOP: 2px
}
UL.pagination A {
	PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 2px; =
PADDING-TOP: 2px
}
UL.pagination A:hover {
=09
}
UL.pagination A:active {
=09
}
UL.pagination A:focus {
=09
}
.pagenavbar {
	PADDING-LEFT: 14px; FONT-WEIGHT: bold; BACKGROUND: =
url(../images/icon-pages.gif) no-repeat left center
}
.pagenavcounter {
	PADDING-RIGHT: 14px; PADDING-LEFT: 14px; FONT-WEIGHT: bold; BACKGROUND: =
url(../images/icon-pages.gif) no-repeat 0px 11px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 8px
}
.sectiontableheader {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-WEIGHT: bold; =
PADDING-BOTTOM: 8px; COLOR: #ffffff; PADDING-TOP: 8px
}
.sectiontableheader A {
	COLOR: #ffffff
}
TR.sectiontableentry1 TD {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 8px; =
PADDING-TOP: 8px
}
TR.sectiontableentry2 TD {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 8px; =
PADDING-TOP: 8px
}
TR.sectiontableentry1:hover TD {
=09
}
TR.sectiontableentry2:hover TD {
=09
}
.smalldark {
	TEXT-ALIGN: left
}
DIV.syndicate DIV {
	TEXT-ALIGN: center
}
.pollstableborder TR.sectiontableentry1 TD {
	BACKGROUND: none transparent scroll repeat 0% 0%
}
.pollstableborder TR.sectiontableentry2 TD {
	BACKGROUND: none transparent scroll repeat 0% 0%
}
.article-tools {
	CLEAR: both; DISPLAY: block; MARGIN: 0px 0px 10px; WIDTH: 100%; COLOR: =
#ababab; POSITION: relative
}
.article-section {
	FONT-SIZE: 92%; TEXT-TRANSFORM: uppercase; COLOR: #999999
}
.article-category {
	FONT-SIZE: 92%; TEXT-TRANSFORM: uppercase; COLOR: #999999
}
.createby {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 3px; =
TEXT-TRANSFORM: uppercase; PADDING-TOP: 3px
}
.createdate {
	PADDING-RIGHT: 5px! important; PADDING-LEFT: 0px! important; =
PADDING-BOTTOM: 0px! important; TEXT-TRANSFORM: uppercase; COLOR: =
#ababab; PADDING-TOP: 0px! important
}
.modifydate {
	TEXT-TRANSFORM: uppercase; COLOR: #ababab
}
DIV.buttonheading {
	PADDING-RIGHT: 3px; PADDING-LEFT: 3px; RIGHT: 0px; PADDING-BOTTOM: 3px; =
WIDTH: 62px; PADDING-TOP: 3px; POSITION: absolute; TOP: -25px
}
.buttonheading IMG {
	BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; FLOAT: right; =
BORDER-BOTTOM-WIDTH: 0px; MARGIN: 0px 5px 0px 0px; BORDER-RIGHT-WIDTH: =
0px
}
#ja-wrapper {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
#ja-header {
	CLEAR: both; MARGIN: 0px auto; WIDTH: 970px
}
#ja-mainnav {
	CLEAR: both; MARGIN: 0px auto; WIDTH: 970px
}
#ja-subnav {
	CLEAR: both; MARGIN: 0px auto; WIDTH: 970px
}
#ja-container {
	CLEAR: both; MARGIN: 0px auto; WIDTH: 970px
}
#ja-footer {
	CLEAR: both; MARGIN: 0px auto; WIDTH: 970px
}
.auto #ja-header {
	WIDTH: 98%
}
.auto #ja-mainnav {
	WIDTH: 98%
}
.auto #ja-subnav {
	WIDTH: 98%
}
.auto #ja-container {
	WIDTH: 98%
}
.auto #ja-footer {
	WIDTH: 98%
}
#ja-container {
	BACKGROUND: url(../images/vline.gif) repeat-y 65% 0px
}
#ja-container-inner {
	BACKGROUND: url(../images/vline.gif) repeat-y 83% 0px
}
#ja-content {
	CLEAR: both; DISPLAY: block; FLOAT: left; WIDTH: 65%
}
#ja-content DIV.ja-innerpad {
	PADDING-RIGHT: 15px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
#ja-colwrap {
	FLOAT: right; OVERFLOW: hidden; WIDTH: 34.9%
}
#ja-colmass {
	CLEAR: both; WIDTH: 100%
}
ja-cols {
	CLEAR: both; WIDTH: 100%
}
#ja-colmass {
	BACKGROUND: #ffffff
}
#ja-colmass DIV.ja-innerpad {
	PADDING-RIGHT: 0px; PADDING-LEFT: 10px; BACKGROUND: #ffffff; =
PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
#ja-col1 {
	CLEAR: both; FLOAT: left; OVERFLOW: hidden; WIDTH: 50%
}
#ja-col1 DIV.ja-innerpad {
	PADDING-RIGHT: 8px; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
#ja-col2 DIV.ja-innerpad {
	PADDING-RIGHT: 0px; PADDING-LEFT: 15px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
#ja-col2 {
	FLOAT: right; OVERFLOW: hidden; WIDTH: 49.9%
}
#ja-colwrap A {
=09
}
#ja-colwrap A:hover {
=09
}
#ja-colwrap A:active {
=09
}
#ja-colwrap A:focus {
=09
}
#ja-colwrap TABLE {
	BORDER-COLLAPSE: collapse; border-spacing: 0
}
#ja-colwrap .article_separator {
	DISPLAY: none
}
#ja-containerwrap {
	CLEAR: both; MARGIN: 20px 0px
}
#ja-containerwrap-c {
	CLEAR: both; MARGIN: 20px 0px
}
#ja-containerwrap-cm {
	CLEAR: both; MARGIN: 20px 0px
}
#ja-containerwrap-f {
	CLEAR: both; MARGIN: 20px 0px
}
#ja-containerwrap-m {
	CLEAR: both; MARGIN: 20px 0px
}
#ja-containerwrap-f #ja-container {
	BACKGROUND: #ffffff
}
#ja-containerwrap-f #ja-container-inner {
	BACKGROUND: #ffffff
}
#ja-containerwrap-f #ja-content {
	WIDTH: 100%
}
#ja-containerwrap-cm #ja-container {
	BACKGROUND: url(../images/hline.gif) repeat-y 65% 0px
}
#ja-containerwrap-cm #ja-container-inner {
	BACKGROUND: none transparent scroll repeat 0% 0%
}
#ja-containerwrap-cm #ja-col1 {
	WIDTH: 100%
}
#ja-containerwrap-cm #ja-col2 {
	WIDTH: 100%
}
#ja-containerwrap-c #ja-container {
	BACKGROUND: url(../images/hline.gif) repeat-y 83% 0px
}
#ja-containerwrap-c #ja-container-inner {
	BACKGROUND: none transparent scroll repeat 0% 0%
}
#ja-containerwrap-c #ja-content {
	WIDTH: 82%
}
#ja-containerwrap-c #ja-colwrap {
	WIDTH: 17%
}
#ja-containerwrap-c #ja-col1 {
	WIDTH: 100%
}
#ja-containerwrap-c #ja-col2 {
	WIDTH: 100%
}
#ja-containerwrap-m #ja-container {
	BACKGROUND: url(../images/hline.gif) repeat-y 65% 0px
}
#ja-containerwrap-m #ja-container-inner {
	BACKGROUND: none transparent scroll repeat 0% 0%
}
DIV.moduletable H3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 125%; PADDING-BOTTOM: =
5px; MARGIN: 0px 0px 5px; PADDING-TOP: 5px
}
DIV.moduletable_hilite H3 {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 125%; PADDING-BOTTOM: =
5px; MARGIN: 0px 0px 5px; PADDING-TOP: 5px
}
DIV.moduletable {
	PADDING-RIGHT: 1px; BORDER-TOP: #ababab 5px solid; PADDING-LEFT: 1px; =
PADDING-BOTTOM: 0px; MARGIN: 0px 0px 20px; PADDING-TOP: 0px
}
DIV.moduletable_hilite {
	PADDING-RIGHT: 1px; BORDER-TOP: #ababab 5px solid; PADDING-LEFT: 1px; =
PADDING-BOTTOM: 0px; MARGIN: 0px 0px 20px; PADDING-TOP: 0px
}
#ja-colmass DIV.moduletable {
	BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: =
#cccccc 1px solid; PADDING-LEFT: 10px; BACKGROUND: #f7f7f7; =
PADDING-BOTTOM: 10px; BORDER-LEFT: #cccccc 1px solid; PADDING-TOP: 0px; =
BORDER-BOTTOM: #cccccc 1px solid
}
#ja-colmass DIV.moduletable H3 {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; BACKGROUND: #ffffff; =
PADDING-BOTTOM: 5px; MARGIN: 0px -10px 10px; COLOR: #006699; =
PADDING-TOP: 5px; BORDER-BOTTOM: #dddddd 1px solid
}
#ja-botsl DIV.moduletable {
	BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: =
#cccccc 1px solid; PADDING-LEFT: 10px; BACKGROUND: #f7f7f7; =
PADDING-BOTTOM: 10px; BORDER-LEFT: #cccccc 1px solid; PADDING-TOP: 0px; =
BORDER-BOTTOM: #cccccc 1px solid
}
#ja-botsl DIV.moduletable H3 {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; BACKGROUND: #ffffff; =
PADDING-BOTTOM: 5px; MARGIN: 0px -10px 10px; COLOR: #006699; =
PADDING-TOP: 5px; BORDER-BOTTOM: #dddddd 1px solid
}
#ja-colmass DIV.moduletable-media {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px =
0px 20px; PADDING-TOP: 0px; BORDER-BOTTOM: #ababab 1px solid
}
#ja-colmass DIV.moduletable-media H3 {
	BORDER-RIGHT: #dddddd 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: =
#dddddd 1px solid; PADDING-LEFT: 10px; FONT-SIZE: 125%; BACKGROUND: =
url(../images/icon-video.gif) no-repeat 95% 50%; PADDING-BOTTOM: 5px; =
MARGIN: 0px; BORDER-LEFT: #dddddd 1px solid; COLOR: #006699; =
PADDING-TOP: 5px; BORDER-BOTTOM: #dddddd 1px solid
}
DIV.banneritem_text {
	PADDING-RIGHT: 0px! important; PADDING-LEFT: 0px! important; =
PADDING-BOTTOM: 5px! important; PADDING-TOP: 5px! important
}
DIV.advs {
	CLEAR: both; DISPLAY: block; FLOAT: left; WIDTH: 100%
}
DIV.moduletable UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV.moduletable_hilte UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
DIV.moduletable LI {
	PADDING-LEFT: 16px; BACKGROUND: url(../images/bullet.gif) no-repeat 5px =
8px; MARGIN: 0px
}
DIV.moduletable_hilite LI {
	PADDING-LEFT: 16px; BACKGROUND: url(../images/bullet.gif) no-repeat 5px =
8px; MARGIN: 0px
}
#ja-headerwrap {
=09
}
#ja-header {
	LINE-HEIGHT: normal; POSITION: relative; HEIGHT: 80px
}
H1.logo {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 300%; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
H1.logo-text {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 300%; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
H1.logo A {
	DISPLAY: block; BACKGROUND: url(../images/logo.gif) no-repeat; LEFT: =
0px; WIDTH: 360px; POSITION: absolute; TOP: 20px; HEIGHT: 60px
}
H1.logo A SPAN {
	POSITION: absolute; TOP: -1000px
}
H1.logo-text A {
	FONT-WEIGHT: bold; LEFT: 5px; LETTER-SPACING: 1px; POSITION: absolute; =
TOP: 15px; outline: none
}
P.site-slogan {
	PADDING-RIGHT: 1px; PADDING-LEFT: 1px; LEFT: 15px; PADDING-BOTTOM: 1px; =
MARGIN: 0px; COLOR: #999999; PADDING-TOP: 1px; LETTER-SPACING: 1px; =
POSITION: absolute; TOP: 52px
}
#ja-headtools {
	BORDER-RIGHT: #ffffff 1px solid; BORDER-TOP: #ffffff 1px solid; RIGHT: =
0px; BORDER-LEFT: #ffffff 1px solid; BORDER-BOTTOM: #ffffff 1px solid; =
POSITION: absolute; TOP: 25px
}
#ja-headtools:hover {
	BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; =
BACKGROUND: #f7f7f7; BORDER-LEFT: #cccccc 1px solid; BORDER-BOTTOM: =
#cccccc 1px solid
}
.hover#ja-headtools {
	BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; =
BACKGROUND: #f7f7f7; BORDER-LEFT: #cccccc 1px solid; BORDER-BOTTOM: =
#cccccc 1px solid
}
#ja-headtools .ja-innerpad {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FLOAT: left; PADDING-BOTTOM: =
5px; PADDING-TOP: 5px; POSITION: relative
}
#ja-headtools UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 3px; WHITE-SPACE: nowrap
}
#ja-headtools LI {
	PADDING-RIGHT: 8px; DISPLAY: inline; PADDING-LEFT: 8px; BACKGROUND: =
url(../images/vline.gif) no-repeat right center; PADDING-BOTTOM: 0px; =
MARGIN: 0px; LINE-HEIGHT: normal; PADDING-TOP: 0px
}
#ja-headtools LI A {
=09
}
#ja-mainnavwrap {
	BORDER-BOTTOM: #666666 5px solid
}
#ja-mainnav {
	BORDER-RIGHT: #cccccc 1px solid; BORDER-TOP: #cccccc 1px solid; =
BACKGROUND: #ffffff; BORDER-LEFT: #cccccc 1px solid
}
#ja-mainnav A {
	outline: none
}
#ja-subnav A {
	outline: none
}
#ja-subnavwrap {
	DISPLAY: block; BACKGROUND: #f7f7f7; BORDER-BOTTOM: #cccccc 1px solid
}
#ja-subnav {
=09
}
#ja-subnav UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#ja-subnav LI {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; BACKGROUND: =
none transparent scroll repeat 0% 0%; PADDING-BOTTOM: 0px; MARGIN: 0px; =
PADDING-TOP: 0px
}
#ja-subnav LI A {
	PADDING-RIGHT: 10px; DISPLAY: block; PADDING-LEFT: 10px; BACKGROUND: =
url(../images/vline.gif) no-repeat left center; FLOAT: left; =
PADDING-BOTTOM: 3px; COLOR: #333333; PADDING-TOP: 5px
}
#ja-subnav LI.active A {
	FONT-WEIGHT: bold; COLOR: #006699
}
#ja-subnav LI.active A:hover {
	FONT-WEIGHT: bold; COLOR: #006699
}
#ja-subnav LI.active A:active {
	FONT-WEIGHT: bold; COLOR: #006699
}
#ja-subnav LI.active A:focus {
	FONT-WEIGHT: bold; COLOR: #006699
}
#ja-subnav LI A.first-item {
	BACKGROUND: none transparent scroll repeat 0% 0%
}
#ja-pathway {
	PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
#ja-pathway STRONG {
	MARGIN-RIGHT: 5px
}
#ja-pathway A {
=09
}
#ja-pathway IMG {
	MARGIN: 1px 5px
}
A.mainlevel {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; BACKGROUND: =
url(../images/dot.gif) repeat-x 50% bottom; PADDING-BOTTOM: 6px; WIDTH: =
90%; COLOR: #555555; PADDING-TOP: 4px; TEXT-DECORATION: none; outline: =
none
}
A.mainlevel:hover {
	COLOR: #cc0000
}
A.mainlevel:active {
	COLOR: #cc0000
}
A.mainlevel:focus {
	COLOR: #cc0000
}
A.mainlevel#active_menu {
	FONT-WEIGHT: bold; COLOR: #333333
}
A.sublevel {
	PADDING-RIGHT: 0px! important; DISPLAY: block; PADDING-LEFT: 15px! =
important; FONT-WEIGHT: normal! important; BACKGROUND: =
url(../images/arrow.png) no-repeat 7px 9px; PADDING-BOTTOM: 2px! =
important; BORDER-TOP-STYLE: none; PADDING-TOP: 2px! important; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: =
none
}
A.sublevel:hover {
	COLOR: #333333
}
A.sublevel:active {
	COLOR: #333333
}
A.sublevel:focus {
	COLOR: #333333
}
#active_menu {
	FONT-WEIGHT: bold
}
.ja-box-full {
	FLOAT: left; OVERFLOW: hidden
}
.ja-box-left {
	FLOAT: left; OVERFLOW: hidden
}
.ja-box-center {
	FLOAT: left; OVERFLOW: hidden
}
.ja-box-right {
	FLOAT: left; OVERFLOW: hidden
}
.ja-box-left {
=09
}
.ja-box-center {
=09
}
#ja-topsl {
	MARGIN: 0px 0px 10px; HEIGHT: 240px
}
#ja-botsl {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 20px; =
PADDING-TOP: 10px
}
#ja-botsl .ja-box-left DIV.moduletable {
	MARGIN: 10px 6px 0px 0px
}
#ja-botsl .ja-box-right DIV.moduletable {
	MARGIN: 10px 0px 0px 6px
}
#ja-botsl UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#ja-botsl OL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#ja-botsl OL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px =
0px 0px 20px; PADDING-TOP: 0px
}
#ja-botsl UL LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 15px; BACKGROUND: =
url(../images/bullet.gif) no-repeat 5px 7px; PADDING-BOTTOM: 0px; =
MARGIN: 0px; PADDING-TOP: 0px
}
#ja-footerwrap {
	CLEAR: both; BACKGROUND: #ffffff
}
#ja-footer {
	PADDING-RIGHT: 0px; BORDER-TOP: #ababab 5px solid; PADDING-LEFT: 0px; =
PADDING-BOTTOM: 10px; COLOR: #666666; PADDING-TOP: 10px; POSITION: =
relative
}
#ja-footer SMALL {
	FONT-SIZE: 100%; COLOR: #999999
}
#ja-footer UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; LINE-HEIGHT: normal; PADDING-TOP: 0px
}
#ja-footer LI {
	PADDING-RIGHT: 10px; DISPLAY: inline; PADDING-LEFT: 10px; BACKGROUND: =
url(../images/vline.gif) no-repeat left center; PADDING-BOTTOM: 0px; =
MARGIN: 0px; PADDING-TOP: 0px
}
#ja-footer LI A {
	DISPLAY: inline; LINE-HEIGHT: normal
}
#ja-footer LI.ja-firstitem {
	PADDING-LEFT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%
}
.ja-footurl {
	CLEAR: both; FLOAT: none
}
.ja-cert {
	RIGHT: 0px; POSITION: absolute; TOP: 20px
}
.ja-cert A {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px =
0px 0px 5px; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; =
BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; TEXT-DECORATION: =
none; BORDER-BOTTOM-STYLE: none
}
.ja-cert A SPAN {
	DISPLAY: none
}
.ja-cert A IMG {
	BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: =
none; BORDER-BOTTOM-STYLE: none
}
UL.accessibility {
	POSITION: absolute; TOP: -100%
}
#ja-login {
=09
}
#ja-login FORM {
	FLOAT: left
}
#ja-login FORM LABEL {
	FLOAT: left
}
LABEL.ja-login-user SPAN {
	DISPLAY: none
}
LABEL.ja-login-password SPAN {
	DISPLAY: none
}
#ja-login FORM INPUT.button {
	FLOAT: left
}
#ja-login FORM #mod_login_username {
	PADDING-LEFT: 20px; FONT-WEIGHT: bold; MARGIN: 1px 8px 0px 0px; WIDTH: =
100px
}
#ja-login FORM #mod_login_password {
	PADDING-LEFT: 20px; FONT-WEIGHT: bold; MARGIN: 1px 8px 0px 0px; WIDTH: =
100px
}
#ja-login FORM #mod_login_username {
	BACKGROUND: url(../images/icon-user.gif) #ffffff no-repeat 4px 5px
}
#ja-login FORM #mod_login_password {
	BACKGROUND: url(../images/icon-key.gif) #ffffff no-repeat 4px 5px
}
#ja-login FORM A {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px; TEXT-DECORATION: none
}
#ja-login FORM A:hover {
	TEXT-DECORATION: underline
}
#ja-login FORM A:active {
	TEXT-DECORATION: underline
}
#ja-login FORM A:focus {
	TEXT-DECORATION: underline
}
.ja-login-links {
	CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: =
0px; PADDING-TOP: 10px
}
#id_highslide_signup_1 .inputbox {
	WIDTH: 200px
}
#ja-search .inputbox {
	PADDING-LEFT: 20px; FONT-WEIGHT: bold; BACKGROUND: =
url(../images/icon-search.gif) #ffffff no-repeat 4px 5px; WIDTH: 130px
}
#ja-search .button {
	MARGIN-LEFT: 5px
}
#ja-usertools {
	FLOAT: left; PADDING-TOP: 3px
}
#ja-usertools STRONG {
	PADDING-RIGHT: 5px; DISPLAY: block; PADDING-LEFT: 8px; FONT-WEIGHT: =
normal; FLOAT: left; PADDING-BOTTOM: 2px; PADDING-TOP: 0px
}
#ja-usertools UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
0px; MARGIN: 0px; PADDING-TOP: 0px
}
#ja-usertools LI {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; BACKGROUND: none =
transparent scroll repeat 0% 0%; FLOAT: left; PADDING-BOTTOM: 0px; =
MARGIN: 0px; PADDING-TOP: 1px
}
#ja-usertools LI IMG:hover {
	BORDER-RIGHT: #999999 1px solid; BORDER-TOP: #999999 1px solid; =
BACKGROUND: #ffffff; MARGIN: 0px; BORDER-LEFT: #999999 1px solid; =
BORDER-BOTTOM: #999999 1px solid
}
#ja-usertools IMG {
	PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 2px; MARGIN: =
1px; PADDING-TOP: 2px
}
.ja-day {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
0px; PADDING-TOP: 2px
}
.ja-day SPAN {
	PADDING-RIGHT: 2px; DISPLAY: block; PADDING-LEFT: 2px; FLOAT: left; =
PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
.ja-day DIV {
	PADDING-RIGHT: 2px; DISPLAY: block; PADDING-LEFT: 2px; FLOAT: left; =
PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
.ja-day SPAN {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 1px; =
PADDING-TOP: 1px
}
.ja-day DIV {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: #666666; =
PADDING-BOTTOM: 1px; COLOR: #ffffff; PADDING-TOP: 1px
}
#ja-banner {
	BORDER-TOP: #cccccc 1px solid; MARGIN: 0px; OVERFLOW: hidden; WIDTH: =
100%; PADDING-TOP: 15px; TEXT-ALIGN: center
}
#ja-banner TABLE.moduletable {
	WIDTH: 100%
}
DIV.back_button A {
	DISPLAY: block; MARGIN: 10px 0px
}
DIV.back_button A:hover {
	DISPLAY: block; MARGIN: 10px 0px
}
DIV.back_button A:active {
	DISPLAY: block; MARGIN: 10px 0px
}
.clr {
	CLEAR: both
}
.hasTip IMG {
	MARGIN: 10px 5px 0px 0px; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: =
none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
DIV.ja-innerdiv {
	CLEAR: both; MARGIN-BOTTOM: 10px; PADDING-BOTTOM: 10px; BORDER-BOTTOM: =
#cccccc 1px solid
}
DIV.ja-innerdiv IMG {
	BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: =
#cccccc 1px solid; PADDING-LEFT: 2px; PADDING-BOTTOM: 2px; MARGIN: 2px =
8px 0px 0px; BORDER-LEFT: #cccccc 1px solid; PADDING-TOP: 2px; =
BORDER-BOTTOM: #cccccc 1px solid
}
A.highslide-credits EM {
	FONT-WEIGHT: bold; FONT-SIZE: 11px! important; FONT-STYLE: normal
}
.tool-tip {
	BORDER-RIGHT: #f7f7f7 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: =
#f7f7f7 1px solid; PADDING-LEFT: 5px; BACKGROUND: #ffffff; FLOAT: left; =
MAX-WIDTH: 200px; PADDING-BOTTOM: 5px; BORDER-LEFT: #f7f7f7 1px solid; =
PADDING-TOP: 5px; BORDER-BOTTOM: #f7f7f7 1px solid
}
.tool-title {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: =
100%; BACKGROUND: url(../../system/images/selector-arrow.png) no-repeat; =
PADDING-BOTTOM: 5px; MARGIN: -15px 0px 0px; PADDING-TOP: 15px
}
.tool-text {
	FONT-SIZE: 100%; MARGIN: 0px
}
#system-message DD.message UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#system-message DD.error UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#system-message DD.notice UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#system-message DD.message UL LI {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: none transparent =
scroll repeat 0% 0%; PADDING-BOTTOM: 5px; MARGIN: 0px; COLOR: #ffffff; =
PADDING-TOP: 5px
}
#system-message DD.error UL LI {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: none transparent =
scroll repeat 0% 0%; PADDING-BOTTOM: 5px; MARGIN: 0px; COLOR: #ffffff; =
PADDING-TOP: 5px
}
#system-message DD.notice UL LI {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; BACKGROUND: none transparent =
scroll repeat 0% 0%; PADDING-BOTTOM: 5px; MARGIN: 0px; COLOR: #ffffff; =
PADDING-TOP: 5px
}
#system-message DD.message UL {
	BACKGROUND: #666666; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
#system-message DD.error UL {
	BACKGROUND: #cc0000; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
#system-message DD.notice UL {
	BACKGROUND: #666666; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
.clearfix:unknown {
	CLEAR: both; DISPLAY: block; VISIBILITY: hidden; HEIGHT: 0px; content: =
"."
}
* HTML > BODY .clearfix {
	DISPLAY: block; WIDTH: 100%
}
* HTML .clearfix {
	HEIGHT: 1%
}

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/css/typo.css

PRE {
	PADDING-RIGHT: 15px; PADDING-LEFT: 15px; BACKGROUND: #ffffcc; =
PADDING-BOTTOM: 10px; MARGIN: 5px 0px 15px; FONT: 1em/1.5 "Courier =
News", monospace; BORDER-LEFT: #cccccc 5px solid; PADDING-TOP: 10px
}
.code {
	PADDING-RIGHT: 15px; PADDING-LEFT: 15px; BACKGROUND: #ffffcc; =
PADDING-BOTTOM: 10px; MARGIN: 5px 0px 15px; FONT: 1em/1.5 "Courier =
News", monospace; BORDER-LEFT: #cccccc 5px solid; PADDING-TOP: 10px
}
BLOCKQUOTE {
	PADDING-RIGHT: 40px; PADDING-LEFT: 15px; PADDING-BOTTOM: 1em; =
PADDING-TOP: 1em
}
BLOCKQUOTE SPAN.open {
	PADDING-RIGHT: 0px; PADDING-LEFT: 15px; BACKGROUND: =
url(../images/so-q.gif) no-repeat left top; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
BLOCKQUOTE SPAN.close {
	PADDING-RIGHT: 15px; PADDING-LEFT: 0px; BACKGROUND: =
url(../images/sc-q.gif) no-repeat right bottom; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
BLOCKQUOTE.testimonial {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 10px; =
PADDING-TOP: 0px; BORDER-BOTTOM: #e7e8e6 1px solid
}
BLOCKQUOTE.testimonial SPAN.author {
	MARGIN-TOP: 5px; DISPLAY: block; PADDING-LEFT: 20px; FONT-WEIGHT: bold; =
BACKGROUND: url(../images/icon-author.gif) no-repeat 5px center
}
.dropcap {
	PADDING-RIGHT: 8px; DISPLAY: block; PADDING-LEFT: 0px; FLOAT: left; =
PADDING-BOTTOM: 0px; FONT: 50px/40px Georgia, Times, serif; COLOR: =
#4b4b4b; PADDING-TOP: 4px
}
P.error {
	PADDING-LEFT: 25px; BACKGROUND: url(../images/icon-error.gif) no-repeat =
left top; COLOR: #cc0000
}
P.message {
	PADDING-LEFT: 25px; BACKGROUND: url(../images/icon-info.gif) no-repeat =
left top; COLOR: #2c79b3
}
P.tips {
	PADDING-LEFT: 25px; BACKGROUND: url(../images/icon-tips.gif) no-repeat =
left top; COLOR: #e58c00
}
.highlight {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; FONT-WEIGHT: bold; BACKGROUND: =
#ffffcc; PADDING-BOTTOM: 1px; PADDING-TOP: 1px
}
P.stickynote {
	BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#cccccc 1px solid; PADDING-LEFT: 50px; BACKGROUND: =
url(../images/sticky-bg.gif) #ffffff no-repeat 5px center; =
PADDING-BOTTOM: 10px; BORDER-LEFT: #cccccc 1px solid; PADDING-TOP: 10px; =
BORDER-BOTTOM: #cccccc 1px solid
}
P.download {
	BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#cccccc 1px solid; PADDING-LEFT: 50px; BACKGROUND: =
url(../images/download-bg.gif) #ffffff no-repeat 5px center; =
PADDING-BOTTOM: 10px; BORDER-LEFT: #cccccc 1px solid; PADDING-TOP: 10px; =
BORDER-BOTTOM: #cccccc 1px solid
}
.blocknumber {
	CLEAR: both; PADDING-RIGHT: 15px; PADDING-LEFT: 15px; PADDING-BOTTOM: =
10px; PADDING-TOP: 5px; POSITION: relative
}
UL.checklist {
	LIST-STYLE-TYPE: none
}
UL.checklist LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 20px; BACKGROUND: =
url(../images/icon-checklist.gif) no-repeat 0px 4px; PADDING-BOTTOM: =
0px; MARGIN-LEFT: 15px; PADDING-TOP: 0px
}
UL.stars {
	LIST-STYLE-TYPE: none
}
UL.stars LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 20px; BACKGROUND: =
url(../images/icon-star.gif) no-repeat 0px 5px; PADDING-BOTTOM: 0px; =
MARGIN-LEFT: 15px; PADDING-TOP: 0px
}
UL.arrow {
	LIST-STYLE-TYPE: none
}
UL.arrow LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 20px; BACKGROUND: =
url(../images/icon-arrow.gif) no-repeat 3px 5px; PADDING-BOTTOM: 0px; =
MARGIN-LEFT: 15px; PADDING-TOP: 0px
}
UL.none-padding {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none
}
UL.none-padding LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: none transparent =
scroll repeat 0% 0%; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px
}
A.video {
	PADDING-RIGHT: 0px; PADDING-LEFT: 20px; BACKGROUND: =
url(../images/icon-video.gif) no-repeat 0px 2px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
A.rss {
	PADDING-RIGHT: 0px; PADDING-LEFT: 15px; BACKGROUND: =
url(../images/icon-rss.png) no-repeat 0px 2px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
A.link {
	PADDING-RIGHT: 0px; PADDING-LEFT: 20px; BACKGROUND: =
url(../images/icon-link.png) no-repeat 0px 3px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
.bignumber {
	PADDING-RIGHT: 7px; DISPLAY: block; PADDING-LEFT: 7px; BACKGROUND: =
url(../images/ol-bg.gif) no-repeat left top; FLOAT: left; =
PADDING-BOTTOM: 6px; FONT: bold 20px Arial, sans-serif; COLOR: #ffffff; =
MARGIN-RIGHT: 8px; PADDING-TOP: 6px
}
DIV.bubble1 {
	MARGIN: 15px 0px
}
DIV.bubble2 {
	MARGIN: 15px 0px
}
DIV.bubble3 {
	MARGIN: 15px 0px
}
DIV.bubble4 {
	MARGIN: 15px 0px
}
DIV.bubble1 SPAN.author {
	PADDING-LEFT: 15px; FONT-WEIGHT: bold; BACKGROUND: =
url(../images/icon-author.gif) no-repeat 0px 2px; MARGIN-LEFT: 15px
}
DIV.bubble2 SPAN.author {
	PADDING-LEFT: 15px; FONT-WEIGHT: bold; BACKGROUND: =
url(../images/icon-author.gif) no-repeat 0px 2px; MARGIN-LEFT: 15px
}
DIV.bubble3 SPAN.author {
	PADDING-LEFT: 15px; FONT-WEIGHT: bold; BACKGROUND: =
url(../images/icon-author.gif) no-repeat 0px 2px; MARGIN-LEFT: 15px
}
DIV.bubble4 SPAN.author {
	PADDING-LEFT: 15px; FONT-WEIGHT: bold; BACKGROUND: =
url(../images/icon-author.gif) no-repeat 0px 2px; MARGIN-LEFT: 15px
}
DIV.bubble1 DIV {
	BACKGROUND: url(../images/bub1-br.gif) no-repeat right bottom; MARGIN: =
0px; WIDTH: 100%
}
DIV.bubble1 DIV DIV {
	BACKGROUND: url(../images/bub1-bl.gif) no-repeat left bottom
}
DIV.bubble1 DIV DIV DIV {
	BACKGROUND: url(../images/bub1-tr.gif) no-repeat right top
}
DIV.bubble1 DIV DIV DIV DIV {
	BACKGROUND: url(../images/bub1-tl.gif) no-repeat left top
}
DIV.bubble1 DIV DIV DIV DIV DIV {
	PADDING-RIGHT: 15px; PADDING-LEFT: 15px; PADDING-BOTTOM: 20px; MARGIN: =
0px; WIDTH: auto; PADDING-TOP: 10px
}
DIV.bubble2 DIV {
	BACKGROUND: url(../images/bub2-br.gif) no-repeat right bottom; MARGIN: =
0px; WIDTH: 100%
}
DIV.bubble2 DIV DIV {
	BACKGROUND: url(../images/bub2-bl.gif) no-repeat left bottom
}
DIV.bubble2 DIV DIV DIV {
	BACKGROUND: url(../images/bub2-tr.gif) no-repeat right top
}
DIV.bubble2 DIV DIV DIV DIV {
	BACKGROUND: url(../images/bub2-tl.gif) no-repeat left top
}
DIV.bubble2 DIV DIV DIV DIV DIV {
	PADDING-RIGHT: 15px; PADDING-LEFT: 15px; PADDING-BOTTOM: 25px; MARGIN: =
0px; WIDTH: auto; PADDING-TOP: 10px
}
DIV.bubble3 DIV {
	BACKGROUND: url(../images/bub3-br.gif) no-repeat right bottom; MARGIN: =
0px; WIDTH: 100%
}
DIV.bubble3 DIV DIV {
	BACKGROUND: url(../images/bub3-bl.gif) no-repeat left bottom
}
DIV.bubble3 DIV DIV DIV {
	BACKGROUND: url(../images/bub3-tr.gif) no-repeat right top
}
DIV.bubble3 DIV DIV DIV DIV {
	BACKGROUND: url(../images/bub3-tl.gif) no-repeat left top
}
DIV.bubble3 DIV DIV DIV DIV DIV {
	PADDING-RIGHT: 15px; PADDING-LEFT: 15px; PADDING-BOTTOM: 45px; MARGIN: =
0px; WIDTH: auto; PADDING-TOP: 10px
}
DIV.bubble4 DIV {
	BACKGROUND: url(../images/bub4-br.gif) no-repeat right bottom; MARGIN: =
0px; WIDTH: 100%
}
DIV.bubble4 DIV DIV {
	BACKGROUND: url(../images/bub4-bl.gif) no-repeat left bottom
}
DIV.bubble4 DIV DIV DIV {
	BACKGROUND: url(../images/bub4-tr.gif) no-repeat right top
}
DIV.bubble4 DIV DIV DIV DIV {
	BACKGROUND: url(../images/bub4-tl.gif) no-repeat left top
}
DIV.bubble4 DIV DIV DIV DIV DIV {
	PADDING-RIGHT: 15px; PADDING-LEFT: 15px; PADDING-BOTTOM: 45px; MARGIN: =
0px; WIDTH: auto; PADDING-TOP: 10px
}
.box-grey {
	BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: =
#cccccc 1px solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; MARGIN: =
20px 0px 0px; BORDER-LEFT: #cccccc 1px solid; PADDING-TOP: 10px; =
BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #f7f7f7
}
.box-hilite {
	BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: =
#cccccc 1px solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; MARGIN: =
20px 0px 0px; BORDER-LEFT: #cccccc 1px solid; PADDING-TOP: 10px; =
BORDER-BOTTOM: #cccccc 1px solid; BACKGROUND-COLOR: #f7f7f7
}
.box-hilite {
	BORDER-RIGHT: #006699 1px solid; BORDER-TOP: #006699 1px solid; =
BACKGROUND: #e7f4fa; BORDER-LEFT: #006699 1px solid; BORDER-BOTTOM: =
#006699 1px solid
}
.legend-title {
	PADDING-RIGHT: 3px; DISPLAY: block; PADDING-LEFT: 3px; FONT-WEIGHT: =
bold; BACKGROUND: #ffffff; LEFT: 7px; FLOAT: left; PADDING-BOTTOM: 0px; =
MARGIN: 0px; PADDING-TOP: 0px; POSITION: absolute; TOP: -13px
}
.legend {
	BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: =
#cccccc 1px solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; MARGIN: 20px =
0px; BORDER-LEFT: #cccccc 1px solid; PADDING-TOP: 0px; BORDER-BOTTOM: =
#cccccc 1px solid; POSITION: relative
}
.legend-hilite {
	BORDER-RIGHT: #006699 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: =
#006699 1px solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; MARGIN: 20px =
0px; BORDER-LEFT: #006699 1px solid; PADDING-TOP: 0px; BORDER-BOTTOM: =
#006699 1px solid; POSITION: relative
}
.highslide-header {
	BORDER-BOTTOM: #cccccc 1px solid
}
.highslide-header LI {
	BACKGROUND: none transparent scroll repeat 0% 0%
}
.highslide-body {
	PADDING-RIGHT: 0px! important; PADDING-LEFT: 0px! important; =
PADDING-BOTTOM: 10px! important; PADDING-TOP: 10px! important
}
.highslide {
	MARGIN: 0px
}
.highslide IMG {
	BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: =
#cccccc 1px solid; PADDING-LEFT: 2px; PADDING-BOTTOM: 2px; BORDER-LEFT: =
#cccccc 1px solid; PADDING-TOP: 2px; BORDER-BOTTOM: #cccccc 1px solid
}
.highslide:hover IMG {
	BORDER-RIGHT: #ababab 1px solid; BORDER-TOP: #ababab 1px solid; =
BORDER-LEFT: #ababab 1px solid; BORDER-BOTTOM: #ababab 1px solid
}

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/css/ja.news.css

H2.jazin-title {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px =
0px 5px; LINE-HEIGHT: 1.1; PADDING-TOP: 0px
}
H4.jazin-title {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px =
0px 5px; LINE-HEIGHT: 1.1; PADDING-TOP: 0px
}
#jazin-wrap {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px; BORDER-BOTTOM: #ababab 5px solid
}
#jazin {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px; BORDER-BOTTOM: #ffffff 3px solid
}
.jazin-left {
	BACKGROUND: url(../images/vline.gif) repeat-y right 50%; FLOAT: left
}
.jazin-center {
	BACKGROUND: url(../images/vline.gif) repeat-y right 50%; FLOAT: left
}
.jazin-right {
	FLOAT: right
}
.jazin-box {
	BACKGROUND: url(../images/dot.gif) repeat-x 50% bottom; PADDING-BOTTOM: =
15px; MARGIN: 10px
}
.jazin-left .jazin-box {
	MARGIN-LEFT: 0px
}
.jazin-right .jazin-box {
	MARGIN-RIGHT: 0px
}
DIV.jazin-section {
	DISPLAY: block; MARGIN-BOTTOM: 5px
}
DIV.jazin-section A {
	PADDING-RIGHT: 2px; DISPLAY: block; PADDING-LEFT: 0px; FONT-WEIGHT: =
bold; BACKGROUND: url(../images/zin-section-bg.gif) #ababab no-repeat =
left top; FLOAT: left; PADDING-BOTTOM: 2px; PADDING-TOP: 0px
}
DIV.jazin-section A SPAN {
	PADDING-RIGHT: 10px; DISPLAY: block; PADDING-LEFT: 10px; BACKGROUND: =
#666666; PADDING-BOTTOM: 1px; MARGIN: 0px; TEXT-TRANSFORM: uppercase; =
COLOR: #ffffff; PADDING-TOP: 1px; FONT-FAMILY: Cambria, "Times New =
Roman", Times, serif
}
DIV.jazin-section A:hover {
	TEXT-DECORATION: none
}
DIV.jazin-section A:active {
	TEXT-DECORATION: none
}
DIV.jazin-section A:focus {
	TEXT-DECORATION: none
}
.jazin-box:hover DIV.jazin-section A SPAN {
	BACKGROUND: #006699
}
.hover DIV.jazin-section A SPAN {
	BACKGROUND: #006699
}
.jazin-more {
	CLEAR: both; DISPLAY: block; FONT-SIZE: 92%; MARGIN: 10px 0px 2px; =
TEXT-TRANSFORM: uppercase; COLOR: #999999; LETTER-SPACING: 1px
}
UL.jazin-links {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
UL.jazin-links LI {
	BACKGROUND-POSITION: 1px 7px; PADDING-LEFT: 10px
}
.jazin-content IMG {
	PADDING-RIGHT: 10px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 5px
}
.jazin-pagedesc {
	PADDING-RIGHT: 10px; BORDER-TOP: #cccccc 1px solid; DISPLAY: block; =
PADDING-LEFT: 10px; FONT-SIZE: 125%; BACKGROUND: #f7f7f7; =
PADDING-BOTTOM: 10px; MARGIN: 10px 0px; PADDING-TOP: 10px; =
BORDER-BOTTOM: #cccccc 1px solid; FONT-STYLE: italic; FONT-FAMILY: =
Cambria, "Times New Roman", Times, serif
}
.jazin-pagedesc P {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#jazin-hlwrap-sub {
	CLEAR: both; MARGIN-BOTTOM: 3px
}
#jazin-hlwrap-sub .jazin-box {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: none transparent =
scroll repeat 0% 0%; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px
}
#jazin-hlwrap-sub .jazin-content {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: none transparent =
scroll repeat 0% 0%; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px
}
#jazin-hlwrap-sub H4.jazin-title {
	FONT-WEIGHT: normal; FONT-SIZE: 200%
}
#jazin-hlwrap-sub .article_separator {
	FONT-SIZE: 1px; BACKGROUND: none transparent scroll repeat 0% 0%; =
BORDER-BOTTOM: #ababab 5px solid; HEIGHT: 15px
}
#jazin-fp .article_separator {
	CLEAR: both; DISPLAY: block; FONT-SIZE: 1px; BACKGROUND: none =
transparent scroll repeat 0% 0%; HEIGHT: 3px
}
.jazin-pagenav {
	TEXT-ALIGN: center
}
.jazin-pagenav-counter {
	TEXT-ALIGN: center
}
.jazin-theme-red.jazin-boxwrap:hover DIV.jazin-section A SPAN {
	BACKGROUND: #cc0000
}
.jazin-theme-red.jazin-boxwrap .hover DIV.jazin-section A SPAN {
	BACKGROUND: #cc0000
}
.jazin-theme-orange.jazin-boxwrap:hover DIV.jazin-section A SPAN {
	BACKGROUND: #e77b13
}
.jazin-theme-orange.jazin-boxwrap .hover DIV.jazin-section A SPAN {
	BACKGROUND: #e77b13
}
.jazin-theme-pink.jazin-boxwrap:hover DIV.jazin-section A SPAN {
	BACKGROUND: #ca0789
}
.jazin-theme-pink.jazin-boxwrap .hover DIV.jazin-section A SPAN {
	BACKGROUND: #ca0789
}
.jazin-theme-green.jazin-boxwrap:hover DIV.jazin-section A SPAN {
	BACKGROUND: #1a661a
}
.jazin-theme-green.jazin-boxwrap .hover DIV.jazin-section A SPAN {
	BACKGROUND: #1a661a
}
.jazin-theme-lime.jazin-boxwrap:hover DIV.jazin-section A SPAN {
	BACKGROUND: #678000
}
.jazin-theme-lime.jazin-boxwrap .hover DIV.jazin-section A SPAN {
	BACKGROUND: #678000
}
.jazin-theme-cyan.jazin-boxwrap:hover DIV.jazin-section A SPAN {
	BACKGROUND: #0e9c9a
}
.jazin-theme-cyan.jazin-boxwrap .hover DIV.jazin-section A SPAN {
	BACKGROUND: #0e9c9a
}
.jazin-theme-deepblue.jazin-boxwrap:hover DIV.jazin-section A SPAN {
	BACKGROUND: #004b80
}
.jazin-theme-deepblue.jazin-boxwrap .hover DIV.jazin-section A SPAN {
	BACKGROUND: #004b80
}

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/css/ja.news.fp.css

#jazin-fp {
=09
}
#jazin-hlwrap {
	CLEAR: both; BORDER-TOP: #cccccc 1px solid; BORDER-BOTTOM: #ababab 5px =
solid
}
#jazin-hlfirst {
	BACKGROUND: #f7f7f7; FLOAT: left; WIDTH: 49.9%
}
#jazin-hlfirst IMG {
	PADDING-RIGHT: 0px! important; PADDING-LEFT: 0px! important; =
PADDING-BOTTOM: 0px! important; MARGIN: 0px 0px 10px; PADDING-TOP: 0px! =
important
}
#jazin-hlnext {
	FLOAT: right; WIDTH: 49%
}
#jazin-hlwrap .jazin-content {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; =
PADDING-TOP: 10px
}
#jazin-hlnext .jazin-content {
	PADDING-RIGHT: 0px; PADDING-LEFT: 10px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 10px
}
#jazin-hlnext .jazin-content IMG {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: =
0px; MARGIN: 5px 0px 5px 15px; PADDING-TOP: 0px
}
#jazin-fp A.readon {
	MARGIN-TOP: 5px
}
#jahl-newsitem {
	PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; =
PADDING-TOP: 5px
}
DIV.ja-newscat {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; PADDING-BOTTOM: =
3px; MARGIN: 0px; TEXT-TRANSFORM: uppercase; PADDING-TOP: 5px; =
BORDER-BOTTOM: #cccccc 1px solid; POSITION: relative
}
DIV.ja-newscat SPAN {
	PADDING-LEFT: 10px; FONT-WEIGHT: bold
}
#jahl-newsitem A.ja-newstitle {
	FONT-WEIGHT: normal; FONT-SIZE: 150%
}
.ja-newscontent {
	BACKGROUND: #ffffff
}
#jahl-newsitem IMG {
	MARGIN: 2px 20px 10px 0px
}
.jahl-newscontrol {
	PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; RIGHT: 0px; =
PADDING-BOTTOM: 5px; PADDING-TOP: 5px; POSITION: absolute; TOP: 0px
}
.jahl-newscontrol UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: =
0px; MARGIN: 0px 0px 0px 10px; PADDING-TOP: 0px
}
.jahl-newscontrol LI {
	PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; BACKGROUND: =
none transparent scroll repeat 0% 0%; PADDING-BOTTOM: 0px; MARGIN: 0px; =
PADDING-TOP: 0px
}
#loading-indicator {
	FLOAT: left
}
#jahl-indicator {
	PADDING-RIGHT: 5px; DISPLAY: block; PADDING-LEFT: 5px; FONT-SIZE: 10px; =
BACKGROUND: #eeeeee; FLOAT: left; PADDING-BOTTOM: 2px; MARGIN-LEFT: 5px; =
LINE-HEIGHT: normal; PADDING-TOP: 2px
}

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/css/ja_catslwi.css

.ja-catslwi {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px =
0px 14px; PADDING-TOP: 0px; POSITION: relative
}
.ja-catslwi-container {
	Z-INDEX: 1; LEFT: 0px; WIDTH: 100%; BOTTOM: 0px; POSITION: absolute
}
.ja-catslwi-text {
	OVERFLOW: hidden; POSITION: relative; HEIGHT: 0px
}
.ja-catslwi-content {
	LEFT: 0px; WIDTH: 100%; POSITION: absolute; TOP: 0px
}
.ja-catslwi-display {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; LEFT: 0px; PADDING-BOTTOM: =
0px; PADDING-TOP: 0px; POSITION: absolute; TOP: 0px
}
.ja-catslwi-display H3 {
	LETTER-SPACING: normal! important
}

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/mootabs/mootabs1.2.css

#ja-tabswrap {
	BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#cccccc 1px solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 10px; MARGIN: 0px =
0px 20px; BORDER-LEFT: #cccccc 1px solid; PADDING-TOP: 0px; =
BORDER-BOTTOM: #cccccc 1px solid
}
#ja-tabs {
	Z-INDEX: 10; OVERFLOW: hidden; POSITION: relative
}
#ja-tabs DIV.ja-innerpad {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; =
PADDING-TOP: 0px
}
.mootabs-title {
	BACKGROUND: #f7f7f7; BORDER-BOTTOM: #cccccc 1px solid; POSITION: =
relative; HEIGHT: 30px
}
.mootabs-title UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; LEFT: 10px; PADDING-BOTTOM: 0px; =
MARGIN: 0px; BOTTOM: 1px; PADDING-TOP: 0px; POSITION: absolute; HEIGHT: =
21px
}
* HTML .mootabs-title UL {
	BOTTOM: -1px
}
.mootabs-title LI {
	BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: =
#cccccc 1px solid; DISPLAY: block; PADDING-LEFT: 0px; BACKGROUND: =
#ebf2f9; FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 0px 1px; BORDER-LEFT: =
#cccccc 1px solid; CURSOR: pointer; PADDING-TOP: 0px; BORDER-BOTTOM: =
#cccccc 1px solid
}
.mootabs-title LI H3 {
	BORDER-RIGHT: #f0f0f0 1px solid; PADDING-RIGHT: 9px; BORDER-TOP: =
#f0f0f0 1px solid; PADDING-LEFT: 9px; FONT-WEIGHT: normal; FONT-SIZE: =
11px; PADDING-BOTTOM: 0px; MARGIN: 0px; TEXT-TRANSFORM: uppercase; =
BORDER-LEFT: #f0f0f0 1px solid; LINE-HEIGHT: 20px; PADDING-TOP: 0px; =
BORDER-BOTTOM: #f0f0f0 1px; FONT-FAMILY: Arial, Helvetica, sans-serif
}
.mootabs-title LI.hover {
	COLOR: #006699
}
.mootabs-title LI.firsthover {
	COLOR: #006699
}
.mootabs-title LI.lasthover {
	COLOR: #006699
}
.mootabs-title LI.active {
	BACKGROUND: #ffffff; BORDER-BOTTOM: #ffffff 1px solid
}
.mootabs-title LI.firstactive {
	BACKGROUND: #ffffff; BORDER-BOTTOM: #ffffff 1px solid
}
.mootabs-title LI.lastactive {
	BACKGROUND: #ffffff; BORDER-BOTTOM: #ffffff 1px solid
}
.mootabs-title LI.active H3 {
	COLOR: #006699
}
.mootabs-title LI.firstactive H3 {
	COLOR: #006699
}
.mootabs-title LI.lastactive H3 {
	COLOR: #006699
}
.ja-tab-panels {
	CLEAR: both; OVERFLOW: hidden; POSITION: absolute; TOP: 45px
}
#ja-tabswrap DIV.moduletable {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; Z-INDEX: 100; PADDING-BOTTOM: =
0px; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; POSITION: absolute; TOP: 0px; =
BORDER-BOTTOM-STYLE: none
}
#ja-tabswrap .moduletable UL {
	PADDING-RIGHT: 0px! important; PADDING-LEFT: 0px! important; =
PADDING-BOTTOM: 0px! important; MARGIN: 0px; PADDING-TOP: 0px! important
}
#ja-tabswrap .moduletable LI {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: none transparent =
scroll repeat 0% 0%; PADDING-BOTTOM: 6px; MARGIN: 0px; PADDING-TOP: 4px; =
BORDER-BOTTOM: #e6e6e6 1px solid
}

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/ja_menus/ja_moomenu/ja.moomenu.css

#ja-cssmenu {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#ja-cssmenu UL {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; PADDING-TOP: 0px
}
#ja-cssmenu LI {
	BORDER-RIGHT: #cccccc 1px solid; PADDING-RIGHT: 0px; DISPLAY: block; =
PADDING-LEFT: 0px; BACKGROUND: none transparent scroll repeat 0% 0%; =
FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 0px; CURSOR: pointer; =
PADDING-TOP: 0px
}
#ja-cssmenu LI UL {
	Z-INDEX: 99; LEFT: -999em; WIDTH: 15.9em; POSITION: absolute; HEIGHT: =
auto
}
#ja-cssmenu LI UL UL {
	MARGIN: -2em 0px 0px 15em
}
#ja-cssmenu LI LI {
	PADDING-RIGHT: 1em; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: =
0px; WIDTH: 14.9em; PADDING-TOP: 0px
}
#ja-cssmenu UL A {
	WIDTH: 10.8em
}
#ja-cssmenu LI:hover UL UL {
	LEFT: -999em
}
#ja-cssmenu LI:hover UL UL UL {
	LEFT: -999em
}
#ja-cssmenu LI.sfhover UL UL {
	LEFT: -999em
}
#ja-cssmenu LI.havechildsfhover UL UL {
	LEFT: -999em
}
#ja-cssmenu LI.havechild-activesfhover UL UL {
	LEFT: -999em
}
#ja-cssmenu LI.activesfhover UL UL {
	LEFT: -999em
}
#ja-cssmenu LI.sfhover UL UL UL {
	LEFT: -999em
}
#ja-cssmenu LI.havechildsfhover UL UL UL {
	LEFT: -999em
}
#ja-cssmenu LI.havechild-activesfhover UL UL UL {
	LEFT: -999em
}
#ja-cssmenu LI.activesfhover UL UL UL {
	LEFT: -999em
}
#ja-cssmenu LI:hover UL {
	LEFT: auto
}
#ja-cssmenu LI LI:hover UL {
	LEFT: auto
}
#ja-cssmenu LI LI LI:hover UL {
	LEFT: auto
}
#ja-cssmenu LI.sfhover UL {
	LEFT: auto
}
#ja-cssmenu LI.havechildsfhover UL {
	LEFT: auto
}
#ja-cssmenu LI.havechild-activesfhover UL {
	LEFT: auto
}
#ja-cssmenu LI.activesfhover UL {
	LEFT: auto
}
#ja-cssmenu LI LI.sfhover UL {
	LEFT: auto
}
#ja-cssmenu LI LI.havesubchildsfhover UL {
	LEFT: auto
}
#ja-cssmenu LI LI.havesubchild-activesfhover UL {
	LEFT: auto
}
#ja-cssmenu LI LI.activesfhover UL {
	LEFT: auto
}
#ja-cssmenu LI LI LI.sfhover UL {
	LEFT: auto
}
#ja-cssmenu LI LI LI.havesubchildsfhover UL {
	LEFT: auto
}
#ja-cssmenu LI LI LI.havesubchild-activesfhover UL {
	LEFT: auto
}
#ja-cssmenu LI LI LI.activesfhover UL {
	LEFT: auto
}
#ja-cssmenu LI A {
	BORDER-RIGHT: #ffffff 1px solid; PADDING-RIGHT: 8px; BORDER-TOP: =
#ffffff 1px solid; DISPLAY: block; PADDING-LEFT: 8px; FONT-SIZE: 92%; =
PADDING-BOTTOM: 3px; TEXT-TRANSFORM: uppercase; BORDER-LEFT: #ffffff 1px =
solid; COLOR: #333333; PADDING-TOP: 4px; BORDER-BOTTOM: #ffffff 1px; =
TEXT-DECORATION: none
}
#ja-cssmenu LI A:hover {
=09
}
#ja-cssmenu LI A:active {
=09
}
#ja-cssmenu LI A:focus {
=09
}
#ja-cssmenu LI:hover {
	BACKGROUND: #ebf2f9; COLOR: #333333
}
#ja-cssmenu LI.sfhover {
	BACKGROUND: #ebf2f9; COLOR: #333333
}
#ja-cssmenu LI.havechildsfhover {
	BACKGROUND: #ebf2f9; COLOR: #333333
}
#ja-cssmenu LI.havechild-activesfhover {
	BACKGROUND: #ebf2f9; COLOR: #333333
}
#ja-cssmenu LI A.active {
	BACKGROUND: #666666; COLOR: #ffffff
}
#ja-cssmenu LI A.active:hover {
	BACKGROUND: #666666; COLOR: #ffffff
}
#ja-cssmenu LI A.active:active {
	BACKGROUND: #666666; COLOR: #ffffff
}
#ja-cssmenu LI A.active:focus {
	BACKGROUND: #666666; COLOR: #ffffff
}
#ja-cssmenu LI UL {
	BORDER-RIGHT: #666666 1px solid; BORDER-TOP: #666666 5px solid; =
BACKGROUND: #666666; BORDER-LEFT: #666666 1px solid; BORDER-BOTTOM: =
#666666 1px solid
}
#ja-cssmenu LI UL LI {
	BACKGROUND: none transparent scroll repeat 0% 0%; BORDER-BOTTOM: =
#555555 1px solid; BORDER-RIGHT-STYLE: none
}
#ja-cssmenu LI UL A {
	PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: normal; =
FONT-SIZE: 92%; BACKGROUND: none transparent scroll repeat 0% 0%; =
PADDING-BOTTOM: 5px; MARGIN: 0px; COLOR: #ffffff; BORDER-TOP-STYLE: =
none; LINE-HEIGHT: normal; PADDING-TOP: 5px; BORDER-RIGHT-STYLE: none; =
BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none
}
#ja-cssmenu LI.havesubchild {
	BACKGROUND: url(../../images/arrow3.png) no-repeat 94% 50%
}
#ja-cssmenu LI.havesubchild-active {
	BACKGROUND: url(../../images/arrow3.png) no-repeat 94% 50%
}
#ja-cssmenu LI UL A:hover {
	BACKGROUND: #999999; COLOR: #ffffff
}
#ja-cssmenu LI UL A:active {
	BACKGROUND: #999999; COLOR: #ffffff
}
#ja-cssmenu LI UL A:focus {
	BACKGROUND: #999999; COLOR: #ffffff
}
#ja-cssmenu UL LI:hover {
	BACKGROUND: #999999; COLOR: #ffffff
}
#ja-cssmenu UL LI.sfhover {
	BACKGROUND: #999999; COLOR: #ffffff
}
#ja-cssmenu UL LI.havesubchildsfhover {
	BACKGROUND: #999999; COLOR: #ffffff
}
#ja-cssmenu UL LI.havesubchild-activesfhover {
	BACKGROUND: #999999; COLOR: #ffffff
}
#ja-cssmenu UL UL LI:hover {
	BACKGROUND: #999999; COLOR: #ffffff
}
#ja-cssmenu UL UL LI.sfhover {
	BACKGROUND: #999999; COLOR: #ffffff
}
#ja-cssmenu UL UL LI.havesubchildsfhover {
	BACKGROUND: #999999; COLOR: #ffffff
}
#ja-cssmenu UL UL LI.havesubchild-activesfhover {
	BACKGROUND: #999999; COLOR: #ffffff
}
#ja-cssmenu UL LI A.active {
	FONT-WEIGHT: bold; BACKGROUND: none transparent scroll repeat 0% 0%; =
COLOR: #ffffff; TEXT-DECORATION: underline
}
#ja-cssmenu UL LI A.active:hover {
	FONT-WEIGHT: bold; BACKGROUND: none transparent scroll repeat 0% 0%; =
COLOR: #ffffff; TEXT-DECORATION: underline
}
#ja-cssmenu UL LI A.active:active {
	FONT-WEIGHT: bold; BACKGROUND: none transparent scroll repeat 0% 0%; =
COLOR: #ffffff; TEXT-DECORATION: underline
}
#ja-cssmenu UL LI A.active:focus {
	FONT-WEIGHT: bold; BACKGROUND: none transparent scroll repeat 0% 0%; =
COLOR: #ffffff; TEXT-DECORATION: underline
}

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/css/colors/theme-orange.css

A {
	COLOR: #e77b13
}
A:hover {
	COLOR: #e77b13; TEXT-DECORATION: underline
}
A:active {
	COLOR: #e77b13; TEXT-DECORATION: underline
}
A:focus {
	COLOR: #e77b13; TEXT-DECORATION: underline
}
.componentheading {
	BORDER-BOTTOM: #e77b13 5px solid
}
#ja-colmass DIV.moduletable H3 {
	COLOR: #333333
}
#ja-colmass DIV.moduletable_media H3 {
	COLOR: #333333
}
#ja-botsl DIV.moduletable H3 {
	COLOR: #333333
}
DIV.moduletable {
	BORDER-TOP: #e77b13 5px solid
}
DIV.moduletable_menu {
	BORDER-TOP: #e77b13 5px solid
}
DIV.moduletable_text {
	BORDER-TOP: #e77b13 5px solid
}
DIV.moduletable_hilite {
	BORDER-TOP: #e77b13 5px solid
}
A.readon:hover {
	BACKGROUND: #e77b13
}
A.readon:active {
	BACKGROUND: #e77b13
}
A.readon:focus {
	BACKGROUND: #e77b13
}
#ja-mainnavwrap {
	BORDER-BOTTOM: #e77b13 5px solid
}
#ja-subnav LI.active A {
	COLOR: #e77b13
}
#ja-subnav LI.active A:hover {
	COLOR: #e77b13
}
#ja-subnav LI.active A:active {
	COLOR: #e77b13
}
#ja-subnav LI.active A:focus {
	COLOR: #e77b13
}
#ja-splitmenu LI.active A {
	BACKGROUND: #e77b13
}
#ja-splitmenu LI.active A:hover {
	BACKGROUND: #e77b13
}
#ja-splitmenu LI.active A:active {
	BACKGROUND: #e77b13
}
#ja-splitmenu LI.active A:focus {
	BACKGROUND: #e77b13
}
#ja-splitmenu A:hover {
	BACKGROUND: #f0f0f0
}
#ja-splitmenu A:active {
	BACKGROUND: #f0f0f0
}
#ja-splitmenu A:focus {
	BACKGROUND: #f0f0f0
}
#jasdl-mainnav LI.active A {
	BACKGROUND: #e77b13
}
#jasdl-mainnav LI.active A:hover {
	BACKGROUND: #e77b13
}
#jasdl-mainnav LI.active A:active {
	BACKGROUND: #e77b13
}
#jasdl-mainnav LI.active A:focus {
	BACKGROUND: #e77b13
}
#jasdl-mainnav A:hover {
	BACKGROUND: #f0f0f0
}
#jasdl-mainnav UL LI.hover A {
	BACKGROUND: #f0f0f0
}
#ja-cssmenu LI A.active {
	BACKGROUND: #e77b13
}
#ja-cssmenu LI A.active:hover {
	BACKGROUND: #e77b13
}
#ja-cssmenu LI A.active:active {
	BACKGROUND: #e77b13
}
#ja-cssmenu LI A.active:focus {
	BACKGROUND: #e77b13
}
#ja-cssmenu LI:hover {
	BACKGROUND: #f0f0f0
}
#ja-cssmenu LI.sfhover {
	BACKGROUND: #f0f0f0
}
#ja-cssmenu LI.havechildsfhover {
	BACKGROUND: #f0f0f0
}
#ja-cssmenu LI.havechild-activesfhover {
	BACKGROUND: #f0f0f0
}
#ja-cssmenu LI UL {
	BORDER-RIGHT: #e77b13 1px solid; BORDER-TOP: #e77b13 5px solid; =
BACKGROUND: #e77b13; BORDER-LEFT: #e77b13 1px solid; BORDER-BOTTOM: =
#e77b13 1px solid
}
#ja-cssmenu LI UL LI {
	BACKGROUND: none transparent scroll repeat 0% 0%; BORDER-BOTTOM: =
#be6510 1px solid; BORDER-RIGHT-STYLE: none
}
.mootabs-title LI {
	BACKGROUND: #f7f7f7
}
.mootabs-title LI.hover {
	COLOR: #e77b13
}
.mootabs-title LI.firsthover {
	COLOR: #e77b13
}
.mootabs-title LI.lasthover {
	COLOR: #e77b13
}
.mootabs-title LI.active H3 {
	COLOR: #e77b13
}
.mootabs-title LI.firstactive H3 {
	COLOR: #e77b13
}
.mootabs-title LI.lastactive H3 {
	COLOR: #e77b13
}

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/modules/latestnewsplusdate/style.css

A.lndtitle {
	PADDING-LEFT: 20px; FONT-SIZE: 14px; BACKGROUND: url(title.gif) =
no-repeat left top; COLOR: #cc9900
}
.lnd_introdate {
	FONT-SIZE: 10px
}
LI.lnd_latestnews {
	PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 0px; COLOR: =
#cc9900; PADDING-TOP: 0px; BORDER-BOTTOM: #cccccc 1px solid
}
LI.lnd_latestnews A {
	FONT-WEIGHT: 400; COLOR: #003366
}
DIV.lnd_more_ind {
	FONT-SIZE: 11px; PADDING-TOP: 5px; TEXT-ALIGN: right
}
.morein {
	PADDING-LEFT: 20px; BACKGROUND: url(more.gif) no-repeat left top
}
.div_lnd_intro IMG {
	MARGIN: 4px
}

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: text/css;
	charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/modules/mod_artbannersxtd/mod_artbannersxtd.css

DIV.artbannersxtd {
	PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: =
url(advertisement.png) no-repeat 50% 0px; PADDING-BOTTOM: 0px; MARGIN: =
auto; PADDING-TOP: 8px; TEXT-ALIGN: center
}
DIV.artbannersxtd-flash {
=09
}
DIV.artbannersxtd-flash A {
=09
}
DIV.artbannersxtd-flash A:hover {
=09
}

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://partner.dw-world.de/syndication/media/tr.gif

R0lGODlhAQABAJEAAAAAAP///////wAAACH5BAUUAAIALAAAAAABAAEAAAICVAEAOw==

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://partner.dw-world.de/syndication/media/logo_m.gif

R0lGODlhhwAjAKIAAP///9rj77jI4Jau1nCLqFqD1i9etAkvYyH5BAUUAAAALAAAAACHACMAAAP/
CLrc/jDKSau9OOvNu/9gKI5kaZ5oJxhsaxBDsBAssQytDAT5ExQFhaAgUAB1gKGB2AA6mYvhwPFz
xiBV4HWRtV4Gh7B4XASAwzqDuHw+IBk8QxEXjOtwruDC1dKbl1R8gA4rfFMKcXlfY4xoO2uPYjYA
ageTDwVyAJkFATx6cTF4h5sGAwICeGyDcEuomaaErkqaO7OoZRVtAp4BbQYKlTYEY8ABkBA4MTnK
CnQ3rJlImYfPDZ/QnQ0rftbYG20NbTLjlZWnYcA7uLxCptxyOGXUXCw6mbwBSqt+9X5221h9i+Mk
wzg4YmTwCEPsgJx0DQ/BYnHoE74l0ozEQpSx/xSfbqz81TPwJonAQYlC6hIjjqWChmKmNNKRaoDN
XLCC5FxAD5E9jUBYaHOm0ta/nwy4iTTay+AaXG0uCWAkA6YlCqM8gtzKk+SfftZa+eGEiGa0jd80
tGnkaI8YdVNjUig0JavPd6q6KqSYjV2RT69Y/F0ig1sqWDoAs1vE1mHJNqTGlHxQaG8tdy5IUfL6
hzMeRSldEdVUqE+u0CwuBCDAujWMXHBaIxnAWrMEmzds77B5ShwpX1uA8+5thnc7RLh3G782nHeK
59CjS59Ovbr169iza9/Ovbv37+DDix9Pvrz589xLE4BNo8WkFWV4DOZTZoVD2PYvs55BQEf7Gv8P
7CffHwr99wJRJfGgm4GXYMXIJYyoA8YhU9kQFxlJMFKfhsEc4JYOET4QhhlXqVHYgy8dAFuGDUby
1iIWhlGGYzvccQCFN5Zlon8qJnGJGkUI0F8w6lDihgI0ehKgh2qQdBWLiMzQY1JPMvCkkhaAMcmE
SFoypDM5ZqiZGgycsV5iVTKgRmttpcOZA2DYp2KYU73QIDErVngNQ19m+SSXRsp4A51pkskATF7p
6UAlknXZFiGWRAqkEC9KmWeaLh4JY4qHOAQnoWN6SAgxNhxTpJpueGIikm/6kFBClLYIAJ7bYAqA
rSv1dwaIJDX1SK+TupXUkFp2KApnqXXIay9hk9niKTFFVsgsp/ps2B8qy/q60hiRUZVipcJKyS2l
GBr5oaOwOkAqidGGOCuHFzKU6YgWrCZbma71SRsMj7W473rDspZLcmZ8ma+sQgy52mn5Uphvga4d
cjB6FFds8XMJAAA7

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://partner.dw-world.de/syndication/media/pfeil.gif

R0lGODlhCwALAIABAAAAAP///yH5BAEAAAEALAAAAAALAAsAAAIPjI+pBuva2nsxyJkqXlcVADs=

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: image/gif
Content-Transfer-Encoding: base64
Content-Location: http://partner.dw-world.de/syndication/media/tvradio_m.gif

R0lGODlhhwAaAKIAAP7+/tnn9cLP36LJ8X2v5GaYyjeb/gIQUCH5BAUUAAAALAAAAACHABoAAAP/
CLrcfS7KSau9OM/Cu/8fpI1kaZ6oiK5sS4IwrD5HbROAUBdAYCu/xoBAJAaGC6QrZWs2UxLnDfAj
2AS+A09IMBiMAUNA8V0yaRBRbN2ZMXYCQeE3P2R31gMuMjAwymEDZiduQEEmhYZbAHU5O06NAENE
SX4LXZKWgyWJNVQKbGyJVFoLkU55OwpDXpUMYYGbiBFPhFFacXVqNjxNAhN9DV9ispy0aaChMaNS
NXt3OLoUwQx9msUanm+1s8eo23YAeYt81z0GgtgjzU7JyiCj6vLzOXH29/j48fT8/RX7/gK68HAB
oMCDJTgw6LDBIEKEIrRF2ELQ3cJet77pKHXH/1ChSUTSXdqzqojIAATGKEBJQCQLFcgkKDQ1kxFD
Rsya4ahyJQu5VV+IoKtEDKhQS7CADiMJ5VPEdozcLbqZ7NOxArno1LijJQ9ToCNHDgV7TlBSAGUy
qYQSEZyKmjan3pxza6qnjboeiQCpNkCYZ+gwkUWLI2mssi+tzqhFkSpVm1YdqAKlDVWTLX0oWfNS
tM+RzpoAETuL1uWstgu4wXU8NydWOUF09bpS7rNIzl72UIt1Nq3nxE49xpZKk5zCnFJ+9ZgirZwC
wYH8Cu4zwNrKol1atmoBM7KD1TUr0vXmC9yYcRJ2DxWMeHPK62utvXfxdMMG8N4f6i9WMf/+/wMY
JAAAOw==

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: multipart/alternative;
	boundary="----=_NextPart_001_0041_01C9C2B0.3B594AB0"


------=_NextPart_001_0041_01C9C2B0.3B594AB0
Content-Type: text/html;
	charset="Windows-1252"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/index.php?option=com_content&task=view&id=4800&Itemid=30

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" =
"http://www.w3c.org/TR/1999/REC-html401-19991224/loose.dtd">
<HTML xmlns=3D"http://www.w3.org/1999/xhtml"><HEAD><TITLE>.:: =
Confirmado.net ::. - 117 observadores de la UE vigilar=E1n los =
comicios</TITLE>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Dwindows-1252">
<META content=3D"117 observadores de la UE vigilar=E1n los comicios" =
name=3Dtitle>
<META content=3D"Jesenia Bola=F1os" name=3Dauthor>
<META=20
content=3D"Confirmado.net, la =FAltima palabra en informaci=F3n :: La =
mejor y m=E1s actualizada informaci=F3n en el portal de noticias m=E1s =
completo del Ecuador"=20
name=3Ddescription>
<META content=3D"Confirmado.net, Ecuador, Portal, Noticias" =
name=3Dkeywords>
<META content=3D"MSHTML 6.00.6000.16762" name=3DGENERATOR>
<META content=3D"index, follow" name=3Drobots>
<SCRIPT src=3D"http://www.google-analytics.com/urchin.js"=20
type=3Dtext/javascript>=0A=
</SCRIPT>

<SCRIPT=20
type=3Dtext/javascript>=0A=
_uacct =3D "UA-1344668-1";=0A=
urchinTracker();=0A=
</SCRIPT>
<LINK title=3D".:: Confirmado.net ::."=20
href=3D"http://www.confirmado.net/index2.php?option=3Dcom_rss&amp;feed=3D=
RSS2.0&amp;no_html=3D1"=20
type=3Dapplication/rss+xml rel=3Dalternate><LINK=20
href=3D"http://www.confirmado.net/images/favicon.ico" rel=3D"shortcut =
icon">
<SCRIPT language=3Djavascript=20
src=3D"http://www.confirmado.net/AC_OETags.js"></SCRIPT>

<SCRIPT src=3D"http://www.confirmado.net/pageear.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT language=3Djavascript=20
src=3D"http://www.confirmado.net/templates/ja_teline_ii/js/mootools.v1.11=
.js"=20
type=3Dtext/javascript></SCRIPT>
<LINK=20
href=3D"http://www.confirmado.net/templates/ja_teline_ii/highslide/highsl=
ide.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://www.confirmado.net/templates/ja_teline_ii/css/template_css=
.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://www.confirmado.net/templates/ja_teline_ii/css/typo.css"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://www.confirmado.net/templates/ja_teline_ii/css/ja.news.css"=
=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://www.confirmado.net/templates/ja_teline_ii/css/ja.news.fp.c=
ss"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://www.confirmado.net/templates/ja_teline_ii/css/ja_catslwi.c=
ss"=20
type=3Dtext/css rel=3Dstylesheet><LINK=20
href=3D"http://www.confirmado.net/templates/ja_teline_ii/mootabs/mootabs1=
.2.css"=20
type=3Dtext/css rel=3Dstylesheet>
<SCRIPT language=3Djavascript=20
src=3D"http://www.confirmado.net/templates/ja_teline_ii/js/ja.script.js" =

type=3Dtext/javascript></SCRIPT>

<SCRIPT language=3Djavascript=20
src=3D"http://www.confirmado.net/templates/ja_teline_ii/highslide/swfobje=
ct.js"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT language=3Djavascript=20
src=3D"http://www.confirmado.net/templates/ja_teline_ii/highslide/highsli=
de-full.js"=20
type=3Dtext/javascript></SCRIPT>
<!-- Menu head --><LINK=20
href=3D"http://www.confirmado.net/templates/ja_teline_ii/ja_menus/ja_moom=
enu/ja.moomenu.css"=20
type=3Dtext/css rel=3Dstylesheet>
<SCRIPT language=3Djavascript=20
src=3D"http://www.confirmado.net/templates/ja_teline_ii/ja_menus/ja_moome=
nu/ja.moomenu.js"=20
type=3Dtext/javascript></SCRIPT>
<LINK=20
href=3D"http://www.confirmado.net/templates/ja_teline_ii/css/colors/theme=
-orange.css"=20
type=3Dtext/css rel=3Dstylesheet><!--[if lte IE 6]>

<style type=3D"text/css">

.clearfix {height: 1%;}

img {border: none;}

</style>

<![endif]--><!--[if gte IE 7.0]>
<STYLE type=3Dtext/css>.clearfix {
	DISPLAY: inline-block
}
</STYLE>
<![endif]-->
<SCRIPT type=3Dtext/javascript>   =20

   	hs.graphicsDir =3D =
'http://www.confirmado.net/templates/ja_teline_ii/highslide/graphics/';

   	hs.showCredits =3D true; // you can set this to false if you want

	hs.creditsText =3D 'Confirmado.net';

	hs.creditsHref =3D 'http://www.confirmado.net/';

	hs.creditsTitle =3D'Confirmado.net';

</SCRIPT>

<SCRIPT type=3Dtext/javascript>

//<![CDATA[

  document.write ('<style type=3D"text/css">.blog-content-table =
.article_seperator{display:none;}<\/style>');

//]]> =20

</SCRIPT>
<LINK =
href=3D"http://www.confirmado.net/modules/latestnewsplusdate/style.css"=20
type=3Dtext/css rel=3Dstylesheet></HEAD>
<BODY class=3D"wide fs3" id=3Dbd><A id=3DTop name=3DTop></A>
<UL class=3Daccessibility>
  <LI><A title=3D"Skip to content"=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4800&amp;Itemid=3D30#ja-content">Skip=20
  to content</A>=20
  <LI><A title=3D"Skip to main navigation"=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4800&amp;Itemid=3D30#ja-mainnav">Skip=20
  to main navigation</A>=20
  <LI><A title=3D"Skip to 1st column"=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4800&amp;Itemid=3D30#ja-col1">Skip=20
  to 1st column</A>=20
  <LI><A title=3D"Skip to 2nd column"=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4800&amp;Itemid=3D30#ja-col2">Skip=20
  to 2nd column</A>=20
  <LI><A title=3D"Skip to 3nd column"=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4800&amp;Itemid=3D30#ja-col3">Skip=20
  to 2nd column</A> </LI></UL>
<DIV id=3Dja-wrapper><!-- BEGIN: HEADER -->
<DIV id=3Dja-headerwrap>
<DIV class=3Dclearfix id=3Dja-header>
<H1 class=3Dlogo><A title=3D".:: Confirmado.net ::."=20
href=3D"http://www.confirmado.net/index.php"><SPAN>.:: Confirmado.net=20
::.</SPAN></A> </H1>
<DIV class=3Dja-headtool id=3Dja-headtools>
<DIV class=3D"ja-innerpad clearfix">
<DIV class=3Dja-day><SPAN>Martes</SPAN>=20
<DIV>21 Abril</DIV><SPAN>2009</SPAN> </DIV>
<UL>
  <LI><A class=3Dhighslide=20
  onclick=3D"return hs.htmlExpand(this, { =
contentId:'id_highslide_login', outlineType : 'rounded-white', =
outlineWhileAnimating : true, width : 325} )"=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4800&amp;Itemid=3D30#">Entrar=20
  </A><!--LOFIN FORM content-->
  <DIV class=3Dhighslide-html-content id=3Did_highslide_login>
  <DIV class=3Dhighslide-header>
  <UL>
    <LI class=3Dhighslide-move><A onclick=3D"return false"=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4800&amp;Itemid=3D30#">Mover</A>=20

    <LI class=3Dhighslide-close><A onclick=3D"return hs.close(this)"=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4800&amp;Itemid=3D30#">Cerrar</A>=20
    </LI></UL></DIV>
  <DIV class=3Dhighslide-body>
  <DIV id=3Dja-login>
  <FORM id=3Dlogin name=3Dlogin =
action=3Dhttp://www.confirmado.net/index.php=20
  method=3Dpost><LABEL class=3Dja-login-user=20
  for=3Dmod_login_username><SPAN>Usuario</SPAN> <INPUT class=3Dinputbox=20
  id=3Dmod_login_username alt=3Dusername size=3D10 name=3Dusername> =
</LABEL><LABEL=20
  class=3Dja-login-password for=3Dmod_login_password><SPAN>Clave</SPAN> =
<INPUT=20
  class=3Dinputbox id=3Dmod_login_password type=3Dpassword =
alt=3Dpassword size=3D10=20
  name=3Dpasswd> </LABEL><LABEL for=3Dmod_login_remember><INPUT =
class=3Dinputbox=20
  id=3Dmod_login_remember type=3Dhidden alt=3D"Remember Me" value=3Dyes =
name=3Dremember>=20
  </LABEL><INPUT class=3Dbutton type=3Dsubmit value=3DEntrar =
name=3DSubmit>=20
  <DIV class=3Dja-login-links><A=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_registration&amp=
;task=3DlostPassword">=BFRecuperar=20
  clave?</A> </DIV><INPUT type=3Dhidden value=3Dlogin name=3Doption> =
<INPUT=20
  type=3Dhidden value=3Dlogin name=3Dop2> <INPUT type=3Dhidden =
value=3Dspanish name=3Dlang>=20
  <INPUT type=3Dhidden=20
  =
value=3Dhttp://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4800&amp;Itemid=3D30=20
  name=3Dreturn> <INPUT type=3Dhidden value=3D0 name=3Dmessage> <INPUT =
type=3Dhidden=20
  value=3D1 name=3Dforce_session> <INPUT type=3Dhidden value=3D1=20
  name=3Dj8647be0adc03c0facbacbc8de13e0216> =
</FORM></DIV></DIV></DIV><!-- signup form -->
  <LI><A=20
  onclick=3D"return hs.htmlExpand(this, {contentId: =
'id_highslide_signup_1',outlineType:'rounded-white',width:330,height:360,=
outlineWhileAnimating:true} )"=20
  href=3D"http://www.confirmado.net/index.php">Inscribirse </A><!--LOFIN =
FORM content-->
  <DIV class=3Dhighslide-html-content id=3Did_highslide_signup_1>
  <DIV class=3Dhighslide-header>
  <UL>
    <LI class=3Dhighslide-move><A onclick=3D"return false"=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4800&amp;Itemid=3D30#">Move</A>=20

    <LI class=3Dhighslide-close><A onclick=3D"return hs.close(this)"=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4800&amp;Itemid=3D30#">Close</A>=20
    </LI></UL></DIV>
  <DIV class=3Dhighslide-body>
  <SCRIPT language=3Djavascript type=3Dtext/javascript>
    	function submitbutton_reg() {
    		var form =3D document.mosForm;
    		var r =3D new RegExp("[\<|\>|\"|\'|\%|\;|\(|\)|\&|\+|\-]", "i");
   =20
    		// do field validation
    		if (form.name.value =3D=3D "") {
    			alert( "Escriba su nombre." );
    		} else if (form.username.value =3D=3D "") {
    			alert( "Escriba su nombre de usuario." );
    		} else if (r.exec(form.username.value) || =
form.username.value.length < 3) {
    			alert( "Debe escribir un Usuario: v=E1lido.  M=E1s de 2 =
caracteres y que contenga 0-9,a-z,A-Z" );
    		} else if (form.email.value =3D=3D "") {
    			alert( "Escriba su E-Mail." );
    		} else if (form.password.value.length < 6) {
    			alert( "Debe escribir una clave v=E1lida, sin espacios en blanco, =
con m=E1s de 6 caracteres, y que contenga 0-9,a-z,A-Z" );
    		} else if (form.password2.value =3D=3D "") {
    			alert( "Verifique la clave." );
    		} else if ((form.password.value !=3D "") && (form.password.value =
!=3D form.password2.value)){
    			alert( "La clave y la verificaci=F3n, no son iguales. Int=E9ntelo =
nuevamente." );
    		} else if (r.exec(form.password.value)) {
    			alert( "Debe escribir un Clave: v=E1lido, sin espacios en blanco =
y con m=E1s de 6 caracteres y que contenga 0-9,a-z,A-Z" );
    		} else {
    			form.submit();
    		}
    	}
    	</SCRIPT>

  <FORM name=3DmosForm action=3Dindex.php method=3Dpost>
  <DIV class=3Dcomponentheading>Registrarse como usuario </DIV>
  <TABLE class=3Dcontentpane cellSpacing=3D0 cellPadding=3D0 =
width=3D"100%" border=3D0>
    <TBODY>
    <TR>
      <TD colSpan=3D2>Los campos marcados con un asterisco (*) son=20
      obligatorios.</TD></TR>
    <TR>
      <TD width=3D"30%">Nombre: * </TD>
      <TD><INPUT class=3Dinputbox maxLength=3D50 size=3D40 name=3Dname> =
</TD></TR>
    <TR>
      <TD>Usuario: * </TD>
      <TD><INPUT class=3Dinputbox maxLength=3D25 size=3D40 =
name=3Dusername> </TD></TR>
    <TR>
      <TD>E-Mail: * </TD>
      <TD><INPUT class=3Dinputbox maxLength=3D100 size=3D40 =
name=3Demail> </TD></TR>
    <TR>
      <TD>Clave: * </TD>
      <TD><INPUT class=3Dinputbox type=3Dpassword size=3D40 =
name=3Dpassword> </TD></TR>
    <TR>
      <TD>Verificar su Clave: * </TD>
      <TD><INPUT class=3Dinputbox type=3Dpassword size=3D40 =
name=3Dpassword2>=20
    </TD></TR></TBODY></TABLE><INPUT type=3Dhidden value=3D0 name=3Did> =
<INPUT=20
  type=3Dhidden value=3D0 name=3Dgid> <INPUT type=3Dhidden value=3D1 =
name=3Duseractivation>=20
  <INPUT type=3Dhidden value=3Dcom_registration name=3Doption> <INPUT =
type=3Dhidden=20
  value=3DsaveRegistration name=3Dtask> <INPUT class=3Dbutton =
onclick=3Dsubmitbutton_reg() type=3Dbutton value=3D"Enviar registro">=20
  <INPUT type=3Dhidden value=3D1 =
name=3Dj9a3b80afebb45ffe228edac50fc4ef96>=20
  </FORM></DIV></DIV><!--LOFIN FORM content--><!--module search-->
  <LI><A class=3Dhighslide=20
  onclick=3D"return hs.htmlExpand(this, { contentId: =
'id_highslide_search', outlineType : 'rounded-white', =
outlineWhileAnimating : true, width : 230} )"=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_search">Buscar =
</A><!--SEARCH content-->
  <DIV class=3Dhighslide-html-content id=3Did_highslide_search>
  <DIV class=3Dhighslide-header>
  <UL>
    <LI class=3Dhighslide-move><A onclick=3D"return false"=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4800&amp;Itemid=3D30#">Mover</A>=20

    <LI class=3Dhighslide-close><A onclick=3D"return hs.close(this)"=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4800&amp;Itemid=3D30#">Cerrar</A>=20
    </LI></UL></DIV>
  <DIV class=3Dhighslide-body>
  <DIV id=3Dja-search>
  <FORM action=3Dindex.php?option=3Dcom_search&amp;Itemid=3D5 =
method=3Dget>
  <DIV class=3Dsearch><INPUT class=3Dinputbox id=3Dmod_search_searchword =

  onblur=3D"if(this.value=3D=3D'') this.value=3D'buscar...';"=20
  onfocus=3D"if(this.value=3D=3D'buscar...') this.value=3D'';" =
alt=3Dsearch maxLength=3D20=20
  value=3Dbuscar... name=3Dsearchword><INPUT class=3Dbutton =
type=3Dsubmit value=3DBuscar>=20
  </DIV><INPUT type=3Dhidden value=3Dcom_search name=3Doption> <INPUT =
type=3Dhidden=20
  value=3D5 name=3DItemid> </FORM></DIV></DIV></DIV></LI></UL>
<DIV id=3Dja-usertools><STRONG>Text size</STRONG>=20
<UL class=3Dja-usertools-font>
  <LI><IMG id=3Dja-tool-increase title=3D"Increase font size"=20
  style=3D"CURSOR: pointer"=20
  onclick=3D"switchFontSize('ja_teline_ii_ja_font','inc'); return =
false;"=20
  alt=3D"Increase font size"=20
  =
src=3D"http://www.confirmado.net/templates/ja_teline_ii/images/user-incre=
ase.gif">=20
  </LI>
  <LI><IMG id=3Dja-tool-reset title=3D"Default font size" =
style=3D"CURSOR: pointer"=20
  onclick=3D"switchFontSize('ja_teline_ii_ja_font',3); return false;"=20
  alt=3D"Default font size"=20
  =
src=3D"http://www.confirmado.net/templates/ja_teline_ii/images/user-reset=
.gif">=20
  </LI>
  <LI><IMG id=3Dja-tool-decrease title=3D"Decrease font size"=20
  style=3D"CURSOR: pointer"=20
  onclick=3D"switchFontSize('ja_teline_ii_ja_font','dec'); return =
false;"=20
  alt=3D"Decrease font size"=20
  =
src=3D"http://www.confirmado.net/templates/ja_teline_ii/images/user-decre=
ase.gif">=20
  </LI></UL>
<SCRIPT type=3Dtext/javascript>var =
CurrentFontSize=3DparseInt('3');</SCRIPT>
</DIV></DIV></DIV></DIV></DIV><!-- END: HEADER --><!-- BEGIN: MAIN =
NAVIGATION -->
<DIV id=3Dja-mainnavwrap>
<DIV class=3Dclearfix id=3Dja-mainnav>
<UL class=3Dclearfix id=3Dja-cssmenu>
  <LI><A class=3D"menu-item0 first-item" id=3Dmenu27 title=3DInicio=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_frontpage&amp;It=
emid=3D27"><SPAN=20
  class=3Dmenu-title>Inicio</SPAN></A> </LI>
  <LI><A class=3Dmenu-item1 id=3Dmenu28 title=3DNacionales=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogsection&amp;id=3D4&amp;Itemid=3D28"><SPAN=20
  class=3Dmenu-title>Nacionales</SPAN></A> </LI>
  <LI class=3Dactive><A class=3D"menu-item2 active" id=3Dmenu30 =
title=3DPol=EDtica=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogsection&amp;id=3D5&amp;Itemid=3D30"><SPAN=20
  class=3Dmenu-title>Pol=EDtica</SPAN></A> </LI>
  <LI><A class=3Dmenu-item3 id=3Dmenu31 title=3DEconom=EDa=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogsection&amp;id=3D6&amp;Itemid=3D31"><SPAN=20
  class=3Dmenu-title>Econom=EDa</SPAN></A> </LI>
  <LI class=3Dhavechild><A class=3Dmenu-item4 id=3Dmenu32 =
title=3DRegional=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogsection&amp;id=3D8&amp;Itemid=3D32"><SPAN=20
  class=3Dmenu-title>Regional</SPAN></A>
  <UL>
    <LI><A class=3D" first-item" id=3Dmenu39 title=3DSierra=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogcategory&amp;id=3D21&amp;Itemid=3D39"><SPAN=20
    class=3Dmenu-title>Sierra</SPAN></A> </LI>
    <LI><A id=3Dmenu40 title=3DOriente=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogcategory&amp;id=3D22&amp;Itemid=3D40"><SPAN=20
    class=3Dmenu-title>Oriente</SPAN></A> </LI>
    <LI><A id=3Dmenu41 title=3DInsular=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogcategory&amp;id=3D23&amp;Itemid=3D41"><SPAN=20
    class=3Dmenu-title>Insular</SPAN></A> </LI>
    <LI><A class=3D" last-item" id=3Dmenu42 title=3DCosta=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogcategory&amp;id=3D24&amp;Itemid=3D42"><SPAN=20
    class=3Dmenu-title>Costa</SPAN></A> </LI></UL></LI>
  <LI><A class=3Dmenu-item5 id=3Dmenu29 title=3DJusticia=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogsection&amp;id=3D7&amp;Itemid=3D29"><SPAN=20
  class=3Dmenu-title>Justicia</SPAN></A> </LI>
  <LI><A class=3Dmenu-item6 id=3Dmenu33 title=3DInternacional=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogsection&amp;id=3D9&amp;Itemid=3D33"><SPAN=20
  class=3Dmenu-title>Internacional</SPAN></A> </LI>
  <LI class=3Dhavechild><A class=3Dmenu-item7 id=3Dmenu34 =
title=3DDeportes=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogsection&amp;id=3D10&amp;Itemid=3D34"><SPAN=20
  class=3Dmenu-title>Deportes</SPAN></A>
  <UL>
    <LI><A class=3D" first-item" id=3Dmenu48 title=3DTenis=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogcategory&amp;id=3D15&amp;Itemid=3D48"><SPAN=20
    class=3Dmenu-title>Tenis</SPAN></A> </LI>
    <LI><A id=3Dmenu49 title=3D"Otros Deportes"=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogcategory&amp;id=3D14&amp;Itemid=3D49"><SPAN=20
    class=3Dmenu-title>Otros Deportes</SPAN></A> </LI>
    <LI><A id=3Dmenu50 title=3DAutomovilismo=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogcategory&amp;id=3D16&amp;Itemid=3D50"><SPAN=20
    class=3Dmenu-title>Automovilismo</SPAN></A> </LI>
    <LI><A id=3Dmenu51 title=3DCiclismo=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogcategory&amp;id=3D17&amp;Itemid=3D51"><SPAN=20
    class=3Dmenu-title>Ciclismo</SPAN></A> </LI>
    <LI><A class=3D" last-item" id=3Dmenu52 title=3DF=FAtbol=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogcategory&amp;id=3D18&amp;Itemid=3D52"><SPAN=20
    class=3Dmenu-title>F=FAtbol</SPAN></A> </LI></UL></LI>
  <LI class=3Dhavechild><A class=3Dmenu-item8 id=3Dmenu36 =
title=3DCiencia=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogsection&amp;id=3D12&amp;Itemid=3D36"><SPAN=20
  class=3Dmenu-title>Ciencia</SPAN></A>
  <UL>
    <LI><A class=3D" first-item" id=3Dmenu55 title=3DSalud=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogcategory&amp;id=3D25&amp;Itemid=3D55"><SPAN=20
    class=3Dmenu-title>Salud</SPAN></A> </LI>
    <LI><A class=3D" last-item" id=3Dmenu56 title=3DTecnolog=EDa=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogcategory&amp;id=3D26&amp;Itemid=3D56"><SPAN=20
    class=3Dmenu-title>Tecnolog=EDa</SPAN></A> </LI></UL></LI>
  <LI class=3Dhavechild><A class=3Dmenu-item9 id=3Dmenu35 =
title=3DCultura=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogsection&amp;id=3D11&amp;Itemid=3D35"><SPAN=20
  class=3Dmenu-title>Cultura</SPAN></A>
  <UL>
    <LI><A class=3D" first-item" id=3Dmenu53 title=3DArte=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogcategory&amp;id=3D29&amp;Itemid=3D53"><SPAN=20
    class=3Dmenu-title>Arte</SPAN></A> </LI>
    <LI><A class=3D" last-item" id=3Dmenu54 title=3DCultura=20
    =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogcategory&amp;id=3D30&amp;Itemid=3D54"><SPAN=20
    class=3Dmenu-title>Cultura</SPAN></A> </LI></UL></LI>
  <LI><A class=3Dmenu-item10 id=3Dmenu37 title=3DFar=E1ndula=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogsection&amp;id=3D13&amp;Itemid=3D37"><SPAN=20
  class=3Dmenu-title>Far=E1ndula</SPAN></A> </LI>
  <LI><A class=3Dmenu-item11 id=3Dmenu38 title=3DSociedad=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogsection&amp;id=3D14&amp;Itemid=3D38"><SPAN=20
  class=3Dmenu-title>Sociedad</SPAN></A> </LI>
  <LI><A class=3D"menu-item12 last-item" id=3Dmenu65 title=3DEntrevistas =

  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogsection&amp;id=3D16&amp;Itemid=3D65"><SPAN=20
  class=3Dmenu-title>Entrevistas</SPAN></A> </LI></UL></DIV></DIV><!-- =
END: MAIN NAVIGATION -->
<DIV class=3Dclearfix id=3Dja-containerwrap>
<DIV id=3Dja-container>
<DIV class=3Dclearfix id=3Dja-container-inner><!-- BEGIN: CONTENT -->
<DIV id=3Dja-content>
<DIV class=3D"ja-innerpad clearfix">
<DIV id=3Dja-pathway><SPAN class=3Dpathway><A class=3Dpathway=20
href=3D"http://www.confirmado.net/index.php">Inicio</A> <IMG alt=3Darrow =

src=3D"http://www.confirmado.net/templates/ja_teline_ii/images/arrow.png"=
=20
border=3D0> <A class=3Dpathway=20
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dblogsection&amp;id=3D5&amp;Itemid=3D30">Pol=EDtica</A>=20
<IMG alt=3Darrow=20
src=3D"http://www.confirmado.net/templates/ja_teline_ii/images/arrow.png"=
=20
border=3D0> 117 observadores de la UE vigilar=E1n los comicios =
</SPAN></DIV>
<DIV align=3Dcenter>
<OBJECT=20
codeBase=3Dhttp://download.macromedia.com/pub/shockwave/cabs/flash/swflas=
h.cab#version=3D8.0.22.0=20
height=3D60 width=3D468 =
classid=3Dclsid:D27CDB6E-AE6D-11cf-96B8-444553540000><PARAM =
NAME=3D"movie" VALUE=3D"images/banners/asamblea.swf"><PARAM =
NAME=3D"quality" VALUE=3D"best">
  <embed src=3D"images/banners/asamblea.swf" quality=3D"best"=20
pluginspage=3D"http://www.macromedia.com/go/getflashplayer"=20
type=3D"application/x-shockwave-flash"width=3D"468"height=3D"60"></embed>=
</OBJECT><BR>.<BR></DIV>
<DIV id=3Dja-current-content>
<TABLE class=3Dcontentpaneopen>
  <TBODY>
  <TR>
    <TD class=3Dcontentheading width=3D"100%">117 observadores de la UE =
vigilar=E1n=20
      los comicios </TD>
    <TD class=3Dbuttonheading align=3Dright width=3D"100%"><A =
title=3DPDF=20
      =
onclick=3D"window.open('http://www.confirmado.net/index2.php?option=3Dcom=
_content&amp;do_pdf=3D1&amp;id=3D4800','win2','status=3Dno,toolbar=3Dno,s=
crollbars=3Dyes,titlebar=3Dno,menubar=3Dno,resizable=3Dyes,width=3D640,he=
ight=3D480,directories=3Dno,location=3Dno'); return false;"=20
      =
href=3D"http://www.confirmado.net/index2.php?option=3Dcom_content&amp;do_=
pdf=3D1&amp;id=3D4800"=20
      target=3D_blank><IMG alt=3DPDF=20
      =
src=3D"http://www.confirmado.net/templates/ja_teline_ii/images/pdf_button=
.png"=20
      align=3Dmiddle border=3D0 name=3DPDF></A> </TD>
    <TD class=3Dbuttonheading align=3Dright width=3D"100%"><A =
title=3DImprimir=20
      =
onclick=3D"window.open('http://www.confirmado.net/index2.php?option=3Dcom=
_content&amp;task=3Dview&amp;id=3D4800&amp;pop=3D1&amp;page=3D0&amp;Itemi=
d=3D30','win2','status=3Dno,toolbar=3Dno,scrollbars=3Dyes,titlebar=3Dno,m=
enubar=3Dno,resizable=3Dyes,width=3D640,height=3D480,directories=3Dno,loc=
ation=3Dno'); return false;"=20
      =
href=3D"http://www.confirmado.net/index2.php?option=3Dcom_content&amp;tas=
k=3Dview&amp;id=3D4800&amp;pop=3D1&amp;page=3D0&amp;Itemid=3D30"=20
      target=3D_blank><IMG alt=3DImprimir=20
      =
src=3D"http://www.confirmado.net/templates/ja_teline_ii/images/printButto=
n.png"=20
      align=3Dmiddle border=3D0 name=3DImprimir></A> </TD>
    <TD class=3Dbuttonheading align=3Dright width=3D"100%"><A =
title=3DE-Mail=20
      =
onclick=3D"window.open('http://www.confirmado.net/index2.php?option=3Dcom=
_content&amp;task=3Demailform&amp;id=3D4800&amp;itemid=3D30','win2','stat=
us=3Dno,toolbar=3Dno,scrollbars=3Dyes,titlebar=3Dno,menubar=3Dno,resizabl=
e=3Dyes,width=3D400,height=3D250,directories=3Dno,location=3Dno'); =
return false;"=20
      =
href=3D"http://www.confirmado.net/index2.php?option=3Dcom_content&amp;tas=
k=3Demailform&amp;id=3D4800&amp;itemid=3D30"=20
      target=3D_blank><IMG alt=3DE-Mail=20
      =
src=3D"http://www.confirmado.net/templates/ja_teline_ii/images/emailButto=
n.png"=20
      align=3Dmiddle border=3D0 name=3DE-Mail></A> =
</TD></TR></TBODY></TABLE>
<TABLE class=3Dcontentpaneopen>
  <TBODY>
  <TR>
    <TD class=3Dcreatedate vAlign=3Dtop colSpan=3D2>10:39 :: martes, 21 =
de abril de=20
      2009 </TD></TR>
  <TR>
    <TD vAlign=3Dtop colSpan=3D2>
      <DIV class=3Dmosimage style=3D"FLOAT: right; WIDTH: 310px" =
align=3Dcenter><IMG=20
      title=3D"117 observadores de la UE vigilar=E1n los comicios " =
height=3D201=20
      alt=3D"117 observadores de la UE vigilar=E1n los comicios " =
hspace=3D6=20
      src=3D"http://www.confirmado.net/images/stories/veedores_ue.jpg" =
width=3D300=20
      border=3D0>
      <DIV class=3Dmosimage_caption style=3D"TEXT-ALIGN: center" =
align=3Dcenter>117=20
      observadores de la UE vigilar=E1n los comicios </DIV></DIV>Un =
total de 117=20
      veedores de la Uni=F3n Europea (UE) estar=E1n presente en los =
comicios del=20
      pr=F3ximo domingo, los mismos que empezar=E1n a ser distribuidos =
por todo el=20
      pa=EDs desde ma=F1ana, mi=E9rcoles. <BR>
      <DIV align=3Djustify>
      <P>El =FAltimo grupo de 64 observadores arrib=F3 ayer al pa=EDs y, =
junto con el=20
      resto de veedores, vigilar=E1n los detalles y pormenores del =
proceso=20
      electoral.</P>
      <P>Antes de ser distribuidos por todo el pa=EDs, los observadores =
recibir=E1n=20
      una capacitaci=F3n con el fin de adquirir los conocimientos =
necesarios para=20
      entender adecuadamente el proceso.</P>
      <P>Luego de concluido el sufragio, el mismo d=EDa los veedores=20
      internacionales dar=E1n un informe preliminar.</P>
      <P>La UE ha conformado dos tipos de veedur=EDas para este proceso, =
los de=20
      corta y larga estancia, en el que los primeros se ir=E1n luego de =
las=20
      elecciones y volver=E1n, de ser necesario, para la segunda =
vuelta.</P>
      <P>Confirmado.net / =
Expreso</P></DIV></TD></TR></TBODY></TABLE><SPAN=20
class=3Darticle_seperator>&nbsp;</SPAN>=20
<TABLE style=3D"MARGIN-TOP: 25px" align=3Dcenter>
  <TBODY>
  <TR>
    <TH class=3Dpagenav_prev><A=20
      =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4821&amp;Itemid=3D30">&lt;=20
      Anterior</A> </TH>
    <TD width=3D50>&nbsp; </TD>
    <TH class=3Dpagenav_next><A=20
      =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4794&amp;Itemid=3D30">Siguiente=20
      &gt;</A> </TH></TR></TBODY></TABLE>
<DIV class=3Dback_button><A =
href=3D"javascript:history.go(-1)">[Volver]</A> </DIV><!-- BEGIN: JAZIN =
--><!-- END: JAZIN --></DIV><!-- BEGIN: BOTTOM SPOTLIGHT -->
<DIV class=3Dclearfix id=3Dja-botsl>
<DIV class=3Dja-box-full>
<DIV class=3Dmoduletable>
<H3>RSSfeedXTD </H3>
<DIV class=3Dsyndicate>
<DIV class=3Drssin align=3Dleft><A title=3D""=20
href=3D"http://www.confirmado.net/index2.php?option=3Dcom_rss&amp;feed=3D=
RSS0.91&amp;no_html=3D1"><IMG=20
alt=3D"" src=3D"http://www.confirmado.net/images/M_images/rss091.gif" =
align=3Dmiddle=20
border=3D0 name=3DRSS_091>&nbsp;</A> </DIV>
<DIV class=3Drssin align=3Dleft><A title=3D""=20
href=3D"http://www.confirmado.net/index2.php?option=3Dcom_rss&amp;feed=3D=
RSS1.0&amp;no_html=3D1"><IMG=20
alt=3D"" src=3D"http://www.confirmado.net/images/M_images/rss10.gif" =
align=3Dmiddle=20
border=3D0 name=3DRSS_10>&nbsp;</A> </DIV>
<DIV class=3Drssin align=3Dleft><A title=3D""=20
href=3D"http://www.confirmado.net/index2.php?option=3Dcom_rss&amp;feed=3D=
RSS2.0&amp;no_html=3D1"><IMG=20
alt=3D"" src=3D"http://www.confirmado.net/images/M_images/rss20.gif" =
align=3Dmiddle=20
border=3D0 name=3DRSS_20>&nbsp;</A> </DIV>
<DIV class=3Drssin align=3Dleft><A title=3D"" =
href=3D"http://www.confirmado.net/"><IMG=20
alt=3D"" src=3D"http://www.confirmado.net/images/M_images/atom03.gif" =
align=3Dmiddle=20
border=3D0 name=3DATOM_03>&nbsp;</A> </DIV>
<DIV class=3Drssin align=3Dleft><A title=3D""=20
href=3D"http://www.confirmado.net/index2.php?option=3Dcom_rss&amp;feed=3D=
OPML&amp;no_html=3D1"><IMG=20
alt=3D"" =
src=3D"http://www.confirmado.net/templates/ja_teline_ii/images/"=20
align=3Dmiddle border=3D0 name=3DOPML>&nbsp;</A> </DIV>
<DIV class=3Drssin align=3Dleft><A title=3D"" =
href=3D"http://www.confirmado.net/"><IMG=20
alt=3D"" src=3D"http://www.confirmado.net/images/M_images/rss.png" =
align=3Dmiddle=20
border=3D0 name=3DRSS_01>&nbsp;</A> </DIV>
<DIV class=3Drssin align=3Dleft><A title=3D""=20
href=3D"http://www.confirmado.net/index2.php?option=3Dcom_hotproperty&amp=
;task=3Drss&amp;no_html=3D1"><IMG=20
alt=3D"" src=3D"http://www.confirmado.net/images/M_images/rss.png" =
align=3Dmiddle=20
border=3D0 name=3DRSS_02>&nbsp;</A> </DIV></DIV></DIV></DIV></DIV><!-- =
END: BOTTOM SPOTLIGHT --></DIV></DIV><!-- END: CONTENT --><!-- BEGIN: =
COLUMNS -->
<DIV id=3Dja-colwrap><!-- BEGIN: MASSCOL -->
<DIV class=3Dclearfix id=3Dja-colmass>
<DIV class=3Dja-innerpad>
<DIV class=3Dmoduletable><!-- JoomlaWorks "ArtBannersXTD" starts here =
-->
<STYLE type=3Dtext/css media=3Dall>@import url( =
http://www.confirmado.net/modules/mod_artbannersxtd/mod_artbannersxtd.css=
 );
</STYLE>
<!-- JoomlaWorks "ArtBannersXTD" ends here --><!-- JoomlaWorks =
"ArtBannersXTD" starts here -->
<DIV class=3Dartbannersxtd>
<DIV class=3Dartbannersxtd-flash=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 0px; Z-INDEX: 1; BACKGROUND: =
none transparent scroll repeat 0% 0%; PADDING-BOTTOM: 0px; MARGIN: 0px =
auto; WIDTH: 300px; PADDING-TOP: 0px; POSITION: relative; HEIGHT: =
200px">
<OBJECT title=3DCNE1=20
codeBase=3Dhttp://download.macromedia.com/pub/shockwave/cabs/flash/swflas=
h.cab#version=3D7,0,19,0=20
height=3D200 width=3D300 =
classid=3Dclsid:D27CDB6E-AE6D-11cf-96B8-444553540000><PARAM =
NAME=3D"movie" =
VALUE=3D"http://www.confirmado.net/images/banners/confirmadonet_300x000_1=
.swf"><PARAM NAME=3D"quality" VALUE=3D"high"><PARAM NAME=3D"wmode" =
VALUE=3D"transparent">
																<embed=20
src=3D"http://www.confirmado.net/images/banners/confirmadonet_300x000_1.s=
wf"=20
quality=3D"high" wmode=3D"transparent"=20
pluginspage=3D"http://www.macromedia.com/go/getflashplayer"=20
type=3D"application/x-shockwave-flash" width=3D"300" =
height=3D"200"></embed>
			</OBJECT><A title=3DCNE1=20
style=3D"PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; Z-INDEX: =
99; BACKGROUND: none transparent scroll repeat 0% 0%; LEFT: 0px; =
PADDING-BOTTOM: 0px; MARGIN: 0px; WIDTH: 300px; BORDER-TOP-STYLE: none; =
PADDING-TOP: 0px; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; =
POSITION: absolute; TOP: 0px; HEIGHT: 200px; BORDER-BOTTOM-STYLE: none"=20
href=3D"http://www.confirmado.net/index.php?option=3Dcom_artbannersxtd&am=
p;task=3Dclk&amp;id=3D1"=20
target=3D_blank><IMG style=3D"WIDTH: 300px; HEIGHT: 200px" alt=3DCNE1=20
src=3D"http://www.confirmado.net/modules/mod_artbannersxtd/empty.gif">=20
</A></DIV></DIV><!-- JoomlaWorks "ArtBannersXTD" ends here --></DIV>
<DIV class=3Dmoduletable>
<H3>=DAltimas Noticias </H3>
<DIV class=3Ddiv_lnd_intro><A=20
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4822&amp;Itemid=3D31"><BR><B>Warning</B>:=20
imagejpeg() [<A=20
href=3D"http://www.confirmado.net/function.imagejpeg">function.imagejpeg<=
/A>]:=20
Unable to open=20
'/home/confirma/public_html/images/stories/petroleo3_300_lnd_thumb.jpg' =
for=20
writing: Permission denied in=20
<B>/home/confirma/public_html/modules/mod_latestnewsplusdate.php</B> on =
line=20
<B>204</B><BR><IMG height=3D44 alt=3D"article thumbnail"=20
src=3D"http://www.confirmado.net/images/stories/petroleo3_300_lnd_thumb.j=
pg"=20
width=3D64 align=3Dleft></A><A class=3Dlndtitle=20
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4822&amp;Itemid=3D31">=93Petroprecios=94:=20
cotizaci=F3n del WTI repunt=F3 en la bolsa</A><BR><SPAN=20
class=3Dlnd_introdate>18:34<BR></SPAN>Este martes, los precios del crudo =
ganaron=20
terreno en la bolsa, luego de que el secretario del Tesoro de EEUU, =
Timothy=20
Geithner, comunicara ante el Congreso que se permitir=EDa a algunos=20
bancos...</DIV>
<DIV style=3D"CLEAR: both"></DIV>
<DIV class=3Ddiv_lnd_list>
<UL class=3Dlnd_latestnews>
  <LI class=3Dlnd_latestnews>18:09 <A class=3Dlatestnews=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4821&amp;Itemid=3D30">Sabando=20
  compareci=F3 ante Comisi=F3n Tributaria</A>=20
  <LI class=3Dlnd_latestnews>17:50 <A class=3Dlatestnews=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4820&amp;Itemid=3D33">Obama=20
  abre posibilidad de juzgar torturas de la CIA, mientras Dick Cheney =
defiende=20
  las pr=E1cticas</A>=20
  <LI class=3Dlnd_latestnews>17:30 <A class=3Dlatestnews=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4819&amp;Itemid=3D28">Correa=20
  llama a los =93ejecutivos=94 a legalizarse</A>=20
  <LI class=3Dlnd_latestnews>17:10 <A class=3Dlatestnews=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4818&amp;Itemid=3D33">140=20
  pa=EDses adoptan declaraci=F3n final de la Conferencia contra el =
Racismo</A>=20
  <LI class=3Dlnd_latestnews>16:52 <A class=3Dlatestnews=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4817&amp;Itemid=3D29">Mayor=20
  Silva ya fue notificado de su baja</A>=20
  <LI class=3Dlnd_latestnews>16:34 <A class=3Dlatestnews=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4816&amp;Itemid=3D39">Empresa=20
  El=E9ctrica deslinda responsabilidad en accidente que caus=F3 la =
muerte de cinco=20
  ni=F1os</A>=20
  <LI class=3Dlnd_latestnews>16:12 <A class=3Dlatestnews=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4815&amp;Itemid=3D31">Nuevo=20
  pr=E9stamo para el pa=EDs por USD 480 millones </A>
  <LI class=3Dlnd_latestnews>15:40 <A class=3Dlatestnews=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4814&amp;Itemid=3D48">Giovanni=20
  Lapentti no pas=F3 primera ronda del Challenger ATP de Tallahassee</A> =

  <LI class=3Dlnd_latestnews>15:19 <A class=3Dlatestnews=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4813&amp;Itemid=3D37">Angelina=20
  Jolie se llev=F3 el chupete de oro</A>=20
  <LI class=3Dlnd_latestnews>14:58 <A class=3Dlatestnews=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4812&amp;Itemid=3D52">Liga=20
  se juega su =FAltima carta</A>=20
  <LI class=3Dlnd_latestnews>14:37 <A class=3Dlatestnews=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4811&amp;Itemid=3D31">Analista:=20
  'Ecuador ya ha hecho gran parte de la recompra de deuda'</A>=20
  <LI class=3Dlnd_latestnews>14:19 <A class=3Dlatestnews=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4810&amp;Itemid=3D38">Presos=20
  sin sentencia, no todos quieren votar</A>=20
  <LI class=3Dlnd_latestnews>13:59 <A class=3Dlatestnews=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4809&amp;Itemid=3D55">Los=20
  fetos s=ED sue=F1an</A>=20
  <LI class=3Dlnd_latestnews>13:38 <A class=3Dlatestnews=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_content&amp;task=
=3Dview&amp;id=3D4808&amp;Itemid=3D39">(VIDEO)=20
  Cuerpos de ni=F1os fallecidos son velados en Lumbis=ED =
</A></LI></UL></DIV>
<DIV style=3D"CLEAR: both"></DIV></DIV></DIV></DIV><!-- END: MASSCOL -->
<DIV class=3Dclearfix id=3Dja-cols>
<DIV id=3Dja-col1>
<DIV class=3Dja-innerpad>
<DIV class=3Dmoduletable>
<DIV align=3Dcenter>
<OBJECT=20
codeBase=3Dhttp://download.macromedia.com/pub/shockwave/cabs/flash/swflas=
h.cab#version=3D8.0.22.0=20
height=3D370 width=3D150 =
classid=3Dclsid:D27CDB6E-AE6D-11cf-96B8-444553540000><PARAM =
NAME=3D"movie" VALUE=3D"images/banners/minis.swf"><PARAM =
NAME=3D"quality" VALUE=3D"best">
  <embed src=3D"images/banners/minis.swf" quality=3D"best"=20
pluginspage=3D"http://www.macromedia.com/go/getflashplayer"=20
type=3D"application/x-shockwave-flash"width=3D"150"height=3D"370"></embed=
></OBJECT></DIV></DIV>
<DIV class=3Dmoduletable>
<H3>Entrevistas </H3>
<SCRIPT =
src=3D"http://www.confirmado.net/modules/mod_ja_catslwi/mod_ja_catslwi.js=
"=20
type=3Dtext/javascript></SCRIPT>

<SCRIPT type=3Dtext/javascript>
			jaSLWI.expandH =3D 120;
		</SCRIPT>

<DIV class=3Dja-catslwi=20
style=3D"BACKGROUND: =
url(http://www.confirmado.net/images/resized/images/stories/abril/agustob=
arrera.jpg) no-repeat; CURSOR: pointer; HEIGHT: 200px"=20
onclick=3D"location.href=3D'http://www.confirmado.net/index.php?option=3D=
com_content&amp;task=3Dview&amp;id=3D4268&amp;Itemid=3D65'">
<DIV class=3Dja-catslwi-container>
<P>&nbsp;</P>
<DIV class=3Dja-catslwi-text>
<DIV class=3Dja-catslwi-content id=3Dja-catslwi-textbg1=20
style=3D"HEIGHT: 120px; BACKGROUND-COLOR: #4f4f4f">
<SCRIPT type=3Dtext/javascript>
						textbg =3D document.getElementById("ja-catslwi-textbg1");
						textbg.style.opacity =3D 0.8;
						textbg.style.filter =3D 'alpha(opacity=3D80)';
					</SCRIPT>
</DIV>
<DIV class=3Dja-catslwi-display style=3D"COLOR: #ffffff; HEIGHT: 120px">
<H3>Confirmado.net dialog=F3 con Augusto Barrera, candidato a la =
Alcald=EDa de Quito=20
por Acuerdo Pa=EDs.</H3>Augusto Barrera es un personaje multifac=E9tico, =
pues se ha=20
desempe=F1ado como p...</DIV></DIV></DIV></DIV>
<DIV class=3Dja-catslwi=20
style=3D"BACKGROUND: =
url(http://www.confirmado.net/images/resized/images/stories/jalkhentrevis=
ta1.jpg) no-repeat; CURSOR: pointer; HEIGHT: 200px"=20
onclick=3D"location.href=3D'http://www.confirmado.net/index.php?option=3D=
com_content&amp;task=3Dview&amp;id=3D2874&amp;Itemid=3D65'">
<DIV class=3Dja-catslwi-container>
<P>&nbsp;</P>
<DIV class=3Dja-catslwi-text>
<DIV class=3Dja-catslwi-content id=3Dja-catslwi-textbg2=20
style=3D"HEIGHT: 120px; BACKGROUND-COLOR: #4f4f4f">
<SCRIPT type=3Dtext/javascript>
						textbg =3D document.getElementById("ja-catslwi-textbg2");
						textbg.style.opacity =3D 0.8;
						textbg.style.filter =3D 'alpha(opacity=3D80)';
					</SCRIPT>
</DIV>
<DIV class=3Dja-catslwi-display style=3D"COLOR: #ffffff; HEIGHT: 120px">
<H3>Entrevista a ex Ministro de Justicia del Ecuador</H3>Confirmado.net =
planteo=20
una serie de inquietudes al ex Ministro de justicia, Gustavo=20
Jalkh,...</DIV></DIV></DIV></DIV></DIV></DIV></DIV>
<DIV id=3Dja-col2>
<DIV class=3Dja-innerpad>
<DIV class=3Dmoduletable>
<SCRIPT language=3Djavascript type=3Dtext/javascript>
function iFrameHeightX( iFrameId ) {
	var h =3D 0;
	if ( !document.all ) {
		h =3D document.getElementById(iFrameId).contentDocument.height;
		document.getElementById(iFrameId).style.height =3D h + 60 + 'px';
	} else if( document.all ) {
		h =3D document.frames(iFrameId).document.body.scrollHeight;
		document.all[iFrameId].style.height =3D h + 20 + 'px';
	}
}
</SCRIPT>
<IFRAME class=3Dwrapper id=3Dblockrandom0 align=3Dtop=20
src=3D"http://partner.dw-world.de/syndication/feeds/TB_confirmado_ecu.285=
8-box.html"=20
frameBorder=3D0 width=3D"100%" scrolling=3Dno =
onload=3D"iFrameHeightX('blockrandom0')"=20
height=3D800>
Esta opci=F3n no trabajar=E1 correctamente. Su navegador no soporta =
IFRAMES.</IFRAME></DIV></DIV></DIV></DIV></DIV><BR><!-- END: COLUMNS =
--></DIV></DIV></DIV><!-- BEGIN: FOOTER -->
<DIV class=3Dclearfix id=3Dja-footerwrap>
<DIV id=3Dja-footer>
<UL id=3Dmainlevel-nav>
  <LI><A class=3Dmainlevel-nav=20
  =
href=3D"http://www.confirmado.net/index.php?option=3Dcom_contact&amp;Item=
id=3D3">Contactar</A>
  <LI><A class=3Dmainlevel-nav=20
  =
href=3D"http://www.confirmado.net/index.php">Inicio</A></LI></UL><SMALL>C=
opyright=20
=A9 2005 - 2009 .:: Confirmado.net ::.. Designed by <A title=3D"Visit =
Joomlart.com!"=20
href=3D"http://www.joomlart.com/" =
target=3Dblank>JoomlArt.com</A></SMALL> <BR><!-- <a =
href=3D"http://www.joomla.org">Joomla!</a> es Software Libre distribuido =
bajo licencia GNU/GPL.  --></DIV></DIV><!-- END: FOOTER --></DIV>
<DIV align=3Dcenter><!-- Start of StatCounter Code -->
<SCRIPT type=3Dtext/javascript>

sc_project=3D2065915;

sc_invisible=3D0;

sc_partition=3D19;

sc_security=3D"25746a52";

</SCRIPT>

<SCRIPT src=3D"http://www.statcounter.com/counter/counter.js"=20
type=3Dtext/javascript></SCRIPT>
<NOSCRIPT>
<DIV class=3Dstatcounter><A title=3D"hits counter"=20
href=3D"http://www.statcounter.com/free_hit_counter.html" =
target=3D_blank><IMG=20
class=3Dstatcounter alt=3D"hits counter"=20
src=3D"http://c20.statcounter.com/2065915/0/25746a52/0/"></A></DIV></NOSC=
RIPT><!-- End of StatCounter Code --></DIV><!-- PageEar function call =
-->
<SCRIPT type=3Dtext/javascript>   =20
    writeObjects();
</SCRIPT>
<!-- 1240357049 --></BODY></HTML>

------=_NextPart_001_0041_01C9C2B0.3B594AB0
Content-Type: text/html;
	charset="utf-8"
Content-Transfer-Encoding: quoted-printable
Content-Location: http://partner.dw-world.de/syndication/feeds/TB_confirmado_ecu.2858-box.html

=EF=BB=BF<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; charset=3Dutf-8">
<META content=3D"MSHTML 6.00.6000.16762" name=3DGENERATOR></HEAD>
<BODY>
<TABLE cellSpacing=3D0 cellPadding=3D0 width=3D180 bgColor=3D#000000 =
border=3D0>
  <TBODY>
  <TR>
    <TD width=3D1 colSpan=3D3 height=3D1></TD></TR><!--=0A=
								--><!-- =0A=
	 =0A=
	 -->
  <TR>
    <TD width=3D1 height=3D28><IMG height=3D28 alt=3D""=20
      src=3D"http://partner.dw-world.de/syndication/media/tr.gif" =
width=3D1><BR></TD>
    <TD vAlign=3Dcenter align=3Dmiddle bgColor=3D#ffffff><A=20
      =
href=3D"http://www.dw-world.de/spanish?maca=3Dspa-TB_confirmado_ecu-2858-=
html-box"=20
      target=3D_dw><IMG height=3D35 alt=3DDW-WORLD.DE=20
      src=3D"http://partner.dw-world.de/syndication/media/logo_m.gif" =
width=3D135=20
      border=3D0><BR></A></TD>
    <TD width=3D1 height=3D28><IMG height=3D28 alt=3D""=20
      src=3D"http://partner.dw-world.de/syndication/media/tr.gif"=20
  width=3D1><BR></TD></TR>
  <TR>
    <TD colSpan=3D3 height=3D1></TD></TR><!--  =0A=
		-->
  <TR>
    <TD width=3D1><IMG height=3D1 alt=3D""=20
      src=3D"http://partner.dw-world.de/syndication/media/tr.gif" =
width=3D1><BR></TD>
    <TD=20
    style=3D"PADDING-RIGHT: 5px; PADDING-LEFT: 5px; COLOR: #000000; =
TEXT-ALIGN: left"=20
    vAlign=3Dtop bgColor=3D#ffffff>
      <DIV=20
      style=3D"FONT-SIZE: 10px; PADDING-TOP: 5px; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif">Internacional</DIV>
      <DIV style=3D"PADDING-LEFT: 5px"><A=20
      style=3D"FONT-SIZE: 11px; COLOR: #cc6600; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif; TEXT-DECORATION: none"=20
      =
href=3D"http://www.dw-world.de/dw/article/0,,4188408,00.html?maca=3Dspa-T=
B_confirmado_ecu-2858-html-box"=20
      target=3D_dw><IMG height=3D11=20
      src=3D"http://partner.dw-world.de/syndication/media/pfeil.gif" =
width=3D11=20
      border=3D0>Estados Unidos busca un nuevo comienzo con =
Cuba</A><BR></DIV>
      <DIV=20
      style=3D"FONT-SIZE: 10px; PADDING-TOP: 5px; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif">Econom=C3=ADa</DIV>
      <DIV style=3D"PADDING-LEFT: 5px"><A=20
      style=3D"FONT-SIZE: 11px; COLOR: #cc6600; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif; TEXT-DECORATION: none"=20
      =
href=3D"http://www.dw-world.de/dw/article/0,,4195916,00.html?maca=3Dspa-T=
B_confirmado_ecu-2858-html-box"=20
      target=3D_dw><IMG height=3D11=20
      src=3D"http://partner.dw-world.de/syndication/media/pfeil.gif" =
width=3D11=20
      border=3D0>Alemania busca salir de sus =E2=80=9Cpapeles =
basura=E2=80=9D</A><BR></DIV>
      <DIV=20
      style=3D"FONT-SIZE: 10px; PADDING-TOP: 5px; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif">Econom=C3=ADa</DIV>
      <DIV style=3D"PADDING-LEFT: 5px"><A=20
      style=3D"FONT-SIZE: 11px; COLOR: #cc6600; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif; TEXT-DECORATION: none"=20
      =
href=3D"http://www.dw-world.de/dw/article/0,,4193342,00.html?maca=3Dspa-T=
B_confirmado_ecu-2858-html-box"=20
      target=3D_dw><IMG height=3D11=20
      src=3D"http://partner.dw-world.de/syndication/media/pfeil.gif" =
width=3D11=20
      border=3D0>Optimismo contra la crisis</A><BR></DIV>
      <DIV=20
      style=3D"FONT-SIZE: 10px; PADDING-TOP: 5px; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif">F=C3=BAtbol=20
      alem=C3=A1n</DIV>
      <DIV style=3D"PADDING-LEFT: 5px"><A=20
      style=3D"FONT-SIZE: 11px; COLOR: #cc6600; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif; TEXT-DECORATION: none"=20
      =
href=3D"http://www.dw-world.de/dw/article/0,,4195620,00.html?maca=3Dspa-T=
B_confirmado_ecu-2858-html-box"=20
      target=3D_dw><IMG height=3D11=20
      src=3D"http://partner.dw-world.de/syndication/media/pfeil.gif" =
width=3D11=20
      border=3D0>Hamburgo-Bremen: cuatro partidos en tres =
semanas</A><BR></DIV>
      <DIV=20
      style=3D"FONT-SIZE: 10px; PADDING-TOP: 5px; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif">Internacional</DIV>
      <DIV style=3D"PADDING-LEFT: 5px"><A=20
      style=3D"FONT-SIZE: 11px; COLOR: #cc6600; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif; TEXT-DECORATION: none"=20
      =
href=3D"http://www.dw-world.de/dw/article/0,,4183039,00.html?maca=3Dspa-T=
B_confirmado_ecu-2858-html-box"=20
      target=3D_dw><IMG height=3D11=20
      src=3D"http://partner.dw-world.de/syndication/media/pfeil.gif" =
width=3D11=20
      border=3D0>Cumbre de las Am=C3=A9ricas: esperando a =
Obama</A><BR></DIV>
      <DIV=20
      style=3D"FONT-SIZE: 10px; PADDING-TOP: 5px; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif">Internacional</DIV>
      <DIV style=3D"PADDING-LEFT: 5px"><A=20
      style=3D"FONT-SIZE: 11px; COLOR: #cc6600; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif; TEXT-DECORATION: none"=20
      =
href=3D"http://www.dw-world.de/dw/article/0,,4181172,00.html?maca=3Dspa-T=
B_confirmado_ecu-2858-html-box"=20
      target=3D_dw><IMG height=3D11=20
      src=3D"http://partner.dw-world.de/syndication/media/pfeil.gif" =
width=3D11=20
      border=3D0>Hechos, cifras y trasfondo de relaciones comerciales =
entre UE y=20
      Am=C3=A9rica Latina</A><BR></DIV>
      <DIV=20
      style=3D"FONT-SIZE: 10px; PADDING-TOP: 5px; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif">Internacional</DIV>
      <DIV style=3D"PADDING-LEFT: 5px"><A=20
      style=3D"FONT-SIZE: 11px; COLOR: #cc6600; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif; TEXT-DECORATION: none"=20
      =
href=3D"http://www.dw-world.de/dw/article/0,,4180471,00.html?maca=3Dspa-T=
B_confirmado_ecu-2858-html-box"=20
      target=3D_dw><IMG height=3D11=20
      src=3D"http://partner.dw-world.de/syndication/media/pfeil.gif" =
width=3D11=20
      border=3D0>Abre la edici=C3=B3n latinoamericana del Foro =
Econ=C3=B3mico=20
      Mundial</A><BR></DIV>
      <DIV=20
      style=3D"FONT-SIZE: 10px; PADDING-TOP: 5px; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif">Internacional</DIV>
      <DIV style=3D"PADDING-LEFT: 5px"><A=20
      style=3D"FONT-SIZE: 11px; COLOR: #cc6600; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif; TEXT-DECORATION: none"=20
      =
href=3D"http://www.dw-world.de/dw/article/0,,4178064,00.html?maca=3Dspa-T=
B_confirmado_ecu-2858-html-box"=20
      target=3D_dw><IMG height=3D11=20
      src=3D"http://partner.dw-world.de/syndication/media/pfeil.gif" =
width=3D11=20
      border=3D0>La integraci=C3=B3n de Am=C3=A9rica Latina en el mundo=20
      globalizado</A><BR></DIV>
      <DIV=20
      style=3D"FONT-SIZE: 10px; PADDING-TOP: 5px; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif">Internacional</DIV>
      <DIV style=3D"PADDING-LEFT: 5px"><A=20
      style=3D"FONT-SIZE: 11px; COLOR: #cc6600; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif; TEXT-DECORATION: none"=20
      =
href=3D"http://www.dw-world.de/dw/article/0,,4174067,00.html?maca=3Dspa-T=
B_confirmado_ecu-2858-html-box"=20
      target=3D_dw><IMG height=3D11=20
      src=3D"http://partner.dw-world.de/syndication/media/pfeil.gif" =
width=3D11=20
      border=3D0>R=C3=ADo de Janeiro: el Davos de =
Latinoam=C3=A9rica</A><BR></DIV>
      <DIV=20
      style=3D"FONT-SIZE: 10px; PADDING-TOP: 5px; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif">Internacional</DIV>
      <DIV style=3D"PADDING-LEFT: 5px"><A=20
      style=3D"FONT-SIZE: 11px; COLOR: #cc6600; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif; TEXT-DECORATION: none"=20
      =
href=3D"http://www.dw-world.de/dw/article/0,,4167229,00.html?maca=3Dspa-T=
B_confirmado_ecu-2858-html-box"=20
      target=3D_dw><IMG height=3D11=20
      src=3D"http://partner.dw-world.de/syndication/media/pfeil.gif" =
width=3D11=20
      border=3D0>Cuba - Estados Unidos: =C2=BFsigiloso =
acercamiento?</A><BR></DIV>
      <DIV=20
      style=3D"FONT-SIZE: 10px; PADDING-TOP: 5px; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif">Cultura=20
      y Estilo</DIV>
      <DIV style=3D"PADDING-LEFT: 5px"><A=20
      style=3D"FONT-SIZE: 11px; COLOR: #cc6600; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif; TEXT-DECORATION: none"=20
      =
href=3D"http://www.dw-world.de/dw/article/0,,4195588,00.html?maca=3Dspa-T=
B_confirmado_ecu-2858-html-box"=20
      target=3D_dw><IMG height=3D11=20
      src=3D"http://partner.dw-world.de/syndication/media/pfeil.gif" =
width=3D11=20
      border=3D0>Cine latino en Dortmund y Colonia</A><BR></DIV>
      <DIV=20
      style=3D"FONT-SIZE: 10px; PADDING-TOP: 5px; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif">Cultura=20
      y Estilo</DIV>
      <DIV style=3D"PADDING-LEFT: 5px"><A=20
      style=3D"FONT-SIZE: 11px; COLOR: #cc6600; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif; TEXT-DECORATION: none"=20
      =
href=3D"http://www.dw-world.de/dw/article/0,,4194623,00.html?maca=3Dspa-T=
B_confirmado_ecu-2858-html-box"=20
      target=3D_dw><IMG height=3D11=20
      src=3D"http://partner.dw-world.de/syndication/media/pfeil.gif" =
width=3D11=20
      border=3D0>Prensa digital destacada en Premios Pulitzer =
2009</A><BR></DIV>
      <DIV=20
      style=3D"FONT-SIZE: 10px; PADDING-TOP: 5px; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif">Alemania</DIV>
      <DIV style=3D"PADDING-LEFT: 5px"><A=20
      style=3D"FONT-SIZE: 11px; COLOR: #cc6600; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif; TEXT-DECORATION: none"=20
      =
href=3D"http://www.dw-world.de/dw/article/0,,3918103,00.html?maca=3Dspa-T=
B_confirmado_ecu-2858-html-box"=20
      target=3D_dw><IMG height=3D11=20
      src=3D"http://partner.dw-world.de/syndication/media/pfeil.gif" =
width=3D11=20
      border=3D0>Schumi cumple 40</A><BR></DIV>
      <DIV=20
      style=3D"FONT-SIZE: 10px; PADDING-TOP: 5px; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif">Alemania</DIV>
      <DIV style=3D"PADDING-LEFT: 5px"><A=20
      style=3D"FONT-SIZE: 11px; COLOR: #cc6600; FONT-FAMILY: =
Verdana,Arial,Helvetica,sans-serif; TEXT-DECORATION: none"=20
      =
href=3D"http://www.dw-world.de/dw/article/0,,3908999,00.html?maca=3Dspa-T=
B_confirmado_ecu-2858-html-box"=20
      target=3D_dw><IMG height=3D11=20
      src=3D"http://partner.dw-world.de/syndication/media/pfeil.gif" =
width=3D11=20
      border=3D0>Alemania declara la guerra al =
dopaje</A><BR></DIV><BR></TD>
    <TD width=3D1 height=3D50><IMG height=3D50 alt=3D""=20
      src=3D"http://partner.dw-world.de/syndication/media/tr.gif"=20
  width=3D1><BR></TD></TR><!-- =0A=
		-->
  <TR>
    <TD colSpan=3D3 height=3D1></TD></TR><!--=0A=
				--><!--=0A=
		 =0A=
		-->
  <TR>
    <TD width=3D1 height=3D26><IMG height=3D26 alt=3D""=20
      src=3D"http://partner.dw-world.de/syndication/media/tr.gif" =
width=3D1><BR></TD>
    <TD style=3D"TEXT-ALIGN: left" vAlign=3Dcenter =
bgColor=3D#ffffff><IMG height=3D26=20
      alt=3D"" =
src=3D"http://partner.dw-world.de/syndication/media/tvradio_m.gif"=20
      width=3D135 useMap=3D#m_tvradio_m border=3D0><BR><MAP =
name=3Dm_tvradio_m><AREA=20
        =
onclick=3D"javascript:window.open('http://www.dw-world.de/popups/popup_li=
vestream/0,,1941_type_livevideo_struct_653,00.html?maca=3Dspa-TB_confirma=
do_ecu-2858-html-box','_audio','width=3D550,height=3D680')"=20
        shape=3DRECT target=3D_audio alt=3D"DW-TV Live" =
coords=3D0,0,135,13=20
        =
href=3D"http://www.dw-world.de/popups/popup_livestream/0,,1941_type_livev=
ideo_struct_653,00.html?maca=3Dspa-TB_confirmado_ecu-2858-html-box"><AREA=
=20
        =
onclick=3D"javascript:window.open('http://www.dw-world.de/popups/popup_li=
vestream/0,,4047_type_liveaudio_struct_653,00.html?maca=3Dspa-TB_confirma=
do_ecu-2858-html-box','_video','width=3D550,height=3D615')"=20
        shape=3DRECT target=3D_video alt=3D"DW-Radio Live" =
coords=3D0,14,135,26=20
        =
href=3D"http://www.dw-world.de/popups/popup_livestream/0,,4047_type_livea=
udio_struct_653,00.html?maca=3Dspa-TB_confirmado_ecu-2858-html-box"></MAP=
></TD>
    <TD width=3D1 height=3D26><IMG height=3D26 alt=3D""=20
      src=3D"http://partner.dw-world.de/syndication/media/tr.gif"=20
  width=3D1><BR></TD></TR><!--	=0A=
				--><!--	=0A=
				--><!--=0A=
		-->
  <TR>
    <TD colSpan=3D3 height=3D1></TD></TR></TBODY></TABLE></BODY></HTML>

------=_NextPart_001_0041_01C9C2B0.3B594AB0--

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.google-analytics.com/urchin.js

//-- Google Analytics Urchin Module=0A=
//-- Copyright 2007 Google, All Rights Reserved.=0A=
=0A=
//-- Urchin On Demand Settings ONLY=0A=
var _uacct=3D"";			// set up the Urchin Account=0A=
var _userv=3D1;			// service mode (0=3Dlocal,1=3Dremote,2=3Dboth)=0A=
=0A=
//-- UTM User Settings=0A=
var _ufsc=3D1;			// set client info flag (1=3Don|0=3Doff)=0A=
var _udn=3D"auto";		// (auto|none|domain) set the domain name for cookies=0A=
var _uhash=3D"on";		// (on|off) unique domain hash for cookies=0A=
var _utimeout=3D"1800";   	// set the inactive session timeout in seconds=0A=
var _ugifpath=3D"/__utm.gif";	// set the web path to the __utm.gif file=0A=
var _utsp=3D"|";			// transaction field separator=0A=
var _uflash=3D1;			// set flash version detect option (1=3Don|0=3Doff)=0A=
var _utitle=3D1;			// set the document title detect option =
(1=3Don|0=3Doff)=0A=
var _ulink=3D0;			// enable linker functionality (1=3Don|0=3Doff)=0A=
var _uanchor=3D0;			// enable use of anchors for campaign =
(1=3Don|0=3Doff)=0A=
var _utcp=3D"/";			// the cookie path for tracking=0A=
var _usample=3D100;		// The sampling % of visitors to track (1-100).=0A=
=0A=
//-- UTM Campaign Tracking Settings=0A=
var _uctm=3D1;			// set campaign tracking module (1=3Don|0=3Doff)=0A=
var _ucto=3D"15768000";		// set timeout in seconds (6 month default)=0A=
var _uccn=3D"utm_campaign";	// name=0A=
var _ucmd=3D"utm_medium";		// medium (cpc|cpm|link|email|organic)=0A=
var _ucsr=3D"utm_source";		// source=0A=
var _uctr=3D"utm_term";		// term/keyword=0A=
var _ucct=3D"utm_content";	// content=0A=
var _ucid=3D"utm_id";		// id number=0A=
var _ucno=3D"utm_nooverride";	// don't override=0A=
=0A=
//-- Auto/Organic Sources and Keywords=0A=
var _uOsr=3Dnew Array();=0A=
var _uOkw=3Dnew Array();=0A=
_uOsr[0]=3D"google";	_uOkw[0]=3D"q";=0A=
_uOsr[1]=3D"yahoo";	_uOkw[1]=3D"p";=0A=
_uOsr[2]=3D"msn";		_uOkw[2]=3D"q";=0A=
_uOsr[3]=3D"aol";		_uOkw[3]=3D"query";=0A=
_uOsr[4]=3D"aol";		_uOkw[4]=3D"encquery";=0A=
_uOsr[5]=3D"lycos";	_uOkw[5]=3D"query";=0A=
_uOsr[6]=3D"ask";		_uOkw[6]=3D"q";=0A=
_uOsr[7]=3D"altavista";	_uOkw[7]=3D"q";=0A=
_uOsr[8]=3D"netscape";	_uOkw[8]=3D"query";=0A=
_uOsr[9]=3D"cnn";	_uOkw[9]=3D"query";=0A=
_uOsr[10]=3D"looksmart";	_uOkw[10]=3D"qt";=0A=
_uOsr[11]=3D"about";	_uOkw[11]=3D"terms";=0A=
_uOsr[12]=3D"mamma";	_uOkw[12]=3D"query";=0A=
_uOsr[13]=3D"alltheweb";	_uOkw[13]=3D"q";=0A=
_uOsr[14]=3D"gigablast";	_uOkw[14]=3D"q";=0A=
_uOsr[15]=3D"voila";	_uOkw[15]=3D"rdata";=0A=
_uOsr[16]=3D"virgilio";	_uOkw[16]=3D"qs";=0A=
_uOsr[17]=3D"live";	_uOkw[17]=3D"q";=0A=
_uOsr[18]=3D"baidu";	_uOkw[18]=3D"wd";=0A=
_uOsr[19]=3D"alice";	_uOkw[19]=3D"qs";=0A=
_uOsr[20]=3D"yandex";	_uOkw[20]=3D"text";=0A=
_uOsr[21]=3D"najdi";	_uOkw[21]=3D"q";=0A=
_uOsr[22]=3D"aol";	_uOkw[22]=3D"q";=0A=
_uOsr[23]=3D"club-internet"; _uOkw[23]=3D"query";=0A=
_uOsr[24]=3D"mama";	_uOkw[24]=3D"query";=0A=
_uOsr[25]=3D"seznam";	_uOkw[25]=3D"q";=0A=
_uOsr[26]=3D"search";	_uOkw[26]=3D"q";=0A=
_uOsr[27]=3D"wp";	_uOkw[27]=3D"szukaj";=0A=
_uOsr[28]=3D"onet";	_uOkw[28]=3D"qt";=0A=
_uOsr[29]=3D"netsprint";	_uOkw[29]=3D"q";=0A=
_uOsr[30]=3D"google.interia";	_uOkw[30]=3D"q";=0A=
_uOsr[31]=3D"szukacz";	_uOkw[31]=3D"q";=0A=
_uOsr[32]=3D"yam";	_uOkw[32]=3D"k";=0A=
_uOsr[33]=3D"pchome";	_uOkw[33]=3D"q";=0A=
_uOsr[34]=3D"kvasir";	_uOkw[34]=3D"searchExpr";=0A=
_uOsr[35]=3D"sesam";	_uOkw[35]=3D"q";=0A=
_uOsr[36]=3D"ozu"; _uOkw[36]=3D"q";=0A=
_uOsr[37]=3D"terra"; _uOkw[37]=3D"query";=0A=
_uOsr[38]=3D"nostrum"; _uOkw[38]=3D"query";=0A=
_uOsr[39]=3D"mynet"; _uOkw[39]=3D"q";=0A=
_uOsr[40]=3D"ekolay"; _uOkw[40]=3D"q";=0A=
_uOsr[41]=3D"search.ilse"; _uOkw[41]=3D"search_for";=0A=
=0A=
//-- Auto/Organic Keywords to Ignore=0A=
var _uOno=3Dnew Array();=0A=
//_uOno[0]=3D"urchin";=0A=
//_uOno[1]=3D"urchin.com";=0A=
//_uOno[2]=3D"www.urchin.com";=0A=
=0A=
//-- Referral domains to Ignore=0A=
var _uRno=3Dnew Array();=0A=
//_uRno[0]=3D".urchin.com";=0A=
=0A=
//-- **** Don't modify below this point ***=0A=
var =
_uff,_udh,_udt,_ubl=3D0,_udo=3D"",_uu,_ufns=3D0,_uns=3D0,_ur=3D"-",_ufno=3D=
0,_ust=3D0,_ubd=3Ddocument,_udl=3D_ubd.location,_udlh=3D"",_uwv=3D"1.3";=0A=
var _ugifpath2=3D"http://www.google-analytics.com/__utm.gif";=0A=
if (_udl.hash) _udlh=3D_udl.href.substring(_udl.href.indexOf('#'));=0A=
if (_udl.protocol=3D=3D"https:") =
_ugifpath2=3D"https://ssl.google-analytics.com/__utm.gif";=0A=
if (!_utcp || _utcp=3D=3D"") _utcp=3D"/";=0A=
function urchinTracker(page) {=0A=
 if (_udl.protocol=3D=3D"file:") return;=0A=
 if (_uff && (!page || page=3D=3D"")) return;=0A=
 var a,b,c,xx,v,z,k,x=3D"",s=3D"",f=3D0,nv=3D0;=0A=
 var nx=3D" expires=3D"+_uNx()+";";=0A=
 var dc=3D_ubd.cookie;=0A=
 _udh=3D_uDomain();=0A=
 if (!_uVG()) return;=0A=
 _uu=3DMath.round(Math.random()*2147483647);=0A=
 _udt=3Dnew Date();=0A=
 _ust=3DMath.round(_udt.getTime()/1000);=0A=
 a=3Ddc.indexOf("__utma=3D"+_udh+".");=0A=
 b=3Ddc.indexOf("__utmb=3D"+_udh);=0A=
 c=3Ddc.indexOf("__utmc=3D"+_udh);=0A=
 if (_udn && _udn!=3D"") { _udo=3D" domain=3D"+_udn+";"; }=0A=
 if (_utimeout && _utimeout!=3D"") {=0A=
  x=3Dnew Date(_udt.getTime()+(_utimeout*1000));=0A=
  x=3D" expires=3D"+x.toGMTString()+";";=0A=
 }=0A=
 if (_ulink) {=0A=
  if (_uanchor && _udlh && _udlh!=3D"") s=3D_udlh+"&";=0A=
  s+=3D_udl.search;=0A=
  if(s && s!=3D"" && s.indexOf("__utma=3D")>=3D0) {=0A=
   if (!(_uIN(a=3D_uGC(s,"__utma=3D","&")))) a=3D"-";=0A=
   if (!(_uIN(b=3D_uGC(s,"__utmb=3D","&")))) b=3D"-";=0A=
   if (!(_uIN(c=3D_uGC(s,"__utmc=3D","&")))) c=3D"-";=0A=
   v=3D_uGC(s,"__utmv=3D","&");=0A=
   z=3D_uGC(s,"__utmz=3D","&");=0A=
   k=3D_uGC(s,"__utmk=3D","&");=0A=
   xx=3D_uGC(s,"__utmx=3D","&");=0A=
   if ((k*1) !=3D ((_uHash(a+b+c+xx+z+v)*1)+(_udh*1))) =
{_ubl=3D1;a=3D"-";b=3D"-";c=3D"-";xx=3D"-";z=3D"-";v=3D"-";}=0A=
   if (a!=3D"-" && b!=3D"-" && c!=3D"-") f=3D1;=0A=
   else if(a!=3D"-") f=3D2;=0A=
  }=0A=
 }=0A=
 if(f=3D=3D1) {=0A=
  _ubd.cookie=3D"__utma=3D"+a+"; path=3D"+_utcp+";"+nx+_udo;=0A=
  _ubd.cookie=3D"__utmb=3D"+b+"; path=3D"+_utcp+";"+x+_udo;=0A=
  _ubd.cookie=3D"__utmc=3D"+c+"; path=3D"+_utcp+";"+_udo;=0A=
 } else if (f=3D=3D2) {=0A=
  a=3D_uFixA(s,"&",_ust);=0A=
  _ubd.cookie=3D"__utma=3D"+a+"; path=3D"+_utcp+";"+nx+_udo;=0A=
  _ubd.cookie=3D"__utmb=3D"+_udh+"; path=3D"+_utcp+";"+x+_udo;=0A=
  _ubd.cookie=3D"__utmc=3D"+_udh+"; path=3D"+_utcp+";"+_udo;=0A=
  _ufns=3D1;=0A=
 } else if (a>=3D0 && b>=3D0 && c>=3D0) {=0A=
   b =3D _uGC(dc,"__utmb=3D"+_udh,";");=0A=
   b =3D ("-" =3D=3D b) ? _udh : b;  =0A=
  _ubd.cookie=3D"__utmb=3D"+b+"; path=3D"+_utcp+";"+x+_udo;=0A=
 } else {=0A=
  if (a>=3D0) a=3D_uFixA(_ubd.cookie,";",_ust);=0A=
  else {=0A=
   a=3D_udh+"."+_uu+"."+_ust+"."+_ust+"."+_ust+".1";=0A=
   nv=3D1;=0A=
  }=0A=
  _ubd.cookie=3D"__utma=3D"+a+"; path=3D"+_utcp+";"+nx+_udo;=0A=
  _ubd.cookie=3D"__utmb=3D"+_udh+"; path=3D"+_utcp+";"+x+_udo;=0A=
  _ubd.cookie=3D"__utmc=3D"+_udh+"; path=3D"+_utcp+";"+_udo;=0A=
  _ufns=3D1;=0A=
 }=0A=
 if (_ulink && xx && xx!=3D"" && xx!=3D"-") {=0A=
   xx=3D_uUES(xx);=0A=
   if (xx.indexOf(";")=3D=3D-1) _ubd.cookie=3D"__utmx=3D"+xx+"; =
path=3D"+_utcp+";"+nx+_udo;=0A=
 }=0A=
 if (_ulink && v && v!=3D"" && v!=3D"-") {=0A=
  v=3D_uUES(v);=0A=
  if (v.indexOf(";")=3D=3D-1) _ubd.cookie=3D"__utmv=3D"+v+"; =
path=3D"+_utcp+";"+nx+_udo;=0A=
 }=0A=
 var wc=3Dwindow;=0A=
 var c=3D_ubd.cookie;=0A=
 if(wc && wc.gaGlobal && wc.gaGlobal.dh=3D=3D_udh){=0A=
  var g=3Dwc.gaGlobal;=0A=
  var ua=3Dc.split("__utma=3D"+_udh+".")[1].split(";")[0].split(".");=0A=
  if(g.sid)ua[3]=3Dg.sid;=0A=
  if(nv>0){=0A=
   ua[2]=3Dua[3];=0A=
   if(g.vid){=0A=
    var v=3Dg.vid.split(".");=0A=
    ua[0]=3Dv[0];=0A=
    ua[1]=3Dv[1];=0A=
   }=0A=
  }=0A=
  _ubd.cookie=3D"__utma=3D"+_udh+"."+ua.join(".")+"; =
path=3D"+_utcp+";"+nx+_udo;=0A=
 }=0A=
 _uInfo(page);=0A=
 _ufns=3D0;=0A=
 _ufno=3D0;=0A=
 if (!page || page=3D=3D"") _uff=3D1;=0A=
}=0A=
function _uGH() {=0A=
 var hid;=0A=
 var wc=3Dwindow;=0A=
 if (wc && wc.gaGlobal && wc.gaGlobal.hid) {=0A=
  hid=3Dwc.gaGlobal.hid;=0A=
 } else {=0A=
  hid=3DMath.round(Math.random()*0x7fffffff);=0A=
  if (!wc.gaGlobal) wc.gaGlobal=3D{};=0A=
  wc.gaGlobal.hid=3Dhid;=0A=
 }=0A=
 return hid;=0A=
}=0A=
function _uInfo(page) {=0A=
 var p,s=3D"",dm=3D"",pg=3D_udl.pathname+_udl.search;=0A=
 if (page && page!=3D"") pg=3D_uES(page,1);=0A=
 _ur=3D_ubd.referrer;=0A=
 if (!_ur || _ur=3D=3D"") { _ur=3D"-"; }=0A=
 else {=0A=
  dm=3D_ubd.domain;=0A=
  if(_utcp && _utcp!=3D"/") dm+=3D_utcp;=0A=
  p=3D_ur.indexOf(dm);=0A=
  if ((p>=3D0) && (p<=3D8)) { _ur=3D"0"; }=0A=
  if (_ur.indexOf("[")=3D=3D0 && =
_ur.lastIndexOf("]")=3D=3D(_ur.length-1)) { _ur=3D"-"; }=0A=
 }=0A=
 s+=3D"&utmn=3D"+_uu;=0A=
 if (_ufsc) s+=3D_uBInfo();=0A=
 if (_uctm) s+=3D_uCInfo();=0A=
 if (_utitle && _ubd.title && _ubd.title!=3D"") =
s+=3D"&utmdt=3D"+_uES(_ubd.title);=0A=
 if (_udl.hostname && _udl.hostname!=3D"") =
s+=3D"&utmhn=3D"+_uES(_udl.hostname);=0A=
 if (_usample && _usample !=3D 100) s+=3D"&utmsp=3D"+_uES(_usample);=0A=
 s+=3D"&utmhid=3D"+_uGH();=0A=
 s+=3D"&utmr=3D"+_ur;=0A=
 s+=3D"&utmp=3D"+pg;=0A=
 if ((_userv=3D=3D0 || _userv=3D=3D2) && _uSP()) {=0A=
  var i=3Dnew Image(1,1);=0A=
  i.src=3D_ugifpath+"?"+"utmwv=3D"+_uwv+s;=0A=
  i.onload=3Dfunction() { _uVoid(); }=0A=
 }=0A=
 if ((_userv=3D=3D1 || _userv=3D=3D2) && _uSP()) {=0A=
  var i2=3Dnew Image(1,1);=0A=
  =
i2.src=3D_ugifpath2+"?"+"utmwv=3D"+_uwv+s+"&utmac=3D"+_uacct+"&utmcc=3D"+=
_uGCS();=0A=
  i2.onload=3Dfunction() { _uVoid(); }=0A=
 }=0A=
 return;=0A=
}=0A=
function _uVoid() { return; }=0A=
function _uCInfo() {=0A=
 if (!_ucto || _ucto=3D=3D"") { _ucto=3D"15768000"; }=0A=
 if (!_uVG()) return;=0A=
 var =
c=3D"",t=3D"-",t2=3D"-",t3=3D"-",o=3D0,cs=3D0,cn=3D0,i=3D0,z=3D"-",s=3D""=
;=0A=
 if (_uanchor && _udlh && _udlh!=3D"") s=3D_udlh+"&";=0A=
 s+=3D_udl.search;=0A=
 var x=3Dnew Date(_udt.getTime()+(_ucto*1000));=0A=
 var dc=3D_ubd.cookie;=0A=
 x=3D" expires=3D"+x.toGMTString()+";";=0A=
 if (_ulink && !_ubl) {=0A=
  z=3D_uUES(_uGC(s,"__utmz=3D","&"));=0A=
  if (z!=3D"-" && z.indexOf(";")=3D=3D-1) { =
_ubd.cookie=3D"__utmz=3D"+z+"; path=3D"+_utcp+";"+x+_udo; return ""; }=0A=
 }=0A=
 z=3Ddc.indexOf("__utmz=3D"+_udh+".");=0A=
 if (z>-1) { z=3D_uGC(dc,"__utmz=3D"+_udh+".",";"); }=0A=
 else { z=3D"-"; }=0A=
 t=3D_uGC(s,_ucid+"=3D","&");=0A=
 t2=3D_uGC(s,_ucsr+"=3D","&");=0A=
 t3=3D_uGC(s,"gclid=3D","&");=0A=
 if ((t!=3D"-" && t!=3D"") || (t2!=3D"-" && t2!=3D"") || (t3!=3D"-" && =
t3!=3D"")) {=0A=
  if (t!=3D"-" && t!=3D"") c+=3D"utmcid=3D"+_uEC(t);=0A=
  if (t2!=3D"-" && t2!=3D"") { if (c !=3D "") c+=3D"|"; =
c+=3D"utmcsr=3D"+_uEC(t2); }=0A=
  if (t3!=3D"-" && t3!=3D"") { if (c !=3D "") c+=3D"|"; =
c+=3D"utmgclid=3D"+_uEC(t3); }=0A=
  t=3D_uGC(s,_uccn+"=3D","&");=0A=
  if (t!=3D"-" && t!=3D"") c+=3D"|utmccn=3D"+_uEC(t);=0A=
  else c+=3D"|utmccn=3D(not+set)";=0A=
  t=3D_uGC(s,_ucmd+"=3D","&");=0A=
  if (t!=3D"-" && t!=3D"") c+=3D"|utmcmd=3D"+_uEC(t);=0A=
  else  c+=3D"|utmcmd=3D(not+set)";=0A=
  t=3D_uGC(s,_uctr+"=3D","&");=0A=
  if (t!=3D"-" && t!=3D"") c+=3D"|utmctr=3D"+_uEC(t);=0A=
  else { t=3D_uOrg(1); if (t!=3D"-" && t!=3D"") =
c+=3D"|utmctr=3D"+_uEC(t); }=0A=
  t=3D_uGC(s,_ucct+"=3D","&");=0A=
  if (t!=3D"-" && t!=3D"") c+=3D"|utmcct=3D"+_uEC(t);=0A=
  t=3D_uGC(s,_ucno+"=3D","&");=0A=
  if (t=3D=3D"1") o=3D1;=0A=
  if (z!=3D"-" && o=3D=3D1) return "";=0A=
 }=0A=
 if (c=3D=3D"-" || c=3D=3D"") { c=3D_uOrg(); if (z!=3D"-" && =
_ufno=3D=3D1)  return ""; }=0A=
 if (c=3D=3D"-" || c=3D=3D"") { if (_ufns=3D=3D1)  c=3D_uRef(); if =
(z!=3D"-" && _ufno=3D=3D1)  return ""; }=0A=
 if (c=3D=3D"-" || c=3D=3D"") {=0A=
  if (z=3D=3D"-" && _ufns=3D=3D1) { =
c=3D"utmccn=3D(direct)|utmcsr=3D(direct)|utmcmd=3D(none)"; }=0A=
  if (c=3D=3D"-" || c=3D=3D"") return "";=0A=
 }=0A=
 if (z!=3D"-") {=0A=
  i=3Dz.indexOf(".");=0A=
  if (i>-1) i=3Dz.indexOf(".",i+1);=0A=
  if (i>-1) i=3Dz.indexOf(".",i+1);=0A=
  if (i>-1) i=3Dz.indexOf(".",i+1);=0A=
  t=3Dz.substring(i+1,z.length);=0A=
  if (t.toLowerCase()=3D=3Dc.toLowerCase()) cs=3D1;=0A=
  t=3Dz.substring(0,i);=0A=
  if ((i=3Dt.lastIndexOf(".")) > -1) {=0A=
   t=3Dt.substring(i+1,t.length);=0A=
   cn=3D(t*1);=0A=
  }=0A=
 }=0A=
 if (cs=3D=3D0 || _ufns=3D=3D1) {=0A=
  t=3D_uGC(dc,"__utma=3D"+_udh+".",";");=0A=
  if ((i=3Dt.lastIndexOf(".")) > 9) {=0A=
   _uns=3Dt.substring(i+1,t.length);=0A=
   _uns=3D(_uns*1);=0A=
  }=0A=
  cn++;=0A=
  if (_uns=3D=3D0) _uns=3D1;=0A=
  _ubd.cookie=3D"__utmz=3D"+_udh+"."+_ust+"."+_uns+"."+cn+"."+c+"; =
path=3D"+_utcp+"; "+x+_udo;=0A=
 }=0A=
 if (cs=3D=3D0 || _ufns=3D=3D1) return "&utmcn=3D1";=0A=
 else return "&utmcr=3D1";=0A=
}=0A=
function _uRef() {=0A=
 if (_ur=3D=3D"0" || _ur=3D=3D"" || _ur=3D=3D"-") return "";=0A=
 var i=3D0,h,k,n;=0A=
 if ((i=3D_ur.indexOf("://"))<0 || _uGCse()) return "";=0A=
 h=3D_ur.substring(i+3,_ur.length);=0A=
 if (h.indexOf("/") > -1) {=0A=
  k=3Dh.substring(h.indexOf("/"),h.length);=0A=
  if (k.indexOf("?") > -1) k=3Dk.substring(0,k.indexOf("?"));=0A=
  h=3Dh.substring(0,h.indexOf("/"));=0A=
 }=0A=
 h=3Dh.toLowerCase();=0A=
 n=3Dh;=0A=
 if ((i=3Dn.indexOf(":")) > -1) n=3Dn.substring(0,i);=0A=
 for (var ii=3D0;ii<_uRno.length;ii++) {=0A=
  if ((i=3Dn.indexOf(_uRno[ii].toLowerCase())) > -1 && =
n.length=3D=3D(i+_uRno[ii].length)) { _ufno=3D1; break; }=0A=
 }=0A=
 if (h.indexOf("www.")=3D=3D0) h=3Dh.substring(4,h.length);=0A=
 return =
"utmccn=3D(referral)|utmcsr=3D"+_uEC(h)+"|"+"utmcct=3D"+_uEC(k)+"|utmcmd=3D=
referral";=0A=
}=0A=
function _uOrg(t) {=0A=
 if (_ur=3D=3D"0" || _ur=3D=3D"" || _ur=3D=3D"-") return "";=0A=
 var i=3D0,h,k;=0A=
 if ((i=3D_ur.indexOf("://"))<0 || _uGCse()) return "";=0A=
 h=3D_ur.substring(i+3,_ur.length);=0A=
 if (h.indexOf("/") > -1) {=0A=
  h=3Dh.substring(0,h.indexOf("/"));=0A=
 }=0A=
 for (var ii=3D0;ii<_uOsr.length;ii++) {=0A=
  if (h.toLowerCase().indexOf(_uOsr[ii].toLowerCase()) > -1) {=0A=
   if ((i=3D_ur.indexOf("?"+_uOkw[ii]+"=3D")) > -1 || =
(i=3D_ur.indexOf("&"+_uOkw[ii]+"=3D")) > -1) {=0A=
    k=3D_ur.substring(i+_uOkw[ii].length+2,_ur.length);=0A=
    if ((i=3Dk.indexOf("&")) > -1) k=3Dk.substring(0,i);=0A=
    for (var yy=3D0;yy<_uOno.length;yy++) {=0A=
     if (_uOno[yy].toLowerCase()=3D=3Dk.toLowerCase()) { _ufno=3D1; =
break; }=0A=
    }=0A=
    if (t) return _uEC(k);=0A=
    else return =
"utmccn=3D(organic)|utmcsr=3D"+_uEC(_uOsr[ii])+"|"+"utmctr=3D"+_uEC(k)+"|=
utmcmd=3Dorganic";=0A=
   }=0A=
  }=0A=
 }=0A=
 return "";=0A=
}=0A=
function _uGCse() {=0A=
 var h,p;=0A=
 h=3Dp=3D_ur.split("://")[1];=0A=
 if(h.indexOf("/")>-1) {=0A=
  h=3Dh.split("/")[0];=0A=
  p=3Dp.substring(p.indexOf("/")+1,p.length);=0A=
 }=0A=
 if(p.indexOf("?")>-1) {=0A=
  p=3Dp.split("?")[0];=0A=
 }=0A=
 if(h.toLowerCase().indexOf("google")>-1) {=0A=
  if(_ur.indexOf("?q=3D")>-1 || _ur.indexOf("&q=3D")>-1) {=0A=
   if (p.toLowerCase().indexOf("cse")>-1) {=0A=
    return true;=0A=
   }=0A=
  }=0A=
 }=0A=
}=0A=
function _uBInfo() {=0A=
 var sr=3D"-",sc=3D"-",ul=3D"-",fl=3D"-",cs=3D"-",je=3D1;=0A=
 var n=3Dnavigator;=0A=
 if (self.screen) {=0A=
  sr=3Dscreen.width+"x"+screen.height;=0A=
  sc=3Dscreen.colorDepth+"-bit";=0A=
 } else if (self.java) {=0A=
  var j=3Djava.awt.Toolkit.getDefaultToolkit();=0A=
  var s=3Dj.getScreenSize();=0A=
  sr=3Ds.width+"x"+s.height;=0A=
 }=0A=
 if (n.language) { ul=3Dn.language.toLowerCase(); }=0A=
 else if (n.browserLanguage) { ul=3Dn.browserLanguage.toLowerCase(); }=0A=
 je=3Dn.javaEnabled()?1:0;=0A=
 if (_uflash) fl=3D_uFlash();=0A=
 if (_ubd.characterSet) cs=3D_uES(_ubd.characterSet);=0A=
 else if (_ubd.charset) cs=3D_uES(_ubd.charset);=0A=
 return =
"&utmcs=3D"+cs+"&utmsr=3D"+sr+"&utmsc=3D"+sc+"&utmul=3D"+ul+"&utmje=3D"+j=
e+"&utmfl=3D"+fl;=0A=
}=0A=
function __utmSetTrans() {=0A=
 var e;=0A=
 if (_ubd.getElementById) e=3D_ubd.getElementById("utmtrans");=0A=
 else if (_ubd.utmform && _ubd.utmform.utmtrans) =
e=3D_ubd.utmform.utmtrans;=0A=
 if (!e) return;=0A=
 var l=3De.value.split("UTM:");=0A=
 var i,i2,c;=0A=
 if (_userv=3D=3D0 || _userv=3D=3D2) i=3Dnew Array();=0A=
 if (_userv=3D=3D1 || _userv=3D=3D2) { i2=3Dnew Array(); c=3D_uGCS(); }=0A=
=0A=
 for (var ii=3D0;ii<l.length;ii++) {=0A=
  l[ii]=3D_uTrim(l[ii]);=0A=
  if (l[ii].charAt(0)!=3D'T' && l[ii].charAt(0)!=3D'I') continue;=0A=
  var r=3DMath.round(Math.random()*2147483647);=0A=
  if (!_utsp || _utsp=3D=3D"") _utsp=3D"|";=0A=
  var f=3Dl[ii].split(_utsp),s=3D"";=0A=
  if (f[0].charAt(0)=3D=3D'T') {=0A=
   s=3D"&utmt=3Dtran"+"&utmn=3D"+r;=0A=
   f[1]=3D_uTrim(f[1]); if(f[1]&&f[1]!=3D"") =
s+=3D"&utmtid=3D"+_uES(f[1]);=0A=
   f[2]=3D_uTrim(f[2]); if(f[2]&&f[2]!=3D"") =
s+=3D"&utmtst=3D"+_uES(f[2]);=0A=
   f[3]=3D_uTrim(f[3]); if(f[3]&&f[3]!=3D"") =
s+=3D"&utmtto=3D"+_uES(f[3]);=0A=
   f[4]=3D_uTrim(f[4]); if(f[4]&&f[4]!=3D"") =
s+=3D"&utmttx=3D"+_uES(f[4]);=0A=
   f[5]=3D_uTrim(f[5]); if(f[5]&&f[5]!=3D"") =
s+=3D"&utmtsp=3D"+_uES(f[5]);=0A=
   f[6]=3D_uTrim(f[6]); if(f[6]&&f[6]!=3D"") =
s+=3D"&utmtci=3D"+_uES(f[6]);=0A=
   f[7]=3D_uTrim(f[7]); if(f[7]&&f[7]!=3D"") =
s+=3D"&utmtrg=3D"+_uES(f[7]);=0A=
   f[8]=3D_uTrim(f[8]); if(f[8]&&f[8]!=3D"") =
s+=3D"&utmtco=3D"+_uES(f[8]);=0A=
  } else {=0A=
   s=3D"&utmt=3Ditem"+"&utmn=3D"+r;=0A=
   f[1]=3D_uTrim(f[1]); if(f[1]&&f[1]!=3D"") =
s+=3D"&utmtid=3D"+_uES(f[1]);=0A=
   f[2]=3D_uTrim(f[2]); if(f[2]&&f[2]!=3D"") =
s+=3D"&utmipc=3D"+_uES(f[2]);=0A=
   f[3]=3D_uTrim(f[3]); if(f[3]&&f[3]!=3D"") =
s+=3D"&utmipn=3D"+_uES(f[3]);=0A=
   f[4]=3D_uTrim(f[4]); if(f[4]&&f[4]!=3D"") =
s+=3D"&utmiva=3D"+_uES(f[4]);=0A=
   f[5]=3D_uTrim(f[5]); if(f[5]&&f[5]!=3D"") =
s+=3D"&utmipr=3D"+_uES(f[5]);=0A=
   f[6]=3D_uTrim(f[6]); if(f[6]&&f[6]!=3D"") =
s+=3D"&utmiqt=3D"+_uES(f[6]);=0A=
  }=0A=
  if (_udl.hostname && _udl.hostname!=3D"") =
s+=3D"&utmhn=3D"+_uES(_udl.hostname);=0A=
  if (_usample && _usample !=3D 100) s+=3D"&utmsp=3D"+_uES(_usample);=0A=
=0A=
  if ((_userv=3D=3D0 || _userv=3D=3D2) && _uSP()) {=0A=
   i[ii]=3Dnew Image(1,1);=0A=
   i[ii].src=3D_ugifpath+"?"+"utmwv=3D"+_uwv+s;=0A=
   i[ii].onload=3Dfunction() { _uVoid(); }=0A=
  }=0A=
  if ((_userv=3D=3D1 || _userv=3D=3D2) && _uSP()) {=0A=
   i2[ii]=3Dnew Image(1,1);=0A=
   =
i2[ii].src=3D_ugifpath2+"?"+"utmwv=3D"+_uwv+s+"&utmac=3D"+_uacct+"&utmcc=3D=
"+c;=0A=
   i2[ii].onload=3Dfunction() { _uVoid(); }=0A=
  }=0A=
 }=0A=
 return;=0A=
}=0A=
function _uFlash() {=0A=
 var f=3D"-",n=3Dnavigator;=0A=
 if (n.plugins && n.plugins.length) {=0A=
  for (var ii=3D0;ii<n.plugins.length;ii++) {=0A=
   if (n.plugins[ii].name.indexOf('Shockwave Flash')!=3D-1) {=0A=
    f=3Dn.plugins[ii].description.split('Shockwave Flash ')[1];=0A=
    break;=0A=
   }=0A=
  }=0A=
 } else {=0A=
  var fl;=0A=
  try {=0A=
   fl =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");=0A=
   f =3D fl.GetVariable("$version");=0A=
  } catch(e) {}=0A=
  if (f =3D=3D "-") {=0A=
   try {=0A=
    fl =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");=0A=
    f =3D "WIN 6,0,21,0";=0A=
    fl.AllowScriptAccess =3D "always";=0A=
    f =3D fl.GetVariable("$version");=0A=
   } catch(e) {}=0A=
  }=0A=
  if (f =3D=3D "-") {=0A=
   try {=0A=
    fl =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash");=0A=
    f =3D fl.GetVariable("$version");=0A=
   } catch(e) {}=0A=
  }=0A=
  if (f !=3D "-") {=0A=
   f =3D f.split(" ")[1].split(",");=0A=
   f =3D f[0] + "." + f[1] + " r" + f[2];=0A=
  }=0A=
 }=0A=
 return f;=0A=
}=0A=
function __utmLinkerUrl(l,h) {=0A=
 var p,k,a=3D"-",b=3D"-",c=3D"-",x=3D"-",z=3D"-",v=3D"-";=0A=
 var dc=3D_ubd.cookie;=0A=
 var iq =3D l.indexOf("?");=0A=
 var ih =3D l.indexOf("#");=0A=
 var url=3Dl;=0A=
 if (dc) {=0A=
  a=3D_uES(_uGC(dc,"__utma=3D"+_udh+".",";"));=0A=
  b=3D_uES(_uGC(dc,"__utmb=3D"+_udh,";"));=0A=
  c=3D_uES(_uGC(dc,"__utmc=3D"+_udh,";"));=0A=
  x=3D_uES(_uGC(dc,"__utmx=3D"+_udh,";"));=0A=
  z=3D_uES(_uGC(dc,"__utmz=3D"+_udh+".",";"));=0A=
  v=3D_uES(_uGC(dc,"__utmv=3D"+_udh+".",";"));=0A=
  k=3D(_uHash(a+b+c+x+z+v)*1)+(_udh*1);=0A=
  =
p=3D"__utma=3D"+a+"&__utmb=3D"+b+"&__utmc=3D"+c+"&__utmx=3D"+x+"&__utmz=3D=
"+z+"&__utmv=3D"+v+"&__utmk=3D"+k;=0A=
 }=0A=
 if (p) {=0A=
  if (h && ih>-1) return;=0A=
  if (h) { url=3Dl+"#"+p; }=0A=
  else {=0A=
   if (iq=3D=3D-1 && ih=3D=3D-1) url=3Dl+"?"+p;=0A=
   else if (ih=3D=3D-1) url=3Dl+"&"+p;=0A=
   else if (iq=3D=3D-1) url=3Dl.substring(0,ih-1)+"?"+p+l.substring(ih);=0A=
   else url=3Dl.substring(0,ih-1)+"&"+p+l.substring(ih);=0A=
  }=0A=
 }=0A=
 return url;=0A=
}=0A=
function __utmLinker(l,h) {=0A=
 if (!_ulink || !l || l=3D=3D"") return;=0A=
 _udl.href=3D__utmLinkerUrl(l,h);=0A=
}=0A=
function __utmLinkPost(f,h) {=0A=
 if (!_ulink || !f || !f.action) return;=0A=
 f.action=3D__utmLinkerUrl(f.action, h);=0A=
 return;=0A=
}=0A=
function __utmSetVar(v) {=0A=
 if (!v || v=3D=3D"") return;=0A=
 if (!_udo || _udo =3D=3D "") {=0A=
  _udh=3D_uDomain();=0A=
  if (_udn && _udn!=3D"") { _udo=3D" domain=3D"+_udn+";"; }=0A=
 }=0A=
 if (!_uVG()) return;=0A=
 var r=3DMath.round(Math.random() * 2147483647);=0A=
 _ubd.cookie=3D"__utmv=3D"+_udh+"."+_uES(v)+"; path=3D"+_utcp+"; =
expires=3D"+_uNx()+";"+_udo;=0A=
 var s=3D"&utmt=3Dvar&utmn=3D"+r;=0A=
 if (_usample && _usample !=3D 100) s+=3D"&utmsp=3D"+_uES(_usample);=0A=
 if ((_userv=3D=3D0 || _userv=3D=3D2) && _uSP()) {=0A=
  var i=3Dnew Image(1,1);=0A=
  i.src=3D_ugifpath+"?"+"utmwv=3D"+_uwv+s;=0A=
  i.onload=3Dfunction() { _uVoid(); }=0A=
 }=0A=
 if ((_userv=3D=3D1 || _userv=3D=3D2) && _uSP()) {=0A=
  var i2=3Dnew Image(1,1);=0A=
  =
i2.src=3D_ugifpath2+"?"+"utmwv=3D"+_uwv+s+"&utmac=3D"+_uacct+"&utmcc=3D"+=
_uGCS();=0A=
  i2.onload=3Dfunction() { _uVoid(); }=0A=
 }=0A=
}=0A=
function _uGCS() {=0A=
 var t,c=3D"",dc=3D_ubd.cookie;=0A=
 if ((t=3D_uGC(dc,"__utma=3D"+_udh+".",";"))!=3D"-") =
c+=3D_uES("__utma=3D"+t+";+");=0A=
 if ((t=3D_uGC(dc,"__utmx=3D"+_udh,";"))!=3D"-") =
c+=3D_uES("__utmx=3D"+t+";+");=0A=
 if ((t=3D_uGC(dc,"__utmz=3D"+_udh+".",";"))!=3D"-") =
c+=3D_uES("__utmz=3D"+t+";+");=0A=
 if ((t=3D_uGC(dc,"__utmv=3D"+_udh+".",";"))!=3D"-") =
c+=3D_uES("__utmv=3D"+t+";");=0A=
 if (c.charAt(c.length-1)=3D=3D"+") c=3Dc.substring(0,c.length-1);=0A=
 return c;=0A=
}=0A=
function _uGC(l,n,s) {=0A=
 if (!l || l=3D=3D"" || !n || n=3D=3D"" || !s || s=3D=3D"") return "-";=0A=
 var i,i2,i3,c=3D"-";=0A=
 i=3Dl.indexOf(n);=0A=
 i3=3Dn.indexOf("=3D")+1;=0A=
 if (i > -1) {=0A=
  i2=3Dl.indexOf(s,i); if (i2 < 0) { i2=3Dl.length; }=0A=
  c=3Dl.substring((i+i3),i2);=0A=
 }=0A=
 return c;=0A=
}=0A=
function _uDomain() {=0A=
 if (!_udn || _udn=3D=3D"" || _udn=3D=3D"none") { _udn=3D""; return 1; }=0A=
 if (_udn=3D=3D"auto") {=0A=
  var d=3D_ubd.domain;=0A=
  if (d.substring(0,4)=3D=3D"www.") {=0A=
   d=3Dd.substring(4,d.length);=0A=
  }=0A=
  _udn=3Dd;=0A=
 }=0A=
 _udn =3D _udn.toLowerCase(); =0A=
 if (_uhash=3D=3D"off") return 1;=0A=
 return _uHash(_udn);=0A=
}=0A=
function _uHash(d) {=0A=
 if (!d || d=3D=3D"") return 1;=0A=
 var h=3D0,g=3D0;=0A=
 for (var i=3Dd.length-1;i>=3D0;i--) {=0A=
  var c=3DparseInt(d.charCodeAt(i));=0A=
  h=3D((h << 6) & 0xfffffff) + c + (c << 14);=0A=
  if ((g=3Dh & 0xfe00000)!=3D0) h=3D(h ^ (g >> 21));=0A=
 }=0A=
 return h;=0A=
}=0A=
function _uFixA(c,s,t) {=0A=
 if (!c || c=3D=3D"" || !s || s=3D=3D"" || !t || t=3D=3D"") return "-";=0A=
 var a=3D_uGC(c,"__utma=3D"+_udh+".",s);=0A=
 var lt=3D0,i=3D0;=0A=
 if ((i=3Da.lastIndexOf(".")) > 9) {=0A=
  _uns=3Da.substring(i+1,a.length);=0A=
  _uns=3D(_uns*1)+1;=0A=
  a=3Da.substring(0,i);=0A=
  if ((i=3Da.lastIndexOf(".")) > 7) {=0A=
   lt=3Da.substring(i+1,a.length);=0A=
   a=3Da.substring(0,i);=0A=
  }=0A=
  if ((i=3Da.lastIndexOf(".")) > 5) {=0A=
   a=3Da.substring(0,i);=0A=
  }=0A=
  a+=3D"."+lt+"."+t+"."+_uns;=0A=
 }=0A=
 return a;=0A=
}=0A=
function _uTrim(s) {=0A=
  if (!s || s=3D=3D"") return "";=0A=
  while ((s.charAt(0)=3D=3D' ') || (s.charAt(0)=3D=3D'\n') || =
(s.charAt(0,1)=3D=3D'\r')) s=3Ds.substring(1,s.length);=0A=
  while ((s.charAt(s.length-1)=3D=3D' ') || =
(s.charAt(s.length-1)=3D=3D'\n') || (s.charAt(s.length-1)=3D=3D'\r')) =
s=3Ds.substring(0,s.length-1);=0A=
  return s;=0A=
}=0A=
function _uEC(s) {=0A=
  var n=3D"";=0A=
  if (!s || s=3D=3D"") return "";=0A=
  for (var i=3D0;i<s.length;i++) {if (s.charAt(i)=3D=3D" ") n+=3D"+"; =
else n+=3Ds.charAt(i);}=0A=
  return n;=0A=
}=0A=
function __utmVisitorCode(f) {=0A=
 var r=3D0,t=3D0,i=3D0,i2=3D0,m=3D31;=0A=
 var a=3D_uGC(_ubd.cookie,"__utma=3D"+_udh+".",";");=0A=
 if ((i=3Da.indexOf(".",0))<0) return;=0A=
 if ((i2=3Da.indexOf(".",i+1))>0) r=3Da.substring(i+1,i2); else return =
"";  =0A=
 if ((i=3Da.indexOf(".",i2+1))>0) t=3Da.substring(i2+1,i); else return =
"";  =0A=
 if (f) {=0A=
  return r;=0A=
 } else {=0A=
  var c=3Dnew =
Array('A','B','C','D','E','F','G','H','J','K','L','M','N','P','R','S','T'=
,'U','V','W','X','Y','Z','1','2','3','4','5','6','7','8','9');=0A=
  return =
c[r>>28&m]+c[r>>23&m]+c[r>>18&m]+c[r>>13&m]+"-"+c[r>>8&m]+c[r>>3&m]+c[((r=
&7)<<2)+(t>>30&3)]+c[t>>25&m]+c[t>>20&m]+"-"+c[t>>15&m]+c[t>>10&m]+c[t>>5=
&m]+c[t&m];=0A=
 }=0A=
}=0A=
function _uIN(n) {=0A=
 if (!n) return false;=0A=
 for (var i=3D0;i<n.length;i++) {=0A=
  var c=3Dn.charAt(i);=0A=
  if ((c<"0" || c>"9") && (c!=3D".")) return false;=0A=
 }=0A=
 return true;=0A=
}=0A=
function _uES(s,u) {=0A=
 if (typeof(encodeURIComponent) =3D=3D 'function') {=0A=
  if (u) return encodeURI(s);=0A=
  else return encodeURIComponent(s);=0A=
 } else {=0A=
  return escape(s);=0A=
 }=0A=
}=0A=
function _uUES(s) {=0A=
 if (typeof(decodeURIComponent) =3D=3D 'function') {=0A=
  return decodeURIComponent(s);=0A=
 } else {=0A=
  return unescape(s);=0A=
 }=0A=
}=0A=
function _uVG() {=0A=
 if((_udn.indexOf("www.google.") =3D=3D 0 || _udn.indexOf(".google.") =
=3D=3D 0 || _udn.indexOf("google.") =3D=3D 0) && _utcp=3D=3D'/' && =
_udn.indexOf("google.org")=3D=3D-1) {=0A=
  return false;=0A=
 }=0A=
 return true;=0A=
}=0A=
function _uSP() {=0A=
 var s=3D100;=0A=
 if (_usample) s=3D_usample;=0A=
 if(s>=3D100 || s<=3D0) return true;=0A=
 return ((__utmVisitorCode(1)%10000)<(s*100));=0A=
}=0A=
function urchinPathCopy(p){=0A=
 var d=3Ddocument,nx,tx,sx,i,c,cs,t,h,o;=0A=
 cs=3Dnew Array("a","b","c","v","x","z");=0A=
 h=3D_uDomain(); if (_udn && _udn!=3D"") o=3D" domain=3D"+_udn+";";=0A=
 nx=3D_uNx()+";";=0A=
 tx=3Dnew Date(); tx.setTime(tx.getTime()+(_utimeout*1000));=0A=
 tx=3Dtx.toGMTString()+";";=0A=
 sx=3Dnew Date(); sx.setTime(sx.getTime()+(_ucto*1000));=0A=
 sx=3Dsx.toGMTString()+";";=0A=
 for (i=3D0;i<6;i++){=0A=
  t=3D" expires=3D";=0A=
  if (i=3D=3D1) t+=3Dtx; else if (i=3D=3D2) t=3D""; else if (i=3D=3D5) =
t+=3Dsx; else t+=3Dnx;=0A=
  c=3D_uGC(d.cookie,"__utm"+cs[i]+"=3D"+h,";");=0A=
  if (c!=3D"-") d.cookie=3D"__utm"+cs[i]+"=3D"+c+"; path=3D"+p+";"+t+o;=0A=
 }=0A=
}=0A=
function _uCO() {=0A=
 if (!_utk || _utk=3D=3D"" || _utk.length<10) return;=0A=
 var d=3D'www.google.com';=0A=
 if (_utk.charAt(0)=3D=3D'!') d=3D'analytics.corp.google.com';=0A=
 _ubd.cookie=3D"GASO=3D"+_utk+"; path=3D"+_utcp+";"+_udo;=0A=
 var sc=3Ddocument.createElement('script');=0A=
 sc.type=3D'text/javascript';=0A=
 sc.id=3D"_gasojs";=0A=
 =
sc.src=3D'https://'+d+'/analytics/reporting/overlay_js?gaso=3D'+_utk+'&'+=
Math.random();=0A=
 document.getElementsByTagName('head')[0].appendChild(sc);  =0A=
}=0A=
function _uGT() {=0A=
 var h=3Dlocation.hash, a;=0A=
 if (h && h!=3D"" && h.indexOf("#gaso=3D")=3D=3D0) {=0A=
  a=3D_uGC(h,"gaso=3D","&");=0A=
 } else {=0A=
  a=3D_uGC(_ubd.cookie,"GASO=3D",";");=0A=
 }=0A=
 return a;=0A=
}=0A=
var _utk=3D_uGT();=0A=
if (_utk && _utk!=3D"" && _utk.length>10 && _utk.indexOf("=3D")=3D=3D-1) =
{=0A=
 if (window.addEventListener) {=0A=
  window.addEventListener('load', _uCO, false); =0A=
 } else if (window.attachEvent) { =0A=
  window.attachEvent('onload', _uCO);=0A=
 }=0A=
}=0A=
=0A=
function _uNx() {=0A=
  return (new Date((new Date()).getTime()+63072000000)).toGMTString();=0A=
}=0A=

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/AC_OETags.js

// Flash Player Version Detection - Rev 1.5=0A=
// Detect Client Browser type=0A=
// Copyright(c) 2005-2006 Adobe Macromedia Software, LLC. All rights =
reserved.=0A=
var isIE  =3D (navigator.appVersion.indexOf("MSIE") !=3D -1) ? true : =
false;=0A=
var isWin =3D (navigator.appVersion.toLowerCase().indexOf("win") !=3D =
-1) ? true : false;=0A=
var isOpera =3D (navigator.userAgent.indexOf("Opera") !=3D -1) ? true : =
false;=0A=
=0A=
function ControlVersion()=0A=
{=0A=
	var version;=0A=
	var axo;=0A=
	var e;=0A=
=0A=
	// NOTE : new ActiveXObject(strFoo) throws an exception if strFoo isn't =
in the registry=0A=
=0A=
	try {=0A=
		// version will be set for 7.X or greater players=0A=
		axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.7");=0A=
		version =3D axo.GetVariable("$version");=0A=
	} catch (e) {=0A=
	}=0A=
=0A=
	if (!version)=0A=
	{=0A=
		try {=0A=
			// version will be set for 6.X players only=0A=
			axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.6");=0A=
			=0A=
			// installed player is some revision of 6.0=0A=
			// GetVariable("$version") crashes for versions 6.0.22 through 6.0.29,=0A=
			// so we have to be careful. =0A=
			=0A=
			// default to the first public version=0A=
			version =3D "WIN 6,0,21,0";=0A=
=0A=
			// throws if AllowScripAccess does not exist (introduced in 6.0r47)		=0A=
			axo.AllowScriptAccess =3D "always";=0A=
=0A=
			// safe to call for 6.0r47 or greater=0A=
			version =3D axo.GetVariable("$version");=0A=
=0A=
		} catch (e) {=0A=
		}=0A=
	}=0A=
=0A=
	if (!version)=0A=
	{=0A=
		try {=0A=
			// version will be set for 4.X or 5.X player=0A=
			axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");=0A=
			version =3D axo.GetVariable("$version");=0A=
		} catch (e) {=0A=
		}=0A=
	}=0A=
=0A=
	if (!version)=0A=
	{=0A=
		try {=0A=
			// version will be set for 3.X player=0A=
			axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash.3");=0A=
			version =3D "WIN 3,0,18,0";=0A=
		} catch (e) {=0A=
		}=0A=
	}=0A=
=0A=
	if (!version)=0A=
	{=0A=
		try {=0A=
			// version will be set for 2.X player=0A=
			axo =3D new ActiveXObject("ShockwaveFlash.ShockwaveFlash");=0A=
			version =3D "WIN 2,0,0,11";=0A=
		} catch (e) {=0A=
			version =3D -1;=0A=
		}=0A=
	}=0A=
	=0A=
	return version;=0A=
}=0A=
=0A=
// JavaScript helper required to detect Flash Player PlugIn version =
information=0A=
function GetSwfVer(){=0A=
	// NS/Opera version >=3D 3 check for Flash plugin in plugin array=0A=
	var flashVer =3D -1;=0A=
	=0A=
	if (navigator.plugins !=3D null && navigator.plugins.length > 0) {=0A=
		if (navigator.plugins["Shockwave Flash 2.0"] || =
navigator.plugins["Shockwave Flash"]) {=0A=
			var swVer2 =3D navigator.plugins["Shockwave Flash 2.0"] ? " 2.0" : "";=0A=
			var flashDescription =3D navigator.plugins["Shockwave Flash" + =
swVer2].description;			=0A=
			var descArray =3D flashDescription.split(" ");=0A=
			var tempArrayMajor =3D descArray[2].split(".");=0A=
			var versionMajor =3D tempArrayMajor[0];=0A=
			var versionMinor =3D tempArrayMajor[1];=0A=
			if ( descArray[3] !=3D "" ) {=0A=
				tempArrayMinor =3D descArray[3].split("r");=0A=
			} else {=0A=
				tempArrayMinor =3D descArray[4].split("r");=0A=
			}=0A=
			var versionRevision =3D tempArrayMinor[1] > 0 ? tempArrayMinor[1] : 0;=0A=
			var flashVer =3D versionMajor + "." + versionMinor + "." + =
versionRevision;=0A=
		}=0A=
	}=0A=
	// MSN/WebTV 2.6 supports Flash 4=0A=
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.6") !=3D =
-1) flashVer =3D 4;=0A=
	// WebTV 2.5 supports Flash 3=0A=
	else if (navigator.userAgent.toLowerCase().indexOf("webtv/2.5") !=3D =
-1) flashVer =3D 3;=0A=
	// older WebTV supports Flash 2=0A=
	else if (navigator.userAgent.toLowerCase().indexOf("webtv") !=3D -1) =
flashVer =3D 2;=0A=
	else if ( isIE && isWin && !isOpera ) {=0A=
		flashVer =3D ControlVersion();=0A=
	}	=0A=
	return flashVer;=0A=
}=0A=
=0A=
// When called with reqMajorVer, reqMinorVer, reqRevision returns true =
if that version or greater is available=0A=
function DetectFlashVer(reqMajorVer, reqMinorVer, reqRevision)=0A=
{=0A=
	versionStr =3D GetSwfVer();=0A=
	if (versionStr =3D=3D -1 ) {=0A=
		return false;=0A=
	} else if (versionStr !=3D 0) {=0A=
		if(isIE && isWin && !isOpera) {=0A=
			// Given "WIN 2,0,0,11"=0A=
			tempArray         =3D versionStr.split(" "); 	// ["WIN", "2,0,0,11"]=0A=
			tempString        =3D tempArray[1];			// "2,0,0,11"=0A=
			versionArray      =3D tempString.split(",");	// ['2', '0', '0', '11']=0A=
		} else {=0A=
			versionArray      =3D versionStr.split(".");=0A=
		}=0A=
		var versionMajor      =3D versionArray[0];=0A=
		var versionMinor      =3D versionArray[1];=0A=
		var versionRevision   =3D versionArray[2];=0A=
=0A=
        	// is the major.revision >=3D requested major.revision AND the =
minor version >=3D requested minor=0A=
		if (versionMajor > parseFloat(reqMajorVer)) {=0A=
			return true;=0A=
		} else if (versionMajor =3D=3D parseFloat(reqMajorVer)) {=0A=
			if (versionMinor > parseFloat(reqMinorVer))=0A=
				return true;=0A=
			else if (versionMinor =3D=3D parseFloat(reqMinorVer)) {=0A=
				if (versionRevision >=3D parseFloat(reqRevision))=0A=
					return true;=0A=
			}=0A=
		}=0A=
		return false;=0A=
	}=0A=
}=0A=
=0A=
function AC_AddExtension(src, ext)=0A=
{=0A=
  if (src.indexOf('?') !=3D -1)=0A=
    return src.replace(/\?/, ext+'?'); =0A=
  else=0A=
    return src + ext;=0A=
}=0A=
=0A=
function AC_Generateobj(objAttrs, params, embedAttrs) =0A=
{ =0A=
    var str =3D '';=0A=
    if (isIE && isWin && !isOpera)=0A=
    {=0A=
  		str +=3D '<object ';=0A=
  		for (var i in objAttrs)=0A=
  			str +=3D i + '=3D"' + objAttrs[i] + '" ';=0A=
  		for (var i in params)=0A=
  			str +=3D '><param name=3D"' + i + '" value=3D"' + params[i] + '" /> =
';=0A=
  		str +=3D '></object>';=0A=
    } else {=0A=
  		str +=3D '<embed ';=0A=
  		for (var i in embedAttrs)=0A=
  			str +=3D i + '=3D"' + embedAttrs[i] + '" ';=0A=
  		str +=3D '> </embed>';=0A=
    }=0A=
=0A=
    document.write(str);=0A=
}=0A=
=0A=
function AC_FL_RunContent(){=0A=
  var ret =3D =0A=
    AC_GetArgs=0A=
    (  arguments, "", "movie", =
"clsid:d27cdb6e-ae6d-11cf-96b8-444553540000"=0A=
     , "application/x-shockwave-flash"=0A=
    );=0A=
  AC_Generateobj(ret.objAttrs, ret.params, ret.embedAttrs);=0A=
}=0A=
=0A=
function AC_GetArgs(args, ext, srcParamName, classid, mimeType){=0A=
  var ret =3D new Object();=0A=
  ret.embedAttrs =3D new Object();=0A=
  ret.params =3D new Object();=0A=
  ret.objAttrs =3D new Object();=0A=
  for (var i=3D0; i < args.length; i=3Di+2){=0A=
    var currArg =3D args[i].toLowerCase();    =0A=
=0A=
    switch (currArg){	=0A=
      case "classid":=0A=
        break;=0A=
      case "pluginspage":=0A=
        ret.embedAttrs[args[i]] =3D args[i+1];=0A=
        break;=0A=
      case "src":=0A=
      case "movie":	=0A=
        args[i+1] =3D AC_AddExtension(args[i+1], ext);=0A=
        ret.embedAttrs["src"] =3D args[i+1];=0A=
        ret.params[srcParamName] =3D args[i+1];=0A=
        break;=0A=
      case "onafterupdate":=0A=
      case "onbeforeupdate":=0A=
      case "onblur":=0A=
      case "oncellchange":=0A=
      case "onclick":=0A=
      case "ondblClick":=0A=
      case "ondrag":=0A=
      case "ondragend":=0A=
      case "ondragenter":=0A=
      case "ondragleave":=0A=
      case "ondragover":=0A=
      case "ondrop":=0A=
      case "onfinish":=0A=
      case "onfocus":=0A=
      case "onhelp":=0A=
      case "onmousedown":=0A=
      case "onmouseup":=0A=
      case "onmouseover":=0A=
      case "onmousemove":=0A=
      case "onmouseout":=0A=
      case "onkeypress":=0A=
      case "onkeydown":=0A=
      case "onkeyup":=0A=
      case "onload":=0A=
      case "onlosecapture":=0A=
      case "onpropertychange":=0A=
      case "onreadystatechange":=0A=
      case "onrowsdelete":=0A=
      case "onrowenter":=0A=
      case "onrowexit":=0A=
      case "onrowsinserted":=0A=
      case "onstart":=0A=
      case "onscroll":=0A=
      case "onbeforeeditfocus":=0A=
      case "onactivate":=0A=
      case "onbeforedeactivate":=0A=
      case "ondeactivate":=0A=
      case "type":=0A=
      case "codebase":=0A=
      case "id":=0A=
        ret.objAttrs[args[i]] =3D args[i+1];=0A=
        break;=0A=
      case "width":=0A=
      case "height":=0A=
      case "align":=0A=
      case "vspace": =0A=
      case "hspace":=0A=
      case "class":=0A=
      case "title":=0A=
      case "accesskey":=0A=
      case "name":=0A=
      case "tabindex":=0A=
        ret.embedAttrs[args[i]] =3D ret.objAttrs[args[i]] =3D args[i+1];=0A=
        break;=0A=
      default:=0A=
        ret.embedAttrs[args[i]] =3D ret.params[args[i]] =3D args[i+1];=0A=
    }=0A=
  }=0A=
  ret.objAttrs["classid"] =3D classid;=0A=
  if (mimeType) ret.embedAttrs["type"] =3D mimeType;=0A=
  return ret;=0A=
}=0A=
=0A=
=0A=

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/pageear.js

/************************************************************************=
********************=0A=
* PageEar advertising CornerAd by Webpicasso Media=0A=
* Leave copyright notice.  =0A=
*=0A=
* Lizenzvereinbarung / License agreement=0A=
* http://www.webpicasso.de/blog/lizenzvereinbarungen-license-agreements/=0A=
*=0A=
* @copyright www.webpicasso.de=0A=
* @author    christian harz <pagepeel-at-webpicasso.de>=0A=
*************************************************************************=
********************/=0A=
  =0A=
=0A=
/*=0A=
 *  Konfiguration / Configuration=0A=
 */ =0A=
=0A=
// URL zum kleinen Bild / URL to small image =0A=
var pagearSmallImg =3D 'pageear_s.jpg'; =0A=
// URL zu pageear_s.swf / URL to small pageear swf=0A=
var pagearSmallSwf =3D 'pageear_s.swf'; =0A=
=0A=
// URL zum gro=DFen Bild / URL to big image=0A=
var pagearBigImg =3D 'pageear_b.jpg'; =0A=
// URL zu pageear_b.swf / URL to big pageear swf=0A=
var pagearBigSwf =3D 'pageear_b.swf'; =0A=
=0A=
// Wackelgeschwindigkeit der Ecke 1-4 (2=3DStandard) =0A=
// Movement speed of small pageear 1-4 (2=3DStandard)=0A=
var speedSmall =3D 1; =0A=
// Bild spiegelt sich in der aufgeschlagenen Ecke ( true | false )=0A=
// Mirror image ( true | false )=0A=
var mirror =3D 'true'; =0A=
// Farbe der aufgeschlagenen Ecke wenn mirror false ist=0A=
// Color of pagecorner if mirror is false=0A=
var pageearColor =3D 'ffffff';  =0A=
// Zu =F6ffnende URL bei klick auf die ge=F6ffnete Ecke=0A=
// URL to open on pageear click=0A=
var jumpTo =3D 'http://www.confirmado.info' =0A=
// =D6ffnet den link im neuen Fenster (new) oder im selben (self)=0A=
// Browser target  (new) or self (self)=0A=
var openLink =3D 'new'; =0A=
// =D6ffnet das pagepeel automatisch wenn es geladen ist =
(false:deaktiviert | 0.1 - X Sekunden bis zum =F6ffnen) =0A=
// Opens pageear automaticly (false:deactivated | 0.1 - X seconds to =
open) =0A=
var openOnLoad =3D false; =0A=
// Sekunden bis sich das pagepeel wieder schlie=DFt, funktioniert nur im =
Zusammenhang mit der openOnLoad-Funktion =0A=
// Second until pageear close after openOnLoad=0A=
var closeOnLoad =3D 3; =0A=
// Ecke in der das Pagepeel erscheinen soll (lt: linke obere Ecke | rt: =
rechte obere Ecke )=0A=
// Set direction of pageear in left or right top browser corner (lt: =
left | rt: right )=0A=
var setDirection =3D 'rt'; =0A=
// Weiches einblenden des pageear wenn Bild geladen (0-5: 0=3Daus, =
1=3Dlangsam, 5=3Dschnell )=0A=
// Fade in pageear if image completly loaded (0-5: 0=3Doff, 1=3Dslow, =
5=3Dfast )=0A=
var softFadeIn =3D 1; =0A=
 =0A=
 =0A=
/*=0A=
 *  Ab hier nichts mehr =E4ndern  / Do not change anything after this =
line=0A=
 */ =0A=
=0A=
// Flash check vars=0A=
var requiredMajorVersion =3D 6;=0A=
var requiredMinorVersion =3D 0;=0A=
var requiredRevision =3D 0;=0A=
=0A=
// Copyright=0A=
var copyright =3D 'Webpicasso Media, www.webpicasso.de';=0A=
=0A=
// Size small peel =0A=
var thumbWidth  =3D 100;=0A=
var thumbHeight =3D 100;=0A=
=0A=
// Size big peel=0A=
var bigWidth  =3D 500;=0A=
var bigHeight =3D 500;=0A=
=0A=
// Css style default x-position=0A=
var xPos =3D 'right';=0A=
=0A=
// GET - Params=0A=
var queryParams =3D 'pagearSmallImg=3D'+escape(pagearSmallImg); =0A=
queryParams +=3D '&pagearBigImg=3D'+escape(pagearBigImg); =0A=
queryParams +=3D '&pageearColor=3D'+pageearColor; =0A=
queryParams +=3D '&jumpTo=3D'+escape(jumpTo); =0A=
queryParams +=3D '&openLink=3D'+escape(openLink); =0A=
queryParams +=3D '&mirror=3D'+escape(mirror); =0A=
queryParams +=3D '&copyright=3D'+escape(copyright); =0A=
queryParams +=3D '&speedSmall=3D'+escape(speedSmall); =0A=
queryParams +=3D '&openOnLoad=3D'+escape(openOnLoad); =0A=
queryParams +=3D '&closeOnLoad=3D'+escape(closeOnLoad); =0A=
queryParams +=3D '&setDirection=3D'+escape(setDirection); =0A=
queryParams +=3D '&softFadeIn=3D'+escape(softFadeIn); =0A=
=0A=
=0A=
function openPeel(){=0A=
	document.getElementById('bigDiv').style.top =3D '0px'; =0A=
	document.getElementById('bigDiv').style[xPos] =3D '0px';=0A=
	document.getElementById('thumbDiv').style.top =3D '-1000px';=0A=
}=0A=
=0A=
function closePeel(){=0A=
	document.getElementById("thumbDiv").style.top =3D "0px";=0A=
	document.getElementById("bigDiv").style.top =3D "-1000px";=0A=
}=0A=
=0A=
function writeObjects () { =0A=
    =0A=
    // Get installed flashversion=0A=
    var hasReqestedVersion =3D DetectFlashVer(requiredMajorVersion, =
requiredMinorVersion, requiredRevision);=0A=
    =0A=
    // Check direction =0A=
    if(setDirection =3D=3D 'lt') {=0A=
        xPosBig =3D 'left:-1000px';  =0A=
        xPos =3D 'left';   =0A=
    } else {=0A=
        xPosBig =3D 'right:1000px';=0A=
        xPos =3D 'right';              =0A=
    }=0A=
    =0A=
    // Write div layer for big swf=0A=
    document.write('<div id=3D"bigDiv" =
style=3D"position:absolute;width:'+ bigWidth +'px;height:'+ bigHeight =
+'px;z-index:9999;'+xPosBig+';top:-100px;">');    	=0A=
    =0A=
    // Check if flash exists/ version matched=0A=
    if (hasReqestedVersion) {    	=0A=
    	AC_FL_RunContent(=0A=
    				"src", pagearBigSwf+'?'+ queryParams,=0A=
    				"width", bigWidth,=0A=
    				"height", bigHeight,=0A=
    				"align", "middle",=0A=
    				"id", "bigSwf",=0A=
    				"quality", "high",=0A=
    				"bgcolor", "#FFFFFF",=0A=
    				"name", "bigSwf",=0A=
    				"wmode", "transparent",=0A=
    				"allowScriptAccess","always",=0A=
    				"type", "application/x-shockwave-flash",=0A=
    				'codebase', =
'http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab',=0A=
    				"pluginspage", "http://www.adobe.com/go/getflashplayer"=0A=
    	);=0A=
    } else {  // otherwise do nothing or write message ...    	 =0A=
    	document.write('no flash installed');  // non-flash content=0A=
    } =0A=
    // Close div layer for big swf=0A=
    document.write('</div>'); =0A=
    =0A=
    // Write div layer for small swf=0A=
    document.write('<div id=3D"thumbDiv" =
style=3D"position:absolute;width:'+ thumbWidth +'px;height:'+ =
thumbHeight +'px;z-index:9999;'+xPos+':0px;top:0px;">');=0A=
    =0A=
    // Check if flash exists/ version matched=0A=
    if (hasReqestedVersion) {    	=0A=
    	AC_FL_RunContent(=0A=
    				"src", pagearSmallSwf+'?'+ queryParams,=0A=
    				"width", thumbWidth,=0A=
    				"height", thumbHeight,=0A=
    				"align", "middle",=0A=
    				"id", "bigSwf",=0A=
    				"quality", "high",=0A=
    				"bgcolor", "#FFFFFF",=0A=
    				"name", "bigSwf",=0A=
    				"wmode", "transparent",=0A=
    				"allowScriptAccess","always",=0A=
    				"type", "application/x-shockwave-flash",=0A=
    				'codebase', =
'http://fpdownload.macromedia.com/get/flashplayer/current/swflash.cab',=0A=
    				"pluginspage", "http://www.adobe.com/go/getflashplayer"=0A=
    	);=0A=
    } else {  // otherwise do nothing or write message ...    	 =0A=
    	document.write('no flash installed');  // non-flash content=0A=
    } =0A=
    document.write('</div>');  =0A=
    setTimeout('document.getElementById("bigDiv").style.top =3D =
"-1000px";',100);=0A=
}=0A=
=0A=

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/js/mootools.v1.11.js

/*=0A=
Script: Core.js=0A=
	Mootools - My Object Oriented javascript.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
=0A=
MooTools Copyright:=0A=
	copyright (c) 2007 Valerio Proietti, <http://mad4milk.net>=0A=
=0A=
MooTools Credits:=0A=
	- Class is slightly based on Base.js =
<http://dean.edwards.name/weblog/2006/03/base/> (c) 2006 Dean Edwards, =
License <http://creativecommons.org/licenses/LGPL/2.1/>=0A=
	- Some functions are inspired by those found in prototype.js =
<http://prototype.conio.net/> (c) 2005 Sam Stephenson sam [at] conio =
[dot] net, MIT-style license=0A=
	- Documentation by Aaron Newton (aaron.newton [at] cnet [dot] com) and =
Valerio Proietti.=0A=
*/=0A=
=0A=
var MooTools =3D {=0A=
	version: '1.11'=0A=
};=0A=
=0A=
/* Section: Core Functions */=0A=
=0A=
/*=0A=
Function: $defined=0A=
	Returns true if the passed in value/object is defined, that means is =
not null or undefined.=0A=
=0A=
Arguments:=0A=
	obj - object to inspect=0A=
*/=0A=
=0A=
function $defined(obj){=0A=
	return (obj !=3D undefined);=0A=
};=0A=
=0A=
/*=0A=
Function: $type=0A=
	Returns the type of object that matches the element passed in.=0A=
=0A=
Arguments:=0A=
	obj - the object to inspect.=0A=
=0A=
Example:=0A=
	>var myString =3D 'hello';=0A=
	>$type(myString); //returns "string"=0A=
=0A=
Returns:=0A=
	'element' - if obj is a DOM element node=0A=
	'textnode' - if obj is a DOM text node=0A=
	'whitespace' - if obj is a DOM whitespace node=0A=
	'arguments' - if obj is an arguments object=0A=
	'object' - if obj is an object=0A=
	'string' - if obj is a string=0A=
	'number' - if obj is a number=0A=
	'boolean' - if obj is a boolean=0A=
	'function' - if obj is a function=0A=
	'regexp' - if obj is a regular expression=0A=
	'class' - if obj is a Class. (created with new Class, or the extend of =
another class).=0A=
	'collection' - if obj is a native htmlelements collection, such as =
childNodes, getElementsByTagName .. etc.=0A=
	false - (boolean) if the object is not defined or none of the above.=0A=
*/=0A=
=0A=
function $type(obj){=0A=
	if (!$defined(obj)) return false;=0A=
	if (obj.htmlElement) return 'element';=0A=
	var type =3D typeof obj;=0A=
	if (type =3D=3D 'object' && obj.nodeName){=0A=
		switch(obj.nodeType){=0A=
			case 1: return 'element';=0A=
			case 3: return (/\S/).test(obj.nodeValue) ? 'textnode' : 'whitespace';=0A=
		}=0A=
	}=0A=
	if (type =3D=3D 'object' || type =3D=3D 'function'){=0A=
		switch(obj.constructor){=0A=
			case Array: return 'array';=0A=
			case RegExp: return 'regexp';=0A=
			case Class: return 'class';=0A=
		}=0A=
		if (typeof obj.length =3D=3D 'number'){=0A=
			if (obj.item) return 'collection';=0A=
			if (obj.callee) return 'arguments';=0A=
		}=0A=
	}=0A=
	return type;=0A=
};=0A=
=0A=
/*=0A=
Function: $merge=0A=
	merges a number of objects recursively without referencing them or =
their sub-objects.=0A=
=0A=
Arguments:=0A=
	any number of objects.=0A=
=0A=
Example:=0A=
	>var mergedObj =3D $merge(obj1, obj2, obj3);=0A=
	>//obj1, obj2, and obj3 are unaltered=0A=
*/=0A=
=0A=
function $merge(){=0A=
	var mix =3D {};=0A=
	for (var i =3D 0; i < arguments.length; i++){=0A=
		for (var property in arguments[i]){=0A=
			var ap =3D arguments[i][property];=0A=
			var mp =3D mix[property];=0A=
			if (mp && $type(ap) =3D=3D 'object' && $type(mp) =3D=3D 'object') =
mix[property] =3D $merge(mp, ap);=0A=
			else mix[property] =3D ap;=0A=
		}=0A=
	}=0A=
	return mix;=0A=
};=0A=
=0A=
/*=0A=
Function: $extend=0A=
	Copies all the properties from the second passed object to the first =
passed Object.=0A=
	If you do myWhatever.extend =3D $extend the first parameter will become =
myWhatever, and your extend function will only need one parameter.=0A=
=0A=
Example:=0A=
	(start code)=0A=
	var firstOb =3D {=0A=
		'name': 'John',=0A=
		'lastName': 'Doe'=0A=
	};=0A=
	var secondOb =3D {=0A=
		'age': '20',=0A=
		'sex': 'male',=0A=
		'lastName': 'Dorian'=0A=
	};=0A=
	$extend(firstOb, secondOb);=0A=
	//firstOb will become:=0A=
	{=0A=
		'name': 'John',=0A=
		'lastName': 'Dorian',=0A=
		'age': '20',=0A=
		'sex': 'male'=0A=
	};=0A=
	(end)=0A=
=0A=
Returns:=0A=
	The first object, extended.=0A=
*/=0A=
=0A=
var $extend =3D function(){=0A=
	var args =3D arguments;=0A=
	if (!args[1]) args =3D [this, args[0]];=0A=
	for (var property in args[1]) args[0][property] =3D args[1][property];=0A=
	return args[0];=0A=
};=0A=
=0A=
/*=0A=
Function: $native=0A=
	Will add a .extend method to the objects passed as a parameter, but the =
property passed in will be copied to the object's prototype only if non =
previously existent.=0A=
	Its handy if you dont want the .extend method of an object to overwrite =
existing methods.=0A=
	Used automatically in MooTools to implement =
Array/String/Function/Number methods to browser that dont support them =
whitout manual checking.=0A=
=0A=
Arguments:=0A=
	a number of classes/native javascript objects=0A=
=0A=
*/=0A=
=0A=
var $native =3D function(){=0A=
	for (var i =3D 0, l =3D arguments.length; i < l; i++){=0A=
		arguments[i].extend =3D function(props){=0A=
			for (var prop in props){=0A=
				if (!this.prototype[prop]) this.prototype[prop] =3D props[prop];=0A=
				if (!this[prop]) this[prop] =3D $native.generic(prop);=0A=
			}=0A=
		};=0A=
	}=0A=
};=0A=
=0A=
$native.generic =3D function(prop){=0A=
	return function(bind){=0A=
		return this.prototype[prop].apply(bind, =
Array.prototype.slice.call(arguments, 1));=0A=
	};=0A=
};=0A=
=0A=
$native(Function, Array, String, Number);=0A=
=0A=
/*=0A=
Function: $chk=0A=
	Returns true if the passed in value/object exists or is 0, otherwise =
returns false.=0A=
	Useful to accept zeroes.=0A=
=0A=
Arguments:=0A=
	obj - object to inspect=0A=
*/=0A=
=0A=
function $chk(obj){=0A=
	return !!(obj || obj =3D=3D=3D 0);=0A=
};=0A=
=0A=
/*=0A=
Function: $pick=0A=
	Returns the first object if defined, otherwise returns the second.=0A=
=0A=
Arguments:=0A=
	obj - object to test=0A=
	picked - the default to return=0A=
=0A=
Example:=0A=
	(start code)=0A=
		function say(msg){=0A=
			alert($pick(msg, 'no meessage supplied'));=0A=
		}=0A=
	(end)=0A=
*/=0A=
=0A=
function $pick(obj, picked){=0A=
	return $defined(obj) ? obj : picked;=0A=
};=0A=
=0A=
/*=0A=
Function: $random=0A=
	Returns a random integer number between the two passed in values.=0A=
=0A=
Arguments:=0A=
	min - integer, the minimum value (inclusive).=0A=
	max - integer, the maximum value (inclusive).=0A=
=0A=
Returns:=0A=
	a random integer between min and max.=0A=
*/=0A=
=0A=
function $random(min, max){=0A=
	return Math.floor(Math.random() * (max - min + 1) + min);=0A=
};=0A=
=0A=
/*=0A=
Function: $time=0A=
	Returns the current timestamp=0A=
=0A=
Returns:=0A=
	a timestamp integer.=0A=
*/=0A=
=0A=
function $time(){=0A=
	return new Date().getTime();=0A=
};=0A=
=0A=
/*=0A=
Function: $clear=0A=
	clears a timeout or an Interval.=0A=
=0A=
Returns:=0A=
	null=0A=
=0A=
Arguments:=0A=
	timer - the setInterval or setTimeout to clear.=0A=
=0A=
Example:=0A=
	>var myTimer =3D myFunction.delay(5000); //wait 5 seconds and execute =
my function.=0A=
	>myTimer =3D $clear(myTimer); //nevermind=0A=
=0A=
See also:=0A=
	<Function.delay>, <Function.periodical>=0A=
*/=0A=
=0A=
function $clear(timer){=0A=
	clearTimeout(timer);=0A=
	clearInterval(timer);=0A=
	return null;=0A=
};=0A=
=0A=
/*=0A=
Class: Abstract=0A=
	Abstract class, to be used as singleton. Will add .extend to any object=0A=
=0A=
Arguments:=0A=
	an object=0A=
=0A=
Returns:=0A=
	the object with an .extend property, equivalent to <$extend>.=0A=
*/=0A=
=0A=
var Abstract =3D function(obj){=0A=
	obj =3D obj || {};=0A=
	obj.extend =3D $extend;=0A=
	return obj;=0A=
};=0A=
=0A=
//window, document=0A=
=0A=
var Window =3D new Abstract(window);=0A=
var Document =3D new Abstract(document);=0A=
document.head =3D document.getElementsByTagName('head')[0];=0A=
=0A=
/*=0A=
Class: window=0A=
	Some properties are attached to the window object by the browser =
detection.=0A=
	=0A=
Note:=0A=
	browser detection is entirely object-based. We dont sniff.=0A=
=0A=
Properties:=0A=
	window.ie - will be set to true if the current browser is internet =
explorer (any).=0A=
	window.ie6 - will be set to true if the current browser is internet =
explorer 6.=0A=
	window.ie7 - will be set to true if the current browser is internet =
explorer 7.=0A=
	window.gecko - will be set to true if the current browser is =
Mozilla/Gecko.=0A=
	window.webkit - will be set to true if the current browser is =
Safari/Konqueror.=0A=
	window.webkit419 - will be set to true if the current browser is =
Safari2 / webkit till version 419.=0A=
	window.webkit420 - will be set to true if the current browser is =
Safari3 (Webkit SVN Build) / webkit over version 419.=0A=
	window.opera - is set to true by opera itself.=0A=
*/=0A=
=0A=
window.xpath =3D !!(document.evaluate);=0A=
if (window.ActiveXObject) window.ie =3D window[window.XMLHttpRequest ? =
'ie7' : 'ie6'] =3D true;=0A=
else if (document.childNodes && !document.all && =
!navigator.taintEnabled) window.webkit =3D window[window.xpath ? =
'webkit420' : 'webkit419'] =3D true;=0A=
else if (document.getBoxObjectFor !=3D null) window.gecko =3D true;=0A=
=0A=
/*compatibility*/=0A=
=0A=
window.khtml =3D window.webkit;=0A=
=0A=
Object.extend =3D $extend;=0A=
=0A=
/*end compatibility*/=0A=
=0A=
//htmlelement=0A=
=0A=
if (typeof HTMLElement =3D=3D 'undefined'){=0A=
	var HTMLElement =3D function(){};=0A=
	if (window.webkit) document.createElement("iframe"); //fixes safari=0A=
	HTMLElement.prototype =3D (window.webkit) ? =
window["[[DOMElement.prototype]]"] : {};=0A=
}=0A=
HTMLElement.prototype.htmlElement =3D function(){};=0A=
=0A=
//enables background image cache for internet explorer 6=0A=
=0A=
if (window.ie6) try {document.execCommand("BackgroundImageCache", false, =
true);} catch(e){};=0A=
=0A=
/*=0A=
Script: Class.js=0A=
	Contains the Class Function, aims to ease the creation of reusable =
Classes.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Class=0A=
	The base class object of the <http://mootools.net> framework.=0A=
	Creates a new class, its initialize method will fire upon class =
instantiation.=0A=
	Initialize wont fire on instantiation when you pass *null*.=0A=
=0A=
Arguments:=0A=
	properties - the collection of properties that apply to the class.=0A=
=0A=
Example:=0A=
	(start code)=0A=
	var Cat =3D new Class({=0A=
		initialize: function(name){=0A=
			this.name =3D name;=0A=
		}=0A=
	});=0A=
	var myCat =3D new Cat('Micia');=0A=
	alert(myCat.name); //alerts 'Micia'=0A=
	(end)=0A=
*/=0A=
=0A=
var Class =3D function(properties){=0A=
	var klass =3D function(){=0A=
		return (arguments[0] !=3D=3D null && this.initialize && =
$type(this.initialize) =3D=3D 'function') ? this.initialize.apply(this, =
arguments) : this;=0A=
	};=0A=
	$extend(klass, this);=0A=
	klass.prototype =3D properties;=0A=
	klass.constructor =3D Class;=0A=
	return klass;=0A=
};=0A=
=0A=
/*=0A=
Property: empty=0A=
	Returns an empty function=0A=
*/=0A=
=0A=
Class.empty =3D function(){};=0A=
=0A=
Class.prototype =3D {=0A=
=0A=
	/*=0A=
	Property: extend=0A=
		Returns the copy of the Class extended with the passed in properties.=0A=
=0A=
	Arguments:=0A=
		properties - the properties to add to the base class in this new Class.=0A=
=0A=
	Example:=0A=
		(start code)=0A=
		var Animal =3D new Class({=0A=
			initialize: function(age){=0A=
				this.age =3D age;=0A=
			}=0A=
		});=0A=
		var Cat =3D Animal.extend({=0A=
			initialize: function(name, age){=0A=
				this.parent(age); //will call the previous initialize;=0A=
				this.name =3D name;=0A=
			}=0A=
		});=0A=
		var myCat =3D new Cat('Micia', 20);=0A=
		alert(myCat.name); //alerts 'Micia'=0A=
		alert(myCat.age); //alerts 20=0A=
		(end)=0A=
	*/=0A=
=0A=
	extend: function(properties){=0A=
		var proto =3D new this(null);=0A=
		for (var property in properties){=0A=
			var pp =3D proto[property];=0A=
			proto[property] =3D Class.Merge(pp, properties[property]);=0A=
		}=0A=
		return new Class(proto);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: implement=0A=
		Implements the passed in properties to the base Class prototypes, =
altering the base class, unlike <Class.extend>.=0A=
=0A=
	Arguments:=0A=
		properties - the properties to add to the base class.=0A=
=0A=
	Example:=0A=
		(start code)=0A=
		var Animal =3D new Class({=0A=
			initialize: function(age){=0A=
				this.age =3D age;=0A=
			}=0A=
		});=0A=
		Animal.implement({=0A=
			setName: function(name){=0A=
				this.name =3D name=0A=
			}=0A=
		});=0A=
		var myAnimal =3D new Animal(20);=0A=
		myAnimal.setName('Micia');=0A=
		alert(myAnimal.name); //alerts 'Micia'=0A=
		(end)=0A=
	*/=0A=
=0A=
	implement: function(){=0A=
		for (var i =3D 0, l =3D arguments.length; i < l; i++) =
$extend(this.prototype, arguments[i]);=0A=
	}=0A=
=0A=
};=0A=
=0A=
//internal=0A=
=0A=
Class.Merge =3D function(previous, current){=0A=
	if (previous && previous !=3D current){=0A=
		var type =3D $type(current);=0A=
		if (type !=3D $type(previous)) return current;=0A=
		switch(type){=0A=
			case 'function':=0A=
				var merged =3D function(){=0A=
					this.parent =3D arguments.callee.parent;=0A=
					return current.apply(this, arguments);=0A=
				};=0A=
				merged.parent =3D previous;=0A=
				return merged;=0A=
			case 'object': return $merge(previous, current);=0A=
		}=0A=
	}=0A=
	return current;=0A=
};=0A=
=0A=
/*=0A=
Script: Class.Extras.js=0A=
	Contains common implementations for custom classes. In Mootools is =
implemented in <Ajax>, <XHR> and <Fx.Base> and many more.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Chain=0A=
	An "Utility" Class. Its methods can be implemented with =
<Class.implement> into any <Class>.=0A=
	Currently implemented in <Fx.Base>, <XHR> and <Ajax>. In <Fx.Base> for =
example, is used to execute a list of function, one after another, once =
the effect is completed.=0A=
	The functions will not be fired all togheter, but one every completion, =
to create custom complex animations.=0A=
=0A=
Example:=0A=
	(start code)=0A=
	var myFx =3D new Fx.Style('element', 'opacity');=0A=
=0A=
	myFx.start(1,0).chain(function(){=0A=
		myFx.start(0,1);=0A=
	}).chain(function(){=0A=
		myFx.start(1,0);=0A=
	}).chain(function(){=0A=
		myFx.start(0,1);=0A=
	});=0A=
	//the element will appear and disappear three times=0A=
	(end)=0A=
*/=0A=
=0A=
var Chain =3D new Class({=0A=
=0A=
	/*=0A=
	Property: chain=0A=
		adds a function to the Chain instance stack.=0A=
=0A=
	Arguments:=0A=
		fn - the function to append.=0A=
	*/=0A=
=0A=
	chain: function(fn){=0A=
		this.chains =3D this.chains || [];=0A=
		this.chains.push(fn);=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: callChain=0A=
		Executes the first function of the Chain instance stack, then removes =
it. The first function will then become the second.=0A=
	*/=0A=
=0A=
	callChain: function(){=0A=
		if (this.chains && this.chains.length) this.chains.shift().delay(10, =
this);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: clearChain=0A=
		Clears the stack of a Chain instance.=0A=
	*/=0A=
=0A=
	clearChain: function(){=0A=
		this.chains =3D [];=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Class: Events=0A=
	An "Utility" Class. Its methods can be implemented with =
<Class.implement> into any <Class>.=0A=
	In <Fx.Base> Class, for example, is used to give the possibility add =
any number of functions to the Effects events, like onComplete, onStart, =
onCancel.=0A=
	Events in a Class that implements <Events> can be either added as an =
option, or with addEvent. Never with .options.onEventName.=0A=
=0A=
Example:=0A=
	(start code)=0A=
	var myFx =3D new Fx.Style('element', 'opacity').addEvent('onComplete', =
function(){=0A=
		alert('the effect is completed');=0A=
	}).addEvent('onComplete', function(){=0A=
		alert('I told you the effect is completed');=0A=
	});=0A=
=0A=
	myFx.start(0,1);=0A=
	//upon completion it will display the 2 alerts, in order.=0A=
	(end)=0A=
=0A=
Implementing:=0A=
	This class can be implemented into other classes to add the =
functionality to them.=0A=
	Goes well with the <Options> class.=0A=
=0A=
Example:=0A=
	(start code)=0A=
	var Widget =3D new Class({=0A=
		initialize: function(){},=0A=
		finish: function(){=0A=
			this.fireEvent('onComplete');=0A=
		}=0A=
	});=0A=
	Widget.implement(new Events);=0A=
	//later...=0A=
	var myWidget =3D new Widget();=0A=
	myWidget.addEvent('onComplete', myfunction);=0A=
	(end)=0A=
*/=0A=
=0A=
var Events =3D new Class({=0A=
=0A=
	/*=0A=
	Property: addEvent=0A=
		adds an event to the stack of events of the Class instance.=0A=
=0A=
	Arguments:=0A=
		type - string; the event name (e.g. 'onComplete')=0A=
		fn - function to execute=0A=
	*/=0A=
=0A=
	addEvent: function(type, fn){=0A=
		if (fn !=3D Class.empty){=0A=
			this.$events =3D this.$events || {};=0A=
			this.$events[type] =3D this.$events[type] || [];=0A=
			this.$events[type].include(fn);=0A=
		}=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: fireEvent=0A=
		fires all events of the specified type in the Class instance.=0A=
=0A=
	Arguments:=0A=
		type - string; the event name (e.g. 'onComplete')=0A=
		args - array or single object; arguments to pass to the function; if =
more than one argument, must be an array=0A=
		delay - (integer) delay (in ms) to wait to execute the event=0A=
=0A=
	Example:=0A=
	(start code)=0A=
	var Widget =3D new Class({=0A=
		initialize: function(arg1, arg2){=0A=
			...=0A=
			this.fireEvent("onInitialize", [arg1, arg2], 50);=0A=
		}=0A=
	});=0A=
	Widget.implement(new Events);=0A=
	(end)=0A=
	*/=0A=
=0A=
	fireEvent: function(type, args, delay){=0A=
		if (this.$events && this.$events[type]){=0A=
			this.$events[type].each(function(fn){=0A=
				fn.create({'bind': this, 'delay': delay, 'arguments': args})();=0A=
			}, this);=0A=
		}=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: removeEvent=0A=
		removes an event from the stack of events of the Class instance.=0A=
=0A=
	Arguments:=0A=
		type - string; the event name (e.g. 'onComplete')=0A=
		fn - function that was added=0A=
	*/=0A=
=0A=
	removeEvent: function(type, fn){=0A=
		if (this.$events && this.$events[type]) this.$events[type].remove(fn);=0A=
		return this;=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Class: Options=0A=
	An "Utility" Class. Its methods can be implemented with =
<Class.implement> into any <Class>.=0A=
	Used to automate the options settings, also adding Class <Events> when =
the option begins with on.=0A=
=0A=
	Example:=0A=
		(start code)=0A=
		var Widget =3D new Class({=0A=
			options: {=0A=
				color: '#fff',=0A=
				size: {=0A=
					width: 100=0A=
					height: 100=0A=
				}=0A=
			},=0A=
			initialize: function(options){=0A=
				this.setOptions(options);=0A=
			}=0A=
		});=0A=
		Widget.implement(new Options);=0A=
		//later...=0A=
		var myWidget =3D new Widget({=0A=
			color: '#f00',=0A=
			size: {=0A=
				width: 200=0A=
			}=0A=
		});=0A=
		//myWidget.options =3D {color: #f00, size: {width: 200, height: 100}}=0A=
		(end)=0A=
*/=0A=
=0A=
var Options =3D new Class({=0A=
=0A=
	/*=0A=
	Property: setOptions=0A=
		sets this.options=0A=
=0A=
	Arguments:=0A=
		defaults - object; the default set of options=0A=
		options - object; the user entered options. can be empty too.=0A=
=0A=
	Note:=0A=
		if your Class has <Events> implemented, every option beginning with =
on, followed by a capital letter (onComplete) becomes an Class instance =
event.=0A=
	*/=0A=
=0A=
	setOptions: function(){=0A=
		this.options =3D $merge.apply(null, [this.options].extend(arguments));=0A=
		if (this.addEvent){=0A=
			for (var option in this.options){=0A=
				if ($type(this.options[option] =3D=3D 'function') && =
(/^on[A-Z]/).test(option)) this.addEvent(option, this.options[option]);=0A=
			}=0A=
		}=0A=
		return this;=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Array.js=0A=
	Contains Array prototypes, <$A>, <$each>=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Array=0A=
	A collection of The Array Object prototype methods.=0A=
*/=0A=
=0A=
//custom methods=0A=
=0A=
Array.extend({=0A=
=0A=
	/*=0A=
	Property: forEach=0A=
		Iterates through an array; This method is only available for browsers =
without native *forEach* support.=0A=
		For more info see =
<http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Globa=
l_Objects:Array:forEach>=0A=
=0A=
		*forEach* executes the provided function (callback) once for each =
element present in the array. callback is invoked only for indexes of =
the array which have assigned values; it is not invoked for indexes =
which have been deleted or which have never been assigned values.=0A=
=0A=
	Arguments:=0A=
		fn - function to execute with each item in the array; passed the item =
and the index of that item in the array=0A=
		bind - the object to bind "this" to (see <Function.bind>)=0A=
=0A=
	Example:=0A=
		>['apple','banana','lemon'].each(function(item, index){=0A=
		>	alert(index + " =3D " + item); //alerts "0 =3D apple" etc.=0A=
		>}, bindObj); //optional second arg for binding, not used here=0A=
	*/=0A=
=0A=
	forEach: function(fn, bind){=0A=
		for (var i =3D 0, j =3D this.length; i < j; i++) fn.call(bind, =
this[i], i, this);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: filter=0A=
		This method is provided only for browsers without native *filter* =
support.=0A=
		For more info see =
<http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Objec=
ts:Array:filter>=0A=
=0A=
		*filter* calls a provided callback function once for each element in =
an array, and constructs a new array of all the values for which =
callback returns a true value. callback is invoked only for indexes of =
the array which have assigned values; it is not invoked for indexes =
which have been deleted or which have never been assigned values. Array =
elements which do not pass the callback test are simply skipped, and are =
not included in the new array.=0A=
=0A=
	Arguments:=0A=
		fn - function to execute with each item in the array; passed the item =
and the index of that item in the array=0A=
		bind - the object to bind "this" to (see <Function.bind>)=0A=
=0A=
	Example:=0A=
		>var biggerThanTwenty =3D [10,3,25,100].filter(function(item, index){=0A=
		> return item > 20;=0A=
		>});=0A=
		>//biggerThanTwenty =3D [25,100]=0A=
	*/=0A=
=0A=
	filter: function(fn, bind){=0A=
		var results =3D [];=0A=
		for (var i =3D 0, j =3D this.length; i < j; i++){=0A=
			if (fn.call(bind, this[i], i, this)) results.push(this[i]);=0A=
		}=0A=
		return results;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: map=0A=
		This method is provided only for browsers without native *map* support.=0A=
		For more info see =
<http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Globa=
l_Objects:Array:map>=0A=
=0A=
		*map* calls a provided callback function once for each element in an =
array, in order, and constructs a new array from the results. callback =
is invoked only for indexes of the array which have assigned values; it =
is not invoked for indexes which have been deleted or which have never =
been assigned values.=0A=
=0A=
	Arguments:=0A=
		fn - function to execute with each item in the array; passed the item =
and the index of that item in the array=0A=
		bind - the object to bind "this" to (see <Function.bind>)=0A=
=0A=
	Example:=0A=
		>var timesTwo =3D [1,2,3].map(function(item, index){=0A=
		> return item*2;=0A=
		>});=0A=
		>//timesTwo =3D [2,4,6];=0A=
	*/=0A=
=0A=
	map: function(fn, bind){=0A=
		var results =3D [];=0A=
		for (var i =3D 0, j =3D this.length; i < j; i++) results[i] =3D =
fn.call(bind, this[i], i, this);=0A=
		return results;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: every=0A=
		This method is provided only for browsers without native *every* =
support.=0A=
		For more info see =
<http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Globa=
l_Objects:Array:every>=0A=
=0A=
		*every* executes the provided callback function once for each element =
present in the array until it finds one where callback returns a false =
value. If such an element is found, the every method immediately returns =
false. Otherwise, if callback returned a true value for all elements, =
every will return true. callback is invoked only for indexes of the =
array which have assigned values; it is not invoked for indexes which =
have been deleted or which have never been assigned values.=0A=
=0A=
	Arguments:=0A=
		fn - function to execute with each item in the array; passed the item =
and the index of that item in the array=0A=
		bind - the object to bind "this" to (see <Function.bind>)=0A=
=0A=
	Example:=0A=
		>var areAllBigEnough =3D [10,4,25,100].every(function(item, index){=0A=
		> return item > 20;=0A=
		>});=0A=
		>//areAllBigEnough =3D false=0A=
	*/=0A=
=0A=
	every: function(fn, bind){=0A=
		for (var i =3D 0, j =3D this.length; i < j; i++){=0A=
			if (!fn.call(bind, this[i], i, this)) return false;=0A=
		}=0A=
		return true;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: some=0A=
		This method is provided only for browsers without native *some* =
support.=0A=
		For more info see =
<http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Globa=
l_Objects:Array:some>=0A=
=0A=
		*some* executes the callback function once for each element present in =
the array until it finds one where callback returns a true value. If =
such an element is found, some immediately returns true. Otherwise, some =
returns false. callback is invoked only for indexes of the array which =
have assigned values; it is not invoked for indexes which have been =
deleted or which have never been assigned values.=0A=
=0A=
	Arguments:=0A=
		fn - function to execute with each item in the array; passed the item =
and the index of that item in the array=0A=
		bind - the object to bind "this" to (see <Function.bind>)=0A=
=0A=
	Example:=0A=
		>var isAnyBigEnough =3D [10,4,25,100].some(function(item, index){=0A=
		> return item > 20;=0A=
		>});=0A=
		>//isAnyBigEnough =3D true=0A=
	*/=0A=
=0A=
	some: function(fn, bind){=0A=
		for (var i =3D 0, j =3D this.length; i < j; i++){=0A=
			if (fn.call(bind, this[i], i, this)) return true;=0A=
		}=0A=
		return false;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: indexOf=0A=
		This method is provided only for browsers without native *indexOf* =
support.=0A=
		For more info see =
<http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Globa=
l_Objects:Array:indexOf>=0A=
=0A=
		*indexOf* compares a search element to elements of the Array using =
strict equality (the same method used by the =3D=3D=3D, or =
triple-equals, operator).=0A=
=0A=
	Arguments:=0A=
		item - any type of object; element to locate in the array=0A=
		from - integer; optional; the index of the array at which to begin the =
search (defaults to 0)=0A=
=0A=
	Example:=0A=
		>['apple','lemon','banana'].indexOf('lemon'); //returns 1=0A=
		>['apple','lemon'].indexOf('banana'); //returns -1=0A=
	*/=0A=
=0A=
	indexOf: function(item, from){=0A=
		var len =3D this.length;=0A=
		for (var i =3D (from < 0) ? Math.max(0, len + from) : from || 0; i < =
len; i++){=0A=
			if (this[i] =3D=3D=3D item) return i;=0A=
		}=0A=
		return -1;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: each=0A=
		Same as <Array.forEach>.=0A=
=0A=
	Arguments:=0A=
		fn - function to execute with each item in the array; passed the item =
and the index of that item in the array=0A=
		bind - optional, the object that the "this" of the function will refer =
to.=0A=
=0A=
	Example:=0A=
		>var Animals =3D ['Cat', 'Dog', 'Coala'];=0A=
		>Animals.each(function(animal){=0A=
		>	document.write(animal)=0A=
		>});=0A=
	*/=0A=
=0A=
	/*=0A=
	Property: copy=0A=
		returns a copy of the array.=0A=
=0A=
	Returns:=0A=
		a new array which is a copy of the current one.=0A=
=0A=
	Arguments:=0A=
		start - integer; optional; the index where to start the copy, default =
is 0. If negative, it is taken as the offset from the end of the array.=0A=
		length - integer; optional; the number of elements to copy. By =
default, copies all elements from start to the end of the array.=0A=
=0A=
	Example:=0A=
		>var letters =3D ["a","b","c"];=0A=
		>var copy =3D letters.copy();		// ["a","b","c"] (new instance)=0A=
	*/=0A=
=0A=
	copy: function(start, length){=0A=
		start =3D start || 0;=0A=
		if (start < 0) start =3D this.length + start;=0A=
		length =3D length || (this.length - start);=0A=
		var newArray =3D [];=0A=
		for (var i =3D 0; i < length; i++) newArray[i] =3D this[start++];=0A=
		return newArray;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: remove=0A=
		Removes all occurrences of an item from the array.=0A=
=0A=
	Arguments:=0A=
		item - the item to remove=0A=
=0A=
	Returns:=0A=
		the Array with all occurrences of the item removed.=0A=
=0A=
	Example:=0A=
		>["1","2","3","2"].remove("2") // ["1","3"];=0A=
	*/=0A=
=0A=
	remove: function(item){=0A=
		var i =3D 0;=0A=
		var len =3D this.length;=0A=
		while (i < len){=0A=
			if (this[i] =3D=3D=3D item){=0A=
				this.splice(i, 1);=0A=
				len--;=0A=
			} else {=0A=
				i++;=0A=
			}=0A=
		}=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: contains=0A=
		Tests an array for the presence of an item.=0A=
=0A=
	Arguments:=0A=
		item - the item to search for in the array.=0A=
		from - integer; optional; the index at which to begin the search, =
default is 0. If negative, it is taken as the offset from the end of the =
array.=0A=
=0A=
	Returns:=0A=
		true - the item was found=0A=
		false - it wasn't=0A=
=0A=
	Example:=0A=
		>["a","b","c"].contains("a"); // true=0A=
		>["a","b","c"].contains("d"); // false=0A=
	*/=0A=
=0A=
	contains: function(item, from){=0A=
		return this.indexOf(item, from) !=3D -1;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: associate=0A=
		Creates an object with key-value pairs based on the array of keywords =
passed in=0A=
		and the current content of the array.=0A=
=0A=
	Arguments:=0A=
		keys - the array of keywords.=0A=
=0A=
	Example:=0A=
		(start code)=0A=
		var Animals =3D ['Cat', 'Dog', 'Coala', 'Lizard'];=0A=
		var Speech =3D ['Miao', 'Bau', 'Fruuu', 'Mute'];=0A=
		var Speeches =3D Animals.associate(Speech);=0A=
		//Speeches['Miao'] is now Cat.=0A=
		//Speeches['Bau'] is now Dog.=0A=
		//...=0A=
		(end)=0A=
	*/=0A=
=0A=
	associate: function(keys){=0A=
		var obj =3D {}, length =3D Math.min(this.length, keys.length);=0A=
		for (var i =3D 0; i < length; i++) obj[keys[i]] =3D this[i];=0A=
		return obj;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: extend=0A=
		Extends an array with another one.=0A=
=0A=
	Arguments:=0A=
		array - the array to extend ours with=0A=
=0A=
	Example:=0A=
		>var Animals =3D ['Cat', 'Dog', 'Coala'];=0A=
		>Animals.extend(['Lizard']);=0A=
		>//Animals is now: ['Cat', 'Dog', 'Coala', 'Lizard'];=0A=
	*/=0A=
=0A=
	extend: function(array){=0A=
		for (var i =3D 0, j =3D array.length; i < j; i++) this.push(array[i]);=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: merge=0A=
		merges an array in another array, without duplicates. (case- and =
type-sensitive)=0A=
=0A=
	Arguments:=0A=
		array - the array to merge from.=0A=
=0A=
	Example:=0A=
		>['Cat','Dog'].merge(['Dog','Coala']); //returns ['Cat','Dog','Coala']=0A=
	*/=0A=
=0A=
	merge: function(array){=0A=
		for (var i =3D 0, l =3D array.length; i < l; i++) =
this.include(array[i]);=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: include=0A=
		includes the passed in element in the array, only if its not already =
present. (case- and type-sensitive)=0A=
=0A=
	Arguments:=0A=
		item - item to add to the array (if not present)=0A=
=0A=
	Example:=0A=
		>['Cat','Dog'].include('Dog'); //returns ['Cat','Dog']=0A=
		>['Cat','Dog'].include('Coala'); //returns ['Cat','Dog','Coala']=0A=
	*/=0A=
=0A=
	include: function(item){=0A=
		if (!this.contains(item)) this.push(item);=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getRandom=0A=
		returns a random item in the Array=0A=
	*/=0A=
=0A=
	getRandom: function(){=0A=
		return this[$random(0, this.length - 1)] || null;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getLast=0A=
		returns the last item in the Array=0A=
	*/=0A=
=0A=
	getLast: function(){=0A=
		return this[this.length - 1] || null;=0A=
	}=0A=
=0A=
});=0A=
=0A=
//copies=0A=
=0A=
Array.prototype.each =3D Array.prototype.forEach;=0A=
Array.each =3D Array.forEach;=0A=
=0A=
/* Section: Utility Functions */=0A=
=0A=
/*=0A=
Function: $A()=0A=
	Same as <Array.copy>, but as function.=0A=
	Useful to apply Array prototypes to iterable objects, as a collection =
of DOM elements or the arguments object.=0A=
=0A=
Example:=0A=
	(start code)=0A=
	function myFunction(){=0A=
		$A(arguments).each(argument, function(){=0A=
			alert(argument);=0A=
		});=0A=
	};=0A=
	//the above will alert all the arguments passed to the function =
myFunction.=0A=
	(end)=0A=
*/=0A=
=0A=
function $A(array){=0A=
	return Array.copy(array);=0A=
};=0A=
=0A=
/*=0A=
Function: $each=0A=
	Use to iterate through iterables that are not regular arrays, such as =
builtin getElementsByTagName calls, arguments of a function, or an =
object.=0A=
=0A=
Arguments:=0A=
	iterable - an iterable element or an objct.=0A=
	function - function to apply to the iterable.=0A=
	bind - optional, the 'this' of the function will refer to this object.=0A=
=0A=
Function argument:=0A=
	The function argument will be passed the following arguments.=0A=
=0A=
	item - the current item in the iterator being procesed=0A=
	index - integer; the index of the item, or key in case of an object.=0A=
=0A=
Examples:=0A=
	(start code)=0A=
	$each(['Sun','Mon','Tue'], function(day, index){=0A=
		alert('name:' + day + ', index: ' + index);=0A=
	});=0A=
	//alerts "name: Sun, index: 0", "name: Mon, index: 1", etc.=0A=
	//over an object=0A=
	$each({first: "Sunday", second: "Monday", third: "Tuesday"}, =
function(value, key){=0A=
		alert("the " + key + " day of the week is " + value);=0A=
	});=0A=
	//alerts "the first day of the week is Sunday",=0A=
	//"the second day of the week is Monday", etc.=0A=
	(end)=0A=
*/=0A=
=0A=
function $each(iterable, fn, bind){=0A=
	if (iterable && typeof iterable.length =3D=3D 'number' && =
$type(iterable) !=3D 'object'){=0A=
		Array.forEach(iterable, fn, bind);=0A=
	} else {=0A=
		 for (var name in iterable) fn.call(bind || iterable, iterable[name], =
name);=0A=
	}=0A=
};=0A=
=0A=
/*compatibility*/=0A=
=0A=
Array.prototype.test =3D Array.prototype.contains;=0A=
=0A=
/*end compatibility*/=0A=
=0A=
/*=0A=
Script: String.js=0A=
	Contains String prototypes.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: String=0A=
	A collection of The String Object prototype methods.=0A=
*/=0A=
=0A=
String.extend({=0A=
=0A=
	/*=0A=
	Property: test=0A=
		Tests a string with a regular expression.=0A=
=0A=
	Arguments:=0A=
		regex - a string or regular expression object, the regular expression =
you want to match the string with=0A=
		params - optional, if first parameter is a string, any parameters you =
want to pass to the regex ('g' has no effect)=0A=
=0A=
	Returns:=0A=
		true if a match for the regular expression is found in the string, =
false if not.=0A=
		See =
<http://developer.mozilla.org/en/docs/Core_JavaScript_1.5_Reference:Objec=
ts:RegExp:test>=0A=
=0A=
	Example:=0A=
		>"I like cookies".test("cookie"); // returns true=0A=
		>"I like cookies".test("COOKIE", "i") // ignore case, returns true=0A=
		>"I like cookies".test("cake"); // returns false=0A=
	*/=0A=
=0A=
	test: function(regex, params){=0A=
		return (($type(regex) =3D=3D 'string') ? new RegExp(regex, params) : =
regex).test(this);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: toInt=0A=
		parses a string to an integer.=0A=
=0A=
	Returns:=0A=
		either an int or "NaN" if the string is not a number.=0A=
=0A=
	Example:=0A=
		>var value =3D "10px".toInt(); // value is 10=0A=
	*/=0A=
=0A=
	toInt: function(){=0A=
		return parseInt(this, 10);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: toFloat=0A=
		parses a string to an float.=0A=
=0A=
	Returns:=0A=
		either a float or "NaN" if the string is not a number.=0A=
=0A=
	Example:=0A=
		>var value =3D "10.848".toFloat(); // value is 10.848=0A=
	*/=0A=
=0A=
	toFloat: function(){=0A=
		return parseFloat(this);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: camelCase=0A=
		Converts a hiphenated string to a camelcase string.=0A=
=0A=
	Example:=0A=
		>"I-like-cookies".camelCase(); //"ILikeCookies"=0A=
=0A=
	Returns:=0A=
		the camel cased string=0A=
	*/=0A=
=0A=
	camelCase: function(){=0A=
		return this.replace(/-\D/g, function(match){=0A=
			return match.charAt(1).toUpperCase();=0A=
		});=0A=
	},=0A=
=0A=
	/*=0A=
	Property: hyphenate=0A=
		Converts a camelCased string to a hyphen-ated string.=0A=
=0A=
	Example:=0A=
		>"ILikeCookies".hyphenate(); //"I-like-cookies"=0A=
	*/=0A=
=0A=
	hyphenate: function(){=0A=
		return this.replace(/\w[A-Z]/g, function(match){=0A=
			return (match.charAt(0) + '-' + match.charAt(1).toLowerCase());=0A=
		});=0A=
	},=0A=
=0A=
	/*=0A=
	Property: capitalize=0A=
		Converts the first letter in each word of a string to Uppercase.=0A=
=0A=
	Example:=0A=
		>"i like cookies".capitalize(); //"I Like Cookies"=0A=
=0A=
	Returns:=0A=
		the capitalized string=0A=
	*/=0A=
=0A=
	capitalize: function(){=0A=
		return this.replace(/\b[a-z]/g, function(match){=0A=
			return match.toUpperCase();=0A=
		});=0A=
	},=0A=
=0A=
	/*=0A=
	Property: trim=0A=
		Trims the leading and trailing spaces off a string.=0A=
=0A=
	Example:=0A=
		>"    i like cookies     ".trim() //"i like cookies"=0A=
=0A=
	Returns:=0A=
		the trimmed string=0A=
	*/=0A=
=0A=
	trim: function(){=0A=
		return this.replace(/^\s+|\s+$/g, '');=0A=
	},=0A=
=0A=
	/*=0A=
	Property: clean=0A=
		trims (<String.trim>) a string AND removes all the double spaces in a =
string.=0A=
=0A=
	Returns:=0A=
		the cleaned string=0A=
=0A=
	Example:=0A=
		>" i      like     cookies      \n\n".clean() //"i like cookies"=0A=
	*/=0A=
=0A=
	clean: function(){=0A=
		return this.replace(/\s{2,}/g, ' ').trim();=0A=
	},=0A=
=0A=
	/*=0A=
	Property: rgbToHex=0A=
		Converts an RGB value to hexidecimal. The string must be in the format =
of "rgb(255,255,255)" or "rgba(255,255,255,1)";=0A=
=0A=
	Arguments:=0A=
		array - boolean value, defaults to false. Use true if you want the =
array ['FF','33','00'] as output instead of "#FF3300"=0A=
=0A=
	Returns:=0A=
		hex string or array. returns "transparent" if the output is set as =
string and the fourth value of rgba in input string is 0.=0A=
=0A=
	Example:=0A=
		>"rgb(17,34,51)".rgbToHex(); //"#112233"=0A=
		>"rgba(17,34,51,0)".rgbToHex(); //"transparent"=0A=
		>"rgb(17,34,51)".rgbToHex(true); //['11','22','33']=0A=
	*/=0A=
=0A=
	rgbToHex: function(array){=0A=
		var rgb =3D this.match(/\d{1,3}/g);=0A=
		return (rgb) ? rgb.rgbToHex(array) : false;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: hexToRgb=0A=
		Converts a hexidecimal color value to RGB. Input string must be the =
hex color value (with or without the hash). Also accepts triplets =
('333');=0A=
=0A=
	Arguments:=0A=
		array - boolean value, defaults to false. Use true if you want the =
array [255,255,255] as output instead of "rgb(255,255,255)";=0A=
=0A=
	Returns:=0A=
		rgb string or array.=0A=
=0A=
	Example:=0A=
		>"#112233".hexToRgb(); //"rgb(17,34,51)"=0A=
		>"#112233".hexToRgb(true); //[17,34,51]=0A=
	*/=0A=
=0A=
	hexToRgb: function(array){=0A=
		var hex =3D this.match(/^#?(\w{1,2})(\w{1,2})(\w{1,2})$/);=0A=
		return (hex) ? hex.slice(1).hexToRgb(array) : false;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: contains=0A=
		checks if the passed in string is contained in the String. also =
accepts an optional second parameter, to check if the string is =
contained in a list of separated values.=0A=
=0A=
	Example:=0A=
		>'a b c'.contains('c', ' '); //true=0A=
		>'a bc'.contains('bc'); //true=0A=
		>'a bc'.contains('b', ' '); //false=0A=
	*/=0A=
=0A=
	contains: function(string, s){=0A=
		return (s) ? (s + this + s).indexOf(s + string + s) > -1 : =
this.indexOf(string) > -1;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: escapeRegExp=0A=
		Returns string with escaped regular expression characters=0A=
=0A=
	Example:=0A=
		>var search =3D 'animals.sheeps[1]'.escapeRegExp(); // search is now =
'animals\.sheeps\[1\]'=0A=
=0A=
	Returns:=0A=
		Escaped string=0A=
	*/=0A=
=0A=
	escapeRegExp: function(){=0A=
		return this.replace(/([.*+?^${}()|[\]\/\\])/g, '\\$1');=0A=
	}=0A=
=0A=
});=0A=
=0A=
Array.extend({=0A=
=0A=
	/*=0A=
	Property: rgbToHex=0A=
		see <String.rgbToHex>, but as an array method.=0A=
	*/=0A=
=0A=
	rgbToHex: function(array){=0A=
		if (this.length < 3) return false;=0A=
		if (this.length =3D=3D 4 && this[3] =3D=3D 0 && !array) return =
'transparent';=0A=
		var hex =3D [];=0A=
		for (var i =3D 0; i < 3; i++){=0A=
			var bit =3D (this[i] - 0).toString(16);=0A=
			hex.push((bit.length =3D=3D 1) ? '0' + bit : bit);=0A=
		}=0A=
		return array ? hex : '#' + hex.join('');=0A=
	},=0A=
=0A=
	/*=0A=
	Property: hexToRgb=0A=
		same as <String.hexToRgb>, but as an array method.=0A=
	*/=0A=
=0A=
	hexToRgb: function(array){=0A=
		if (this.length !=3D 3) return false;=0A=
		var rgb =3D [];=0A=
		for (var i =3D 0; i < 3; i++){=0A=
			rgb.push(parseInt((this[i].length =3D=3D 1) ? this[i] + this[i] : =
this[i], 16));=0A=
		}=0A=
		return array ? rgb : 'rgb(' + rgb.join(',') + ')';=0A=
	}=0A=
=0A=
});=0A=
=0A=
/* =0A=
Script: Function.js=0A=
	Contains Function prototypes and utility functions .=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
=0A=
Credits:=0A=
	- Some functions are inspired by those found in prototype.js =
<http://prototype.conio.net/> (c) 2005 Sam Stephenson sam [at] conio =
[dot] net, MIT-style license=0A=
*/=0A=
=0A=
/*=0A=
Class: Function=0A=
	A collection of The Function Object prototype methods.=0A=
*/=0A=
=0A=
Function.extend({=0A=
=0A=
	/*=0A=
	Property: create=0A=
		Main function to create closures.=0A=
=0A=
	Returns:=0A=
		a function.=0A=
=0A=
	Arguments:=0A=
		options - An Options object.=0A=
=0A=
	Options:=0A=
		bind - The object that the "this" of the function will refer to. =
Default is the current function.=0A=
		event - If set to true, the function will act as an event listener and =
receive an event as first argument.=0A=
				If set to a class name, the function will receive a new instance of =
this class (with the event passed as argument's constructor) as first =
argument.=0A=
				Default is false.=0A=
		arguments - A single argument or array of arguments that will be =
passed to the function when called.=0A=
		=0A=
					If both the event and arguments options are set, the event is =
passed as first argument and the arguments array will follow.=0A=
					=0A=
					Default is no custom arguments, the function will receive the =
standard arguments when called.=0A=
					=0A=
		delay - Numeric value: if set, the returned function will delay the =
actual execution by this amount of milliseconds and return a timer =
handle when called.=0A=
				Default is no delay.=0A=
		periodical - Numeric value: if set, the returned function will =
periodically perform the actual execution with this specified interval =
and return a timer handle when called.=0A=
				Default is no periodical execution.=0A=
		attempt - If set to true, the returned function will try to execute =
and return either the results or false on error. Default is false.=0A=
	*/=0A=
=0A=
	create: function(options){=0A=
		var fn =3D this;=0A=
		options =3D $merge({=0A=
			'bind': fn,=0A=
			'event': false,=0A=
			'arguments': null,=0A=
			'delay': false,=0A=
			'periodical': false,=0A=
			'attempt': false=0A=
		}, options);=0A=
		if ($chk(options.arguments) && $type(options.arguments) !=3D 'array') =
options.arguments =3D [options.arguments];=0A=
		return function(event){=0A=
			var args;=0A=
			if (options.event){=0A=
				event =3D event || window.event;=0A=
				args =3D [(options.event =3D=3D=3D true) ? event : new =
options.event(event)];=0A=
				if (options.arguments) args.extend(options.arguments);=0A=
			}=0A=
			else args =3D options.arguments || arguments;=0A=
			var returns =3D function(){=0A=
				return fn.apply($pick(options.bind, fn), args);=0A=
			};=0A=
			if (options.delay) return setTimeout(returns, options.delay);=0A=
			if (options.periodical) return setInterval(returns, =
options.periodical);=0A=
			if (options.attempt) try {return returns();} catch(err){return =
false;};=0A=
			return returns();=0A=
		};=0A=
	},=0A=
=0A=
	/*=0A=
	Property: pass=0A=
		Shortcut to create closures with arguments and bind.=0A=
=0A=
	Returns:=0A=
		a function.=0A=
=0A=
	Arguments:=0A=
		args - the arguments passed. must be an array if arguments > 1=0A=
		bind - optional, the object that the "this" of the function will refer =
to.=0A=
=0A=
	Example:=0A=
		>myFunction.pass([arg1, arg2], myElement);=0A=
	*/=0A=
=0A=
	pass: function(args, bind){=0A=
		return this.create({'arguments': args, 'bind': bind});=0A=
	},=0A=
=0A=
	/*=0A=
	Property: attempt=0A=
		Tries to execute the function, returns either the result of the =
function or false on error.=0A=
=0A=
	Arguments:=0A=
		args - the arguments passed. must be an array if arguments > 1=0A=
		bind - optional, the object that the "this" of the function will refer =
to.=0A=
=0A=
	Example:=0A=
		>myFunction.attempt([arg1, arg2], myElement);=0A=
	*/=0A=
=0A=
	attempt: function(args, bind){=0A=
		return this.create({'arguments': args, 'bind': bind, 'attempt': =
true})();=0A=
	},=0A=
=0A=
	/*=0A=
	Property: bind=0A=
		method to easily create closures with "this" altered.=0A=
=0A=
	Arguments:=0A=
		bind - optional, the object that the "this" of the function will refer =
to.=0A=
		args - optional, the arguments passed. must be an array if arguments > =
1=0A=
=0A=
	Returns:=0A=
		a function.=0A=
=0A=
	Example:=0A=
		>function myFunction(){=0A=
		>	this.setStyle('color', 'red');=0A=
		>	// note that 'this' here refers to myFunction, not an element=0A=
		>	// we'll need to bind this function to the element we want to alter=0A=
		>};=0A=
		>var myBoundFunction =3D myFunction.bind(myElement);=0A=
		>myBoundFunction(); // this will make the element myElement red.=0A=
	*/=0A=
=0A=
	bind: function(bind, args){=0A=
		return this.create({'bind': bind, 'arguments': args});=0A=
	},=0A=
=0A=
	/*=0A=
	Property: bindAsEventListener=0A=
		cross browser method to pass event firer=0A=
=0A=
	Arguments:=0A=
		bind - optional, the object that the "this" of the function will refer =
to.=0A=
		args - optional, the arguments passed. must be an array if arguments > =
1=0A=
=0A=
	Returns:=0A=
		a function with the parameter bind as its "this" and as a pre-passed =
argument event or window.event, depending on the browser.=0A=
=0A=
	Example:=0A=
		>function myFunction(event){=0A=
		>	alert(event.clientx) //returns the coordinates of the mouse..=0A=
		>};=0A=
		>myElement.onclick =3D myFunction.bindAsEventListener(myElement);=0A=
	*/=0A=
=0A=
	bindAsEventListener: function(bind, args){=0A=
		return this.create({'bind': bind, 'event': true, 'arguments': args});=0A=
	},=0A=
=0A=
	/*=0A=
	Property: delay=0A=
		Delays the execution of a function by a specified duration.=0A=
=0A=
	Arguments:=0A=
		delay - the duration to wait in milliseconds.=0A=
		bind - optional, the object that the "this" of the function will refer =
to.=0A=
		args - optional, the arguments passed. must be an array if arguments > =
1=0A=
=0A=
	Example:=0A=
		>myFunction.delay(50, myElement) //wait 50 milliseconds, then call =
myFunction and bind myElement to it=0A=
		>(function(){alert('one second later...')}).delay(1000); //wait a =
second and alert=0A=
	*/=0A=
=0A=
	delay: function(delay, bind, args){=0A=
		return this.create({'delay': delay, 'bind': bind, 'arguments': =
args})();=0A=
	},=0A=
=0A=
	/*=0A=
	Property: periodical=0A=
		Executes a function in the specified intervals of time=0A=
=0A=
	Arguments:=0A=
		interval - the duration of the intervals between executions.=0A=
		bind - optional, the object that the "this" of the function will refer =
to.=0A=
		args - optional, the arguments passed. must be an array if arguments > =
1=0A=
	*/=0A=
=0A=
	periodical: function(interval, bind, args){=0A=
		return this.create({'periodical': interval, 'bind': bind, 'arguments': =
args})();=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Number.js=0A=
	Contains the Number prototypes.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Number=0A=
	A collection of The Number Object prototype methods.=0A=
*/=0A=
=0A=
Number.extend({=0A=
=0A=
	/*=0A=
	Property: toInt=0A=
		Returns this number; useful because toInt must work on both Strings =
and Numbers.=0A=
	*/=0A=
=0A=
	toInt: function(){=0A=
		return parseInt(this);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: toFloat=0A=
		Returns this number as a float; useful because toFloat must work on =
both Strings and Numbers.=0A=
	*/=0A=
=0A=
	toFloat: function(){=0A=
		return parseFloat(this);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: limit=0A=
		Limits the number.=0A=
=0A=
	Arguments:=0A=
		min - number, minimum value=0A=
		max - number, maximum value=0A=
=0A=
	Returns:=0A=
		the number in the given limits.=0A=
=0A=
	Example:=0A=
		>(12).limit(2, 6.5)  // returns 6.5=0A=
		>(-4).limit(2, 6.5)  // returns 2=0A=
		>(4.3).limit(2, 6.5) // returns 4.3=0A=
	*/=0A=
=0A=
	limit: function(min, max){=0A=
		return Math.min(max, Math.max(min, this));=0A=
	},=0A=
=0A=
	/*=0A=
	Property: round=0A=
		Returns the number rounded to specified precision.=0A=
=0A=
	Arguments:=0A=
		precision - integer, number of digits after the decimal point. Can =
also be negative or zero (default).=0A=
=0A=
	Example:=0A=
		>12.45.round() // returns 12=0A=
		>12.45.round(1) // returns 12.5=0A=
		>12.45.round(-1) // returns 10=0A=
=0A=
	Returns:=0A=
		The rounded number.=0A=
	*/=0A=
=0A=
	round: function(precision){=0A=
		precision =3D Math.pow(10, precision || 0);=0A=
		return Math.round(this * precision) / precision;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: times=0A=
		Executes a passed in function the specified number of times=0A=
=0A=
	Arguments:=0A=
		function - the function to be executed on each iteration of the loop=0A=
=0A=
	Example:=0A=
		>(4).times(alert);=0A=
	*/=0A=
=0A=
	times: function(fn){=0A=
		for (var i =3D 0; i < this; i++) fn(i);=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Element.js=0A=
	Contains useful Element prototypes, to be used with the dollar function =
<$>.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
=0A=
Credits:=0A=
	- Some functions are inspired by those found in prototype.js =
<http://prototype.conio.net/> (c) 2005 Sam Stephenson sam [at] conio =
[dot] net, MIT-style license=0A=
*/=0A=
=0A=
/*=0A=
Class: Element=0A=
	Custom class to allow all of its methods to be used with any DOM =
element via the dollar function <$>.=0A=
*/=0A=
=0A=
var Element =3D new Class({=0A=
=0A=
	/*=0A=
	Property: initialize=0A=
		Creates a new element of the type passed in.=0A=
=0A=
	Arguments:=0A=
		el - string; the tag name for the element you wish to create. you can =
also pass in an element reference, in which case it will be extended.=0A=
		props - object; the properties you want to add to your element.=0A=
		Accepts the same keys as <Element.setProperties>, but also allows =
events and styles=0A=
=0A=
	Props:=0A=
		the key styles will be used as setStyles, the key events will be used =
as addEvents. any other key is used as setProperty.=0A=
=0A=
	Example:=0A=
		(start code)=0A=
		new Element('a', {=0A=
			'styles': {=0A=
				'display': 'block',=0A=
				'border': '1px solid black'=0A=
			},=0A=
			'events': {=0A=
				'click': function(){=0A=
					//aaa=0A=
				},=0A=
				'mousedown': function(){=0A=
					//aaa=0A=
				}=0A=
			},=0A=
			'class': 'myClassSuperClass',=0A=
			'href': 'http://mad4milk.net'=0A=
		});=0A=
=0A=
		(end)=0A=
	*/=0A=
=0A=
	initialize: function(el, props){=0A=
		if ($type(el) =3D=3D 'string'){=0A=
			if (window.ie && props && (props.name || props.type)){=0A=
				var name =3D (props.name) ? ' name=3D"' + props.name + '"' : '';=0A=
				var type =3D (props.type) ? ' type=3D"' + props.type + '"' : '';=0A=
				delete props.name;=0A=
				delete props.type;=0A=
				el =3D '<' + el + name + type + '>';=0A=
			}=0A=
			el =3D document.createElement(el);=0A=
		}=0A=
		el =3D $(el);=0A=
		return (!props || !el) ? el : el.set(props);=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Class: Elements=0A=
	- Every dom function such as <$$>, or in general every function that =
returns a collection of nodes in mootools, returns them as an Elements =
class.=0A=
	- The purpose of the Elements class is to allow <Element> methods to =
work also on <Elements> array.=0A=
	- Elements is also an Array, so it accepts all the <Array> methods.=0A=
	- Every node of the Elements instance is already extended with <$>.=0A=
=0A=
Example:=0A=
	>$$('myselector').each(function(el){=0A=
	> //...=0A=
	>});=0A=
=0A=
	some iterations here, $$('myselector') is also an array.=0A=
=0A=
	>$$('myselector').setStyle('color', 'red');=0A=
	every element returned by $$('myselector') also accepts <Element> =
methods, in this example every element will be made red.=0A=
*/=0A=
=0A=
var Elements =3D new Class({=0A=
=0A=
	initialize: function(elements){=0A=
		return (elements) ? $extend(elements, this) : this;=0A=
	}=0A=
=0A=
});=0A=
=0A=
Elements.extend =3D function(props){=0A=
	for (var prop in props){=0A=
		this.prototype[prop] =3D props[prop];=0A=
		this[prop] =3D $native.generic(prop);=0A=
	}=0A=
};=0A=
=0A=
/*=0A=
Section: Utility Functions=0A=
=0A=
Function: $=0A=
	returns the element passed in with all the Element prototypes applied.=0A=
=0A=
Arguments:=0A=
	el - a reference to an actual element or a string representing the id =
of an element=0A=
=0A=
Example:=0A=
	>$('myElement') // gets a DOM element by id with all the Element =
prototypes applied.=0A=
	>var div =3D document.getElementById('myElement');=0A=
	>$(div) //returns an Element also with all the mootools extentions =
applied.=0A=
=0A=
	You'll use this when you aren't sure if a variable is an actual element =
or an id, as=0A=
	well as just shorthand for document.getElementById().=0A=
=0A=
Returns:=0A=
	a DOM element or false (if no id was found).=0A=
=0A=
Note:=0A=
	you need to call $ on an element only once to get all the prototypes.=0A=
	But its no harm to call it multiple times, as it will detect if it has =
been already extended.=0A=
*/=0A=
=0A=
function $(el){=0A=
	if (!el) return null;=0A=
	if (el.htmlElement) return Garbage.collect(el);=0A=
	if ([window, document].contains(el)) return el;=0A=
	var type =3D $type(el);=0A=
	if (type =3D=3D 'string'){=0A=
		el =3D document.getElementById(el);=0A=
		type =3D (el) ? 'element' : false;=0A=
	}=0A=
	if (type !=3D 'element') return null;=0A=
	if (el.htmlElement) return Garbage.collect(el);=0A=
	if (['object', 'embed'].contains(el.tagName.toLowerCase())) return el;=0A=
	$extend(el, Element.prototype);=0A=
	el.htmlElement =3D function(){};=0A=
	return Garbage.collect(el);=0A=
};=0A=
=0A=
/*=0A=
Function: $$=0A=
	Selects, and extends DOM elements. Elements arrays returned with $$ =
will also accept all the <Element> methods.=0A=
	The return type of element methods run through $$ is always an array. =
If the return array is only made by elements,=0A=
	$$ will be applied automatically.=0A=
=0A=
Arguments:=0A=
	HTML Collections, arrays of elements, arrays of strings as element ids, =
elements, strings as selectors.=0A=
	Any number of the above as arguments are accepted.=0A=
=0A=
Note:=0A=
	if you load <Element.Selectors.js>, $$ will also accept CSS Selectors, =
otherwise the only selectors supported are tag names.=0A=
=0A=
Example:=0A=
	>$$('a') //an array of all anchor tags on the page=0A=
	>$$('a', 'b') //an array of all anchor and bold tags on the page=0A=
	>$$('#myElement') //array containing only the element with id =3D =
myElement. (only with <Element.Selectors.js>)=0A=
	>$$('#myElement a.myClass') //an array of all anchor tags with the =
class "myClass"=0A=
	>//within the DOM element with id "myElement" (only with =
<Element.Selectors.js>)=0A=
	>$$(myelement, myelement2, 'a', ['myid', myid2, 'myid3'], =
document.getElementsByTagName('div')) //an array containing:=0A=
	>// the element referenced as myelement if existing,=0A=
	>// the element referenced as myelement2 if existing,=0A=
	>// all the elements with a as tag in the page,=0A=
	>// the element with id =3D myid if existing=0A=
	>// the element with id =3D myid2 if existing=0A=
	>// the element with id =3D myid3 if existing=0A=
	>// all the elements with div as tag in the page=0A=
=0A=
Returns:=0A=
	array - array of all the dom elements matched, extended with <$>.  =
Returns as <Elements>.=0A=
*/=0A=
=0A=
document.getElementsBySelector =3D document.getElementsByTagName;=0A=
=0A=
function $$(){=0A=
	var elements =3D [];=0A=
	for (var i =3D 0, j =3D arguments.length; i < j; i++){=0A=
		var selector =3D arguments[i];=0A=
		switch($type(selector)){=0A=
			case 'element': elements.push(selector);=0A=
			case 'boolean': break;=0A=
			case false: break;=0A=
			case 'string': selector =3D document.getElementsBySelector(selector, =
true);=0A=
			default: elements.extend(selector);=0A=
		}=0A=
	}=0A=
	return $$.unique(elements);=0A=
};=0A=
=0A=
$$.unique =3D function(array){=0A=
	var elements =3D [];=0A=
	for (var i =3D 0, l =3D array.length; i < l; i++){=0A=
		if (array[i].$included) continue;=0A=
		var element =3D $(array[i]);=0A=
		if (element && !element.$included){=0A=
			element.$included =3D true;=0A=
			elements.push(element);=0A=
		}=0A=
	}=0A=
	for (var n =3D 0, d =3D elements.length; n < d; n++) =
elements[n].$included =3D null;=0A=
	return new Elements(elements);=0A=
};=0A=
=0A=
Elements.Multi =3D function(property){=0A=
	return function(){=0A=
		var args =3D arguments;=0A=
		var items =3D [];=0A=
		var elements =3D true;=0A=
		for (var i =3D 0, j =3D this.length, returns; i < j; i++){=0A=
			returns =3D this[i][property].apply(this[i], args);=0A=
			if ($type(returns) !=3D 'element') elements =3D false;=0A=
			items.push(returns);=0A=
		};=0A=
		return (elements) ? $$.unique(items) : items;=0A=
	};=0A=
};=0A=
=0A=
Element.extend =3D function(properties){=0A=
	for (var property in properties){=0A=
		HTMLElement.prototype[property] =3D properties[property];=0A=
		Element.prototype[property] =3D properties[property];=0A=
		Element[property] =3D $native.generic(property);=0A=
		var elementsProperty =3D (Array.prototype[property]) ? property + =
'Elements' : property;=0A=
		Elements.prototype[elementsProperty] =3D Elements.Multi(property);=0A=
	}=0A=
};=0A=
=0A=
/*=0A=
Class: Element=0A=
	Custom class to allow all of its methods to be used with any DOM =
element via the dollar function <$>.=0A=
*/=0A=
=0A=
Element.extend({=0A=
=0A=
	/*=0A=
	Property: set=0A=
		you can set events, styles and properties with this shortcut. same as =
calling new Element.=0A=
	*/=0A=
=0A=
	set: function(props){=0A=
		for (var prop in props){=0A=
			var val =3D props[prop];=0A=
			switch(prop){=0A=
				case 'styles': this.setStyles(val); break;=0A=
				case 'events': if (this.addEvents) this.addEvents(val); break;=0A=
				case 'properties': this.setProperties(val); break;=0A=
				default: this.setProperty(prop, val);=0A=
			}=0A=
		}=0A=
		return this;=0A=
	},=0A=
=0A=
	inject: function(el, where){=0A=
		el =3D $(el);=0A=
		switch(where){=0A=
			case 'before': el.parentNode.insertBefore(this, el); break;=0A=
			case 'after':=0A=
				var next =3D el.getNext();=0A=
				if (!next) el.parentNode.appendChild(this);=0A=
				else el.parentNode.insertBefore(this, next);=0A=
				break;=0A=
			case 'top':=0A=
				var first =3D el.firstChild;=0A=
				if (first){=0A=
					el.insertBefore(this, first);=0A=
					break;=0A=
				}=0A=
			default: el.appendChild(this);=0A=
		}=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: injectBefore=0A=
		Inserts the Element before the passed element.=0A=
=0A=
	Arguments:=0A=
		el - an element reference or the id of the element to be injected in.=0A=
=0A=
	Example:=0A=
		>html:=0A=
		><div id=3D"myElement"></div>=0A=
		><div id=3D"mySecondElement"></div>=0A=
		>js:=0A=
		>$('mySecondElement').injectBefore('myElement');=0A=
		>resulting html:=0A=
		><div id=3D"mySecondElement"></div>=0A=
		><div id=3D"myElement"></div>=0A=
	*/=0A=
=0A=
	injectBefore: function(el){=0A=
		return this.inject(el, 'before');=0A=
	},=0A=
=0A=
	/*=0A=
	Property: injectAfter=0A=
		Same as <Element.injectBefore>, but inserts the element after.=0A=
	*/=0A=
=0A=
	injectAfter: function(el){=0A=
		return this.inject(el, 'after');=0A=
	},=0A=
=0A=
	/*=0A=
	Property: injectInside=0A=
		Same as <Element.injectBefore>, but inserts the element inside.=0A=
	*/=0A=
=0A=
	injectInside: function(el){=0A=
		return this.inject(el, 'bottom');=0A=
	},=0A=
=0A=
	/*=0A=
	Property: injectTop=0A=
		Same as <Element.injectInside>, but inserts the element inside, at the =
top.=0A=
	*/=0A=
=0A=
	injectTop: function(el){=0A=
		return this.inject(el, 'top');=0A=
	},=0A=
=0A=
	/*=0A=
	Property: adopt=0A=
		Inserts the passed elements inside the Element.=0A=
=0A=
	Arguments:=0A=
		accepts elements references, element ids as string, selectors =
($$('stuff')) / array of elements, array of ids as strings and =
collections.=0A=
	*/=0A=
=0A=
	adopt: function(){=0A=
		var elements =3D [];=0A=
		$each(arguments, function(argument){=0A=
			elements =3D elements.concat(argument);=0A=
		});=0A=
		$$(elements).inject(this);=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: remove=0A=
		Removes the Element from the DOM.=0A=
=0A=
	Example:=0A=
		>$('myElement').remove() //bye bye=0A=
	*/=0A=
=0A=
	remove: function(){=0A=
		return this.parentNode.removeChild(this);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: clone=0A=
		Clones the Element and returns the cloned one.=0A=
=0A=
	Arguments:=0A=
		contents - boolean, when true the Element is cloned with childNodes, =
default true=0A=
=0A=
	Returns:=0A=
		the cloned element=0A=
=0A=
	Example:=0A=
		>var clone =3D $('myElement').clone().injectAfter('myElement');=0A=
		>//clones the Element and append the clone after the Element.=0A=
	*/=0A=
=0A=
	clone: function(contents){=0A=
		var el =3D $(this.cloneNode(contents !=3D=3D false));=0A=
		if (!el.$events) return el;=0A=
		el.$events =3D {};=0A=
		for (var type in this.$events) el.$events[type] =3D {=0A=
			'keys': $A(this.$events[type].keys),=0A=
			'values': $A(this.$events[type].values)=0A=
		};=0A=
		return el.removeEvents();=0A=
	},=0A=
=0A=
	/*=0A=
	Property: replaceWith=0A=
		Replaces the Element with an element passed.=0A=
=0A=
	Arguments:=0A=
		el - a string representing the element to be injected in (myElementId, =
or div), or an element reference.=0A=
		If you pass div or another tag, the element will be created.=0A=
=0A=
	Returns:=0A=
		the passed in element=0A=
=0A=
	Example:=0A=
		>$('myOldElement').replaceWith($('myNewElement')); //$('myOldElement') =
is gone, and $('myNewElement') is in its place.=0A=
	*/=0A=
=0A=
	replaceWith: function(el){=0A=
		el =3D $(el);=0A=
		this.parentNode.replaceChild(el, this);=0A=
		return el;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: appendText=0A=
		Appends text node to a DOM element.=0A=
=0A=
	Arguments:=0A=
		text - the text to append.=0A=
=0A=
	Example:=0A=
		><div id=3D"myElement">hey</div>=0A=
		>$('myElement').appendText(' howdy'); //myElement innerHTML is now =
"hey howdy"=0A=
	*/=0A=
=0A=
	appendText: function(text){=0A=
		this.appendChild(document.createTextNode(text));=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: hasClass=0A=
		Tests the Element to see if it has the passed in className.=0A=
=0A=
	Returns:=0A=
		true - the Element has the class=0A=
		false - it doesn't=0A=
=0A=
	Arguments:=0A=
		className - string; the class name to test.=0A=
=0A=
	Example:=0A=
		><div id=3D"myElement" class=3D"testClass"></div>=0A=
		>$('myElement').hasClass('testClass'); //returns true=0A=
	*/=0A=
=0A=
	hasClass: function(className){=0A=
		return this.className.contains(className, ' ');=0A=
	},=0A=
=0A=
	/*=0A=
	Property: addClass=0A=
		Adds the passed in class to the Element, if the element doesnt already =
have it.=0A=
=0A=
	Arguments:=0A=
		className - string; the class name to add=0A=
=0A=
	Example:=0A=
		><div id=3D"myElement" class=3D"testClass"></div>=0A=
		>$('myElement').addClass('newClass'); //<div id=3D"myElement" =
class=3D"testClass newClass"></div>=0A=
	*/=0A=
=0A=
	addClass: function(className){=0A=
		if (!this.hasClass(className)) this.className =3D (this.className + ' =
' + className).clean();=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: removeClass=0A=
		Works like <Element.addClass>, but removes the class from the element.=0A=
	*/=0A=
=0A=
	removeClass: function(className){=0A=
		this.className =3D this.className.replace(new RegExp('(^|\\s)' + =
className + '(?:\\s|$)'), '$1').clean();=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: toggleClass=0A=
		Adds or removes the passed in class name to the element, depending on =
if it's present or not.=0A=
=0A=
	Arguments:=0A=
		className - the class to add or remove=0A=
=0A=
	Example:=0A=
		><div id=3D"myElement" class=3D"myClass"></div>=0A=
		>$('myElement').toggleClass('myClass');=0A=
		><div id=3D"myElement" class=3D""></div>=0A=
		>$('myElement').toggleClass('myClass');=0A=
		><div id=3D"myElement" class=3D"myClass"></div>=0A=
	*/=0A=
=0A=
	toggleClass: function(className){=0A=
		return this.hasClass(className) ? this.removeClass(className) : =
this.addClass(className);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: setStyle=0A=
		Sets a css property to the Element.=0A=
=0A=
		Arguments:=0A=
			property - the property to set=0A=
			value - the value to which to set it; for numeric values that require =
"px" you can pass an integer=0A=
=0A=
		Example:=0A=
			>$('myElement').setStyle('width', '300px'); //the width is now 300px=0A=
			>$('myElement').setStyle('width', 300); //the width is now 300px=0A=
	*/=0A=
=0A=
	setStyle: function(property, value){=0A=
		switch(property){=0A=
			case 'opacity': return this.setOpacity(parseFloat(value));=0A=
			case 'float': property =3D (window.ie) ? 'styleFloat' : 'cssFloat';=0A=
		}=0A=
		property =3D property.camelCase();=0A=
		switch($type(value)){=0A=
			case 'number': if (!['zIndex', 'zoom'].contains(property)) value +=3D =
'px'; break;=0A=
			case 'array': value =3D 'rgb(' + value.join(',') + ')';=0A=
		}=0A=
		this.style[property] =3D value;=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: setStyles=0A=
		Applies a collection of styles to the Element.=0A=
=0A=
	Arguments:=0A=
		source - an object or string containing all the styles to apply. When =
its a string it overrides old style.=0A=
=0A=
	Examples:=0A=
		>$('myElement').setStyles({=0A=
		>	border: '1px solid #000',=0A=
		>	width: 300,=0A=
		>	height: 400=0A=
		>});=0A=
=0A=
		OR=0A=
=0A=
		>$('myElement').setStyles('border: 1px solid #000; width: 300px; =
height: 400px;');=0A=
	*/=0A=
=0A=
	setStyles: function(source){=0A=
		switch($type(source)){=0A=
			case 'object': Element.setMany(this, 'setStyle', source); break;=0A=
			case 'string': this.style.cssText =3D source;=0A=
		}=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: setOpacity=0A=
		Sets the opacity of the Element, and sets also visibility =3D=3D =
"hidden" if opacity =3D=3D 0, and visibility =3D "visible" if opacity > =
0.=0A=
=0A=
	Arguments:=0A=
		opacity - float; Accepts values from 0 to 1.=0A=
=0A=
	Example:=0A=
		>$('myElement').setOpacity(0.5) //make it 50% transparent=0A=
	*/=0A=
=0A=
	setOpacity: function(opacity){=0A=
		if (opacity =3D=3D 0){=0A=
			if (this.style.visibility !=3D "hidden") this.style.visibility =3D =
"hidden";=0A=
		} else {=0A=
			if (this.style.visibility !=3D "visible") this.style.visibility =3D =
"visible";=0A=
		}=0A=
		if (!this.currentStyle || !this.currentStyle.hasLayout) =
this.style.zoom =3D 1;=0A=
		if (window.ie) this.style.filter =3D (opacity =3D=3D 1) ? '' : =
"alpha(opacity=3D" + opacity * 100 + ")";=0A=
		this.style.opacity =3D this.$tmp.opacity =3D opacity;=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getStyle=0A=
		Returns the style of the Element given the property passed in.=0A=
=0A=
	Arguments:=0A=
		property - the css style property you want to retrieve=0A=
=0A=
	Example:=0A=
		>$('myElement').getStyle('width'); //returns "400px"=0A=
		>//but you can also use=0A=
		>$('myElement').getStyle('width').toInt(); //returns 400=0A=
=0A=
	Returns:=0A=
		the style as a string=0A=
	*/=0A=
=0A=
	getStyle: function(property){=0A=
		property =3D property.camelCase();=0A=
		var result =3D this.style[property];=0A=
		if (!$chk(result)){=0A=
			if (property =3D=3D 'opacity') return this.$tmp.opacity;=0A=
			result =3D [];=0A=
			for (var style in Element.Styles){=0A=
				if (property =3D=3D style){=0A=
					Element.Styles[style].each(function(s){=0A=
						var style =3D this.getStyle(s);=0A=
						result.push(parseInt(style) ? style : '0px');=0A=
					}, this);=0A=
					if (property =3D=3D 'border'){=0A=
						var every =3D result.every(function(bit){=0A=
							return (bit =3D=3D result[0]);=0A=
						});=0A=
						return (every) ? result[0] : false;=0A=
					}=0A=
					return result.join(' ');=0A=
				}=0A=
			}=0A=
			if (property.contains('border')){=0A=
				if (Element.Styles.border.contains(property)){=0A=
					return ['Width', 'Style', 'Color'].map(function(p){=0A=
						return this.getStyle(property + p);=0A=
					}, this).join(' ');=0A=
				} else if (Element.borderShort.contains(property)){=0A=
					return ['Top', 'Right', 'Bottom', 'Left'].map(function(p){=0A=
						return this.getStyle('border' + p + property.replace('border', =
''));=0A=
					}, this).join(' ');=0A=
				}=0A=
			}=0A=
			if (document.defaultView) result =3D =
document.defaultView.getComputedStyle(this, =
null).getPropertyValue(property.hyphenate());=0A=
			else if (this.currentStyle) result =3D this.currentStyle[property];=0A=
		}=0A=
		if (window.ie) result =3D Element.fixStyle(property, result, this);=0A=
		if (result && property.test(/color/i) && result.contains('rgb')){=0A=
			return result.split('rgb').splice(1,4).map(function(color){=0A=
				return color.rgbToHex();=0A=
			}).join(' ');=0A=
		}=0A=
		return result;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getStyles=0A=
		Returns an object of styles of the Element for each argument passed in.=0A=
		Arguments:=0A=
		properties - strings; any number of style properties=0A=
	Example:=0A=
		>$('myElement').getStyles('width','height','padding');=0A=
		>//returns an object like:=0A=
		>{width: "10px", height: "10px", padding: "10px 0px 10px 0px"}=0A=
	*/=0A=
=0A=
	getStyles: function(){=0A=
		return Element.getMany(this, 'getStyle', arguments);=0A=
	},=0A=
=0A=
	walk: function(brother, start){=0A=
		brother +=3D 'Sibling';=0A=
		var el =3D (start) ? this[start] : this[brother];=0A=
		while (el && $type(el) !=3D 'element') el =3D el[brother];=0A=
		return $(el);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getPrevious=0A=
		Returns the previousSibling of the Element, excluding text nodes.=0A=
=0A=
	Example:=0A=
		>$('myElement').getPrevious(); //get the previous DOM element from =
myElement=0A=
=0A=
	Returns:=0A=
		the sibling element or undefined if none found.=0A=
	*/=0A=
=0A=
	getPrevious: function(){=0A=
		return this.walk('previous');=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getNext=0A=
		Works as Element.getPrevious, but tries to find the nextSibling.=0A=
	*/=0A=
=0A=
	getNext: function(){=0A=
		return this.walk('next');=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getFirst=0A=
		Works as <Element.getPrevious>, but tries to find the firstChild.=0A=
	*/=0A=
=0A=
	getFirst: function(){=0A=
		return this.walk('next', 'firstChild');=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getLast=0A=
		Works as <Element.getPrevious>, but tries to find the lastChild.=0A=
	*/=0A=
=0A=
	getLast: function(){=0A=
		return this.walk('previous', 'lastChild');=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getParent=0A=
		returns the $(element.parentNode)=0A=
	*/=0A=
=0A=
	getParent: function(){=0A=
		return $(this.parentNode);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getChildren=0A=
		returns all the $(element.childNodes), excluding text nodes. Returns =
as <Elements>.=0A=
	*/=0A=
=0A=
	getChildren: function(){=0A=
		return $$(this.childNodes);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: hasChild=0A=
		returns true if the passed in element is a child of the $(element).=0A=
	*/=0A=
=0A=
	hasChild: function(el){=0A=
		return !!$A(this.getElementsByTagName('*')).contains(el);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getProperty=0A=
		Gets the an attribute of the Element.=0A=
=0A=
	Arguments:=0A=
		property - string; the attribute to retrieve=0A=
=0A=
	Example:=0A=
		>$('myImage').getProperty('src') // returns whatever.gif=0A=
=0A=
	Returns:=0A=
		the value, or an empty string=0A=
	*/=0A=
=0A=
	getProperty: function(property){=0A=
		var index =3D Element.Properties[property];=0A=
		if (index) return this[index];=0A=
		var flag =3D Element.PropertiesIFlag[property] || 0;=0A=
		if (!window.ie || flag) return this.getAttribute(property, flag);=0A=
		var node =3D this.attributes[property];=0A=
		return (node) ? node.nodeValue : null;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: removeProperty=0A=
		Removes an attribute from the Element=0A=
=0A=
	Arguments:=0A=
		property - string; the attribute to remove=0A=
	*/=0A=
=0A=
	removeProperty: function(property){=0A=
		var index =3D Element.Properties[property];=0A=
		if (index) this[index] =3D '';=0A=
		else this.removeAttribute(property);=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getProperties=0A=
		same as <Element.getStyles>, but for properties=0A=
	*/=0A=
=0A=
	getProperties: function(){=0A=
		return Element.getMany(this, 'getProperty', arguments);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: setProperty=0A=
		Sets an attribute for the Element.=0A=
=0A=
	Arguments:=0A=
		property - string; the property to assign the value passed in=0A=
		value - the value to assign to the property passed in=0A=
=0A=
	Example:=0A=
		>$('myImage').setProperty('src', 'whatever.gif'); //myImage now points =
to whatever.gif for its source=0A=
	*/=0A=
=0A=
	setProperty: function(property, value){=0A=
		var index =3D Element.Properties[property];=0A=
		if (index) this[index] =3D value;=0A=
		else this.setAttribute(property, value);=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: setProperties=0A=
		Sets numerous attributes for the Element.=0A=
=0A=
	Arguments:=0A=
		source - an object with key/value pairs.=0A=
=0A=
	Example:=0A=
		(start code)=0A=
		$('myElement').setProperties({=0A=
			src: 'whatever.gif',=0A=
			alt: 'whatever dude'=0A=
		});=0A=
		<img src=3D"whatever.gif" alt=3D"whatever dude">=0A=
		(end)=0A=
	*/=0A=
=0A=
	setProperties: function(source){=0A=
		return Element.setMany(this, 'setProperty', source);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: setHTML=0A=
		Sets the innerHTML of the Element.=0A=
=0A=
	Arguments:=0A=
		html - string; the new innerHTML for the element.=0A=
=0A=
	Example:=0A=
		>$('myElement').setHTML(newHTML) //the innerHTML of myElement is now =
=3D newHTML=0A=
	*/=0A=
=0A=
	setHTML: function(){=0A=
		this.innerHTML =3D $A(arguments).join('');=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: setText=0A=
		Sets the inner text of the Element.=0A=
=0A=
	Arguments:=0A=
		text - string; the new text content for the element.=0A=
=0A=
	Example:=0A=
		>$('myElement').setText('some text') //the text of myElement is now =
=3D 'some text'=0A=
	*/=0A=
=0A=
	setText: function(text){=0A=
		var tag =3D this.getTag();=0A=
		if (['style', 'script'].contains(tag)){=0A=
			if (window.ie){=0A=
				if (tag =3D=3D 'style') this.styleSheet.cssText =3D text;=0A=
				else if (tag =3D=3D  'script') this.setProperty('text', text);=0A=
				return this;=0A=
			} else {=0A=
				this.removeChild(this.firstChild);=0A=
				return this.appendText(text);=0A=
			}=0A=
		}=0A=
		this[$defined(this.innerText) ? 'innerText' : 'textContent'] =3D text;=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getText=0A=
		Gets the inner text of the Element.=0A=
	*/=0A=
=0A=
	getText: function(){=0A=
		var tag =3D this.getTag();=0A=
		if (['style', 'script'].contains(tag)){=0A=
			if (window.ie){=0A=
				if (tag =3D=3D 'style') return this.styleSheet.cssText;=0A=
				else if (tag =3D=3D  'script') return this.getProperty('text');=0A=
			} else {=0A=
				return this.innerHTML;=0A=
			}=0A=
		}=0A=
		return ($pick(this.innerText, this.textContent));=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getTag=0A=
		Returns the tagName of the element in lower case.=0A=
=0A=
	Example:=0A=
		>$('myImage').getTag() // returns 'img'=0A=
=0A=
	Returns:=0A=
		The tag name in lower case=0A=
	*/=0A=
=0A=
	getTag: function(){=0A=
		return this.tagName.toLowerCase();=0A=
	},=0A=
=0A=
	/*=0A=
	Property: empty=0A=
		Empties an element of all its children.=0A=
=0A=
	Example:=0A=
		>$('myDiv').empty() // empties the Div and returns it=0A=
=0A=
	Returns:=0A=
		The element.=0A=
	*/=0A=
=0A=
	empty: function(){=0A=
		Garbage.trash(this.getElementsByTagName('*'));=0A=
		return this.setHTML('');=0A=
	}=0A=
=0A=
});=0A=
=0A=
Element.fixStyle =3D function(property, result, element){=0A=
	if ($chk(parseInt(result))) return result;=0A=
	if (['height', 'width'].contains(property)){=0A=
		var values =3D (property =3D=3D 'width') ? ['left', 'right'] : ['top', =
'bottom'];=0A=
		var size =3D 0;=0A=
		values.each(function(value){=0A=
			size +=3D element.getStyle('border-' + value + '-width').toInt() + =
element.getStyle('padding-' + value).toInt();=0A=
		});=0A=
		return element['offset' + property.capitalize()] - size + 'px';=0A=
	} else if (property.test(/border(.+)Width|margin|padding/)){=0A=
		return '0px';=0A=
	}=0A=
	return result;=0A=
};=0A=
=0A=
Element.Styles =3D {'border': [], 'padding': [], 'margin': []};=0A=
['Top', 'Right', 'Bottom', 'Left'].each(function(direction){=0A=
	for (var style in Element.Styles) Element.Styles[style].push(style + =
direction);=0A=
});=0A=
=0A=
Element.borderShort =3D ['borderWidth', 'borderStyle', 'borderColor'];=0A=
=0A=
Element.getMany =3D function(el, method, keys){=0A=
	var result =3D {};=0A=
	$each(keys, function(key){=0A=
		result[key] =3D el[method](key);=0A=
	});=0A=
	return result;=0A=
};=0A=
=0A=
Element.setMany =3D function(el, method, pairs){=0A=
	for (var key in pairs) el[method](key, pairs[key]);=0A=
	return el;=0A=
};=0A=
=0A=
Element.Properties =3D new Abstract({=0A=
	'class': 'className', 'for': 'htmlFor', 'colspan': 'colSpan', =
'rowspan': 'rowSpan',=0A=
	'accesskey': 'accessKey', 'tabindex': 'tabIndex', 'maxlength': =
'maxLength',=0A=
	'readonly': 'readOnly', 'frameborder': 'frameBorder', 'value': 'value',=0A=
	'disabled': 'disabled', 'checked': 'checked', 'multiple': 'multiple', =
'selected': 'selected'=0A=
});=0A=
Element.PropertiesIFlag =3D {=0A=
	'href': 2, 'src': 2=0A=
};=0A=
=0A=
Element.Methods =3D {=0A=
	Listeners: {=0A=
		addListener: function(type, fn){=0A=
			if (this.addEventListener) this.addEventListener(type, fn, false);=0A=
			else this.attachEvent('on' + type, fn);=0A=
			return this;=0A=
		},=0A=
=0A=
		removeListener: function(type, fn){=0A=
			if (this.removeEventListener) this.removeEventListener(type, fn, =
false);=0A=
			else this.detachEvent('on' + type, fn);=0A=
			return this;=0A=
		}=0A=
	}=0A=
};=0A=
=0A=
window.extend(Element.Methods.Listeners);=0A=
document.extend(Element.Methods.Listeners);=0A=
Element.extend(Element.Methods.Listeners);=0A=
=0A=
var Garbage =3D {=0A=
=0A=
	elements: [],=0A=
=0A=
	collect: function(el){=0A=
		if (!el.$tmp){=0A=
			Garbage.elements.push(el);=0A=
			el.$tmp =3D {'opacity': 1};=0A=
		}=0A=
		return el;=0A=
	},=0A=
=0A=
	trash: function(elements){=0A=
		for (var i =3D 0, j =3D elements.length, el; i < j; i++){=0A=
			if (!(el =3D elements[i]) || !el.$tmp) continue;=0A=
			if (el.$events) el.fireEvent('trash').removeEvents();=0A=
			for (var p in el.$tmp) el.$tmp[p] =3D null;=0A=
			for (var d in Element.prototype) el[d] =3D null;=0A=
			Garbage.elements[Garbage.elements.indexOf(el)] =3D null;=0A=
			el.htmlElement =3D el.$tmp =3D el =3D null;=0A=
		}=0A=
		Garbage.elements.remove(null);=0A=
	},=0A=
=0A=
	empty: function(){=0A=
		Garbage.collect(window);=0A=
		Garbage.collect(document);=0A=
		Garbage.trash(Garbage.elements);=0A=
	}=0A=
=0A=
};=0A=
=0A=
window.addListener('beforeunload', function(){=0A=
	window.addListener('unload', Garbage.empty);=0A=
	if (window.ie) window.addListener('unload', CollectGarbage);=0A=
});=0A=
=0A=
/*=0A=
Script: Element.Event.js=0A=
	Contains the Event Class, Element methods to deal with Element events, =
custom Events, and the Function prototype bindWithEvent.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Event=0A=
	Cross browser methods to manage events.=0A=
=0A=
Arguments:=0A=
	event - the event=0A=
=0A=
Properties:=0A=
	shift - true if the user pressed the shift=0A=
	control - true if the user pressed the control=0A=
	alt - true if the user pressed the alt=0A=
	meta - true if the user pressed the meta key=0A=
	wheel - the amount of third button scrolling=0A=
	code - the keycode of the key pressed=0A=
	page.x - the x position of the mouse, relative to the full window=0A=
	page.y - the y position of the mouse, relative to the full window=0A=
	client.x - the x position of the mouse, relative to the viewport=0A=
	client.y - the y position of the mouse, relative to the viewport=0A=
	key - the key pressed as a lowercase string. key also returns 'enter', =
'up', 'down', 'left', 'right', 'space', 'backspace', 'delete', 'esc'. =
Handy for these special keys.=0A=
	target - the event target=0A=
	relatedTarget - the event related target=0A=
=0A=
Example:=0A=
	(start code)=0A=
	$('myLink').onkeydown =3D function(event){=0A=
		var event =3D new Event(event);=0A=
		//event is now the Event class.=0A=
		alert(event.key); //returns the lowercase letter pressed=0A=
		alert(event.shift); //returns true if the key pressed is shift=0A=
		if (event.key =3D=3D 's' && event.control) alert('document saved');=0A=
	};=0A=
	(end)=0A=
*/=0A=
=0A=
var Event =3D new Class({=0A=
=0A=
	initialize: function(event){=0A=
		if (event && event.$extended) return event;=0A=
		this.$extended =3D true;=0A=
		event =3D event || window.event;=0A=
		this.event =3D event;=0A=
		this.type =3D event.type;=0A=
		this.target =3D event.target || event.srcElement;=0A=
		if (this.target.nodeType =3D=3D 3) this.target =3D =
this.target.parentNode;=0A=
		this.shift =3D event.shiftKey;=0A=
		this.control =3D event.ctrlKey;=0A=
		this.alt =3D event.altKey;=0A=
		this.meta =3D event.metaKey;=0A=
		if (['DOMMouseScroll', 'mousewheel'].contains(this.type)){=0A=
			this.wheel =3D (event.wheelDelta) ? event.wheelDelta / 120 : =
-(event.detail || 0) / 3;=0A=
		} else if (this.type.contains('key')){=0A=
			this.code =3D event.which || event.keyCode;=0A=
			for (var name in Event.keys){=0A=
				if (Event.keys[name] =3D=3D this.code){=0A=
					this.key =3D name;=0A=
					break;=0A=
				}=0A=
			}=0A=
			if (this.type =3D=3D 'keydown'){=0A=
				var fKey =3D this.code - 111;=0A=
				if (fKey > 0 && fKey < 13) this.key =3D 'f' + fKey;=0A=
			}=0A=
			this.key =3D this.key || String.fromCharCode(this.code).toLowerCase();=0A=
		} else if (this.type.test(/(click|mouse|menu)/)){=0A=
			this.page =3D {=0A=
				'x': event.pageX || event.clientX + =
document.documentElement.scrollLeft,=0A=
				'y': event.pageY || event.clientY + =
document.documentElement.scrollTop=0A=
			};=0A=
			this.client =3D {=0A=
				'x': event.pageX ? event.pageX - window.pageXOffset : event.clientX,=0A=
				'y': event.pageY ? event.pageY - window.pageYOffset : event.clientY=0A=
			};=0A=
			this.rightClick =3D (event.which =3D=3D 3) || (event.button =3D=3D 2);=0A=
			switch(this.type){=0A=
				case 'mouseover': this.relatedTarget =3D event.relatedTarget || =
event.fromElement; break;=0A=
				case 'mouseout': this.relatedTarget =3D event.relatedTarget || =
event.toElement;=0A=
			}=0A=
			this.fixRelatedTarget();=0A=
		}=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: stop=0A=
		cross browser method to stop an event=0A=
	*/=0A=
=0A=
	stop: function(){=0A=
		return this.stopPropagation().preventDefault();=0A=
	},=0A=
=0A=
	/*=0A=
	Property: stopPropagation=0A=
		cross browser method to stop the propagation of an event=0A=
	*/=0A=
=0A=
	stopPropagation: function(){=0A=
		if (this.event.stopPropagation) this.event.stopPropagation();=0A=
		else this.event.cancelBubble =3D true;=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: preventDefault=0A=
		cross browser method to prevent the default action of the event=0A=
	*/=0A=
=0A=
	preventDefault: function(){=0A=
		if (this.event.preventDefault) this.event.preventDefault();=0A=
		else this.event.returnValue =3D false;=0A=
		return this;=0A=
	}=0A=
=0A=
});=0A=
=0A=
Event.fix =3D {=0A=
=0A=
	relatedTarget: function(){=0A=
		if (this.relatedTarget && this.relatedTarget.nodeType =3D=3D 3) =
this.relatedTarget =3D this.relatedTarget.parentNode;=0A=
	},=0A=
=0A=
	relatedTargetGecko: function(){=0A=
		try {Event.fix.relatedTarget.call(this);} catch(e){this.relatedTarget =
=3D this.target;}=0A=
	}=0A=
=0A=
};=0A=
=0A=
Event.prototype.fixRelatedTarget =3D (window.gecko) ? =
Event.fix.relatedTargetGecko : Event.fix.relatedTarget;=0A=
=0A=
/*=0A=
Property: keys=0A=
	you can add additional Event keys codes this way:=0A=
=0A=
Example:=0A=
	(start code)=0A=
	Event.keys.whatever =3D 80;=0A=
	$(myelement).addEvent(keydown, function(event){=0A=
		event =3D new Event(event);=0A=
		if (event.key =3D=3D 'whatever') console.log(whatever key clicked).=0A=
	});=0A=
	(end)=0A=
*/=0A=
=0A=
Event.keys =3D new Abstract({=0A=
	'enter': 13,=0A=
	'up': 38,=0A=
	'down': 40,=0A=
	'left': 37,=0A=
	'right': 39,=0A=
	'esc': 27,=0A=
	'space': 32,=0A=
	'backspace': 8,=0A=
	'tab': 9,=0A=
	'delete': 46=0A=
});=0A=
=0A=
/*=0A=
Class: Element=0A=
	Custom class to allow all of its methods to be used with any DOM =
element via the dollar function <$>.=0A=
*/=0A=
=0A=
Element.Methods.Events =3D {=0A=
=0A=
	/*=0A=
	Property: addEvent=0A=
		Attaches an event listener to a DOM element.=0A=
=0A=
	Arguments:=0A=
		type - the event to monitor ('click', 'load', etc) without the prefix =
'on'.=0A=
		fn - the function to execute=0A=
=0A=
	Example:=0A=
		>$('myElement').addEvent('click', function(){alert('clicked!')});=0A=
	*/=0A=
=0A=
	addEvent: function(type, fn){=0A=
		this.$events =3D this.$events || {};=0A=
		this.$events[type] =3D this.$events[type] || {'keys': [], 'values': =
[]};=0A=
		if (this.$events[type].keys.contains(fn)) return this;=0A=
		this.$events[type].keys.push(fn);=0A=
		var realType =3D type;=0A=
		var custom =3D Element.Events[type];=0A=
		if (custom){=0A=
			if (custom.add) custom.add.call(this, fn);=0A=
			if (custom.map) fn =3D custom.map;=0A=
			if (custom.type) realType =3D custom.type;=0A=
		}=0A=
		if (!this.addEventListener) fn =3D fn.create({'bind': this, 'event': =
true});=0A=
		this.$events[type].values.push(fn);=0A=
		return (Element.NativeEvents.contains(realType)) ? =
this.addListener(realType, fn) : this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: removeEvent=0A=
		Works as Element.addEvent, but instead removes the previously added =
event listener.=0A=
	*/=0A=
=0A=
	removeEvent: function(type, fn){=0A=
		if (!this.$events || !this.$events[type]) return this;=0A=
		var pos =3D this.$events[type].keys.indexOf(fn);=0A=
		if (pos =3D=3D -1) return this;=0A=
		var key =3D this.$events[type].keys.splice(pos,1)[0];=0A=
		var value =3D this.$events[type].values.splice(pos,1)[0];=0A=
		var custom =3D Element.Events[type];=0A=
		if (custom){=0A=
			if (custom.remove) custom.remove.call(this, fn);=0A=
			if (custom.type) type =3D custom.type;=0A=
		}=0A=
		return (Element.NativeEvents.contains(type)) ? =
this.removeListener(type, value) : this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: addEvents=0A=
		As <addEvent>, but accepts an object and add multiple events at once.=0A=
	*/=0A=
=0A=
	addEvents: function(source){=0A=
		return Element.setMany(this, 'addEvent', source);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: removeEvents=0A=
		removes all events of a certain type from an element. if no argument =
is passed in, removes all events.=0A=
=0A=
	Arguments:=0A=
		type - string; the event name (e.g. 'click')=0A=
	*/=0A=
=0A=
	removeEvents: function(type){=0A=
		if (!this.$events) return this;=0A=
		if (!type){=0A=
			for (var evType in this.$events) this.removeEvents(evType);=0A=
			this.$events =3D null;=0A=
		} else if (this.$events[type]){=0A=
			this.$events[type].keys.each(function(fn){=0A=
				this.removeEvent(type, fn);=0A=
			}, this);=0A=
			this.$events[type] =3D null;=0A=
		}=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: fireEvent=0A=
		executes all events of the specified type present in the element.=0A=
=0A=
	Arguments:=0A=
		type - string; the event name (e.g. 'click')=0A=
		args - array or single object; arguments to pass to the function; if =
more than one argument, must be an array=0A=
		delay - (integer) delay (in ms) to wait to execute the event=0A=
	*/=0A=
=0A=
	fireEvent: function(type, args, delay){=0A=
		if (this.$events && this.$events[type]){=0A=
			this.$events[type].keys.each(function(fn){=0A=
				fn.create({'bind': this, 'delay': delay, 'arguments': args})();=0A=
			}, this);=0A=
		}=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: cloneEvents=0A=
		Clones all events from an element to this element.=0A=
=0A=
	Arguments:=0A=
		from - element, copy all events from this element=0A=
		type - optional, copies only events of this type=0A=
	*/=0A=
=0A=
	cloneEvents: function(from, type){=0A=
		if (!from.$events) return this;=0A=
		if (!type){=0A=
			for (var evType in from.$events) this.cloneEvents(from, evType);=0A=
		} else if (from.$events[type]){=0A=
			from.$events[type].keys.each(function(fn){=0A=
				this.addEvent(type, fn);=0A=
			}, this);=0A=
		}=0A=
		return this;=0A=
	}=0A=
=0A=
};=0A=
=0A=
window.extend(Element.Methods.Events);=0A=
document.extend(Element.Methods.Events);=0A=
Element.extend(Element.Methods.Events);=0A=
=0A=
/* Section: Custom Events */=0A=
=0A=
Element.Events =3D new Abstract({=0A=
=0A=
	/*=0A=
	Event: mouseenter=0A=
		In addition to the standard javascript events (load, mouseover, =
mouseout, click, etc.) <Event.js> contains two custom events=0A=
		this event fires when the mouse enters the area of the dom element; =
will not be fired again if the mouse crosses over children of the =
element (unlike mouseover)=0A=
=0A=
=0A=
	Example:=0A=
		>$(myElement).addEvent('mouseenter', myFunction);=0A=
	*/=0A=
=0A=
	'mouseenter': {=0A=
		type: 'mouseover',=0A=
		map: function(event){=0A=
			event =3D new Event(event);=0A=
			if (event.relatedTarget !=3D this && =
!this.hasChild(event.relatedTarget)) this.fireEvent('mouseenter', event);=0A=
		}=0A=
	},=0A=
=0A=
	/*=0A=
	Event: mouseleave=0A=
		this event fires when the mouse exits the area of the dom element; =
will not be fired again if the mouse crosses over children of the =
element (unlike mouseout)=0A=
=0A=
=0A=
	Example:=0A=
		>$(myElement).addEvent('mouseleave', myFunction);=0A=
	*/=0A=
=0A=
	'mouseleave': {=0A=
		type: 'mouseout',=0A=
		map: function(event){=0A=
			event =3D new Event(event);=0A=
			if (event.relatedTarget !=3D this && =
!this.hasChild(event.relatedTarget)) this.fireEvent('mouseleave', event);=0A=
		}=0A=
	},=0A=
=0A=
	'mousewheel': {=0A=
		type: (window.gecko) ? 'DOMMouseScroll' : 'mousewheel'=0A=
	}=0A=
=0A=
});=0A=
=0A=
Element.NativeEvents =3D [=0A=
	'click', 'dblclick', 'mouseup', 'mousedown', //mouse buttons=0A=
	'mousewheel', 'DOMMouseScroll', //mouse wheel=0A=
	'mouseover', 'mouseout', 'mousemove', //mouse movement=0A=
	'keydown', 'keypress', 'keyup', //keys=0A=
	'load', 'unload', 'beforeunload', 'resize', 'move', //window=0A=
	'focus', 'blur', 'change', 'submit', 'reset', 'select', //forms elements=0A=
	'error', 'abort', 'contextmenu', 'scroll' //misc=0A=
];=0A=
=0A=
/*=0A=
Class: Function=0A=
	A collection of The Function Object prototype methods.=0A=
*/=0A=
=0A=
Function.extend({=0A=
=0A=
	/*=0A=
	Property: bindWithEvent=0A=
		automatically passes MooTools Event Class.=0A=
=0A=
	Arguments:=0A=
		bind - optional, the object that the "this" of the function will refer =
to.=0A=
		args - optional, an argument to pass to the function; if more than one =
argument, it must be an array of arguments.=0A=
=0A=
	Returns:=0A=
		a function with the parameter bind as its "this" and as a pre-passed =
argument event or window.event, depending on the browser.=0A=
=0A=
	Example:=0A=
		>function myFunction(event){=0A=
		>	alert(event.client.x) //returns the coordinates of the mouse..=0A=
		>};=0A=
		>myElement.addEvent('click', myFunction.bindWithEvent(myElement));=0A=
	*/=0A=
=0A=
	bindWithEvent: function(bind, args){=0A=
		return this.create({'bind': bind, 'arguments': args, 'event': Event});=0A=
	}=0A=
=0A=
});=0A=
=0A=
=0A=
/*=0A=
Script: Element.Filters.js=0A=
	add Filters capability to <Elements>.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Elements=0A=
	A collection of methods to be used with <$$> elements collections.=0A=
*/=0A=
=0A=
Elements.extend({=0A=
	=0A=
	/*=0A=
	Property: filterByTag=0A=
		Filters the collection by a specified tag name.=0A=
		Returns a new Elements collection, while the original remains =
untouched.=0A=
	*/=0A=
	=0A=
	filterByTag: function(tag){=0A=
		return new Elements(this.filter(function(el){=0A=
			return (Element.getTag(el) =3D=3D tag);=0A=
		}));=0A=
	},=0A=
	=0A=
	/*=0A=
	Property: filterByClass=0A=
		Filters the collection by a specified class name.=0A=
		Returns a new Elements collection, while the original remains =
untouched.=0A=
	*/=0A=
	=0A=
	filterByClass: function(className, nocash){=0A=
		var elements =3D this.filter(function(el){=0A=
			return (el.className && el.className.contains(className, ' '));=0A=
		});=0A=
		return (nocash) ? elements : new Elements(elements);=0A=
	},=0A=
	=0A=
	/*=0A=
	Property: filterById=0A=
		Filters the collection by a specified ID.=0A=
		Returns a new Elements collection, while the original remains =
untouched.=0A=
	*/=0A=
	=0A=
	filterById: function(id, nocash){=0A=
		var elements =3D this.filter(function(el){=0A=
			return (el.id =3D=3D id);=0A=
		});=0A=
		return (nocash) ? elements : new Elements(elements);=0A=
	},=0A=
	=0A=
	/*=0A=
	Property: filterByAttribute=0A=
		Filters the collection by a specified attribute.=0A=
		Returns a new Elements collection, while the original remains =
untouched.=0A=
		=0A=
	Arguments:=0A=
		name - the attribute name.=0A=
		operator - optional, the attribute operator.=0A=
		value - optional, the attribute value, only valid if the operator is =
specified.=0A=
	*/=0A=
	=0A=
	filterByAttribute: function(name, operator, value, nocash){=0A=
		var elements =3D this.filter(function(el){=0A=
			var current =3D Element.getProperty(el, name);=0A=
			if (!current) return false;=0A=
			if (!operator) return true;=0A=
			switch(operator){=0A=
				case '=3D': return (current =3D=3D value);=0A=
				case '*=3D': return (current.contains(value));=0A=
				case '^=3D': return (current.substr(0, value.length) =3D=3D value);=0A=
				case '$=3D': return (current.substr(current.length - value.length) =
=3D=3D value);=0A=
				case '!=3D': return (current !=3D value);=0A=
				case '~=3D': return current.contains(value, ' ');=0A=
			}=0A=
			return false;=0A=
		});=0A=
		return (nocash) ? elements : new Elements(elements);=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Element.Selectors.js=0A=
	Css Query related functions and <Element> extensions=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/* Section: Utility Functions */=0A=
=0A=
/*=0A=
Function: $E=0A=
	Selects a single (i.e. the first found) Element based on the selector =
passed in and an optional filter element.=0A=
	Returns as <Element>.=0A=
=0A=
Arguments:=0A=
	selector - string; the css selector to match=0A=
	filter - optional; a DOM element to limit the scope of the selector =
match; defaults to document.=0A=
=0A=
Example:=0A=
	>$E('a', 'myElement') //find the first anchor tag inside the DOM =
element with id 'myElement'=0A=
=0A=
Returns:=0A=
	a DOM element - the first element that matches the selector=0A=
*/=0A=
=0A=
function $E(selector, filter){=0A=
	return ($(filter) || document).getElement(selector);=0A=
};=0A=
=0A=
/*=0A=
Function: $ES=0A=
	Returns a collection of Elements that match the selector passed in =
limited to the scope of the optional filter.=0A=
	See Also: <Element.getElements> for an alternate syntax.=0A=
	Returns as <Elements>.=0A=
=0A=
Returns:=0A=
	an array of dom elements that match the selector within the filter=0A=
=0A=
Arguments:=0A=
	selector - string; css selector to match=0A=
	filter - optional; a DOM element to limit the scope of the selector =
match; defaults to document.=0A=
=0A=
Examples:=0A=
	>$ES("a") //gets all the anchor tags; synonymous with $$("a")=0A=
	>$ES('a','myElement') //get all the anchor tags within $('myElement')=0A=
*/=0A=
=0A=
function $ES(selector, filter){=0A=
	return ($(filter) || document).getElementsBySelector(selector);=0A=
};=0A=
=0A=
$$.shared =3D {=0A=
=0A=
	'regexp': =
/^(\w*|\*)(?:#([\w-]+)|\.([\w-]+))?(?:\[(\w+)(?:([!*^$]?=3D)["']?([^"'\]]=
*)["']?)?])?$/,=0A=
	=0A=
	'xpath': {=0A=
=0A=
		getParam: function(items, context, param, i){=0A=
			var temp =3D [context.namespaceURI ? 'xhtml:' : '', param[1]];=0A=
			if (param[2]) temp.push('[@id=3D"', param[2], '"]');=0A=
			if (param[3]) temp.push('[contains(concat(" ", @class, " "), " ', =
param[3], ' ")]');=0A=
			if (param[4]){=0A=
				if (param[5] && param[6]){=0A=
					switch(param[5]){=0A=
						case '*=3D': temp.push('[contains(@', param[4], ', "', param[6], =
'")]'); break;=0A=
						case '^=3D': temp.push('[starts-with(@', param[4], ', "', =
param[6], '")]'); break;=0A=
						case '$=3D': temp.push('[substring(@', param[4], ', =
string-length(@', param[4], ') - ', param[6].length, ' + 1) =3D "', =
param[6], '"]'); break;=0A=
						case '=3D': temp.push('[@', param[4], '=3D"', param[6], '"]'); =
break;=0A=
						case '!=3D': temp.push('[@', param[4], '!=3D"', param[6], '"]');=0A=
					}=0A=
				} else {=0A=
					temp.push('[@', param[4], ']');=0A=
				}=0A=
			}=0A=
			items.push(temp.join(''));=0A=
			return items;=0A=
		},=0A=
		=0A=
		getItems: function(items, context, nocash){=0A=
			var elements =3D [];=0A=
			var xpath =3D document.evaluate('.//' + items.join('//'), context, =
$$.shared.resolver, XPathResult.UNORDERED_NODE_SNAPSHOT_TYPE, null);=0A=
			for (var i =3D 0, j =3D xpath.snapshotLength; i < j; i++) =
elements.push(xpath.snapshotItem(i));=0A=
			return (nocash) ? elements : new Elements(elements.map($));=0A=
		}=0A=
=0A=
	},=0A=
	=0A=
	'normal': {=0A=
		=0A=
		getParam: function(items, context, param, i){=0A=
			if (i =3D=3D 0){=0A=
				if (param[2]){=0A=
					var el =3D context.getElementById(param[2]);=0A=
					if (!el || ((param[1] !=3D '*') && (Element.getTag(el) !=3D =
param[1]))) return false;=0A=
					items =3D [el];=0A=
				} else {=0A=
					items =3D $A(context.getElementsByTagName(param[1]));=0A=
				}=0A=
			} else {=0A=
				items =3D $$.shared.getElementsByTagName(items, param[1]);=0A=
				if (param[2]) items =3D Elements.filterById(items, param[2], true);=0A=
			}=0A=
			if (param[3]) items =3D Elements.filterByClass(items, param[3], true);=0A=
			if (param[4]) items =3D Elements.filterByAttribute(items, param[4], =
param[5], param[6], true);=0A=
			return items;=0A=
		},=0A=
=0A=
		getItems: function(items, context, nocash){=0A=
			return (nocash) ? items : $$.unique(items);=0A=
		}=0A=
=0A=
	},=0A=
=0A=
	resolver: function(prefix){=0A=
		return (prefix =3D=3D 'xhtml') ? 'http://www.w3.org/1999/xhtml' : =
false;=0A=
	},=0A=
=0A=
	getElementsByTagName: function(context, tagName){=0A=
		var found =3D [];=0A=
		for (var i =3D 0, j =3D context.length; i < j; i++) =
found.extend(context[i].getElementsByTagName(tagName));=0A=
		return found;=0A=
	}=0A=
=0A=
};=0A=
=0A=
$$.shared.method =3D (window.xpath) ? 'xpath' : 'normal';=0A=
=0A=
/*=0A=
Class: Element=0A=
	Custom class to allow all of its methods to be used with any DOM =
element via the dollar function <$>.=0A=
*/=0A=
=0A=
Element.Methods.Dom =3D {=0A=
=0A=
	/*=0A=
	Property: getElements=0A=
		Gets all the elements within an element that match the given (single) =
selector.=0A=
		Returns as <Elements>.=0A=
=0A=
	Arguments:=0A=
		selector - string; the css selector to match=0A=
=0A=
	Examples:=0A=
		>$('myElement').getElements('a'); // get all anchors within myElement=0A=
		>$('myElement').getElements('input[name=3Ddialog]') //get all input =
tags with name 'dialog'=0A=
		>$('myElement').getElements('input[name$=3Dlog]') //get all input tags =
with names ending with 'log'=0A=
=0A=
	Notes:=0A=
		Supports these operators in attribute selectors:=0A=
=0A=
		- =3D : is equal to=0A=
		- ^=3D : starts-with=0A=
		- $=3D : ends-with=0A=
		- !=3D : is not equal to=0A=
=0A=
		Xpath is used automatically for compliant browsers.=0A=
	*/=0A=
=0A=
	getElements: function(selector, nocash){=0A=
		var items =3D [];=0A=
		selector =3D selector.trim().split(' ');=0A=
		for (var i =3D 0, j =3D selector.length; i < j; i++){=0A=
			var sel =3D selector[i];=0A=
			var param =3D sel.match($$.shared.regexp);=0A=
			if (!param) break;=0A=
			param[1] =3D param[1] || '*';=0A=
			var temp =3D $$.shared[$$.shared.method].getParam(items, this, param, =
i);=0A=
			if (!temp) break;=0A=
			items =3D temp;=0A=
		}=0A=
		return $$.shared[$$.shared.method].getItems(items, this, nocash);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getElement=0A=
		Same as <Element.getElements>, but returns only the first. Alternate =
syntax for <$E>, where filter is the Element.=0A=
		Returns as <Element>.=0A=
=0A=
	Arguments:=0A=
		selector - string; css selector=0A=
	*/=0A=
=0A=
	getElement: function(selector){=0A=
		return $(this.getElements(selector, true)[0] || false);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getElementsBySelector=0A=
		Same as <Element.getElements>, but allows for comma separated =
selectors, as in css. Alternate syntax for <$$>, where filter is the =
Element.=0A=
		Returns as <Elements>.=0A=
=0A=
	Arguments:=0A=
		selector - string; css selector=0A=
	*/=0A=
=0A=
	getElementsBySelector: function(selector, nocash){=0A=
		var elements =3D [];=0A=
		selector =3D selector.split(',');=0A=
		for (var i =3D 0, j =3D selector.length; i < j; i++) elements =3D =
elements.concat(this.getElements(selector[i], true));=0A=
		return (nocash) ? elements : $$.unique(elements);=0A=
	}=0A=
=0A=
};=0A=
=0A=
Element.extend({=0A=
=0A=
	/*=0A=
	Property: getElementById=0A=
		Targets an element with the specified id found inside the Element. =
Does not overwrite document.getElementById.=0A=
=0A=
	Arguments:=0A=
		id - string; the id of the element to find.=0A=
	*/=0A=
=0A=
	getElementById: function(id){=0A=
		var el =3D document.getElementById(id);=0A=
		if (!el) return false;=0A=
		for (var parent =3D el.parentNode; parent !=3D this; parent =3D =
parent.parentNode){=0A=
			if (!parent) return false;=0A=
		}=0A=
		return el;=0A=
	}/*compatibility*/,=0A=
	=0A=
	getElementsByClassName: function(className){ =0A=
		return this.getElements('.' + className); =0A=
	}=0A=
	=0A=
	/*end compatibility*/=0A=
=0A=
});=0A=
=0A=
document.extend(Element.Methods.Dom);=0A=
Element.extend(Element.Methods.Dom);=0A=
=0A=
/*=0A=
Script: Element.Form.js=0A=
	Contains Element prototypes to deal with Forms and their elements.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Element=0A=
	Custom class to allow all of its methods to be used with any DOM =
element via the dollar function <$>.=0A=
*/=0A=
=0A=
Element.extend({=0A=
=0A=
	/*=0A=
	Property: getValue=0A=
		Returns the value of the Element, if its tag is textarea, select or =
input. getValue called on a multiple select will return an array.=0A=
	*/=0A=
=0A=
	getValue: function(){=0A=
		switch(this.getTag()){=0A=
			case 'select':=0A=
				var values =3D [];=0A=
				$each(this.options, function(option){=0A=
					if (option.selected) values.push($pick(option.value, option.text));=0A=
				});=0A=
				return (this.multiple) ? values : values[0];=0A=
			case 'input': if (!(this.checked && ['checkbox', =
'radio'].contains(this.type)) && !['hidden', 'text', =
'password'].contains(this.type)) break;=0A=
			case 'textarea': return this.value;=0A=
		}=0A=
		return false;=0A=
	},=0A=
=0A=
	getFormElements: function(){=0A=
		return $$(this.getElementsByTagName('input'), =
this.getElementsByTagName('select'), =
this.getElementsByTagName('textarea'));=0A=
	},=0A=
=0A=
	/*=0A=
	Property: toQueryString=0A=
		Reads the children inputs of the Element and generates a query string, =
based on their values. Used internally in <Ajax>=0A=
=0A=
	Example:=0A=
		(start code)=0A=
		<form id=3D"myForm" action=3D"submit.php">=0A=
		<input name=3D"email" value=3D"bob@bob.com">=0A=
		<input name=3D"zipCode" value=3D"90210">=0A=
		</form>=0A=
=0A=
		<script>=0A=
		 $('myForm').toQueryString()=0A=
		</script>=0A=
		(end)=0A=
=0A=
		Returns:=0A=
			email=3Dbob@bob.com&zipCode=3D90210=0A=
	*/=0A=
=0A=
	toQueryString: function(){=0A=
		var queryString =3D [];=0A=
		this.getFormElements().each(function(el){=0A=
			var name =3D el.name;=0A=
			var value =3D el.getValue();=0A=
			if (value =3D=3D=3D false || !name || el.disabled) return;=0A=
			var qs =3D function(val){=0A=
				queryString.push(name + '=3D' + encodeURIComponent(val));=0A=
			};=0A=
			if ($type(value) =3D=3D 'array') value.each(qs);=0A=
			else qs(value);=0A=
		});=0A=
		return queryString.join('&');=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Element.Dimensions.js=0A=
	Contains Element prototypes to deal with Element size and position in =
space.=0A=
=0A=
Note:=0A=
	The functions in this script require n XHTML doctype.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Element=0A=
	Custom class to allow all of its methods to be used with any DOM =
element via the dollar function <$>.=0A=
*/=0A=
=0A=
Element.extend({=0A=
=0A=
	/*=0A=
	Property: scrollTo=0A=
		Scrolls the element to the specified coordinated (if the element has =
an overflow)=0A=
=0A=
	Arguments:=0A=
		x - the x coordinate=0A=
		y - the y coordinate=0A=
=0A=
	Example:=0A=
		>$('myElement').scrollTo(0, 100)=0A=
	*/=0A=
=0A=
	scrollTo: function(x, y){=0A=
		this.scrollLeft =3D x;=0A=
		this.scrollTop =3D y;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getSize=0A=
		Return an Object representing the size/scroll values of the element.=0A=
=0A=
	Example:=0A=
		(start code)=0A=
		$('myElement').getSize();=0A=
		(end)=0A=
=0A=
	Returns:=0A=
		(start code)=0A=
		{=0A=
			'scroll': {'x': 100, 'y': 100},=0A=
			'size': {'x': 200, 'y': 400},=0A=
			'scrollSize': {'x': 300, 'y': 500}=0A=
		}=0A=
		(end)=0A=
	*/=0A=
=0A=
	getSize: function(){=0A=
		return {=0A=
			'scroll': {'x': this.scrollLeft, 'y': this.scrollTop},=0A=
			'size': {'x': this.offsetWidth, 'y': this.offsetHeight},=0A=
			'scrollSize': {'x': this.scrollWidth, 'y': this.scrollHeight}=0A=
		};=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getPosition=0A=
		Returns the real offsets of the element.=0A=
=0A=
	Arguments:=0A=
		overflown - optional, an array of nested scrolling containers for =
scroll offset calculation, use this if your element is inside any =
element containing scrollbars=0A=
=0A=
	Example:=0A=
		>$('element').getPosition();=0A=
=0A=
	Returns:=0A=
		>{x: 100, y:500};=0A=
	*/=0A=
=0A=
	getPosition: function(overflown){=0A=
		overflown =3D overflown || [];=0A=
		var el =3D this, left =3D 0, top =3D 0;=0A=
		do {=0A=
			left +=3D el.offsetLeft || 0;=0A=
			top +=3D el.offsetTop || 0;=0A=
			el =3D el.offsetParent;=0A=
		} while (el);=0A=
		overflown.each(function(element){=0A=
			left -=3D element.scrollLeft || 0;=0A=
			top -=3D element.scrollTop || 0;=0A=
		});=0A=
		return {'x': left, 'y': top};=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getTop=0A=
		Returns the distance from the top of the window to the Element.=0A=
=0A=
	Arguments:=0A=
		overflown - optional, an array of nested scrolling containers, see =
Element::getPosition=0A=
	*/=0A=
=0A=
	getTop: function(overflown){=0A=
		return this.getPosition(overflown).y;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getLeft=0A=
		Returns the distance from the left of the window to the Element.=0A=
=0A=
	Arguments:=0A=
		overflown - optional, an array of nested scrolling containers, see =
Element::getPosition=0A=
	*/=0A=
=0A=
	getLeft: function(overflown){=0A=
		return this.getPosition(overflown).x;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getCoordinates=0A=
		Returns an object with width, height, left, right, top, and bottom, =
representing the values of the Element=0A=
=0A=
	Arguments:=0A=
		overflown - optional, an array of nested scrolling containers, see =
Element::getPosition=0A=
=0A=
	Example:=0A=
		(start code)=0A=
		var myValues =3D $('myElement').getCoordinates();=0A=
		(end)=0A=
=0A=
	Returns:=0A=
		(start code)=0A=
		{=0A=
			width: 200,=0A=
			height: 300,=0A=
			left: 100,=0A=
			top: 50,=0A=
			right: 300,=0A=
			bottom: 350=0A=
		}=0A=
		(end)=0A=
	*/=0A=
=0A=
	getCoordinates: function(overflown){=0A=
		var position =3D this.getPosition(overflown);=0A=
		var obj =3D {=0A=
			'width': this.offsetWidth,=0A=
			'height': this.offsetHeight,=0A=
			'left': position.x,=0A=
			'top': position.y=0A=
		};=0A=
		obj.right =3D obj.left + obj.width;=0A=
		obj.bottom =3D obj.top + obj.height;=0A=
		return obj;=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Window.DomReady.js=0A=
	Contains the custom event domready, for window.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/* Section: Custom Events */=0A=
=0A=
/*=0A=
Event: domready=0A=
	executes a function when the dom tree is loaded, without waiting for =
images. Only works when called from window.=0A=
=0A=
Credits:=0A=
	(c) Dean Edwards/Matthias Miller/John Resig, remastered for MooTools.=0A=
=0A=
Arguments:=0A=
	fn - the function to execute when the DOM is ready=0A=
=0A=
Example:=0A=
	> window.addEvent('domready', function(){=0A=
	>	alert('the dom is ready');=0A=
	> });=0A=
*/=0A=
=0A=
Element.Events.domready =3D {=0A=
=0A=
	add: function(fn){=0A=
		if (window.loaded){=0A=
			fn.call(this);=0A=
			return;=0A=
		}=0A=
		var domReady =3D function(){=0A=
			if (window.loaded) return;=0A=
			window.loaded =3D true;=0A=
			window.timer =3D $clear(window.timer);=0A=
			this.fireEvent('domready');=0A=
		}.bind(this);=0A=
		if (document.readyState && window.webkit){=0A=
			window.timer =3D function(){=0A=
				if (['loaded','complete'].contains(document.readyState)) domReady();=0A=
			}.periodical(50);=0A=
		} else if (document.readyState && window.ie){=0A=
			if (!$('ie_ready')){=0A=
				var src =3D (window.location.protocol =3D=3D 'https:') ? '://0' : =
'javascript:void(0)';=0A=
				document.write('<script id=3D"ie_ready" defer src=3D"' + src + =
'"><\/script>');=0A=
				$('ie_ready').onreadystatechange =3D function(){=0A=
					if (this.readyState =3D=3D 'complete') domReady();=0A=
				};=0A=
			}=0A=
		} else {=0A=
			window.addListener("load", domReady);=0A=
			document.addListener("DOMContentLoaded", domReady);=0A=
		}=0A=
	}=0A=
=0A=
};=0A=
=0A=
/*compatibility*/=0A=
=0A=
window.onDomReady =3D function(fn){ =0A=
	return this.addEvent('domready', fn); =0A=
};=0A=
=0A=
/*end compatibility*/=0A=
=0A=
/*=0A=
Script: Window.Size.js=0A=
	Window cross-browser dimensions methods.=0A=
	=0A=
Note:=0A=
	The Functions in this script require an XHTML doctype.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: window=0A=
	Cross browser methods to get various window dimensions.=0A=
	Warning: All these methods require that the browser operates in strict =
mode, not quirks mode.=0A=
*/=0A=
=0A=
window.extend({=0A=
=0A=
	/*=0A=
	Property: getWidth=0A=
		Returns an integer representing the width of the browser window =
(without the scrollbar).=0A=
	*/=0A=
=0A=
	getWidth: function(){=0A=
		if (this.webkit419) return this.innerWidth;=0A=
		if (this.opera) return document.body.clientWidth;=0A=
		return document.documentElement.clientWidth;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getHeight=0A=
		Returns an integer representing the height of the browser window =
(without the scrollbar).=0A=
	*/=0A=
=0A=
	getHeight: function(){=0A=
		if (this.webkit419) return this.innerHeight;=0A=
		if (this.opera) return document.body.clientHeight;=0A=
		return document.documentElement.clientHeight;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getScrollWidth=0A=
		Returns an integer representing the scrollWidth of the window.=0A=
		This value is equal to or bigger than <getWidth>.=0A=
=0A=
	See Also:=0A=
		<http://developer.mozilla.org/en/docs/DOM:element.scrollWidth>=0A=
	*/=0A=
=0A=
	getScrollWidth: function(){=0A=
		if (this.ie) return Math.max(document.documentElement.offsetWidth, =
document.documentElement.scrollWidth);=0A=
		if (this.webkit) return document.body.scrollWidth;=0A=
		return document.documentElement.scrollWidth;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getScrollHeight=0A=
		Returns an integer representing the scrollHeight of the window.=0A=
		This value is equal to or bigger than <getHeight>.=0A=
=0A=
	See Also:=0A=
		<http://developer.mozilla.org/en/docs/DOM:element.scrollHeight>=0A=
	*/=0A=
=0A=
	getScrollHeight: function(){=0A=
		if (this.ie) return Math.max(document.documentElement.offsetHeight, =
document.documentElement.scrollHeight);=0A=
		if (this.webkit) return document.body.scrollHeight;=0A=
		return document.documentElement.scrollHeight;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getScrollLeft=0A=
		Returns an integer representing the scrollLeft of the window (the =
number of pixels the window has scrolled from the left).=0A=
=0A=
	See Also:=0A=
		<http://developer.mozilla.org/en/docs/DOM:element.scrollLeft>=0A=
	*/=0A=
=0A=
	getScrollLeft: function(){=0A=
		return this.pageXOffset || document.documentElement.scrollLeft;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getScrollTop=0A=
		Returns an integer representing the scrollTop of the window (the =
number of pixels the window has scrolled from the top).=0A=
=0A=
	See Also:=0A=
		<http://developer.mozilla.org/en/docs/DOM:element.scrollTop>=0A=
	*/=0A=
=0A=
	getScrollTop: function(){=0A=
		return this.pageYOffset || document.documentElement.scrollTop;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getSize=0A=
		Same as <Element.getSize>=0A=
	*/=0A=
=0A=
	getSize: function(){=0A=
		return {=0A=
			'size': {'x': this.getWidth(), 'y': this.getHeight()},=0A=
			'scrollSize': {'x': this.getScrollWidth(), 'y': =
this.getScrollHeight()},=0A=
			'scroll': {'x': this.getScrollLeft(), 'y': this.getScrollTop()}=0A=
		};=0A=
	},=0A=
=0A=
	//ignore=0A=
	getPosition: function(){return {'x': 0, 'y': 0};}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Fx.Base.js=0A=
	Contains <Fx.Base>, the foundamentals of the MooTools Effects.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
var Fx =3D {};=0A=
=0A=
/*=0A=
Class: Fx.Base=0A=
	Base class for the Effects.=0A=
=0A=
Options:=0A=
	transition - the equation to use for the effect see <Fx.Transitions>; =
default is <Fx.Transitions.Sine.easeInOut>=0A=
	duration - the duration of the effect in ms; 500 is the default.=0A=
	unit - the unit is 'px' by default (other values include things like =
'em' for fonts or '%').=0A=
	wait - boolean: to wait or not to wait for a current transition to end =
before running another of the same instance. defaults to true.=0A=
	fps - the frames per second for the transition; default is 50=0A=
	=0A=
Events:=0A=
	onStart - the function to execute as the effect begins; nothing =
(<Class.empty>) by default.=0A=
	onComplete - the function to execute after the effect has processed; =
nothing (<Class.empty>) by default.=0A=
	onCancel - the function to execute when you manually stop the effect.=0A=
*/=0A=
=0A=
Fx.Base =3D new Class({=0A=
=0A=
	options: {=0A=
		onStart: Class.empty,=0A=
		onComplete: Class.empty,=0A=
		onCancel: Class.empty,=0A=
		transition: function(p){=0A=
			return -(Math.cos(Math.PI * p) - 1) / 2;=0A=
		},=0A=
		duration: 500,=0A=
		unit: 'px',=0A=
		wait: true,=0A=
		fps: 50=0A=
	},=0A=
=0A=
	initialize: function(options){=0A=
		this.element =3D this.element || null;=0A=
		this.setOptions(options);=0A=
		if (this.options.initialize) this.options.initialize.call(this);=0A=
	},=0A=
=0A=
	step: function(){=0A=
		var time =3D $time();=0A=
		if (time < this.time + this.options.duration){=0A=
			this.delta =3D this.options.transition((time - this.time) / =
this.options.duration);=0A=
			this.setNow();=0A=
			this.increase();=0A=
		} else {=0A=
			this.stop(true);=0A=
			this.set(this.to);=0A=
			this.fireEvent('onComplete', this.element, 10);=0A=
			this.callChain();=0A=
		}=0A=
	},=0A=
=0A=
	/*=0A=
	Property: set=0A=
		Immediately sets the value with no transition.=0A=
=0A=
	Arguments:=0A=
		to - the point to jump to=0A=
=0A=
	Example:=0A=
		>var myFx =3D new Fx.Style('myElement', 'opacity').set(0); //will make =
it immediately transparent=0A=
	*/=0A=
=0A=
	set: function(to){=0A=
		this.now =3D to;=0A=
		this.increase();=0A=
		return this;=0A=
	},=0A=
=0A=
	setNow: function(){=0A=
		this.now =3D this.compute(this.from, this.to);=0A=
	},=0A=
=0A=
	compute: function(from, to){=0A=
		return (to - from) * this.delta + from;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: start=0A=
		Executes an effect from one position to the other.=0A=
=0A=
	Arguments:=0A=
		from - integer: staring value=0A=
		to - integer: the ending value=0A=
=0A=
	Examples:=0A=
		>var myFx =3D new Fx.Style('myElement', 'opacity').start(0,1); =
//display a transition from transparent to opaque.=0A=
	*/=0A=
=0A=
	start: function(from, to){=0A=
		if (!this.options.wait) this.stop();=0A=
		else if (this.timer) return this;=0A=
		this.from =3D from;=0A=
		this.to =3D to;=0A=
		this.change =3D this.to - this.from;=0A=
		this.time =3D $time();=0A=
		this.timer =3D this.step.periodical(Math.round(1000 / =
this.options.fps), this);=0A=
		this.fireEvent('onStart', this.element);=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: stop=0A=
		Stops the transition.=0A=
	*/=0A=
=0A=
	stop: function(end){=0A=
		if (!this.timer) return this;=0A=
		this.timer =3D $clear(this.timer);=0A=
		if (!end) this.fireEvent('onCancel', this.element);=0A=
		return this;=0A=
	}/*compatibility*/,=0A=
	=0A=
	custom: function(from, to){=0A=
		return this.start(from, to);=0A=
	},=0A=
=0A=
	clearTimer: function(end){=0A=
		return this.stop(end);=0A=
	}=0A=
=0A=
	/*end compatibility*/=0A=
=0A=
});=0A=
=0A=
Fx.Base.implement(new Chain, new Events, new Options);=0A=
=0A=
/*=0A=
Script: Fx.CSS.js=0A=
	Css parsing class for effects. Required by <Fx.Style>, <Fx.Styles>, =
<Fx.Elements>. No documentation needed, as its used internally.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
Fx.CSS =3D {=0A=
=0A=
	select: function(property, to){=0A=
		if (property.test(/color/i)) return this.Color;=0A=
		var type =3D $type(to);=0A=
		if ((type =3D=3D 'array') || (type =3D=3D 'string' && to.contains(' =
'))) return this.Multi;=0A=
		return this.Single;=0A=
	},=0A=
=0A=
	parse: function(el, property, fromTo){=0A=
		if (!fromTo.push) fromTo =3D [fromTo];=0A=
		var from =3D fromTo[0], to =3D fromTo[1];=0A=
		if (!$chk(to)){=0A=
			to =3D from;=0A=
			from =3D el.getStyle(property);=0A=
		}=0A=
		var css =3D this.select(property, to);=0A=
		return {'from': css.parse(from), 'to': css.parse(to), 'css': css};=0A=
	}=0A=
=0A=
};=0A=
=0A=
Fx.CSS.Single =3D {=0A=
=0A=
	parse: function(value){=0A=
		return parseFloat(value);=0A=
	},=0A=
=0A=
	getNow: function(from, to, fx){=0A=
		return fx.compute(from, to);=0A=
	},=0A=
=0A=
	getValue: function(value, unit, property){=0A=
		if (unit =3D=3D 'px' && property !=3D 'opacity') value =3D =
Math.round(value);=0A=
		return value + unit;=0A=
	}=0A=
=0A=
};=0A=
=0A=
Fx.CSS.Multi =3D {=0A=
=0A=
	parse: function(value){=0A=
		return value.push ? value : value.split(' ').map(function(v){=0A=
			return parseFloat(v);=0A=
		});=0A=
	},=0A=
=0A=
	getNow: function(from, to, fx){=0A=
		var now =3D [];=0A=
		for (var i =3D 0; i < from.length; i++) now[i] =3D fx.compute(from[i], =
to[i]);=0A=
		return now;=0A=
	},=0A=
=0A=
	getValue: function(value, unit, property){=0A=
		if (unit =3D=3D 'px' && property !=3D 'opacity') value =3D =
value.map(Math.round);=0A=
		return value.join(unit + ' ') + unit;=0A=
	}=0A=
=0A=
};=0A=
=0A=
Fx.CSS.Color =3D {=0A=
=0A=
	parse: function(value){=0A=
		return value.push ? value : value.hexToRgb(true);=0A=
	},=0A=
=0A=
	getNow: function(from, to, fx){=0A=
		var now =3D [];=0A=
		for (var i =3D 0; i < from.length; i++) now[i] =3D =
Math.round(fx.compute(from[i], to[i]));=0A=
		return now;=0A=
	},=0A=
=0A=
	getValue: function(value){=0A=
		return 'rgb(' + value.join(',') + ')';=0A=
	}=0A=
=0A=
};=0A=
=0A=
/*=0A=
Script: Fx.Style.js=0A=
	Contains <Fx.Style>=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Fx.Style=0A=
	The Style effect, used to transition any css property from one value to =
another. Includes colors.=0A=
	Colors must be in hex format.=0A=
	Inherits methods, properties, options and events from <Fx.Base>.=0A=
=0A=
Arguments:=0A=
	el - the $(element) to apply the style transition to=0A=
	property - the property to transition=0A=
	options - the Fx.Base options (see: <Fx.Base>)=0A=
=0A=
Example:=0A=
	>var marginChange =3D new Fx.Style('myElement', 'margin-top', =
{duration:500});=0A=
	>marginChange.start(10, 100);=0A=
*/=0A=
=0A=
Fx.Style =3D Fx.Base.extend({=0A=
=0A=
	initialize: function(el, property, options){=0A=
		this.element =3D $(el);=0A=
		this.property =3D property;=0A=
		this.parent(options);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: hide=0A=
		Same as <Fx.Base.set> (0); hides the element immediately without =
transition.=0A=
	*/=0A=
=0A=
	hide: function(){=0A=
		return this.set(0);=0A=
	},=0A=
=0A=
	setNow: function(){=0A=
		this.now =3D this.css.getNow(this.from, this.to, this);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: set=0A=
		Sets the element's css property (specified at instantiation) to the =
specified value immediately.=0A=
=0A=
	Example:=0A=
		(start code)=0A=
		var marginChange =3D new Fx.Style('myElement', 'margin-top', =
{duration:500});=0A=
		marginChange.set(10); //margin-top is set to 10px immediately=0A=
		(end)=0A=
	*/=0A=
=0A=
	set: function(to){=0A=
		this.css =3D Fx.CSS.select(this.property, to);=0A=
		return this.parent(this.css.parse(to));=0A=
	},=0A=
=0A=
	/*=0A=
	Property: start=0A=
		Displays the transition to the value/values passed in=0A=
=0A=
	Arguments:=0A=
		from - (integer; optional) the starting position for the transition=0A=
		to - (integer) the ending position for the transition=0A=
=0A=
	Note:=0A=
		If you provide only one argument, the transition will use the current =
css value for its starting value.=0A=
=0A=
	Example:=0A=
		(start code)=0A=
		var marginChange =3D new Fx.Style('myElement', 'margin-top', =
{duration:500});=0A=
		marginChange.start(10); //tries to read current margin top value and =
goes from current to 10=0A=
		(end)=0A=
	*/=0A=
=0A=
	start: function(from, to){=0A=
		if (this.timer && this.options.wait) return this;=0A=
		var parsed =3D Fx.CSS.parse(this.element, this.property, [from, to]);=0A=
		this.css =3D parsed.css;=0A=
		return this.parent(parsed.from, parsed.to);=0A=
	},=0A=
=0A=
	increase: function(){=0A=
		this.element.setStyle(this.property, this.css.getValue(this.now, =
this.options.unit, this.property));=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Class: Element=0A=
	Custom class to allow all of its methods to be used with any DOM =
element via the dollar function <$>.=0A=
*/=0A=
=0A=
Element.extend({=0A=
=0A=
	/*=0A=
	Property: effect=0A=
		Applies an <Fx.Style> to the Element; This a shortcut for <Fx.Style>.=0A=
=0A=
	Arguments:=0A=
		property - (string) the css property to alter=0A=
		options - (object; optional) key/value set of options (see <Fx.Style>)=0A=
=0A=
	Example:=0A=
		>var myEffect =3D $('myElement').effect('height', {duration: 1000, =
transition: Fx.Transitions.linear});=0A=
		>myEffect.start(10, 100);=0A=
		>//OR=0A=
		>$('myElement').effect('height', {duration: 1000, transition: =
Fx.Transitions.linear}).start(10,100);=0A=
	*/=0A=
=0A=
	effect: function(property, options){=0A=
		return new Fx.Style(this, property, options);=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Fx.Styles.js=0A=
	Contains <Fx.Styles>=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Fx.Styles=0A=
	Allows you to animate multiple css properties at once;=0A=
	Colors must be in hex format.=0A=
	Inherits methods, properties, options and events from <Fx.Base>.=0A=
=0A=
Arguments:=0A=
	el - the $(element) to apply the styles transition to=0A=
	options - the fx options (see: <Fx.Base>)=0A=
=0A=
Example:=0A=
	(start code)=0A=
	var myEffects =3D new Fx.Styles('myElement', {duration: 1000, =
transition: Fx.Transitions.linear});=0A=
=0A=
	//height from 10 to 100 and width from 900 to 300=0A=
	myEffects.start({=0A=
		'height': [10, 100],=0A=
		'width': [900, 300]=0A=
	});=0A=
=0A=
	//or height from current height to 100 and width from current width to =
300=0A=
	myEffects.start({=0A=
		'height': 100,=0A=
		'width': 300=0A=
	});=0A=
	(end)=0A=
*/=0A=
=0A=
Fx.Styles =3D Fx.Base.extend({=0A=
=0A=
	initialize: function(el, options){=0A=
		this.element =3D $(el);=0A=
		this.parent(options);=0A=
	},=0A=
=0A=
	setNow: function(){=0A=
		for (var p in this.from) this.now[p] =3D =
this.css[p].getNow(this.from[p], this.to[p], this);=0A=
	},=0A=
=0A=
	set: function(to){=0A=
		var parsed =3D {};=0A=
		this.css =3D {};=0A=
		for (var p in to){=0A=
			this.css[p] =3D Fx.CSS.select(p, to[p]);=0A=
			parsed[p] =3D this.css[p].parse(to[p]);=0A=
		}=0A=
		return this.parent(parsed);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: start=0A=
		Executes a transition for any number of css properties in tandem.=0A=
=0A=
	Arguments:=0A=
		obj - an object containing keys that specify css properties to alter =
and values that specify either the from/to values (as an array) or just =
the end value (an integer).=0A=
=0A=
	Example:=0A=
		see <Fx.Styles>=0A=
	*/=0A=
=0A=
	start: function(obj){=0A=
		if (this.timer && this.options.wait) return this;=0A=
		this.now =3D {};=0A=
		this.css =3D {};=0A=
		var from =3D {}, to =3D {};=0A=
		for (var p in obj){=0A=
			var parsed =3D Fx.CSS.parse(this.element, p, obj[p]);=0A=
			from[p] =3D parsed.from;=0A=
			to[p] =3D parsed.to;=0A=
			this.css[p] =3D parsed.css;=0A=
		}=0A=
		return this.parent(from, to);=0A=
	},=0A=
=0A=
	increase: function(){=0A=
		for (var p in this.now) this.element.setStyle(p, =
this.css[p].getValue(this.now[p], this.options.unit, p));=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Class: Element=0A=
	Custom class to allow all of its methods to be used with any DOM =
element via the dollar function <$>.=0A=
*/=0A=
=0A=
Element.extend({=0A=
=0A=
	/*=0A=
	Property: effects=0A=
		Applies an <Fx.Styles> to the Element; This a shortcut for <Fx.Styles>.=0A=
=0A=
	Example:=0A=
		>var myEffects =3D $(myElement).effects({duration: 1000, transition: =
Fx.Transitions.Sine.easeInOut});=0A=
 		>myEffects.start({'height': [10, 100], 'width': [900, 300]});=0A=
	*/=0A=
=0A=
	effects: function(options){=0A=
		return new Fx.Styles(this, options);=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Fx.Elements.js=0A=
	Contains <Fx.Elements>=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Fx.Elements=0A=
	Fx.Elements allows you to apply any number of styles transitions to a =
selection of elements. Includes colors (must be in hex format).=0A=
	Inherits methods, properties, options and events from <Fx.Base>.=0A=
=0A=
Arguments:=0A=
	elements - a collection of elements the effects will be applied to.=0A=
	options - same as <Fx.Base> options.=0A=
*/=0A=
=0A=
Fx.Elements =3D Fx.Base.extend({=0A=
=0A=
	initialize: function(elements, options){=0A=
		this.elements =3D $$(elements);=0A=
		this.parent(options);=0A=
	},=0A=
=0A=
	setNow: function(){=0A=
		for (var i in this.from){=0A=
			var iFrom =3D this.from[i], iTo =3D this.to[i], iCss =3D this.css[i], =
iNow =3D this.now[i] =3D {};=0A=
			for (var p in iFrom) iNow[p] =3D iCss[p].getNow(iFrom[p], iTo[p], =
this);=0A=
		}=0A=
	},=0A=
=0A=
	set: function(to){=0A=
		var parsed =3D {};=0A=
		this.css =3D {};=0A=
		for (var i in to){=0A=
			var iTo =3D to[i], iCss =3D this.css[i] =3D {}, iParsed =3D parsed[i] =
=3D {};=0A=
			for (var p in iTo){=0A=
				iCss[p] =3D Fx.CSS.select(p, iTo[p]);=0A=
				iParsed[p] =3D iCss[p].parse(iTo[p]);=0A=
			}=0A=
		}=0A=
		return this.parent(parsed);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: start=0A=
		Applies the passed in style transitions to each object named (see =
example). Each item in the collection is refered to as a numerical =
string ("1" for instance). The first item is "0", the second "1", etc.=0A=
=0A=
	Example:=0A=
		(start code)=0A=
		var myElementsEffects =3D new Fx.Elements($$('a'));=0A=
		myElementsEffects.start({=0A=
			'0': { //let's change the first element's opacity and width=0A=
				'opacity': [0,1],=0A=
				'width': [100,200]=0A=
			},=0A=
			'4': { //and the fifth one's opacity=0A=
				'opacity': [0.2, 0.5]=0A=
			}=0A=
		});=0A=
		(end)=0A=
	*/=0A=
=0A=
	start: function(obj){=0A=
		if (this.timer && this.options.wait) return this;=0A=
		this.now =3D {};=0A=
		this.css =3D {};=0A=
		var from =3D {}, to =3D {};=0A=
		for (var i in obj){=0A=
			var iProps =3D obj[i], iFrom =3D from[i] =3D {}, iTo =3D to[i] =3D =
{}, iCss =3D this.css[i] =3D {};=0A=
			for (var p in iProps){=0A=
				var parsed =3D Fx.CSS.parse(this.elements[i], p, iProps[p]);=0A=
				iFrom[p] =3D parsed.from;=0A=
				iTo[p] =3D parsed.to;=0A=
				iCss[p] =3D parsed.css;=0A=
			}=0A=
		}=0A=
		return this.parent(from, to);=0A=
	},=0A=
=0A=
	increase: function(){=0A=
		for (var i in this.now){=0A=
			var iNow =3D this.now[i], iCss =3D this.css[i];=0A=
			for (var p in iNow) this.elements[i].setStyle(p, =
iCss[p].getValue(iNow[p], this.options.unit, p));=0A=
		}=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Fx.Scroll.js=0A=
	Contains <Fx.Scroll>=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Fx.Scroll=0A=
	Scroll any element with an overflow, including the window element.=0A=
	Inherits methods, properties, options and events from <Fx.Base>.=0A=
=0A=
Note:=0A=
	Fx.Scroll requires an XHTML doctype.=0A=
=0A=
Arguments:=0A=
	element - the element to scroll=0A=
	options - optional, see Options below.=0A=
=0A=
Options:=0A=
	all the Fx.Base options and events, plus:=0A=
	offset - the distance for the scrollTo point/element. an Object with =
x/y properties.=0A=
	overflown - an array of nested scrolling containers, see =
<Element.getPosition>=0A=
*/=0A=
=0A=
Fx.Scroll =3D Fx.Base.extend({=0A=
=0A=
	options: {=0A=
		overflown: [],=0A=
		offset: {'x': 0, 'y': 0},=0A=
		wheelStops: true=0A=
	},=0A=
=0A=
	initialize: function(element, options){=0A=
		this.now =3D [];=0A=
		this.element =3D $(element);=0A=
		this.bound =3D {'stop': this.stop.bind(this, false)};=0A=
		this.parent(options);=0A=
		if (this.options.wheelStops){=0A=
			this.addEvent('onStart', function(){=0A=
				document.addEvent('mousewheel', this.bound.stop);=0A=
			}.bind(this));=0A=
			this.addEvent('onComplete', function(){=0A=
				document.removeEvent('mousewheel', this.bound.stop);=0A=
			}.bind(this));=0A=
		}=0A=
	},=0A=
=0A=
	setNow: function(){=0A=
		for (var i =3D 0; i < 2; i++) this.now[i] =3D =
this.compute(this.from[i], this.to[i]);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: scrollTo=0A=
		Scrolls the chosen element to the x/y coordinates.=0A=
=0A=
	Arguments:=0A=
		x - the x coordinate to scroll the element to=0A=
		y - the y coordinate to scroll the element to=0A=
	*/=0A=
=0A=
	scrollTo: function(x, y){=0A=
		if (this.timer && this.options.wait) return this;=0A=
		var el =3D this.element.getSize();=0A=
		var values =3D {'x': x, 'y': y};=0A=
		for (var z in el.size){=0A=
			var max =3D el.scrollSize[z] - el.size[z];=0A=
			if ($chk(values[z])) values[z] =3D ($type(values[z]) =3D=3D 'number') =
? values[z].limit(0, max) : max;=0A=
			else values[z] =3D el.scroll[z];=0A=
			values[z] +=3D this.options.offset[z];=0A=
		}=0A=
		return this.start([el.scroll.x, el.scroll.y], [values.x, values.y]);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: toTop=0A=
		Scrolls the chosen element to its maximum top.=0A=
	*/=0A=
=0A=
	toTop: function(){=0A=
		return this.scrollTo(false, 0);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: toBottom=0A=
		Scrolls the chosen element to its maximum bottom.=0A=
	*/=0A=
=0A=
	toBottom: function(){=0A=
		return this.scrollTo(false, 'full');=0A=
	},=0A=
=0A=
	/*=0A=
	Property: toLeft=0A=
		Scrolls the chosen element to its maximum left.=0A=
	*/=0A=
=0A=
	toLeft: function(){=0A=
		return this.scrollTo(0, false);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: toRight=0A=
		Scrolls the chosen element to its maximum right.=0A=
	*/=0A=
=0A=
	toRight: function(){=0A=
		return this.scrollTo('full', false);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: toElement=0A=
		Scrolls the specified element to the position the passed in element is =
found.=0A=
=0A=
	Arguments:=0A=
		el - the $(element) to scroll the window to=0A=
	*/=0A=
=0A=
	toElement: function(el){=0A=
		var parent =3D this.element.getPosition(this.options.overflown);=0A=
		var target =3D $(el).getPosition(this.options.overflown);=0A=
		return this.scrollTo(target.x - parent.x, target.y - parent.y);=0A=
	},=0A=
=0A=
	increase: function(){=0A=
		this.element.scrollTo(this.now[0], this.now[1]);=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Fx.Slide.js=0A=
	Contains <Fx.Slide>=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Fx.Slide=0A=
	The slide effect; slides an element in horizontally or vertically, the =
contents will fold inside.=0A=
	Inherits methods, properties, options and events from <Fx.Base>.=0A=
	=0A=
Note:=0A=
	Fx.Slide requires an XHTML doctype.=0A=
=0A=
Options:=0A=
	mode - set it to vertical or horizontal. Defaults to vertical.=0A=
	options - all the <Fx.Base> options=0A=
=0A=
Example:=0A=
	(start code)=0A=
	var mySlider =3D new Fx.Slide('myElement', {duration: 500});=0A=
	mySlider.toggle() //toggle the slider up and down.=0A=
	(end)=0A=
*/=0A=
=0A=
Fx.Slide =3D Fx.Base.extend({=0A=
=0A=
	options: {=0A=
		mode: 'vertical'=0A=
	},=0A=
=0A=
	initialize: function(el, options){=0A=
		this.element =3D $(el);=0A=
		this.wrapper =3D new Element('div', {'styles': =
$extend(this.element.getStyles('margin'), {'overflow': =
'hidden'})}).injectAfter(this.element).adopt(this.element);=0A=
		this.element.setStyle('margin', 0);=0A=
		this.setOptions(options);=0A=
		this.now =3D [];=0A=
		this.parent(this.options);=0A=
		this.open =3D true;=0A=
		this.addEvent('onComplete', function(){=0A=
			this.open =3D (this.now[0] =3D=3D=3D 0);=0A=
		});=0A=
		if (window.webkit419) this.addEvent('onComplete', function(){=0A=
			if (this.open) this.element.remove().inject(this.wrapper);=0A=
		});=0A=
	},=0A=
=0A=
	setNow: function(){=0A=
		for (var i =3D 0; i < 2; i++) this.now[i] =3D =
this.compute(this.from[i], this.to[i]);=0A=
	},=0A=
=0A=
	vertical: function(){=0A=
		this.margin =3D 'margin-top';=0A=
		this.layout =3D 'height';=0A=
		this.offset =3D this.element.offsetHeight;=0A=
	},=0A=
=0A=
	horizontal: function(){=0A=
		this.margin =3D 'margin-left';=0A=
		this.layout =3D 'width';=0A=
		this.offset =3D this.element.offsetWidth;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: slideIn=0A=
		Slides the elements in view horizontally or vertically.=0A=
=0A=
	Arguments:=0A=
		mode - (optional, string) 'horizontal' or 'vertical'; defaults to =
options.mode.=0A=
	*/=0A=
=0A=
	slideIn: function(mode){=0A=
		this[mode || this.options.mode]();=0A=
		return this.start([this.element.getStyle(this.margin).toInt(), =
this.wrapper.getStyle(this.layout).toInt()], [0, this.offset]);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: slideOut=0A=
		Sides the elements out of view horizontally or vertically.=0A=
=0A=
	Arguments:=0A=
		mode - (optional, string) 'horizontal' or 'vertical'; defaults to =
options.mode.=0A=
	*/=0A=
=0A=
	slideOut: function(mode){=0A=
		this[mode || this.options.mode]();=0A=
		return this.start([this.element.getStyle(this.margin).toInt(), =
this.wrapper.getStyle(this.layout).toInt()], [-this.offset, 0]);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: hide=0A=
		Hides the element without a transition.=0A=
=0A=
	Arguments:=0A=
		mode - (optional, string) 'horizontal' or 'vertical'; defaults to =
options.mode.=0A=
	*/=0A=
=0A=
	hide: function(mode){=0A=
		this[mode || this.options.mode]();=0A=
		this.open =3D false;=0A=
		return this.set([-this.offset, 0]);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: show=0A=
		Shows the element without a transition.=0A=
=0A=
	Arguments:=0A=
		mode - (optional, string) 'horizontal' or 'vertical'; defaults to =
options.mode.=0A=
	*/=0A=
=0A=
	show: function(mode){=0A=
		this[mode || this.options.mode]();=0A=
		this.open =3D true;=0A=
		return this.set([0, this.offset]);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: toggle=0A=
		Slides in or Out the element, depending on its state=0A=
=0A=
	Arguments:=0A=
		mode - (optional, string) 'horizontal' or 'vertical'; defaults to =
options.mode.=0A=
=0A=
	*/=0A=
=0A=
	toggle: function(mode){=0A=
		if (this.wrapper.offsetHeight =3D=3D 0 || this.wrapper.offsetWidth =
=3D=3D 0) return this.slideIn(mode);=0A=
		return this.slideOut(mode);=0A=
	},=0A=
=0A=
	increase: function(){=0A=
		this.element.setStyle(this.margin, this.now[0] + this.options.unit);=0A=
		this.wrapper.setStyle(this.layout, this.now[1] + this.options.unit);=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Fx.Transitions.js=0A=
	Effects transitions, to be used with all the effects.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
=0A=
Credits:=0A=
	Easing Equations by Robert Penner, =
<http://www.robertpenner.com/easing/>, modified & optimized to be used =
with mootools.=0A=
*/=0A=
=0A=
/*=0A=
Class: Fx.Transitions=0A=
	A collection of tweening transitions for use with the <Fx.Base> classes.=0A=
=0A=
Example:=0A=
	>//Elastic.easeOut with default values:=0A=
	>new Fx.Style('margin', {transition: Fx.Transitions.Elastic.easeOut});=0A=
	>//Elastic.easeOut with user-defined value for elasticity.=0A=
	> var myTransition =3D new Fx.Transition(Fx.Transitions.Elastic, 3);=0A=
	>new Fx.Style('margin', {transition: myTransition.easeOut});=0A=
=0A=
See also:=0A=
	http://www.robertpenner.com/easing/=0A=
*/=0A=
=0A=
Fx.Transition =3D function(transition, params){=0A=
	params =3D params || [];=0A=
	if ($type(params) !=3D 'array') params =3D [params];=0A=
	return $extend(transition, {=0A=
		easeIn: function(pos){=0A=
			return transition(pos, params);=0A=
		},=0A=
		easeOut: function(pos){=0A=
			return 1 - transition(1 - pos, params);=0A=
		},=0A=
		easeInOut: function(pos){=0A=
			return (pos <=3D 0.5) ? transition(2 * pos, params) / 2 : (2 - =
transition(2 * (1 - pos), params)) / 2;=0A=
		}=0A=
	});=0A=
};=0A=
=0A=
Fx.Transitions =3D new Abstract({=0A=
=0A=
	/*=0A=
	Property: linear=0A=
		displays a linear transition.=0A=
=0A=
	Graph:=0A=
		(see Linear.png)=0A=
	*/=0A=
=0A=
	linear: function(p){=0A=
		return p;=0A=
	}=0A=
=0A=
});=0A=
=0A=
Fx.Transitions.extend =3D function(transitions){=0A=
	for (var transition in transitions){=0A=
		Fx.Transitions[transition] =3D new =
Fx.Transition(transitions[transition]);=0A=
		/*compatibility*/=0A=
		Fx.Transitions.compat(transition);=0A=
		/*end compatibility*/=0A=
	}=0A=
};=0A=
=0A=
/*compatibility*/=0A=
=0A=
Fx.Transitions.compat =3D function(transition){=0A=
	['In', 'Out', 'InOut'].each(function(easeType){=0A=
		Fx.Transitions[transition.toLowerCase() + easeType] =3D =
Fx.Transitions[transition]['ease' + easeType];=0A=
	});=0A=
};=0A=
=0A=
/*end compatibility*/=0A=
=0A=
Fx.Transitions.extend({=0A=
=0A=
	/*=0A=
	Property: Quad=0A=
		displays a quadratic transition. Must be used as Quad.easeIn or =
Quad.easeOut or Quad.easeInOut=0A=
=0A=
	Graph:=0A=
		(see Quad.png)=0A=
	*/=0A=
=0A=
	//auto generated=0A=
=0A=
	/*=0A=
	Property: Cubic=0A=
		displays a cubicular transition. Must be used as Cubic.easeIn or =
Cubic.easeOut or Cubic.easeInOut=0A=
=0A=
	Graph:=0A=
		(see Cubic.png)=0A=
	*/=0A=
=0A=
	//auto generated=0A=
=0A=
	/*=0A=
	Property: Quart=0A=
		displays a quartetic transition. Must be used as Quart.easeIn or =
Quart.easeOut or Quart.easeInOut=0A=
=0A=
	Graph:=0A=
		(see Quart.png)=0A=
	*/=0A=
=0A=
	//auto generated=0A=
=0A=
	/*=0A=
	Property: Quint=0A=
		displays a quintic transition. Must be used as Quint.easeIn or =
Quint.easeOut or Quint.easeInOut=0A=
=0A=
	Graph:=0A=
		(see Quint.png)=0A=
	*/=0A=
=0A=
	//auto generated=0A=
=0A=
	/*=0A=
	Property: Pow=0A=
		Used to generate Quad, Cubic, Quart and Quint.=0A=
		By default is p^6.=0A=
=0A=
	Graph:=0A=
		(see Pow.png)=0A=
	*/=0A=
=0A=
	Pow: function(p, x){=0A=
		return Math.pow(p, x[0] || 6);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: Expo=0A=
		displays a exponential transition. Must be used as Expo.easeIn or =
Expo.easeOut or Expo.easeInOut=0A=
=0A=
	Graph:=0A=
		(see Expo.png)=0A=
	*/=0A=
=0A=
	Expo: function(p){=0A=
		return Math.pow(2, 8 * (p - 1));=0A=
	},=0A=
=0A=
	/*=0A=
	Property: Circ=0A=
		displays a circular transition. Must be used as Circ.easeIn or =
Circ.easeOut or Circ.easeInOut=0A=
=0A=
	Graph:=0A=
		(see Circ.png)=0A=
	*/=0A=
=0A=
	Circ: function(p){=0A=
		return 1 - Math.sin(Math.acos(p));=0A=
	},=0A=
=0A=
=0A=
	/*=0A=
	Property: Sine=0A=
		displays a sineousidal transition. Must be used as Sine.easeIn or =
Sine.easeOut or Sine.easeInOut=0A=
=0A=
	Graph:=0A=
		(see Sine.png)=0A=
	*/=0A=
=0A=
	Sine: function(p){=0A=
		return 1 - Math.sin((1 - p) * Math.PI / 2);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: Back=0A=
		makes the transition go back, then all forth. Must be used as =
Back.easeIn or Back.easeOut or Back.easeInOut=0A=
=0A=
	Graph:=0A=
		(see Back.png)=0A=
	*/=0A=
=0A=
	Back: function(p, x){=0A=
		x =3D x[0] || 1.618;=0A=
		return Math.pow(p, 2) * ((x + 1) * p - x);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: Bounce=0A=
		makes the transition bouncy. Must be used as Bounce.easeIn or =
Bounce.easeOut or Bounce.easeInOut=0A=
=0A=
	Graph:=0A=
		(see Bounce.png)=0A=
	*/=0A=
=0A=
	Bounce: function(p){=0A=
		var value;=0A=
		for (var a =3D 0, b =3D 1; 1; a +=3D b, b /=3D 2){=0A=
			if (p >=3D (7 - 4 * a) / 11){=0A=
				value =3D - Math.pow((11 - 6 * a - 11 * p) / 4, 2) + b * b;=0A=
				break;=0A=
			}=0A=
		}=0A=
		return value;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: Elastic=0A=
		Elastic curve. Must be used as Elastic.easeIn or Elastic.easeOut or =
Elastic.easeInOut=0A=
=0A=
	Graph:=0A=
		(see Elastic.png)=0A=
	*/=0A=
=0A=
	Elastic: function(p, x){=0A=
		return Math.pow(2, 10 * --p) * Math.cos(20 * p * Math.PI * (x[0] || 1) =
/ 3);=0A=
	}=0A=
=0A=
});=0A=
=0A=
['Quad', 'Cubic', 'Quart', 'Quint'].each(function(transition, i){=0A=
	Fx.Transitions[transition] =3D new Fx.Transition(function(p){=0A=
		return Math.pow(p, [i + 2]);=0A=
	});=0A=
	=0A=
	/*compatibility*/=0A=
	Fx.Transitions.compat(transition);=0A=
	/*end compatibility*/=0A=
});=0A=
=0A=
/*=0A=
Script: Drag.Base.js=0A=
	Contains <Drag.Base>, <Element.makeResizable>=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
var Drag =3D {};=0A=
=0A=
/*=0A=
Class: Drag.Base=0A=
	Modify two css properties of an element based on the position of the =
mouse.=0A=
	=0A=
Note:=0A=
	Drag.Base requires an XHTML doctype.=0A=
=0A=
Arguments:=0A=
	el - the $(element) to apply the transformations to.=0A=
	options - optional. The options object.=0A=
=0A=
Options:=0A=
	handle - the $(element) to act as the handle for the draggable element. =
defaults to the $(element) itself.=0A=
	modifiers - an object. see Modifiers Below.=0A=
	limit - an object, see Limit below.=0A=
	grid - optional, distance in px for snap-to-grid dragging=0A=
	snap - optional, the distance you have to drag before the element =
starts to respond to the drag. defaults to false=0A=
=0A=
	modifiers:=0A=
		x - string, the style you want to modify when the mouse moves in an =
horizontal direction. defaults to 'left'=0A=
		y - string, the style you want to modify when the mouse moves in a =
vertical direction. defaults to 'top'=0A=
=0A=
	limit:=0A=
		x - array with start and end limit relative to modifiers.x=0A=
		y - array with start and end limit relative to modifiers.y=0A=
		=0A=
Events:=0A=
	onStart - optional, function to execute when the user starts to drag =
(on mousedown);=0A=
	onComplete - optional, function to execute when the user completes the =
drag.=0A=
	onDrag - optional, function to execute at every step of the drag=0A=
*/=0A=
=0A=
Drag.Base =3D new Class({=0A=
=0A=
	options: {=0A=
		handle: false,=0A=
		unit: 'px',=0A=
		onStart: Class.empty,=0A=
		onBeforeStart: Class.empty,=0A=
		onComplete: Class.empty,=0A=
		onSnap: Class.empty,=0A=
		onDrag: Class.empty,=0A=
		limit: false,=0A=
		modifiers: {x: 'left', y: 'top'},=0A=
		grid: false,=0A=
		snap: 6=0A=
	},=0A=
=0A=
	initialize: function(el, options){=0A=
		this.setOptions(options);=0A=
		this.element =3D $(el);=0A=
		this.handle =3D $(this.options.handle) || this.element;=0A=
		this.mouse =3D {'now': {}, 'pos': {}};=0A=
		this.value =3D {'start': {}, 'now': {}};=0A=
		this.bound =3D {=0A=
			'start': this.start.bindWithEvent(this),=0A=
			'check': this.check.bindWithEvent(this),=0A=
			'drag': this.drag.bindWithEvent(this),=0A=
			'stop': this.stop.bind(this)=0A=
		};=0A=
		this.attach();=0A=
		if (this.options.initialize) this.options.initialize.call(this);=0A=
	},=0A=
=0A=
	attach: function(){=0A=
		this.handle.addEvent('mousedown', this.bound.start);=0A=
		return this;=0A=
	},=0A=
=0A=
	detach: function(){=0A=
		this.handle.removeEvent('mousedown', this.bound.start);=0A=
		return this;=0A=
	},=0A=
=0A=
	start: function(event){=0A=
		this.fireEvent('onBeforeStart', this.element);=0A=
		this.mouse.start =3D event.page;=0A=
		var limit =3D this.options.limit;=0A=
		this.limit =3D {'x': [], 'y': []};=0A=
		for (var z in this.options.modifiers){=0A=
			if (!this.options.modifiers[z]) continue;=0A=
			this.value.now[z] =3D =
this.element.getStyle(this.options.modifiers[z]).toInt();=0A=
			this.mouse.pos[z] =3D event.page[z] - this.value.now[z];=0A=
			if (limit && limit[z]){=0A=
				for (var i =3D 0; i < 2; i++){=0A=
					if ($chk(limit[z][i])) this.limit[z][i] =3D ($type(limit[z][i]) =
=3D=3D 'function') ? limit[z][i]() : limit[z][i];=0A=
				}=0A=
			}=0A=
		}=0A=
		if ($type(this.options.grid) =3D=3D 'number') this.options.grid =3D =
{'x': this.options.grid, 'y': this.options.grid};=0A=
		document.addListener('mousemove', this.bound.check);=0A=
		document.addListener('mouseup', this.bound.stop);=0A=
		this.fireEvent('onStart', this.element);=0A=
		event.stop();=0A=
	},=0A=
=0A=
	check: function(event){=0A=
		var distance =3D Math.round(Math.sqrt(Math.pow(event.page.x - =
this.mouse.start.x, 2) + Math.pow(event.page.y - this.mouse.start.y, =
2)));=0A=
		if (distance > this.options.snap){=0A=
			document.removeListener('mousemove', this.bound.check);=0A=
			document.addListener('mousemove', this.bound.drag);=0A=
			this.drag(event);=0A=
			this.fireEvent('onSnap', this.element);=0A=
		}=0A=
		event.stop();=0A=
	},=0A=
=0A=
	drag: function(event){=0A=
		this.out =3D false;=0A=
		this.mouse.now =3D event.page;=0A=
		for (var z in this.options.modifiers){=0A=
			if (!this.options.modifiers[z]) continue;=0A=
			this.value.now[z] =3D this.mouse.now[z] - this.mouse.pos[z];=0A=
			if (this.limit[z]){=0A=
				if ($chk(this.limit[z][1]) && (this.value.now[z] > =
this.limit[z][1])){=0A=
					this.value.now[z] =3D this.limit[z][1];=0A=
					this.out =3D true;=0A=
				} else if ($chk(this.limit[z][0]) && (this.value.now[z] < =
this.limit[z][0])){=0A=
					this.value.now[z] =3D this.limit[z][0];=0A=
					this.out =3D true;=0A=
				}=0A=
			}=0A=
			if (this.options.grid[z]) this.value.now[z] -=3D (this.value.now[z] % =
this.options.grid[z]);=0A=
			this.element.setStyle(this.options.modifiers[z], this.value.now[z] + =
this.options.unit);=0A=
		}=0A=
		this.fireEvent('onDrag', this.element);=0A=
		event.stop();=0A=
	},=0A=
=0A=
	stop: function(){=0A=
		document.removeListener('mousemove', this.bound.check);=0A=
		document.removeListener('mousemove', this.bound.drag);=0A=
		document.removeListener('mouseup', this.bound.stop);=0A=
		this.fireEvent('onComplete', this.element);=0A=
	}=0A=
=0A=
});=0A=
=0A=
Drag.Base.implement(new Events, new Options);=0A=
=0A=
/*=0A=
Class: Element=0A=
	Custom class to allow all of its methods to be used with any DOM =
element via the dollar function <$>.=0A=
*/=0A=
=0A=
Element.extend({=0A=
=0A=
	/*=0A=
	Property: makeResizable=0A=
		Makes an element resizable (by dragging) with the supplied options.=0A=
=0A=
	Arguments:=0A=
		options - see <Drag.Base> for acceptable options.=0A=
	*/=0A=
=0A=
	makeResizable: function(options){=0A=
		return new Drag.Base(this, $merge({modifiers: {x: 'width', y: =
'height'}}, options));=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Drag.Move.js=0A=
	Contains <Drag.Move>, <Element.makeDraggable>=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Drag.Move=0A=
	Extends <Drag.Base>, has additional functionality for dragging an =
element, support snapping and droppables.=0A=
	Drag.move supports either position absolute or relative. If no position =
is found, absolute will be set.=0A=
	Inherits methods, properties, options and events from <Drag.Base>.=0A=
=0A=
Note:=0A=
	Drag.Move requires an XHTML doctype.=0A=
=0A=
Arguments:=0A=
	el - the $(element) to apply the drag to.=0A=
	options - optional. see Options below.=0A=
=0A=
Options:=0A=
	all the drag.Base options, plus:=0A=
	container - an element, will fill automatically limiting options based =
on the $(element) size and position. defaults to false (no limiting)=0A=
	droppables - an array of elements you can drop your draggable to.=0A=
	overflown - an array of nested scrolling containers, see =
Element::getPosition=0A=
*/=0A=
=0A=
Drag.Move =3D Drag.Base.extend({=0A=
=0A=
	options: {=0A=
		droppables: [],=0A=
		container: false,=0A=
		overflown: []=0A=
	},=0A=
=0A=
	initialize: function(el, options){=0A=
		this.setOptions(options);=0A=
		this.element =3D $(el);=0A=
		this.droppables =3D $$(this.options.droppables);=0A=
		this.container =3D $(this.options.container);=0A=
		this.position =3D {'element': this.element.getStyle('position'), =
'container': false};=0A=
		if (this.container) this.position.container =3D =
this.container.getStyle('position');=0A=
		if (!['relative', 'absolute', =
'fixed'].contains(this.position.element)) this.position.element =3D =
'absolute';=0A=
		var top =3D this.element.getStyle('top').toInt();=0A=
		var left =3D this.element.getStyle('left').toInt();=0A=
		if (this.position.element =3D=3D 'absolute' && !['relative', =
'absolute', 'fixed'].contains(this.position.container)){=0A=
			top =3D $chk(top) ? top : this.element.getTop(this.options.overflown);=0A=
			left =3D $chk(left) ? left : =
this.element.getLeft(this.options.overflown);=0A=
		} else {=0A=
			top =3D $chk(top) ? top : 0;=0A=
			left =3D $chk(left) ? left : 0;=0A=
		}=0A=
		this.element.setStyles({'top': top, 'left': left, 'position': =
this.position.element});=0A=
		this.parent(this.element);=0A=
	},=0A=
=0A=
	start: function(event){=0A=
		this.overed =3D null;=0A=
		if (this.container){=0A=
			var cont =3D this.container.getCoordinates();=0A=
			var el =3D this.element.getCoordinates();=0A=
			if (this.position.element =3D=3D 'absolute' && !['relative', =
'absolute', 'fixed'].contains(this.position.container)){=0A=
				this.options.limit =3D {=0A=
					'x': [cont.left, cont.right - el.width],=0A=
					'y': [cont.top, cont.bottom - el.height]=0A=
				};=0A=
			} else {=0A=
				this.options.limit =3D {=0A=
					'y': [0, cont.height - el.height],=0A=
					'x': [0, cont.width - el.width]=0A=
				};=0A=
			}=0A=
		}=0A=
		this.parent(event);=0A=
	},=0A=
=0A=
	drag: function(event){=0A=
		this.parent(event);=0A=
		var overed =3D this.out ? false : =
this.droppables.filter(this.checkAgainst, this).getLast();=0A=
		if (this.overed !=3D overed){=0A=
			if (this.overed) this.overed.fireEvent('leave', [this.element, this]);=0A=
			this.overed =3D overed ? overed.fireEvent('over', [this.element, =
this]) : null;=0A=
		}=0A=
		return this;=0A=
	},=0A=
=0A=
	checkAgainst: function(el){=0A=
		el =3D el.getCoordinates(this.options.overflown);=0A=
		var now =3D this.mouse.now;=0A=
		return (now.x > el.left && now.x < el.right && now.y < el.bottom && =
now.y > el.top);=0A=
	},=0A=
=0A=
	stop: function(){=0A=
		if (this.overed && !this.out) this.overed.fireEvent('drop', =
[this.element, this]);=0A=
		else this.element.fireEvent('emptydrop', this);=0A=
		this.parent();=0A=
		return this;=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Class: Element=0A=
	Custom class to allow all of its methods to be used with any DOM =
element via the dollar function <$>.=0A=
*/=0A=
=0A=
Element.extend({=0A=
=0A=
	/*=0A=
	Property: makeDraggable=0A=
		Makes an element draggable with the supplied options.=0A=
=0A=
	Arguments:=0A=
		options - see <Drag.Move> and <Drag.Base> for acceptable options.=0A=
	*/=0A=
=0A=
	makeDraggable: function(options){=0A=
		return new Drag.Move(this, options);=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: XHR.js=0A=
	Contains the basic XMLHttpRequest Class Wrapper.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: XHR=0A=
	Basic XMLHttpRequest Wrapper.=0A=
=0A=
Arguments:=0A=
	options - an object with options names as keys. See options below.=0A=
=0A=
Options:=0A=
	method - 'post' or 'get' - the protocol for the request; optional, =
defaults to 'post'.=0A=
	async - boolean: asynchronous option; true uses asynchronous requests. =
Defaults to true.=0A=
	encoding - the encoding, defaults to utf-8.=0A=
	autoCancel - cancels the already running request if another one is =
sent. defaults to false.=0A=
	headers - accepts an object, that will be set to request headers.=0A=
	=0A=
Events:=0A=
	onRequest - function to execute when the XHR request is fired.=0A=
	onSuccess - function to execute when the XHR request completes.=0A=
	onStateChange - function to execute when the state of the =
XMLHttpRequest changes.=0A=
	onFailure - function to execute when the state of the XMLHttpRequest =
changes.=0A=
=0A=
Properties:=0A=
	running - true if the request is running.=0A=
	response - object, text and xml as keys. You can access this property =
in the onSuccess event.=0A=
=0A=
Example:=0A=
	>var myXHR =3D new XHR({method: =
'get'}).send('http://site.com/requestHandler.php', =
'name=3Djohn&lastname=3Ddorian');=0A=
*/=0A=
=0A=
var XHR =3D new Class({=0A=
=0A=
	options: {=0A=
		method: 'post',=0A=
		async: true,=0A=
		onRequest: Class.empty,=0A=
		onSuccess: Class.empty,=0A=
		onFailure: Class.empty,=0A=
		urlEncoded: true,=0A=
		encoding: 'utf-8',=0A=
		autoCancel: false,=0A=
		headers: {}=0A=
	},=0A=
=0A=
	setTransport: function(){=0A=
		this.transport =3D (window.XMLHttpRequest) ? new XMLHttpRequest() : =
(window.ie ? new ActiveXObject('Microsoft.XMLHTTP') : false);=0A=
		return this;=0A=
	},=0A=
=0A=
	initialize: function(options){=0A=
		this.setTransport().setOptions(options);=0A=
		this.options.isSuccess =3D this.options.isSuccess || this.isSuccess;=0A=
		this.headers =3D {};=0A=
		if (this.options.urlEncoded && this.options.method =3D=3D 'post'){=0A=
			var encoding =3D (this.options.encoding) ? '; charset=3D' + =
this.options.encoding : '';=0A=
			this.setHeader('Content-type', 'application/x-www-form-urlencoded' + =
encoding);=0A=
		}=0A=
		if (this.options.initialize) this.options.initialize.call(this);=0A=
	},=0A=
=0A=
	onStateChange: function(){=0A=
		if (this.transport.readyState !=3D 4 || !this.running) return;=0A=
		this.running =3D false;=0A=
		var status =3D 0;=0A=
		try {status =3D this.transport.status;} catch(e){};=0A=
		if (this.options.isSuccess.call(this, status)) this.onSuccess();=0A=
		else this.onFailure();=0A=
		this.transport.onreadystatechange =3D Class.empty;=0A=
	},=0A=
=0A=
	isSuccess: function(status){=0A=
		return ((status >=3D 200) && (status < 300));=0A=
	},=0A=
=0A=
	onSuccess: function(){=0A=
		this.response =3D {=0A=
			'text': this.transport.responseText,=0A=
			'xml': this.transport.responseXML=0A=
		};=0A=
		this.fireEvent('onSuccess', [this.response.text, this.response.xml]);=0A=
		this.callChain();=0A=
	},=0A=
=0A=
	onFailure: function(){=0A=
		this.fireEvent('onFailure', this.transport);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: setHeader=0A=
		Add/modify an header for the request. It will not override headers =
from the options.=0A=
=0A=
	Example:=0A=
		>var myXhr =3D new XHR(url, {method: 'get', headers: {'X-Request': =
'JSON'}});=0A=
		>myXhr.setHeader('Last-Modified','Sat, 1 Jan 2005 05:00:00 GMT');=0A=
	*/=0A=
=0A=
	setHeader: function(name, value){=0A=
		this.headers[name] =3D value;=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: send=0A=
		Opens the XHR connection and sends the data. Data has to be null or a =
string.=0A=
=0A=
	Example:=0A=
		>var myXhr =3D new XHR({method: 'post'});=0A=
		>myXhr.send(url, querystring);=0A=
		>=0A=
		>var syncXhr =3D new XHR({async: false, method: 'post'});=0A=
		>syncXhr.send(url, null);=0A=
		>=0A=
	*/=0A=
=0A=
	send: function(url, data){=0A=
		if (this.options.autoCancel) this.cancel();=0A=
		else if (this.running) return this;=0A=
		this.running =3D true;=0A=
		if (data && this.options.method =3D=3D 'get'){=0A=
			url =3D url + (url.contains('?') ? '&' : '?') + data;=0A=
			data =3D null;=0A=
		}=0A=
		this.transport.open(this.options.method.toUpperCase(), url, =
this.options.async);=0A=
		this.transport.onreadystatechange =3D this.onStateChange.bind(this);=0A=
		if ((this.options.method =3D=3D 'post') && =
this.transport.overrideMimeType) this.setHeader('Connection', 'close');=0A=
		$extend(this.headers, this.options.headers);=0A=
		for (var type in this.headers) try =
{this.transport.setRequestHeader(type, this.headers[type]);} catch(e){};=0A=
		this.fireEvent('onRequest');=0A=
		this.transport.send($pick(data, null));=0A=
		return this;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: cancel=0A=
		Cancels the running request. No effect if the request is not running.=0A=
=0A=
	Example:=0A=
		>var myXhr =3D new XHR({method: 'get'}).send(url);=0A=
		>myXhr.cancel();=0A=
	*/=0A=
=0A=
	cancel: function(){=0A=
		if (!this.running) return this;=0A=
		this.running =3D false;=0A=
		this.transport.abort();=0A=
		this.transport.onreadystatechange =3D Class.empty;=0A=
		this.setTransport();=0A=
		this.fireEvent('onCancel');=0A=
		return this;=0A=
	}=0A=
=0A=
});=0A=
=0A=
XHR.implement(new Chain, new Events, new Options);=0A=
=0A=
/*=0A=
Script: Ajax.js=0A=
	Contains the <Ajax> class. Also contains methods to generate =
querystings from forms and Objects.=0A=
=0A=
Credits:=0A=
	Loosely based on the version from prototype.js =
<http://prototype.conio.net>=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Ajax=0A=
	An Ajax class, For all your asynchronous needs.=0A=
	Inherits methods, properties, options and events from <XHR>.=0A=
=0A=
Arguments:=0A=
	url - the url pointing to the server-side script.=0A=
	options - optional, an object containing options.=0A=
=0A=
Options:=0A=
	data - you can write parameters here. Can be a querystring, an object =
or a Form element.=0A=
	update - $(element) to insert the response text of the XHR into, upon =
completion of the request.=0A=
	evalScripts - boolean; default is false. Execute scripts in the =
response text onComplete. When the response is javascript the whole =
response is evaluated.=0A=
	evalResponse - boolean; default is false. Force global evalulation of =
the whole response, no matter what content-type it is.=0A=
	=0A=
Events:=0A=
	onComplete - function to execute when the ajax request completes.=0A=
=0A=
Example:=0A=
	>var myAjax =3D new Ajax(url, {method: 'get'}).request();=0A=
*/=0A=
=0A=
var Ajax =3D XHR.extend({=0A=
=0A=
	options: {=0A=
		data: null,=0A=
		update: null,=0A=
		onComplete: Class.empty,=0A=
		evalScripts: false,=0A=
		evalResponse: false=0A=
	},=0A=
=0A=
	initialize: function(url, options){=0A=
		this.addEvent('onSuccess', this.onComplete);=0A=
		this.setOptions(options);=0A=
		/*compatibility*/=0A=
		this.options.data =3D this.options.data || this.options.postBody;=0A=
		/*end compatibility*/=0A=
		if (!['post', 'get'].contains(this.options.method)){=0A=
			this._method =3D '_method=3D' + this.options.method;=0A=
			this.options.method =3D 'post';=0A=
		}=0A=
		this.parent();=0A=
		this.setHeader('X-Requested-With', 'XMLHttpRequest');=0A=
		this.setHeader('Accept', 'text/javascript, text/html, application/xml, =
text/xml, */*');=0A=
		this.url =3D url;=0A=
	},=0A=
=0A=
	onComplete: function(){=0A=
		if (this.options.update) =
$(this.options.update).empty().setHTML(this.response.text);=0A=
		if (this.options.evalScripts || this.options.evalResponse) =
this.evalScripts();=0A=
		this.fireEvent('onComplete', [this.response.text, this.response.xml], =
20);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: request=0A=
		Executes the ajax request.=0A=
=0A=
	Example:=0A=
		>var myAjax =3D new Ajax(url, {method: 'get'});=0A=
		>myAjax.request();=0A=
=0A=
		OR=0A=
=0A=
		>new Ajax(url, {method: 'get'}).request();=0A=
	*/=0A=
=0A=
	request: function(data){=0A=
		data =3D data || this.options.data;=0A=
		switch($type(data)){=0A=
			case 'element': data =3D $(data).toQueryString(); break;=0A=
			case 'object': data =3D Object.toQueryString(data);=0A=
		}=0A=
		if (this._method) data =3D (data) ? [this._method, data].join('&') : =
this._method;=0A=
		return this.send(this.url, data);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: evalScripts=0A=
		Executes scripts in the response text=0A=
	*/=0A=
=0A=
	evalScripts: function(){=0A=
		var script, scripts;=0A=
		if (this.options.evalResponse || =
(/(ecma|java)script/).test(this.getHeader('Content-type'))) scripts =3D =
this.response.text;=0A=
		else {=0A=
			scripts =3D [];=0A=
			var regexp =3D /<script[^>]*>([\s\S]*?)<\/script>/gi;=0A=
			while ((script =3D regexp.exec(this.response.text))) =
scripts.push(script[1]);=0A=
			scripts =3D scripts.join('\n');=0A=
		}=0A=
		if (scripts) (window.execScript) ? window.execScript(scripts) : =
window.setTimeout(scripts, 0);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: getHeader=0A=
		Returns the given response header or null=0A=
	*/=0A=
=0A=
	getHeader: function(name){=0A=
		try {return this.transport.getResponseHeader(name);} catch(e){};=0A=
		return null;=0A=
	}=0A=
=0A=
});=0A=
=0A=
/* Section: Object related Functions */=0A=
=0A=
/*=0A=
Function: Object.toQueryString=0A=
	Generates a querystring from key/pair values in an object=0A=
=0A=
Arguments:=0A=
	source - the object to generate the querystring from.=0A=
=0A=
Returns:=0A=
	the query string.=0A=
=0A=
Example:=0A=
	>Object.toQueryString({apple: "red", lemon: "yellow"}); //returns =
"apple=3Dred&lemon=3Dyellow"=0A=
*/=0A=
=0A=
Object.toQueryString =3D function(source){=0A=
	var queryString =3D [];=0A=
	for (var property in source) =
queryString.push(encodeURIComponent(property) + '=3D' + =
encodeURIComponent(source[property]));=0A=
	return queryString.join('&');=0A=
};=0A=
=0A=
/*=0A=
Class: Element=0A=
	Custom class to allow all of its methods to be used with any DOM =
element via the dollar function <$>.=0A=
*/=0A=
=0A=
Element.extend({=0A=
=0A=
	/*=0A=
	Property: send=0A=
		Sends a form with an ajax post request=0A=
=0A=
	Arguments:=0A=
		options - option collection for ajax request. See <Ajax> for the =
options list.=0A=
=0A=
	Returns:=0A=
		The Ajax Class Instance=0A=
=0A=
	Example:=0A=
		(start code)=0A=
		<form id=3D"myForm" action=3D"submit.php">=0A=
		<input name=3D"email" value=3D"bob@bob.com">=0A=
		<input name=3D"zipCode" value=3D"90210">=0A=
		</form>=0A=
		<script>=0A=
		$('myForm').send()=0A=
		</script>=0A=
		(end)=0A=
	*/=0A=
=0A=
	send: function(options){=0A=
		return new Ajax(this.getProperty('action'), $merge({data: =
this.toQueryString()}, options, {method: 'post'})).request();=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Cookie.js=0A=
	A cookie reader/creator=0A=
=0A=
Credits:=0A=
	based on the functions by Peter-Paul Koch (http://quirksmode.org)=0A=
*/=0A=
=0A=
/*=0A=
Class: Cookie=0A=
	Class for creating, getting, and removing cookies.=0A=
*/=0A=
=0A=
var Cookie =3D new Abstract({=0A=
=0A=
	options: {=0A=
		domain: false,=0A=
		path: false,=0A=
		duration: false,=0A=
		secure: false=0A=
	},=0A=
=0A=
	/*=0A=
	Property: set=0A=
		Sets a cookie in the browser.=0A=
=0A=
	Arguments:=0A=
		key - the key (name) for the cookie=0A=
		value - the value to set, cannot contain semicolons=0A=
		options - an object representing the Cookie options. See Options =
below. Default values are stored in Cookie.options.=0A=
=0A=
	Options:=0A=
		domain - the domain the Cookie belongs to. If you want to share the =
cookie with pages located on a different domain, you have to set this =
value. Defaults to the current domain.=0A=
		path - the path the Cookie belongs to. If you want to share the cookie =
with pages located in a different path, you have to set this value, for =
example to "/" to share the cookie with all pages on the domain. =
Defaults to the current path.=0A=
		duration - the duration of the Cookie before it expires, in days.=0A=
					If set to false or 0, the cookie will be a session cookie that =
expires when the browser is closed. This is default.=0A=
		secure - Stored cookie information can be accessed only from a secure =
environment.=0A=
=0A=
	Returns:=0A=
		An object with the options, the key and the value. You can give it as =
first parameter to Cookie.remove.=0A=
=0A=
	Example:=0A=
		>Cookie.set('username', 'Harald'); // session cookie (duration is =
false), or ...=0A=
		>Cookie.set('username', 'JackBauer', {duration: 1}); // save this for =
1 day=0A=
=0A=
	*/=0A=
=0A=
	set: function(key, value, options){=0A=
		options =3D $merge(this.options, options);=0A=
		value =3D encodeURIComponent(value);=0A=
		if (options.domain) value +=3D '; domain=3D' + options.domain;=0A=
		if (options.path) value +=3D '; path=3D' + options.path;=0A=
		if (options.duration){=0A=
			var date =3D new Date();=0A=
			date.setTime(date.getTime() + options.duration * 24 * 60 * 60 * 1000);=0A=
			value +=3D '; expires=3D' + date.toGMTString();=0A=
		}=0A=
		if (options.secure) value +=3D '; secure';=0A=
		document.cookie =3D key + '=3D' + value;=0A=
		return $extend(options, {'key': key, 'value': value});=0A=
	},=0A=
=0A=
	/*=0A=
	Property: get=0A=
		Gets the value of a cookie.=0A=
=0A=
	Arguments:=0A=
		key - the name of the cookie you wish to retrieve.=0A=
=0A=
	Returns:=0A=
		The cookie string value, or false if not found.=0A=
=0A=
	Example:=0A=
		>Cookie.get("username") //returns JackBauer=0A=
	*/=0A=
=0A=
	get: function(key){=0A=
		var value =3D document.cookie.match('(?:^|;)\\s*' + key.escapeRegExp() =
+ '=3D([^;]*)');=0A=
		return value ? decodeURIComponent(value[1]) : false;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: remove=0A=
		Removes a cookie from the browser.=0A=
=0A=
	Arguments:=0A=
		cookie - the name of the cookie to remove or a previous cookie (for =
domains)=0A=
		options - optional. you can also pass the domain and path here. Same =
as options in <Cookie.set>=0A=
=0A=
	Examples:=0A=
		>Cookie.remove('username') //bye-bye JackBauer, cya in 24 hours=0A=
		>=0A=
		>var myCookie =3D Cookie.set('username', 'Aaron', {domain: =
'mootools.net'}); // Cookie.set returns an object with all values need =
to remove the cookie=0A=
		>Cookie.remove(myCookie);=0A=
	*/=0A=
=0A=
	remove: function(cookie, options){=0A=
		if ($type(cookie) =3D=3D 'object') this.set(cookie.key, '', =
$merge(cookie, {duration: -1}));=0A=
		else this.set(cookie, '', $merge(options, {duration: -1}));=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Json.js=0A=
	Simple Json parser and Stringyfier, See: <http://www.json.org/>=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Json=0A=
	Simple Json parser and Stringyfier, See: <http://www.json.org/>=0A=
*/=0A=
=0A=
var Json =3D {=0A=
=0A=
	/*=0A=
	Property: toString=0A=
		Converts an object to a string, to be passed in server-side scripts as =
a parameter. Although its not normal usage for this class, this method =
can also be used to convert functions and arrays to strings.=0A=
=0A=
	Arguments:=0A=
		obj - the object to convert to string=0A=
=0A=
	Returns:=0A=
		A json string=0A=
=0A=
	Example:=0A=
		(start code)=0A=
		Json.toString({apple: 'red', lemon: 'yellow'}); =
'{"apple":"red","lemon":"yellow"}'=0A=
		(end)=0A=
	*/=0A=
=0A=
	toString: function(obj){=0A=
		switch($type(obj)){=0A=
			case 'string':=0A=
				return '"' + obj.replace(/(["\\])/g, '\\$1') + '"';=0A=
			case 'array':=0A=
				return '[' + obj.map(Json.toString).join(',') + ']';=0A=
			case 'object':=0A=
				var string =3D [];=0A=
				for (var property in obj) string.push(Json.toString(property) + ':' =
+ Json.toString(obj[property]));=0A=
				return '{' + string.join(',') + '}';=0A=
			case 'number':=0A=
				if (isFinite(obj)) break;=0A=
			case false:=0A=
				return 'null';=0A=
		}=0A=
		return String(obj);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: evaluate=0A=
		converts a json string to an javascript Object.=0A=
=0A=
	Arguments:=0A=
		str - the string to evaluate. if its not a string, it returns false.=0A=
		secure - optionally, performs syntax check on json string. Defaults to =
false.=0A=
=0A=
	Credits:=0A=
		Json test regexp is by Douglas Crockford <http://crockford.org>.=0A=
=0A=
	Example:=0A=
		>var myObject =3D Json.evaluate('{"apple":"red","lemon":"yellow"}');=0A=
		>//myObject will become {apple: 'red', lemon: 'yellow'}=0A=
	*/=0A=
=0A=
	evaluate: function(str, secure){=0A=
		return (($type(str) !=3D 'string') || (secure && =
!str.test(/^("(\\.|[^"\\\n\r])*?"|[,:{}\[\]0-9.\-+Eaeflnr-u =
\n\r\t])+?$/))) ? null : eval('(' + str + ')');=0A=
	}=0A=
=0A=
};=0A=
=0A=
/*=0A=
Script: Json.Remote.js=0A=
	Contains <Json.Remote>.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Json.Remote=0A=
	Wrapped XHR with automated sending and receiving of Javascript Objects =
in Json Format.=0A=
	Inherits methods, properties, options and events from <XHR>.=0A=
=0A=
Arguments:=0A=
	url - the url you want to send your object to.=0A=
	options - see <XHR> options=0A=
=0A=
Example:=0A=
	this code will send user information based on name/last name=0A=
	(start code)=0A=
	var jSonRequest =3D new Json.Remote("http://site.com/tellMeAge.php", =
{onComplete: function(person){=0A=
		alert(person.age); //is 25 years=0A=
		alert(person.height); //is 170 cm=0A=
		alert(person.weight); //is 120 kg=0A=
	}}).send({'name': 'John', 'lastName': 'Doe'});=0A=
	(end)=0A=
*/=0A=
=0A=
Json.Remote =3D XHR.extend({=0A=
=0A=
	initialize: function(url, options){=0A=
		this.url =3D url;=0A=
		this.addEvent('onSuccess', this.onComplete);=0A=
		this.parent(options);=0A=
		this.setHeader('X-Request', 'JSON');=0A=
	},=0A=
=0A=
	send: function(obj){=0A=
		return this.parent(this.url, 'json=3D' + Json.toString(obj));=0A=
	},=0A=
=0A=
	onComplete: function(){=0A=
		this.fireEvent('onComplete', [Json.evaluate(this.response.text, =
this.options.secure)]);=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Assets.js=0A=
	provides dynamic loading for images, css and javascript files.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
var Asset =3D new Abstract({=0A=
=0A=
	/*=0A=
	Property: javascript=0A=
		Injects a javascript file in the page.=0A=
=0A=
	Arguments:=0A=
		source - the path of the javascript file=0A=
		properties - some additional attributes you might want to add to the =
script element=0A=
=0A=
	Example:=0A=
		> new Asset.javascript('/scripts/myScript.js', {id: 'myScript'});=0A=
	*/=0A=
=0A=
	javascript: function(source, properties){=0A=
		properties =3D $merge({=0A=
			'onload': Class.empty=0A=
		}, properties);=0A=
		var script =3D new Element('script', {'src': source}).addEvents({=0A=
			'load': properties.onload,=0A=
			'readystatechange': function(){=0A=
				if (this.readyState =3D=3D 'complete') this.fireEvent('load');=0A=
			}=0A=
		});=0A=
		delete properties.onload;=0A=
		return script.setProperties(properties).inject(document.head);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: css=0A=
		Injects a css file in the page.=0A=
=0A=
	Arguments:=0A=
		source - the path of the css file=0A=
		properties - some additional attributes you might want to add to the =
link element=0A=
=0A=
	Example:=0A=
		> new Asset.css('/css/myStyle.css', {id: 'myStyle', title: 'myStyle'});=0A=
	*/=0A=
=0A=
	css: function(source, properties){=0A=
		return new Element('link', $merge({=0A=
			'rel': 'stylesheet', 'media': 'screen', 'type': 'text/css', 'href': =
source=0A=
		}, properties)).inject(document.head);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: image=0A=
		Preloads an image and returns the img element. does not inject it to =
the page.=0A=
=0A=
	Arguments:=0A=
		source - the path of the image file=0A=
		properties - some additional attributes you might want to add to the =
img element=0A=
=0A=
	Example:=0A=
		> new Asset.image('/images/myImage.png', {id: 'myImage', title: =
'myImage', onload: myFunction});=0A=
=0A=
	Returns:=0A=
		the img element. you can inject it anywhere you want with =
<Element.injectInside>/<Element.injectAfter>/<Element.injectBefore>=0A=
	*/=0A=
=0A=
	image: function(source, properties){=0A=
		properties =3D $merge({=0A=
			'onload': Class.empty,=0A=
			'onabort': Class.empty,=0A=
			'onerror': Class.empty=0A=
		}, properties);=0A=
		var image =3D new Image();=0A=
		image.src =3D source;=0A=
		var element =3D new Element('img', {'src': source});=0A=
		['load', 'abort', 'error'].each(function(type){=0A=
			var event =3D properties['on' + type];=0A=
			delete properties['on' + type];=0A=
			element.addEvent(type, function(){=0A=
				this.removeEvent(type, arguments.callee);=0A=
				event.call(this);=0A=
			});=0A=
		});=0A=
		if (image.width && image.height) element.fireEvent('load', element, 1);=0A=
		return element.setProperties(properties);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: images=0A=
		Preloads an array of images (as strings) and returns an array of img =
elements. does not inject them to the page.=0A=
=0A=
	Arguments:=0A=
		sources - array, the paths of the image files=0A=
		options - object, see below=0A=
=0A=
	Options:=0A=
		onComplete - a function to execute when all image files are loaded in =
the browser's cache=0A=
		onProgress - a function to execute when one image file is loaded in =
the browser's cache=0A=
=0A=
	Example:=0A=
		(start code)=0A=
		new Asset.images(['/images/myImage.png', '/images/myImage2.gif'], {=0A=
			onComplete: function(){=0A=
				alert('all images loaded!');=0A=
			}=0A=
		});=0A=
		(end)=0A=
=0A=
	Returns:=0A=
		the img elements as $$. you can inject them anywhere you want with =
<Element.injectInside>/<Element.injectAfter>/<Element.injectBefore>=0A=
	*/=0A=
=0A=
	images: function(sources, options){=0A=
		options =3D $merge({=0A=
			onComplete: Class.empty,=0A=
			onProgress: Class.empty=0A=
		}, options);=0A=
		if (!sources.push) sources =3D [sources];=0A=
		var images =3D [];=0A=
		var counter =3D 0;=0A=
		sources.each(function(source){=0A=
			var img =3D new Asset.image(source, {=0A=
				'onload': function(){=0A=
					options.onProgress.call(this, counter);=0A=
					counter++;=0A=
					if (counter =3D=3D sources.length) options.onComplete();=0A=
				}=0A=
			});=0A=
			images.push(img);=0A=
		});=0A=
		return new Elements(images);=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Scroller.js=0A=
	Contains the <Scroller>.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Scroller=0A=
	The Scroller is a class to scroll any element with an overflow =
(including the window) when the mouse cursor reaches certain buondaries =
of that element.=0A=
	You must call its start method to start listening to mouse movements.=0A=
=0A=
Note:=0A=
	The Scroller requires an XHTML doctype.=0A=
=0A=
Arguments:=0A=
	element - required, the element to scroll.=0A=
	options - optional, see options below, and <Fx.Base> options.=0A=
=0A=
Options:=0A=
	area - integer, the necessary boundaries to make the element scroll.=0A=
	velocity - integer, velocity ratio, the modifier for the window =
scrolling speed.=0A=
=0A=
Events:=0A=
	onChange - optionally, when the mouse reaches some boundaries, you can =
choose to alter some other values, instead of the scrolling offsets.=0A=
		Automatically passes as parameters x and y values.=0A=
*/=0A=
=0A=
var Scroller =3D new Class({=0A=
=0A=
	options: {=0A=
		area: 20,=0A=
		velocity: 1,=0A=
		onChange: function(x, y){=0A=
			this.element.scrollTo(x, y);=0A=
		}=0A=
	},=0A=
=0A=
	initialize: function(element, options){=0A=
		this.setOptions(options);=0A=
		this.element =3D $(element);=0A=
		this.mousemover =3D ([window, document].contains(element)) ? =
$(document.body) : this.element;=0A=
	},=0A=
=0A=
	/*=0A=
	Property: start=0A=
		The scroller starts listening to mouse movements.=0A=
	*/=0A=
=0A=
	start: function(){=0A=
		this.coord =3D this.getCoords.bindWithEvent(this);=0A=
		this.mousemover.addListener('mousemove', this.coord);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: stop=0A=
		The scroller stops listening to mouse movements.=0A=
	*/=0A=
=0A=
	stop: function(){=0A=
		this.mousemover.removeListener('mousemove', this.coord);=0A=
		this.timer =3D $clear(this.timer);=0A=
	},=0A=
=0A=
	getCoords: function(event){=0A=
		this.page =3D (this.element =3D=3D window) ? event.client : event.page;=0A=
		if (!this.timer) this.timer =3D this.scroll.periodical(50, this);=0A=
	},=0A=
=0A=
	scroll: function(){=0A=
		var el =3D this.element.getSize();=0A=
		var pos =3D this.element.getPosition();=0A=
=0A=
		var change =3D {'x': 0, 'y': 0};=0A=
		for (var z in this.page){=0A=
			if (this.page[z] < (this.options.area + pos[z]) && el.scroll[z] !=3D =
0)=0A=
				change[z] =3D (this.page[z] - this.options.area - pos[z]) * =
this.options.velocity;=0A=
			else if (this.page[z] + this.options.area > (el.size[z] + pos[z]) && =
el.scroll[z] + el.size[z] !=3D el.scrollSize[z])=0A=
				change[z] =3D (this.page[z] - el.size[z] + this.options.area - =
pos[z]) * this.options.velocity;=0A=
		}=0A=
		if (change.y || change.x) this.fireEvent('onChange', [el.scroll.x + =
change.x, el.scroll.y + change.y]);=0A=
	}=0A=
=0A=
});=0A=
=0A=
Scroller.implement(new Events, new Options);=0A=
=0A=
/*=0A=
Script: Slider.js=0A=
	Contains <Slider>=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Slider=0A=
	Creates a slider with two elements: a knob and a container. Returns the =
values.=0A=
	=0A=
Note:=0A=
	The Slider requires an XHTML doctype.=0A=
=0A=
Arguments:=0A=
	element - the knob container=0A=
	knob - the handle=0A=
	options - see Options below=0A=
=0A=
Options:=0A=
	steps - the number of steps for your slider.=0A=
	mode - either 'horizontal' or 'vertical'. defaults to horizontal.=0A=
	offset - relative offset for knob position. default to 0.=0A=
	=0A=
Events:=0A=
	onChange - a function to fire when the value changes.=0A=
	onComplete - a function to fire when you're done dragging.=0A=
	onTick - optionally, you can alter the onTick behavior, for example =
displaying an effect of the knob moving to the desired position.=0A=
		Passes as parameter the new position.=0A=
*/=0A=
=0A=
var Slider =3D new Class({=0A=
=0A=
	options: {=0A=
		onChange: Class.empty,=0A=
		onComplete: Class.empty,=0A=
		onTick: function(pos){=0A=
			this.knob.setStyle(this.p, pos);=0A=
		},=0A=
		mode: 'horizontal',=0A=
		steps: 100,=0A=
		offset: 0=0A=
	},=0A=
=0A=
	initialize: function(el, knob, options){=0A=
		this.element =3D $(el);=0A=
		this.knob =3D $(knob);=0A=
		this.setOptions(options);=0A=
		this.previousChange =3D -1;=0A=
		this.previousEnd =3D -1;=0A=
		this.step =3D -1;=0A=
		this.element.addEvent('mousedown', =
this.clickedElement.bindWithEvent(this));=0A=
		var mod, offset;=0A=
		switch(this.options.mode){=0A=
			case 'horizontal':=0A=
				this.z =3D 'x';=0A=
				this.p =3D 'left';=0A=
				mod =3D {'x': 'left', 'y': false};=0A=
				offset =3D 'offsetWidth';=0A=
				break;=0A=
			case 'vertical':=0A=
				this.z =3D 'y';=0A=
				this.p =3D 'top';=0A=
				mod =3D {'x': false, 'y': 'top'};=0A=
				offset =3D 'offsetHeight';=0A=
		}=0A=
		this.max =3D this.element[offset] - this.knob[offset] + =
(this.options.offset * 2);=0A=
		this.half =3D this.knob[offset]/2;=0A=
		this.getPos =3D this.element['get' + =
this.p.capitalize()].bind(this.element);=0A=
		this.knob.setStyle('position', 'relative').setStyle(this.p, - =
this.options.offset);=0A=
		var lim =3D {};=0A=
		lim[this.z] =3D [- this.options.offset, this.max - =
this.options.offset];=0A=
		this.drag =3D new Drag.Base(this.knob, {=0A=
			limit: lim,=0A=
			modifiers: mod,=0A=
			snap: 0,=0A=
			onStart: function(){=0A=
				this.draggedKnob();=0A=
			}.bind(this),=0A=
			onDrag: function(){=0A=
				this.draggedKnob();=0A=
			}.bind(this),=0A=
			onComplete: function(){=0A=
				this.draggedKnob();=0A=
				this.end();=0A=
			}.bind(this)=0A=
		});=0A=
		if (this.options.initialize) this.options.initialize.call(this);=0A=
	},=0A=
=0A=
	/*=0A=
	Property: set=0A=
		The slider will get the step you pass.=0A=
=0A=
	Arguments:=0A=
		step - one integer=0A=
	*/=0A=
=0A=
	set: function(step){=0A=
		this.step =3D step.limit(0, this.options.steps);=0A=
		this.checkStep();=0A=
		this.end();=0A=
		this.fireEvent('onTick', this.toPosition(this.step));=0A=
		return this;=0A=
	},=0A=
=0A=
	clickedElement: function(event){=0A=
		var position =3D event.page[this.z] - this.getPos() - this.half;=0A=
		position =3D position.limit(-this.options.offset, this.max =
-this.options.offset);=0A=
		this.step =3D this.toStep(position);=0A=
		this.checkStep();=0A=
		this.end();=0A=
		this.fireEvent('onTick', position);=0A=
	},=0A=
=0A=
	draggedKnob: function(){=0A=
		this.step =3D this.toStep(this.drag.value.now[this.z]);=0A=
		this.checkStep();=0A=
	},=0A=
=0A=
	checkStep: function(){=0A=
		if (this.previousChange !=3D this.step){=0A=
			this.previousChange =3D this.step;=0A=
			this.fireEvent('onChange', this.step);=0A=
		}=0A=
	},=0A=
=0A=
	end: function(){=0A=
		if (this.previousEnd !=3D=3D this.step){=0A=
			this.previousEnd =3D this.step;=0A=
			this.fireEvent('onComplete', this.step + '');=0A=
		}=0A=
	},=0A=
=0A=
	toStep: function(position){=0A=
		return Math.round((position + this.options.offset) / this.max * =
this.options.steps);=0A=
	},=0A=
=0A=
	toPosition: function(step){=0A=
		return this.max * step / this.options.steps;=0A=
	}=0A=
=0A=
});=0A=
=0A=
Slider.implement(new Events);=0A=
Slider.implement(new Options);=0A=
=0A=
/*=0A=
Script: SmoothScroll.js=0A=
	Contains <SmoothScroll>=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: SmoothScroll=0A=
	Auto targets all the anchors in a page and display a smooth scrolling =
effect upon clicking them.=0A=
	Inherits methods, properties, options and events from <Fx.Scroll>.=0A=
=0A=
Note:=0A=
	SmoothScroll requires an XHTML doctype.=0A=
=0A=
Arguments:=0A=
	options - the Fx.Scroll options (see: <Fx.Scroll>) plus links, a =
collection of elements you want your smoothscroll on. Defaults to =
document.links.=0A=
=0A=
Example:=0A=
	>new SmoothScroll();=0A=
*/=0A=
=0A=
var SmoothScroll =3D Fx.Scroll.extend({=0A=
=0A=
	initialize: function(options){=0A=
		this.parent(window, options);=0A=
		this.links =3D (this.options.links) ? $$(this.options.links) : =
$$(document.links);=0A=
		var location =3D window.location.href.match(/^[^#]*/)[0] + '#';=0A=
		this.links.each(function(link){=0A=
			if (link.href.indexOf(location) !=3D 0) return;=0A=
			var anchor =3D link.href.substr(location.length);=0A=
			if (anchor && $(anchor)) this.useLink(link, anchor);=0A=
		}, this);=0A=
		if (!window.webkit419) this.addEvent('onComplete', function(){=0A=
			window.location.hash =3D this.anchor;=0A=
		});=0A=
	},=0A=
=0A=
	useLink: function(link, anchor){=0A=
		link.addEvent('click', function(event){=0A=
			this.anchor =3D anchor;=0A=
			this.toElement(anchor);=0A=
			event.stop();=0A=
		}.bindWithEvent(this));=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*=0A=
Script: Sortables.js=0A=
	Contains <Sortables> Class.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Sortables=0A=
	Creates an interface for <Drag.Base> and drop, resorting of a list.=0A=
=0A=
Note:=0A=
	The Sortables require an XHTML doctype.=0A=
=0A=
Arguments:=0A=
	list - required, the list that will become sortable.=0A=
	options - an Object, see options below.=0A=
=0A=
Options:=0A=
	handles - a collection of elements to be used for drag handles. =
defaults to the elements.=0A=
	=0A=
Events:=0A=
	onStart - function executed when the item starts dragging=0A=
	onComplete - function executed when the item ends dragging=0A=
*/=0A=
=0A=
var Sortables =3D new Class({=0A=
=0A=
	options: {=0A=
		handles: false,=0A=
		onStart: Class.empty,=0A=
		onComplete: Class.empty,=0A=
		ghost: true,=0A=
		snap: 3,=0A=
		onDragStart: function(element, ghost){=0A=
			ghost.setStyle('opacity', 0.7);=0A=
			element.setStyle('opacity', 0.7);=0A=
		},=0A=
		onDragComplete: function(element, ghost){=0A=
			element.setStyle('opacity', 1);=0A=
			ghost.remove();=0A=
			this.trash.remove();=0A=
		}=0A=
	},=0A=
=0A=
	initialize: function(list, options){=0A=
		this.setOptions(options);=0A=
		this.list =3D $(list);=0A=
		this.elements =3D this.list.getChildren();=0A=
		this.handles =3D (this.options.handles) ? $$(this.options.handles) : =
this.elements;=0A=
		this.bound =3D {=0A=
			'start': [],=0A=
			'moveGhost': this.moveGhost.bindWithEvent(this)=0A=
		};=0A=
		for (var i =3D 0, l =3D this.handles.length; i < l; i++){=0A=
			this.bound.start[i] =3D this.start.bindWithEvent(this, =
this.elements[i]);=0A=
		}=0A=
		this.attach();=0A=
		if (this.options.initialize) this.options.initialize.call(this);=0A=
		this.bound.move =3D this.move.bindWithEvent(this);=0A=
		this.bound.end =3D this.end.bind(this);=0A=
	},=0A=
=0A=
	attach: function(){=0A=
		this.handles.each(function(handle, i){=0A=
			handle.addEvent('mousedown', this.bound.start[i]);=0A=
		}, this);=0A=
	},=0A=
=0A=
	detach: function(){=0A=
		this.handles.each(function(handle, i){=0A=
			handle.removeEvent('mousedown', this.bound.start[i]);=0A=
		}, this);=0A=
	},=0A=
=0A=
	start: function(event, el){=0A=
		this.active =3D el;=0A=
		this.coordinates =3D this.list.getCoordinates();=0A=
		if (this.options.ghost){=0A=
			var position =3D el.getPosition();=0A=
			this.offset =3D event.page.y - position.y;=0A=
			this.trash =3D new Element('div').inject(document.body);=0A=
			this.ghost =3D el.clone().inject(this.trash).setStyles({=0A=
				'position': 'absolute',=0A=
				'left': position.x,=0A=
				'top': event.page.y - this.offset=0A=
			});=0A=
			document.addListener('mousemove', this.bound.moveGhost);=0A=
			this.fireEvent('onDragStart', [el, this.ghost]);=0A=
		}=0A=
		document.addListener('mousemove', this.bound.move);=0A=
		document.addListener('mouseup', this.bound.end);=0A=
		this.fireEvent('onStart', el);=0A=
		event.stop();=0A=
	},=0A=
=0A=
	moveGhost: function(event){=0A=
		var value =3D event.page.y - this.offset;=0A=
		value =3D value.limit(this.coordinates.top, this.coordinates.bottom - =
this.ghost.offsetHeight);=0A=
		this.ghost.setStyle('top', value);=0A=
		event.stop();=0A=
	},=0A=
=0A=
	move: function(event){=0A=
		var now =3D event.page.y;=0A=
		this.previous =3D this.previous || now;=0A=
		var up =3D ((this.previous - now) > 0);=0A=
		var prev =3D this.active.getPrevious();=0A=
		var next =3D this.active.getNext();=0A=
		if (prev && up && now < prev.getCoordinates().bottom) =
this.active.injectBefore(prev);=0A=
		if (next && !up && now > next.getCoordinates().top) =
this.active.injectAfter(next);=0A=
		this.previous =3D now;=0A=
	},=0A=
=0A=
	serialize: function(converter){=0A=
		return this.list.getChildren().map(converter || function(el){=0A=
			return this.elements.indexOf(el);=0A=
		}, this);=0A=
	},=0A=
=0A=
	end: function(){=0A=
		this.previous =3D null;=0A=
		document.removeListener('mousemove', this.bound.move);=0A=
		document.removeListener('mouseup', this.bound.end);=0A=
		if (this.options.ghost){=0A=
			document.removeListener('mousemove', this.bound.moveGhost);=0A=
			this.fireEvent('onDragComplete', [this.active, this.ghost]);=0A=
		}=0A=
		this.fireEvent('onComplete', this.active);=0A=
	}=0A=
=0A=
});=0A=
=0A=
Sortables.implement(new Events, new Options);=0A=
=0A=
/*=0A=
Script: Tips.js=0A=
	Tooltips, BubbleTips, whatever they are, they will appear on mouseover=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
=0A=
Credits:=0A=
	The idea behind Tips.js is based on Bubble Tooltips =
(<http://web-graphics.com/mtarchive/001717.php>) by Alessandro =
Fulcitiniti <http://web-graphics.com>=0A=
*/=0A=
=0A=
/*=0A=
Class: Tips=0A=
	Display a tip on any element with a title and/or href.=0A=
=0A=
Note:=0A=
	Tips requires an XHTML doctype.=0A=
=0A=
Arguments:=0A=
	elements - a collection of elements to apply the tooltips to on =
mouseover.=0A=
	options - an object. See options Below.=0A=
=0A=
Options:=0A=
	maxTitleChars - the maximum number of characters to display in the =
title of the tip. defaults to 30.=0A=
	showDelay - the delay the onShow method is called. (defaults to 100 ms)=0A=
	hideDelay - the delay the onHide method is called. (defaults to 100 ms)=0A=
=0A=
	className - the prefix for your tooltip classNames. defaults to 'tool'.=0A=
=0A=
		the whole tooltip will have as classname: tool-tip=0A=
=0A=
		the title will have as classname: tool-title=0A=
=0A=
		the text will have as classname: tool-text=0A=
=0A=
	offsets - the distance of your tooltip from the mouse. an Object with =
x/y properties.=0A=
	fixed - if set to true, the toolTip will not follow the mouse.=0A=
	=0A=
Events:=0A=
	onShow - optionally you can alter the default onShow behaviour with =
this option (like displaying a fade in effect);=0A=
	onHide - optionally you can alter the default onHide behaviour with =
this option (like displaying a fade out effect);=0A=
=0A=
Example:=0A=
	(start code)=0A=
	<img src=3D"/images/i.png" title=3D"The body of the tooltip is stored =
in the title" class=3D"toolTipImg"/>=0A=
	<script>=0A=
		var myTips =3D new Tips($$('.toolTipImg'), {=0A=
			maxTitleChars: 50	//I like my captions a little long=0A=
		});=0A=
	</script>=0A=
	(end)=0A=
=0A=
Note:=0A=
	The title of the element will always be used as the tooltip body. If =
you put :: on your title, the text before :: will become the tooltip =
title.=0A=
*/=0A=
=0A=
var Tips =3D new Class({=0A=
=0A=
	options: {=0A=
		onShow: function(tip){=0A=
			tip.setStyle('visibility', 'visible');=0A=
		},=0A=
		onHide: function(tip){=0A=
			tip.setStyle('visibility', 'hidden');=0A=
		},=0A=
		maxTitleChars: 30,=0A=
		showDelay: 100,=0A=
		hideDelay: 100,=0A=
		className: 'tool',=0A=
		offsets: {'x': 16, 'y': 16},=0A=
		fixed: false=0A=
	},=0A=
=0A=
	initialize: function(elements, options){=0A=
		this.setOptions(options);=0A=
		this.toolTip =3D new Element('div', {=0A=
			'class': this.options.className + '-tip',=0A=
			'styles': {=0A=
				'position': 'absolute',=0A=
				'top': '0',=0A=
				'left': '0',=0A=
				'visibility': 'hidden'=0A=
			}=0A=
		}).inject(document.body);=0A=
		this.wrapper =3D new Element('div').inject(this.toolTip);=0A=
		$$(elements).each(this.build, this);=0A=
		if (this.options.initialize) this.options.initialize.call(this);=0A=
	},=0A=
=0A=
	build: function(el){=0A=
		el.$tmp.myTitle =3D (el.href && el.getTag() =3D=3D 'a') ? =
el.href.replace('http://', '') : (el.rel || false);=0A=
		if (el.title){=0A=
			var dual =3D el.title.split('::');=0A=
			if (dual.length > 1){=0A=
				el.$tmp.myTitle =3D dual[0].trim();=0A=
				el.$tmp.myText =3D dual[1].trim();=0A=
			} else {=0A=
				el.$tmp.myText =3D el.title;=0A=
			}=0A=
			el.removeAttribute('title');=0A=
		} else {=0A=
			el.$tmp.myText =3D false;=0A=
		}=0A=
		if (el.$tmp.myTitle && el.$tmp.myTitle.length > =
this.options.maxTitleChars) el.$tmp.myTitle =3D =
el.$tmp.myTitle.substr(0, this.options.maxTitleChars - 1) + "&hellip;";=0A=
		el.addEvent('mouseenter', function(event){=0A=
			this.start(el);=0A=
			if (!this.options.fixed) this.locate(event);=0A=
			else this.position(el);=0A=
		}.bind(this));=0A=
		if (!this.options.fixed) el.addEvent('mousemove', =
this.locate.bindWithEvent(this));=0A=
		var end =3D this.end.bind(this);=0A=
		el.addEvent('mouseleave', end);=0A=
		el.addEvent('trash', end);=0A=
	},=0A=
=0A=
	start: function(el){=0A=
		this.wrapper.empty();=0A=
		if (el.$tmp.myTitle){=0A=
			this.title =3D new Element('span').inject(new Element('div', =
{'class': this.options.className + =
'-title'}).inject(this.wrapper)).setHTML(el.$tmp.myTitle);=0A=
		}=0A=
		if (el.$tmp.myText){=0A=
			this.text =3D new Element('span').inject(new Element('div', {'class': =
this.options.className + =
'-text'}).inject(this.wrapper)).setHTML(el.$tmp.myText);=0A=
		}=0A=
		$clear(this.timer);=0A=
		this.timer =3D this.show.delay(this.options.showDelay, this);=0A=
	},=0A=
=0A=
	end: function(event){=0A=
		$clear(this.timer);=0A=
		this.timer =3D this.hide.delay(this.options.hideDelay, this);=0A=
	},=0A=
=0A=
	position: function(element){=0A=
		var pos =3D element.getPosition();=0A=
		this.toolTip.setStyles({=0A=
			'left': pos.x + this.options.offsets.x,=0A=
			'top': pos.y + this.options.offsets.y=0A=
		});=0A=
	},=0A=
=0A=
	locate: function(event){=0A=
		var win =3D {'x': window.getWidth(), 'y': window.getHeight()};=0A=
		var scroll =3D {'x': window.getScrollLeft(), 'y': =
window.getScrollTop()};=0A=
		var tip =3D {'x': this.toolTip.offsetWidth, 'y': =
this.toolTip.offsetHeight};=0A=
		var prop =3D {'x': 'left', 'y': 'top'};=0A=
		for (var z in prop){=0A=
			var pos =3D event.page[z] + this.options.offsets[z];=0A=
			if ((pos + tip[z] - scroll[z]) > win[z]) pos =3D event.page[z] - =
this.options.offsets[z] - tip[z];=0A=
			this.toolTip.setStyle(prop[z], pos);=0A=
		};=0A=
	},=0A=
=0A=
	show: function(){=0A=
		if (this.options.timeout) this.timer =3D =
this.hide.delay(this.options.timeout, this);=0A=
		this.fireEvent('onShow', [this.toolTip]);=0A=
	},=0A=
=0A=
	hide: function(){=0A=
		this.fireEvent('onHide', [this.toolTip]);=0A=
	}=0A=
=0A=
});=0A=
=0A=
Tips.implement(new Events, new Options);=0A=
=0A=
/*=0A=
Script: Group.js=0A=
	For Grouping Classes or Elements Events. The Event added to the Group =
will fire when all of the events of the items of the group are fired.=0A=
=0A=
License:=0A=
	MIT-style license.=0A=
*/=0A=
=0A=
/*=0A=
Class: Group=0A=
	An "Utility" Class.=0A=
=0A=
Arguments:=0A=
	List of Class instances=0A=
=0A=
Example:=0A=
	(start code)=0A=
	xhr1 =3D new Ajax('data.js', {evalScript: true});=0A=
	xhr2 =3D new Ajax('abstraction.js', {evalScript: true});=0A=
	xhr3 =3D new Ajax('template.js', {evalScript: true});=0A=
=0A=
	var group =3D new Group(xhr1, xhr2, xhr3);=0A=
	group.addEvent('onComplete', function(){=0A=
		alert('All Scripts loaded');=0A=
	});=0A=
=0A=
	xhr1.request();=0A=
	xhr2.request();=0A=
	xhr3.request();=0A=
	(end)=0A=
=0A=
*/=0A=
=0A=
var Group =3D new Class({=0A=
=0A=
	initialize: function(){=0A=
		this.instances =3D $A(arguments);=0A=
		this.events =3D {};=0A=
		this.checker =3D {};=0A=
	},=0A=
=0A=
	/*=0A=
	Property: addEvent=0A=
		adds an event to the stack of events of the Class instances.=0A=
=0A=
	Arguments:=0A=
		type - string; the event name (e.g. 'onComplete')=0A=
		fn - function to execute when all instances fired this event=0A=
	*/=0A=
=0A=
	addEvent: function(type, fn){=0A=
		this.checker[type] =3D this.checker[type] || {};=0A=
		this.events[type] =3D this.events[type] || [];=0A=
		if (this.events[type].contains(fn)) return false;=0A=
		else this.events[type].push(fn);=0A=
		this.instances.each(function(instance, i){=0A=
			instance.addEvent(type, this.check.bind(this, [type, instance, i]));=0A=
		}, this);=0A=
		return this;=0A=
	},=0A=
=0A=
	check: function(type, instance, i){=0A=
		this.checker[type][i] =3D true;=0A=
		var every =3D this.instances.every(function(current, j){=0A=
			return this.checker[type][j] || false;=0A=
		}, this);=0A=
		if (!every) return;=0A=
		this.checker[type] =3D {};=0A=
		this.events[type].each(function(event){=0A=
			event.call(this, this.instances, instance);=0A=
		}, this);=0A=
	}=0A=
=0A=
});=0A=
=0A=
/*
Script: Accordion.js
	Contains <Accordion>

License:
	MIT-style license.
*/

/*
Class: Accordion
	The Accordion class creates a group of elements that are toggled when =
their handles are clicked. When one elements toggles in, the others =
toggles back.
	Inherits methods, properties, options and events from <Fx.Elements>.
=09
Note:
	The Accordion requires an XHTML doctype.

Arguments:
	togglers - required, a collection of elements, the elements handlers =
that will be clickable.
	elements - required, a collection of elements the transitions will be =
applied to.
	options - optional, see options below, and <Fx.Base> options and =
events.

Options:
	show - integer, the Index of the element to show at start.
	display - integer, the Index of the element to show at start (with a =
transition). defaults to 0.
	fixedHeight - integer, if you want the elements to have a fixed height. =
defaults to false.
	fixedWidth - integer, if you want the elements to have a fixed width. =
defaults to false.
	height - boolean, will add a height transition to the accordion if =
true. defaults to true.
	opacity - boolean, will add an opacity transition to the accordion if =
true. defaults to true.
	width - boolean, will add a width transition to the accordion if true. =
defaults to false, css mastery is required to make this work!
	alwaysHide - boolean, will allow to hide all elements if true, instead =
of always keeping one element shown. defaults to false.
=09
Events:
	onActive - function to execute when an element starts to show
	onBackground - function to execute when an element starts to hide
*/

var Accordion =3D Fx.Elements.extend({

	options: {
		onActive: Class.empty,
		onBackground: Class.empty,
		display: 0,
		show: false,
		height: true,
		width: false,
		opacity: true,
		fixedHeight: false,
		fixedWidth: false,
		wait: false,
		alwaysHide: false
	},

	initialize: function(){
		var options, togglers, elements, container;
		$each(arguments, function(argument, i){
			switch($type(argument)){
				case 'object': options =3D argument; break;
				case 'element': container =3D $(argument); break;
				default:
					var temp =3D $$(argument);
					if (!togglers) togglers =3D temp;
					else elements =3D temp;
			}
		});
		this.togglers =3D togglers || [];
		this.elements =3D elements || [];
		this.container =3D $(container);
		this.setOptions(options);
		this.previous =3D -1;
		if (this.options.alwaysHide) this.options.wait =3D true;
		if ($chk(this.options.show)){
			this.options.display =3D false;
			this.previous =3D this.options.show;
		}
		if (this.options.start){
			this.options.display =3D false;
			this.options.show =3D false;
		}
		this.effects =3D {};
		if (this.options.opacity) this.effects.opacity =3D 'fullOpacity';
		if (this.options.width) this.effects.width =3D this.options.fixedWidth =
? 'fullWidth' : 'offsetWidth';
		if (this.options.height) this.effects.height =3D =
this.options.fixedHeight ? 'fullHeight' : 'scrollHeight';
		for (var i =3D 0, l =3D this.togglers.length; i < l; i++) =
this.addSection(this.togglers[i], this.elements[i]);
		this.elements.each(function(el, i){
			if (this.options.show =3D=3D=3D i){
				this.fireEvent('onActive', [this.togglers[i], el]);
			} else {
				for (var fx in this.effects) el.setStyle(fx, 0);
			}
		}, this);
		this.parent(this.elements);
		if ($chk(this.options.display)) this.display(this.options.display);
	},

	/*
	Property: addSection
		Dynamically adds a new section into the accordion at the specified =
position.

	Arguments:
		toggler - (dom element) the element that toggles the accordion section =
open.
		element - (dom element) the element that stretches open when the =
toggler is clicked.
		pos - (integer) the index where these objects are to be inserted =
within the accordion.
	*/

	addSection: function(toggler, element, pos){
		toggler =3D $(toggler);
		element =3D $(element);
		var test =3D this.togglers.contains(toggler);
		var len =3D this.togglers.length;
		this.togglers.include(toggler);
		this.elements.include(element);
		if (len && (!test || pos)){
			pos =3D $pick(pos, len - 1);
			toggler.injectBefore(this.togglers[pos]);
			element.injectAfter(toggler);
		} else if (this.container && !test){
			toggler.inject(this.container);
			element.inject(this.container);
		}
		var idx =3D this.togglers.indexOf(toggler);
		toggler.addEvent('click', this.display.bind(this, idx));
		if (this.options.height) element.setStyles({'padding-top': 0, =
'border-top': 'none', 'padding-bottom': 0, 'border-bottom': 'none'});
		if (this.options.width) element.setStyles({'padding-left': 0, =
'border-left': 'none', 'padding-right': 0, 'border-right': 'none'});
		element.fullOpacity =3D 1;
		if (this.options.fixedWidth) element.fullWidth =3D =
this.options.fixedWidth;
		if (this.options.fixedHeight) element.fullHeight =3D =
this.options.fixedHeight;
		element.setStyle('overflow', 'hidden');
		if (!test){
			for (var fx in this.effects) element.setStyle(fx, 0);
		}
		return this;
	},

	/*
	Property: display
		Shows a specific section and hides all others. Useful when triggering =
an accordion from outside.

	Arguments:
		index - integer, the index of the item to show, or the actual element =
to show.
	*/

	display: function(index){
		index =3D ($type(index) =3D=3D 'element') ? =
this.elements.indexOf(index) : index;
		if ((this.timer && this.options.wait) || (index =3D=3D=3D =
this.previous && !this.options.alwaysHide)) return this;
		this.previous =3D index;
		var obj =3D {};
		this.elements.each(function(el, i){
			obj[i] =3D {};
			var hide =3D (i !=3D index) || (this.options.alwaysHide && =
(el.offsetHeight > 0));
			this.fireEvent(hide ? 'onBackground' : 'onActive', [this.togglers[i], =
el]);
			for (var fx in this.effects) obj[i][fx] =3D hide ? 0 : =
el[this.effects[fx]];
		}, this);
		return this.start(obj);
	},

	showThisHideOpen: function(index){return this.display(index);}

});

Fx.Accordion =3D Accordion;
------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/js/ja.script.js

function switchFontSize (ckname,val){
	var bd =3D $E('BODY');
	switch (val) {
		case 'inc':
			if (CurrentFontSize+1 < 7) {
				bd.removeClass('fs'+CurrentFontSize);
				CurrentFontSize++;
				bd.addClass('fs'+CurrentFontSize);
			}	=09
		break;
		case 'dec':
			if (CurrentFontSize-1 > 0) {
				bd.removeClass('fs'+CurrentFontSize);
				CurrentFontSize--;
				bd.addClass('fs'+CurrentFontSize);
			}	=09
		break;
		default:
			bd.removeClass('fs'+CurrentFontSize);
			CurrentFontSize =3D val;
			bd.addClass('fs'+CurrentFontSize);	=09
	}
	Cookie.set(ckname, CurrentFontSize,{duration:365});
}

function switchTool (ckname, val) {
	createCookie(ckname, val, 365);
	window.location.reload();
}

function createCookie(name,value,days) {
  if (days) {
    var date =3D new Date();
    date.setTime(date.getTime()+(days*24*60*60*1000));
    var expires =3D "; expires=3D"+date.toGMTString();
  }
  else expires =3D "";
  document.cookie =3D name+"=3D"+value+expires+"; path=3D/";
}

String.prototype.trim =3D function() { return this.replace(/^\s+|\s+$/g, =
""); };

//addEvent - attach a function to an event
function jaAddEvent(obj, evType, fn){=20
 if (obj.addEventListener){=20
   obj.addEventListener(evType, fn, false);=20
   return true;=20
 } else if (obj.attachEvent){=20
   var r =3D obj.attachEvent("on"+evType, fn);=20
   return r;=20
 } else {=20
   return false;=20
 }=20
}

function equalHeight(){
	if($('ja-botsl')) makeEqualHeight ($$('#ja-botsl .moduletable'));
/*
  //Equal for headline
	$hlfirst =3D $('jazin-hlfirst');
	$hlnext =3D $('jazin-hlnext');
	if($hlfirst && $hlnext) {
    h1 =3D $hlfirst.getCoordinates().height;
    h2 =3D $hlnext.getCoordinates().height;
   =20
    if(h1<h2) {
      $hlfirst.setStyle('height', h2);
    }
  }
 =20
  //Equal for main column
  $main =3D $('jazin');
  if($main) {
    makeEqualHeight($main.getChildren());
  }
*/ =20

}

function makeEqualHeight(divs) {
	if(!divs || divs.length < 2) return;
	var maxh =3D 0;
	divs.each(function(el, i){
		var ch =3D el.getCoordinates().height;
		maxh =3D (maxh < ch) ? ch : maxh;	=09
	},this);
	divs.each(function(el, i){
		el.setStyle('height', =
maxh-el.getStyle('padding-top').toInt()-el.getStyle('padding-bottom').toI=
nt());	=09
	},this);
}

function getDeepestDiv (div) {
	while (div.getChildren().length=3D=3D1 && (div.getChildren()[0].tagName =
=3D=3D 'DIV'))
	{
		div =3D div.getChildren()[0];
	}
	return div;
}

function preloadImages () {
	var imgs =3D new Array();
	for (var i =3D 0; i < arguments.length; i++) {
		var imgsrc =3D arguments[i];
		imgs[i] =3D new Image();
		imgs[i].src =3D imgsrc;
	}
}

function makeTransBg(el, bgimgdf, sizingMethod, type, offset){
	var objs =3D el;
	if(!objs) return;
	if ($type(objs) !=3D 'array') objs =3D [objs];
	if(!sizingMethod) sizingMethod =3D 'crop';
	if(!offset) offset =3D 0;
	var blankimg =3D siteurl + 'images/blank.png';
	objs.each(function(obj) {
		var bgimg =3D bgimgdf;
		if (obj.tagName =3D=3D 'IMG') {
			//This is an image
			if (!bgimg) bgimg =3D obj.src;
			if (!(/\.png$/i).test(bgimg) || (/blank\.png$/i).test(bgimg)) return;

			obj.setStyle('height',obj.offsetHeight);
			obj.setStyle('width',obj.offsetWidth);
			obj.src =3D blankimg;
			obj.setStyle ('visibility', 'visible');
			obj.setStyle('filter', =
"progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D"+bgimg+", =
sizingMethod=3D'"+sizingMethod+"')");
		}else{
			//Background
			if (!bgimg) bgimg =3D obj.getStyle('backgroundImage');
			var pattern =3D new RegExp('url\s*[\(\"\']*([^\'\"\)]*)[\'\"\)]*');
			if ((m =3D pattern.exec(bgimg))) bgimg =3D m[1];
			if (!(/\.png$/i).test(bgimg) || (/blank\.png$/i).test(bgimg)) return;
			if (!type)
			{
				obj.setStyles({'background': 'none'});

				if(obj.getStyle('position')!=3D'absolute' && =
obj.getStyle('position')!=3D'relative') {
					obj.setStyle('position', 'relative');
				}

				obj.getChildren().each(function(el){
					if(el.getStyle('position')!=3D'absolute' && =
el.getStyle('position')!=3D'relative')=20
					{
						el.setStyle('position', 'relative');
					}
					el.setStyle('z-index',2);
				});
				//Create background layer:
				var bgdiv =3D new Element('IMG');
				bgdiv.src =3D blankimg;
				bgdiv.width =3D obj.offsetWidth - offset;
				bgdiv.height =3D obj.offsetHeight - offset;
				bgdiv.setStyles({
					'position': 'absolute',
					'top': 0,
					'left': -obj.getStyle('padding-left').toInt()
				});

				bgdiv.className =3D 'TransBG';

				bgdiv.setStyle('filter', =
"progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D"+bgimg+", =
sizingMethod=3D'"+sizingMethod+"')");
				bgdiv.inject(obj, 'top');
				//alert(obj.innerHTML + '\n' + bgdiv.innerHTML);
			} else {
				obj.setStyle('filter', =
"progid:DXImageTransform.Microsoft.AlphaImageLoader(src=3D"+bgimg+", =
sizingMethod=3D'"+sizingMethod+"')");
			}
		}
	}.bind(this));
}

function isIE6() {
	version=3D0
	if (navigator.appVersion.indexOf("MSIE")!=3D-1){
		temp=3Dnavigator.appVersion.split("MSIE")
		version=3DparseFloat(temp[1])
	}
	return (version && (version < 7));
}

function getElementsByClass(searchClass,node,tag) {
	var classElements =3D new Array();
	var j =3D 0;
	if ( node =3D=3D null )
		node =3D document;
	if ( tag =3D=3D null )
		tag =3D '*';
	var els =3D node.getElementsByTagName(tag);
	var elsLen =3D els.length;
	var pattern =3D new RegExp('(^|\\s)'+searchClass+'(\\s|$)');
	for (var i =3D 0; i < elsLen; i++) {
		if ( pattern.test(els[i].className) ) {
			classElements[j] =3D els[i];
			j++;
		}
	}
	//alert(searchClass + j);
	return classElements;
}

//Add span to module title
jaAddFirstItemToTopmenu =3D function() {
	li =3D $E('#ja-footer ul li');
	if(li) {
		li.addClass('ja-firstitem');
	}
}


function addMouseOver (className) {
	objs =3D getElementsByClass (className, document, 'DIV');
	if (objs){
		for (i=3D0; i<objs.length; i++){
			objs[i].onmouseover=3Dfunction() {
				this.className+=3D" hover";
			}
			objs[i].onmouseout=3Dfunction() {
				this.className=3Dthis.className.replace(new RegExp(" hover\\b"), =
"");
			}

		}
	}
}

jaIE6hover =3D function(){
	addMouseOver('jazin-box');
	addMouseOver('ja-headtool');
}

blogcontenthack =3D function () {
  var table =3D $E('table.blog tbody');
  if (!table) return;
  var blogtable =3D null;
  table.getChildren().each(function(tr){
    if((td=3Dtr.firstChild) && (ctable=3Dtd.firstChild) && =
(ctable.tagName =3D=3D 'TABLE')) {
      blogtable =3D $(ctable);
    }
  });
  if(!blogtable) return;
  blogtable.className =3D 'blog-content-table';
  blogtable.parentNode.className =3D 'blog-content-table-parent';
  tbody =3D $(blogtable.firstChild);
  if(!tbody) return;
  tbody.getChildren().each(function (tr){
    tr.className =3D 'blog-content-tr';
    tr.getChildren().each(function(td){
      td.className =3D 'blog-content-td';
    });
    tr.firstChild.className =3D 'blog-content-td-first';
  });
  if (blogtable.firstChild.firstChild) =
blogtable.firstChild.firstChild.className =3D 'blog-content-tr-first';
}

window.addEvent ('load', function() {
	equalHeight();
	jaAddFirstItemToTopmenu();
	jaIE6hover();
	blogcontenthack();
});

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/highslide/swfobject.js

/* SWFObject v2.1 <http://code.google.com/p/swfobject/>=0A=
	Copyright (c) 2007-2008 Geoff Stearns, Michael Williams, and Bobby van =
der Sluis=0A=
	This software is released under the MIT License =
<http://www.opensource.org/licenses/mit-license.php>=0A=
*/=0A=
var swfobject=3Dfunction(){var =
b=3D"undefined",Q=3D"object",n=3D"Shockwave =
Flash",p=3D"ShockwaveFlash.ShockwaveFlash",P=3D"application/x-shockwave-f=
lash",m=3D"SWFObjectExprInst",j=3Dwindow,K=3Ddocument,T=3Dnavigator,o=3D[=
],N=3D[],i=3D[],d=3D[],J,Z=3Dnull,M=3Dnull,l=3Dnull,e=3Dfalse,A=3Dfalse;v=
ar h=3Dfunction(){var v=3Dtypeof K.getElementById!=3Db&&typeof =
K.getElementsByTagName!=3Db&&typeof =
K.createElement!=3Db,AC=3D[0,0,0],x=3Dnull;if(typeof =
T.plugins!=3Db&&typeof =
T.plugins[n]=3D=3DQ){x=3DT.plugins[n].description;if(x&&!(typeof =
T.mimeTypes!=3Db&&T.mimeTypes[P]&&!T.mimeTypes[P].enabledPlugin)){x=3Dx.r=
eplace(/^.*\s+(\S+\s+\S+$)/,"$1");AC[0]=3DparseInt(x.replace(/^(.*)\..*$/=
,"$1"),10);AC[1]=3DparseInt(x.replace(/^.*\.(.*)\s.*$/,"$1"),10);AC[2]=3D=
/r/.test(x)?parseInt(x.replace(/^.*r(.*)$/,"$1"),10):0}}else{if(typeof =
j.ActiveXObject!=3Db){var y=3Dnull,AB=3Dfalse;try{y=3Dnew =
ActiveXObject(p+".7")}catch(t){try{y=3Dnew =
ActiveXObject(p+".6");AC=3D[6,0,21];y.AllowScriptAccess=3D"always"}catch(=
t){if(AC[0]=3D=3D6){AB=3Dtrue}}if(!AB){try{y=3Dnew =
ActiveXObject(p)}catch(t){}}}if(!AB&&y){try{x=3Dy.GetVariable("$version")=
;if(x){x=3Dx.split(" =
")[1].split(",");AC=3D[parseInt(x[0],10),parseInt(x[1],10),parseInt(x[2],=
10)]}}catch(t){}}}}var =
AD=3DT.userAgent.toLowerCase(),r=3DT.platform.toLowerCase(),AA=3D/webkit/=
.test(AD)?parseFloat(AD.replace(/^.*webkit\/(\d+(\.\d+)?).*$/,"$1")):fals=
e,q=3Dfalse,z=3Dr?/win/.test(r):/win/.test(AD),w=3Dr?/mac/.test(r):/mac/.=
test(AD);/*@cc_on =
q=3Dtrue;@if(@_win32)z=3Dtrue;@elif(@_mac)w=3Dtrue;@end@*/return{w3cdom:v=
,pv:AC,webkit:AA,ie:q,win:z,mac:w}}();var =
L=3Dfunction(){if(!h.w3cdom){return =
}f(H);if(h.ie&&h.win){try{K.write("<script id=3D__ie_ondomload =
defer=3Dtrue =
src=3D//:><\/script>");J=3DC("__ie_ondomload");if(J){I(J,"onreadystatecha=
nge",S)}}catch(q){}}if(h.webkit&&typeof =
K.readyState!=3Db){Z=3DsetInterval(function(){if(/loaded|complete/.test(K=
.readyState)){E()}},10)}if(typeof =
K.addEventListener!=3Db){K.addEventListener("DOMContentLoaded",E,null)}R(=
E)}();function =
S(){if(J.readyState=3D=3D"complete"){J.parentNode.removeChild(J);E()}}fun=
ction E(){if(e){return }if(h.ie&&h.win){var v=3Da("span");try{var =
u=3DK.getElementsByTagName("body")[0].appendChild(v);u.parentNode.removeC=
hild(u)}catch(w){return }}e=3Dtrue;if(Z){clearInterval(Z);Z=3Dnull}var =
q=3Do.length;for(var r=3D0;r<q;r++){o[r]()}}function =
f(q){if(e){q()}else{o[o.length]=3Dq}}function R(r){if(typeof =
j.addEventListener!=3Db){j.addEventListener("load",r,false)}else{if(typeo=
f =
K.addEventListener!=3Db){K.addEventListener("load",r,false)}else{if(typeo=
f j.attachEvent!=3Db){I(j,"onload",r)}else{if(typeof =
j.onload=3D=3D"function"){var =
q=3Dj.onload;j.onload=3Dfunction(){q();r()}}else{j.onload=3Dr}}}}}functio=
n H(){var t=3DN.length;for(var q=3D0;q<t;q++){var =
u=3DN[q].id;if(h.pv[0]>0){var =
r=3DC(u);if(r){N[q].width=3Dr.getAttribute("width")?r.getAttribute("width=
"):"0";N[q].height=3Dr.getAttribute("height")?r.getAttribute("height"):"0=
";if(c(N[q].swfVersion)){if(h.webkit&&h.webkit<312){Y(r)}W(u,true)}else{i=
f(N[q].expressInstall&&!A&&c("6.0.65")&&(h.win||h.mac)){k(N[q])}else{O(r)=
}}}}else{W(u,true)}}}function Y(t){var =
q=3Dt.getElementsByTagName(Q)[0];if(q){var =
w=3Da("embed"),y=3Dq.attributes;if(y){var v=3Dy.length;for(var =
u=3D0;u<v;u++){if(y[u].nodeName=3D=3D"DATA"){w.setAttribute("src",y[u].no=
deValue)}else{w.setAttribute(y[u].nodeName,y[u].nodeValue)}}}var =
x=3Dq.childNodes;if(x){var z=3Dx.length;for(var =
r=3D0;r<z;r++){if(x[r].nodeType=3D=3D1&&x[r].nodeName=3D=3D"PARAM"){w.set=
Attribute(x[r].getAttribute("name"),x[r].getAttribute("value"))}}}t.paren=
tNode.replaceChild(w,t)}}function k(w){A=3Dtrue;var =
u=3DC(w.id);if(u){if(w.altContentId){var =
y=3DC(w.altContentId);if(y){M=3Dy;l=3Dw.altContentId}}else{M=3DG(u)}if(!(=
/%$/.test(w.width))&&parseInt(w.width,10)<310){w.width=3D"310"}if(!(/%$/.=
test(w.height))&&parseInt(w.height,10)<137){w.height=3D"137"}K.title=3DK.=
title.slice(0,47)+" - Flash Player Installation";var =
z=3Dh.ie&&h.win?"ActiveX":"PlugIn",q=3DK.title,r=3D"MMredirectURL=3D"+j.l=
ocation+"&MMplayerType=3D"+z+"&MMdoctitle=3D"+q,x=3Dw.id;if(h.ie&&h.win&&=
u.readyState!=3D4){var =
t=3Da("div");x+=3D"SWFObjectNew";t.setAttribute("id",x);u.parentNode.inse=
rtBefore(t,u);u.style.display=3D"none";var =
v=3Dfunction(){u.parentNode.removeChild(u)};I(j,"onload",v)}U({data:w.exp=
ressInstall,id:m,width:w.width,height:w.height},{flashvars:r},x)}}functio=
n O(t){if(h.ie&&h.win&&t.readyState!=3D4){var =
r=3Da("div");t.parentNode.insertBefore(r,t);r.parentNode.replaceChild(G(t=
),r);t.style.display=3D"none";var =
q=3Dfunction(){t.parentNode.removeChild(t)};I(j,"onload",q)}else{t.parent=
Node.replaceChild(G(t),t)}}function G(v){var =
u=3Da("div");if(h.win&&h.ie){u.innerHTML=3Dv.innerHTML}else{var =
r=3Dv.getElementsByTagName(Q)[0];if(r){var w=3Dr.childNodes;if(w){var =
q=3Dw.length;for(var =
t=3D0;t<q;t++){if(!(w[t].nodeType=3D=3D1&&w[t].nodeName=3D=3D"PARAM")&&!(=
w[t].nodeType=3D=3D8)){u.appendChild(w[t].cloneNode(true))}}}}}return =
u}function U(AG,AE,t){var q,v=3DC(t);if(v){if(typeof =
AG.id=3D=3Db){AG.id=3Dt}if(h.ie&&h.win){var AF=3D"";for(var AB in =
AG){if(AG[AB]!=3DObject.prototype[AB]){if(AB.toLowerCase()=3D=3D"data"){A=
E.movie=3DAG[AB]}else{if(AB.toLowerCase()=3D=3D"styleclass"){AF+=3D' =
class=3D"'+AG[AB]+'"'}else{if(AB.toLowerCase()!=3D"classid"){AF+=3D" =
"+AB+'=3D"'+AG[AB]+'"'}}}}}var AD=3D"";for(var AA in =
AE){if(AE[AA]!=3DObject.prototype[AA]){AD+=3D'<param name=3D"'+AA+'" =
value=3D"'+AE[AA]+'" />'}}v.outerHTML=3D'<object =
classid=3D"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"'+AF+">"+AD+"</obje=
ct>";i[i.length]=3DAG.id;q=3DC(AG.id)}else{if(h.webkit&&h.webkit<312){var=
 AC=3Da("embed");AC.setAttribute("type",P);for(var z in =
AG){if(AG[z]!=3DObject.prototype[z]){if(z.toLowerCase()=3D=3D"data"){AC.s=
etAttribute("src",AG[z])}else{if(z.toLowerCase()=3D=3D"styleclass"){AC.se=
tAttribute("class",AG[z])}else{if(z.toLowerCase()!=3D"classid"){AC.setAtt=
ribute(z,AG[z])}}}}}for(var y in =
AE){if(AE[y]!=3DObject.prototype[y]){if(y.toLowerCase()!=3D"movie"){AC.se=
tAttribute(y,AE[y])}}}v.parentNode.replaceChild(AC,v);q=3DAC}else{var =
u=3Da(Q);u.setAttribute("type",P);for(var x in =
AG){if(AG[x]!=3DObject.prototype[x]){if(x.toLowerCase()=3D=3D"styleclass"=
){u.setAttribute("class",AG[x])}else{if(x.toLowerCase()!=3D"classid"){u.s=
etAttribute(x,AG[x])}}}}for(var w in =
AE){if(AE[w]!=3DObject.prototype[w]&&w.toLowerCase()!=3D"movie"){F(u,w,AE=
[w])}}v.parentNode.replaceChild(u,v);q=3Du}}}return q}function =
F(t,q,r){var =
u=3Da("param");u.setAttribute("name",q);u.setAttribute("value",r);t.appen=
dChild(u)}function X(r){var =
q=3DC(r);if(q&&(q.nodeName=3D=3D"OBJECT"||q.nodeName=3D=3D"EMBED")){if(h.=
ie&&h.win){if(q.readyState=3D=3D4){B(r)}else{j.attachEvent("onload",funct=
ion(){B(r)})}}else{q.parentNode.removeChild(q)}}}function B(t){var =
r=3DC(t);if(r){for(var q in r){if(typeof =
r[q]=3D=3D"function"){r[q]=3Dnull}}r.parentNode.removeChild(r)}}function =
C(t){var q=3Dnull;try{q=3DK.getElementById(t)}catch(r){}return =
q}function a(q){return K.createElement(q)}function =
I(t,q,r){t.attachEvent(q,r);d[d.length]=3D[t,q,r]}function c(t){var =
r=3Dh.pv,q=3Dt.split(".");q[0]=3DparseInt(q[0],10);q[1]=3DparseInt(q[1],1=
0)||0;q[2]=3DparseInt(q[2],10)||0;return(r[0]>q[0]||(r[0]=3D=3Dq[0]&&r[1]=
>q[1])||(r[0]=3D=3Dq[0]&&r[1]=3D=3Dq[1]&&r[2]>=3Dq[2]))?true:false}functi=
on V(v,r){if(h.ie&&h.mac){return }var =
u=3DK.getElementsByTagName("head")[0],t=3Da("style");t.setAttribute("type=
","text/css");t.setAttribute("media","screen");if(!(h.ie&&h.win)&&typeof =
K.createTextNode!=3Db){t.appendChild(K.createTextNode(v+" =
{"+r+"}"))}u.appendChild(t);if(h.ie&&h.win&&typeof =
K.styleSheets!=3Db&&K.styleSheets.length>0){var =
q=3DK.styleSheets[K.styleSheets.length-1];if(typeof =
q.addRule=3D=3DQ){q.addRule(v,r)}}}function W(t,q){var =
r=3Dq?"visible":"hidden";if(e&&C(t)){C(t).style.visibility=3Dr}else{V("#"=
+t,"visibility:"+r)}}function g(s){var r=3D/[\\\"<>\.;]/;var =
q=3Dr.exec(s)!=3Dnull;return q?encodeURIComponent(s):s}var =
D=3Dfunction(){if(h.ie&&h.win){window.attachEvent("onunload",function(){v=
ar w=3Dd.length;for(var =
v=3D0;v<w;v++){d[v][0].detachEvent(d[v][1],d[v][2])}var =
t=3Di.length;for(var u=3D0;u<t;u++){X(i[u])}for(var r in =
h){h[r]=3Dnull}h=3Dnull;for(var q in =
swfobject){swfobject[q]=3Dnull}swfobject=3Dnull})}}();return{registerObje=
ct:function(u,q,t){if(!h.w3cdom||!u||!q){return }var =
r=3D{};r.id=3Du;r.swfVersion=3Dq;r.expressInstall=3Dt?t:false;N[N.length]=
=3Dr;W(u,false)},getObjectById:function(v){var q=3Dnull;if(h.w3cdom){var =
t=3DC(v);if(t){var u=3Dt.getElementsByTagName(Q)[0];if(!u||(u&&typeof =
t.SetVariable!=3Db)){q=3Dt}else{if(typeof =
u.SetVariable!=3Db){q=3Du}}}}return =
q},embedSWF:function(x,AE,AB,AD,q,w,r,z,AC){if(!h.w3cdom||!x||!AE||!AB||!=
AD||!q){return }AB+=3D"";AD+=3D"";if(c(q)){W(AE,false);var =
AA=3D{};if(AC&&typeof AC=3D=3D=3DQ){for(var v in =
AC){if(AC[v]!=3DObject.prototype[v]){AA[v]=3DAC[v]}}}AA.data=3Dx;AA.width=
=3DAB;AA.height=3DAD;var y=3D{};if(z&&typeof z=3D=3D=3DQ){for(var u in =
z){if(z[u]!=3DObject.prototype[u]){y[u]=3Dz[u]}}}if(r&&typeof =
r=3D=3D=3DQ){for(var t in r){if(r[t]!=3DObject.prototype[t]){if(typeof =
y.flashvars!=3Db){y.flashvars+=3D"&"+t+"=3D"+r[t]}else{y.flashvars=3Dt+"=3D=
"+r[t]}}}}f(function(){U(AA,y,AE);if(AA.id=3D=3DAE){W(AE,true)}})}else{if=
(w&&!A&&c("6.0.65")&&(h.win||h.mac)){A=3Dtrue;W(AE,false);f(function(){va=
r =
AF=3D{};AF.id=3DAF.altContentId=3DAE;AF.width=3DAB;AF.height=3DAD;AF.expr=
essInstall=3Dw;k(AF)})}}},getFlashPlayerVersion:function(){return{major:h=
.pv[0],minor:h.pv[1],release:h.pv[2]}},hasFlashPlayerVersion:c,createSWF:=
function(t,r,q){if(h.w3cdom){return U(t,r,q)}else{return =
undefined}},removeSWF:function(q){if(h.w3cdom){X(q)}},createCSS:function(=
r,q){if(h.w3cdom){V(r,q)}},addDomLoadEvent:f,addLoadEvent:R,getQueryParam=
Value:function(v){var =
u=3DK.location.search||K.location.hash;if(v=3D=3Dnull){return =
g(u)}if(u){var t=3Du.substring(1).split("&");for(var =
r=3D0;r<t.length;r++){if(t[r].substring(0,t[r].indexOf("=3D"))=3D=3Dv){re=
turn =
g(t[r].substring((t[r].indexOf("=3D")+1)))}}}return""},expressInstallCall=
back:function(){if(A&&M){var =
q=3DC(m);if(q){q.parentNode.replaceChild(M,q);if(l){W(l,true);if(h.ie&&h.=
win){M.style.display=3D"block"}}M=3Dnull;l=3Dnull;A=3Dfalse}}}}}();
------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/highslide/highslide-full.js

/************************************************************************=
******
Name:    Highslide JS
Version: 4.0.4 (August 26 2008)
Config:  default +events +unobtrusive +imagemap +slideshow +positioning =
+transitions +inline +ajax +iframe +flash=0A=
Author:  Torstein H=F8nsi
Support: http://highslide.com/support

Licence:
Highslide JS is licensed under a Creative Commons =
Attribution-NonCommercial 2.5
License (http://creativecommons.org/licenses/by-nc/2.5/).

You are free:
	* to copy, distribute, display, and perform the work
	* to make derivative works

Under the following conditions:
	* Attribution. You must attribute the work in the manner  specified by  =
the
	  author or licensor.
	* Noncommercial. You may not use this work for commercial purposes.

* For  any  reuse  or  distribution, you  must make clear to others the =
license
  terms of this work.
* Any  of  these  conditions  can  be  waived  if  you  get permission =
from the=20
  copyright holder.

Your fair use and other rights are in no way affected by the above.
*************************************************************************=
*****/

var hs =3D {
// Language strings
lang : {
	loadingText : 'Loading...',
	loadingTitle : 'Click to cancel',
	focusTitle : 'Click to bring to front',
	fullExpandTitle : 'Expand to actual size',
	creditsText : 'Powered by <i>Highslide JS</i>',
	creditsTitle : 'Go to the Highslide JS homepage',
	previousText : 'Previous',
	nextText : 'Next',=20
	moveText : 'Move',
	closeText : 'Close',=20
	closeTitle : 'Close (esc)',=20
	resizeTitle : 'Resize',
	playText : 'Play',
	playTitle : 'Play slideshow (spacebar)',
	pauseText : 'Pause',
	pauseTitle : 'Pause slideshow (spacebar)',
	previousTitle : 'Previous (arrow left)',
	nextTitle : 'Next (arrow right)',
	moveTitle : 'Move',
	fullExpandText : 'Full size',
	number: 'Image %1 of %2',
	restoreTitle : 'Click to close image, click and drag to move. Use arrow =
keys for next and previous.'
},
// See http://highslide.com/ref for examples of settings =20
graphicsDir : 'highslide/graphics/',
restoreCursor : 'zoomout.cur', // necessary for preload
expandSteps : 10, // number of steps in zoom. Each step lasts for =
duration/step milliseconds.
expandDuration : 250, // milliseconds
restoreSteps : 10,
restoreDuration : 250,
marginLeft : 15,
marginRight : 15,
marginTop : 15,
marginBottom : 15,
zIndexCounter : 1001, // adjust to other absolutely positioned elements
loadingOpacity : 0.75,
allowMultipleInstances: true,
numberOfImagesToPreload : 5,
outlineWhileAnimating : 2, // 0 =3D never, 1 =3D always, 2 =3D HTML only =

outlineStartOffset : 3, // ends at 10
fullExpandPosition : 'bottom right',
fullExpandOpacity : 1,
padToMinWidth : false, // pad the popup width to make room for wide =
caption
showCredits : true, // you can set this to false if you want
creditsHref : 'http://vikjavev.no/highslide/',
enableKeyListener : true,
transitions : [],
transitionDuration: 500,
dimmingOpacity: 0, // Lightbox style dimming background
dimmingDuration: 50, // 0 for instant dimming

allowWidthReduction : false,
allowHeightReduction : true,
preserveContent : true, // Preserve changes made to the content and =
position of HTML popups.
objectLoadTime : 'before', // Load iframes 'before' or 'after' =
expansion.
cacheAjax : true, // Cache ajax popups for instant display. Can be =
overridden for each popup.
anchor : 'auto', // where the image expands from
align : 'auto', // position in the client (overrides anchor)
targetX: null, // the id of a target element
targetY: null,
dragByHeading: true,
minWidth: 200,
minHeight: 200,
allowSizeReduction: true, // allow the image to reduce to fit client =
size. If false, this overrides minWidth and minHeight
outlineType : 'drop-shadow', // set null to disable outlines
wrapperClassName : 'highslide-wrapper', // for enhanced css-control
skin : {
	controls:
		'<div class=3D"highslide-controls"><ul>'+
			'<li class=3D"highslide-previous">'+
				'<a href=3D"#" title=3D"{hs.lang.previousTitle}">'+
				'<span>{hs.lang.previousText}</span></a>'+
			'</li>'+
			'<li class=3D"highslide-play">'+
				'<a href=3D"#" title=3D"{hs.lang.playTitle}">'+
				'<span>{hs.lang.playText}</span></a>'+
			'</li>'+
			'<li class=3D"highslide-pause">'+
				'<a href=3D"#" title=3D"{hs.lang.pauseTitle}">'+
				'<span>{hs.lang.pauseText}</span></a>'+
			'</li>'+
			'<li class=3D"highslide-next">'+
				'<a href=3D"#" title=3D"{hs.lang.nextTitle}">'+
				'<span>{hs.lang.nextText}</span></a>'+
			'</li>'+
			'<li class=3D"highslide-move">'+
				'<a href=3D"#" title=3D"{hs.lang.moveTitle}">'+
				'<span>{hs.lang.moveText}</span></a>'+
			'</li>'+
			'<li class=3D"highslide-full-expand">'+
				'<a href=3D"#" title=3D"{hs.lang.fullExpandTitle}">'+
				'<span>{hs.lang.fullExpandText}</span></a>'+
			'</li>'+
			'<li class=3D"highslide-close">'+
				'<a href=3D"#" title=3D"{hs.lang.closeTitle}" >'+
				'<span>{hs.lang.closeText}</span></a>'+
			'</li>'+
		'</ul></div>',
	contentWrapper:
		'<div class=3D"highslide-header"><ul>'+
			'<li class=3D"highslide-previous">'+
				'<a href=3D"#" title=3D"{hs.lang.previousTitle}" onclick=3D"return =
hs.previous(this)">'+
				'<span>{hs.lang.previousText}</span></a>'+
			'</li>'+
			'<li class=3D"highslide-next">'+
				'<a href=3D"#" title=3D"{hs.lang.nextTitle}" onclick=3D"return =
hs.next(this)">'+
				'<span>{hs.lang.nextText}</span></a>'+
			'</li>'+
			'<li class=3D"highslide-move">'+
				'<a href=3D"#" title=3D"{hs.lang.moveTitle}" onclick=3D"return =
false">'+
				'<span>{hs.lang.moveText}</span></a>'+
			'</li>'+
			'<li class=3D"highslide-close">'+
				'<a href=3D"#" title=3D"{hs.lang.closeTitle}" onclick=3D"return =
hs.close(this)">'+
				'<span>{hs.lang.closeText}</span></a>'+
			'</li>'+
		'</ul></div>'+
		'<div class=3D"highslide-body"></div>'+
		'<div class=3D"highslide-footer"><div>'+
			'<span class=3D"highslide-resize" =
title=3D"{hs.lang.resizeTitle}"><span></span></span>'+
		'</div></div>'
},
// END OF YOUR SETTINGS


// declare internal properties
preloadTheseImages : [],
continuePreloading: true,
expanders : [],
overrides : [
	'allowSizeReduction',
	'anchor',
	'align',
	'targetX',
	'targetY',
	'outlineType',
	'outlineWhileAnimating',
	'captionId',
	'captionText',
	'captionEval',
	'captionOverlay',
	'headingId',
	'headingText',
	'headingEval',
	'headingOverlay',
	'dragByHeading',
	'autoplay',
	'numberPosition',
	'transitions',
	'dimmingOpacity',
=09
	'contentId',
	'width',
	'height',
	'allowWidthReduction',
	'allowHeightReduction',
	'preserveContent',
	'maincontentId',
	'maincontentText',
	'maincontentEval',
	'objectType',=09
	'cacheAjax',=09
	'objectWidth',
	'objectHeight',
	'objectLoadTime',=09
	'swfOptions',
	'wrapperClassName',
	'minWidth',
	'minHeight',
	'maxWidth',
	'maxHeight',
	'slideshowGroup',
	'easing',
	'easingClose',
	'fadeInOut',
	'src'
],
overlays : [],
idCounter : 0,
oPos : {
	x: ['leftpanel', 'left', 'center', 'right', 'rightpanel'],
	y: ['above', 'top', 'middle', 'bottom', 'below']
},
mouse: {},
headingOverlay: {},
captionOverlay: {},
swfOptions: { flashvars: {}, params: {}, attributes: {} },
faders : [],

slideshows : [],

pendingOutlines : {},
sleeping : [],
preloadTheseAjax : [],
cacheBindings : [],
cachedGets : {},
clones : {},
ie : (document.all && !window.opera),
safari : /Safari/.test(navigator.userAgent),
geckoMac : /Macintosh.+rv:1\.[0-8].+Gecko/.test(navigator.userAgent),

$ : function (id) {
	return document.getElementById(id);
},

push : function (arr, val) {
	arr[arr.length] =3D val;
},

createElement : function (tag, attribs, styles, parent, nopad) {
	var el =3D document.createElement(tag);
	if (attribs) hs.setAttribs(el, attribs);
	if (nopad) hs.setStyles(el, {padding: 0, border: 'none', margin: 0});
	if (styles) hs.setStyles(el, styles);
	if (parent) parent.appendChild(el);=09
	return el;
},

setAttribs : function (el, attribs) {
	for (var x in attribs) el[x] =3D attribs[x];
},

setStyles : function (el, styles) {
	for (var x in styles) {
		if (hs.ie && x =3D=3D 'opacity') {
			if (styles[x] > 0.99) el.style.removeAttribute('filter');=0A=
			else el.style.filter =3D 'alpha(opacity=3D'+ (styles[x] * 100) +')';
		}
		else el.style[x] =3D styles[x];
	}
},

ieVersion : function () {
	var arr =3D navigator.appVersion.split("MSIE");
	return arr[1] ? parseFloat(arr[1]) : null;
},

getPageSize : function () {
	var iebody =3D document.compatMode && document.compatMode !=3D =
'BackCompat'=20
		? document.documentElement : document.body;=09
=09
=09
	var b =3D document.body;
	var xScroll =3D (window.innerWidth && window.scrollMaxX)=20
			? window.innerWidth + window.scrollMaxX :
				(b.scrollWidth > b.offsetWidth ? b.scrollWidth : b.offsetWidth),
		yScroll =3D (window.innerHeight && window.scrollMaxY)=20
			? window.innerHeight + window.scrollMaxY :
				(b.scrollHeight > b.offsetHeight ? b.scrollHeight : b.offsetHeight),
		pageWidth =3D hs.ie ? iebody.scrollWidth :
			(document.documentElement.clientWidth || self.innerWidth),
      	pageHeight =3D hs.ie ? iebody.clientHeight :=20
			(document.documentElement.clientHeight || self.innerHeight);
=09
	var width =3D hs.ie ? iebody.clientWidth :=20
			(document.documentElement.clientWidth || self.innerWidth),
		height =3D hs.ie ? iebody.clientHeight : self.innerHeight;
=09
	return {
		pageWidth: xScroll < pageWidth ? pageWidth : xScroll,
		pageHeight: yScroll < pageHeight ? pageHeight : yScroll,
		width: width,
		height: height,	=09
		scrollLeft: hs.ie ? iebody.scrollLeft : pageXOffset,
		scrollTop: hs.ie ? iebody.scrollTop : pageYOffset
	}
},

getPosition : function(el)	{
	if (/area/i.test(el.tagName)) {
		var imgs =3D document.getElementsByTagName('img');
		for (var i =3D 0; i < imgs.length; i++) {
			var u =3D imgs[i].useMap;
			if (u && u.replace(/^.*?#/, '') =3D=3D el.parentNode.name) {
				el =3D imgs[i];
				break;
			}
		}
	}
	var p =3D { x: el.offsetLeft, y: el.offsetTop };
	while (el.offsetParent)	{
		el =3D el.offsetParent;
		p.x +=3D el.offsetLeft;
		p.y +=3D el.offsetTop;
		if (el !=3D document.body && el !=3D document.documentElement) {
			p.x -=3D el.scrollLeft;
			p.y -=3D el.scrollTop;
		}
	}
	return p;
},
expand : function(a, params, custom) {
	if (a.getParams) return params;
=09
	try {=09
		new hs.Expander(a, params, custom);
		return false;	=09
	} catch (e) { return true; }
},

htmlExpand : function(a, params, custom) {
	if (a.getParams) return params;
=09
	for (var i =3D 0; i < hs.sleeping.length; i++) {
		if (hs.sleeping[i] && hs.sleeping[i].a =3D=3D a) {
			hs.sleeping[i].awake();
			hs.sleeping[i] =3D null;
			return false;
		}
	}
	try {
		hs.hasHtmlexpanders =3D true;
		new hs.Expander(a, params, custom, 'html');
		return false;
	} catch (e) {
		return true;
	}=09
},

getSelfRendered : function() {
	return hs.createElement('div', {=20
		className: 'highslide-html-content',=20
		innerHTML: hs.replaceLang(hs.skin.contentWrapper)=20
	});
},
getElementByClass : function (el, tagName, className) {
	var els =3D el.getElementsByTagName(tagName);
	for (var i =3D 0; i < els.length; i++) {
    	if ((new RegExp(className)).test(els[i].className)) {
			return els[i];
		}
	}
	return null;
},
replaceLang : function(s) {
	s =3D s.replace(/\s/g, ' ');
	var re =3D /{hs\.lang\.([^}]+)\}/g,
		matches =3D s.match(re),
		lang;
	for (var i =3D 0; i < matches.length; i++) {
		lang =3D matches[i].replace(re, "$1");
		if (typeof hs.lang[lang] !=3D 'undefined') s =3D s.replace(matches[i], =
hs.lang[lang]);
	}
	return s;
},


setClickEvents : function () {
	var els =3D document.getElementsByTagName('a');
	for (var i =3D 0; i < els.length; i++) {
		if (/^highslide$/.test(els[i].rel)) {
			if (hs.fireEvent(hs, 'onSetClickEvent', { element: els[i] })) {
		=09
				els[i].onclick =3D function() { return hs.expand(this) };
			}
		=09
			els[i].removeAttribute('rel');=09
		}
	=09
		var match =3D /^highslide-(ajax|iframe)$/.exec(els[i].rel);
		if (match) {
			(function(){
				var t =3D match[1];
				if (hs.fireEvent(hs, 'onSetClickEvent', { element: els[i], type: t =
})) {
			=09
					els[i].onclick =3D function() {
						return hs.htmlExpand(this, { objectType: t } );=20
					};
				}
			})();
			els[i].removeAttribute('rel');
		}
	}
	if (!hs.pageLoaded) setTimeout( hs.setClickEvents, 50);
	else hs.updateAnchors();
},

getCacheBinding : function (a) {
	for (var i =3D 0; i < hs.cacheBindings.length; i++) {
		if (hs.cacheBindings[i][0] =3D=3D a) {
			var c =3D hs.cacheBindings[i][1];
			hs.cacheBindings[i][1] =3D c.cloneNode(1);
			return c;
		}
	}
	return null;
},

preloadAjax : function (e) {
	var arr =3D hs.getAnchors();
	for (var i =3D 0; i < arr.htmls.length; i++) {
		var a =3D arr.htmls[i];
		if (hs.getParam(a, 'objectType') =3D=3D 'ajax' && hs.getParam(a, =
'cacheAjax'))
			hs.push(hs.preloadTheseAjax, a);
	}
=09
	hs.preloadAjaxElement(0);
},

preloadAjaxElement : function (i) {
	if (!hs.preloadTheseAjax[i]) return;
	var a =3D hs.preloadTheseAjax[i];
	var cache =3D hs.getNode(hs.getParam(a, 'contentId'));
	if (!cache) cache =3D hs.getSelfRendered();
	var ajax =3D new hs.Ajax(a, cache, 1);=09
   	ajax.onError =3D function () { };
   	ajax.onLoad =3D function () {
   		hs.push(hs.cacheBindings, [a, cache]);
   		hs.preloadAjaxElement(i + 1);
   	};
   	ajax.run();
},

focusTopmost : function() {
	var topZ =3D 0, topmostKey =3D -1;
	for (var i =3D 0; i < hs.expanders.length; i++) {
		if (hs.expanders[i]) {
			if (hs.expanders[i].wrapper.style.zIndex && =
hs.expanders[i].wrapper.style.zIndex > topZ) {
				topZ =3D hs.expanders[i].wrapper.style.zIndex;
			=09
				topmostKey =3D i;
			}
		}
	}
	if (topmostKey =3D=3D -1) hs.focusKey =3D -1;
	else hs.expanders[topmostKey].focus();
},

getParam : function (a, param) {
	a.getParams =3D a.onclick;
	var p =3D a.getParams ? a.getParams() : null;
	a.getParams =3D null;
=09
	return (p && typeof p[param] !=3D 'undefined') ? p[param] :=20
		(typeof hs[param] !=3D 'undefined' ? hs[param] : null);=0A=
},

getSrc : function (a) {
	var src =3D hs.getParam(a, 'src');
	if (src) return src;
	return a.href;
},

getNode : function (id) {
	var node =3D hs.$(id), clone =3D hs.clones[id], a =3D {};
	if (!node && !clone) return null;
	if (!clone) {
		clone =3D node.cloneNode(true);
		clone.id =3D '';
		hs.clones[id] =3D clone;
		return node;
	} else {
		return clone.cloneNode(true);
	}
},

discardElement : function(d) {=0A=
	hs.garbageBin.appendChild(d);
	hs.garbageBin.innerHTML =3D '';
},
dim : function(exp) {
	if (!hs.dimmer) {
		hs.dimmer =3D hs.createElement ('div',=20
			{=20
				className: 'highslide-dimming',
				owner: '',
				onclick: function() {
					if (hs.fireEvent(hs, 'onDimmerClick'))
					=20
						hs.close();
				}
			},=20
			{ position: 'absolute', left: 0 }, hs.container, true);
		hs.addEventListener(window, 'resize', hs.setDimmerSize);
	}
	hs.dimmer.style.display =3D '';
	hs.setDimmerSize();
	hs.dimmer.owner +=3D '|'+ exp.key;
	if (hs.geckoMac && hs.dimmingGeckoFix)=20
		hs.dimmer.style.background =3D 'url('+ hs.graphicsDir + =
'geckodimmer.png)';	=09
	else
		hs.fade(hs.dimmer, 0, exp.dimmingOpacity, hs.dimmingDuration);=20
},
undim : function(key) {
	if (!hs.dimmer) return;
	if (typeof key !=3D 'undefined') hs.dimmer.owner =3D =
hs.dimmer.owner.replace('|'+ key, '');
	if (
		(typeof key !=3D 'undefined' && hs.dimmer.owner !=3D '')
		|| (hs.upcoming && hs.getParam(hs.upcoming, 'dimmingOpacity'))
	) return;
	if (hs.geckoMac && hs.dimmingGeckoFix)=20
		hs.dimmer.style.background =3D 'none';
	else hs.fade(hs.dimmer, hs.dimmingOpacity, 0, hs.dimmingDuration);
	setTimeout( function() {
		hs.setStyles(hs.dimmer, { display: 'none', width: 0, height: 0 });
	}, hs.dimmingDuration);
},
setDimmerSize : function(exp) {
	if (!hs.dimmer) return;
	var page =3D hs.getPageSize();
	var h =3D (hs.ie && exp && exp.wrapper) ?=20
		parseInt(exp.wrapper.style.top) + parseInt(exp.wrapper.style.height)+ =
(exp.outline ? exp.outline.offset : 0) : 0;=20
	hs.setStyles(hs.dimmer, {=20
		width: page.pageWidth +'px',=20
		height: Math.max(page.pageHeight, h) +'px'
	});
},

previousOrNext : function (el, op) {
	hs.updateAnchors();
	var exp =3D hs.last =3D hs.getExpander(el);
	try {
		var adj =3D hs.upcoming =3D  exp.getAdjacentAnchor(op);
		adj.onclick(); 	=09
	} catch (e){
		hs.last =3D hs.upcoming =3D null;
	}
	try { exp.close(); } catch (e) {}
	return false;
},

previous : function (el) {
	return hs.previousOrNext(el, -1);
},

next : function (el) {
	return hs.previousOrNext(el, 1);=09
},

keyHandler : function(e) {
	if (!e) e =3D window.event;
	if (!e.target) e.target =3D e.srcElement; // ie
	if (e.target.form) return true; // form element has focus
	if (!hs.fireEvent(hs, 'onKeyDown', e)) return true;
=09
	var op =3D null;
	switch (e.keyCode) {
		case 32: // Space
			op =3D 2;
			break;
		case 34: // Page Down
		case 39: // Arrow right
		case 40: // Arrow down
			op =3D 1;
			break;
		case 8:  // Backspace
		case 33: // Page Up
		case 37: // Arrow left
		case 38: // Arrow up
			op =3D -1;
			break;
		case 27: // Escape
		case 13: // Enter
			op =3D 0;
	}
	if (op !=3D=3D null) {if (op !=3D 2)hs.removeEventListener(document, =
window.opera ? 'keypress' : 'keydown', hs.keyHandler);
		if (!hs.enableKeyListener) return true;
	=09
		if (e.preventDefault) e.preventDefault();
    	else e.returnValue =3D false;
    =09
    	var exp =3D hs.getExpander();
    	if (exp) {
			if (op =3D=3D 0) {
				exp.close();
			} else if (op =3D=3D 2) {
				if (exp.slideshow) exp.slideshow.hitSpace();
			} else {
				if (exp.slideshow) exp.slideshow.pause();
				hs.previousOrNext(exp.key, op);
			}
			return false;
		}
	}
	return true;
},


registerOverlay : function (overlay) {
	hs.push(hs.overlays, overlay);
},


addSlideshow : function (options) {
	hs.push(hs.slideshows, options);
},

getWrapperKey : function (element) {
	var el, re =3D /^highslide-wrapper-([0-9]+)$/;
	// 1. look in open expanders
	el =3D element;
	while (el.parentNode)	{
		if (el.id && re.test(el.id)) return el.id.replace(re, "$1");
		el =3D el.parentNode;
	}
	// 2. look in thumbnail
	el =3D element;
	while (el.parentNode)	{
		if (el.tagName && hs.isHsAnchor(el)) {
			for (var key =3D 0; key < hs.expanders.length; key++) {
				var exp =3D hs.expanders[key];
				if (exp && exp.a =3D=3D el) return key;
			}
		}
		el =3D el.parentNode;
	}
	return null;=20
},

getExpander : function (el) {
	if (typeof el =3D=3D 'undefined') return hs.expanders[hs.focusKey] || =
null;
	if (typeof el =3D=3D 'number') return hs.expanders[el] || null;
	if (typeof el =3D=3D 'string') el =3D hs.$(el);
	return hs.expanders[hs.getWrapperKey(el)] || null;
},

isHsAnchor : function (a) {
	return (a.onclick && a.onclick.toString().replace(/\s/g, ' =
').match(/hs.(htmlE|e)xpand/));
},

reOrder : function () {
	for (var i =3D 0; i < hs.expanders.length; i++)
		if (hs.expanders[i] && hs.expanders[i].isExpanded) hs.focusTopmost();
},
fireEvent : function (obj, evt, args) {
	return obj && obj[evt] ? (obj[evt](obj, args) !=3D=3D false) : true;
},

mouseClickHandler : function(e)=20
{=09
	if (!e) e =3D window.event;
	if (e.button > 1) return true;
	if (!e.target) e.target =3D e.srcElement;
=09
	var el =3D e.target;
	while (el.parentNode
		&& !(/highslide-(image|move|html|resize)/.test(el.className)))
	{
		el =3D el.parentNode;
	}
	var exp =3D hs.getExpander(el);
	if (exp && (exp.isClosing || !exp.isExpanded)) return true;
	=09
	if (exp && e.type =3D=3D 'mousedown') {
		if (e.target.form) return true;
		var match =3D el.className.match(/highslide-(image|move|resize)/);
		if (match) {
			hs.dragArgs =3D { exp: exp , type: match[1], left: exp.x.min, width: =
exp.x.span, top: exp.y.min,=20
				height: exp.y.span, clickX: e.clientX, clickY: e.clientY };
		=09
		=09
			hs.addEventListener(document, 'mousemove', hs.dragHandler);
			if (e.preventDefault) e.preventDefault(); // FF
		=09
			if (/highslide-(image|html)-blur/.test(exp.content.className)) {
				exp.focus();
				hs.hasFocused =3D true;
			}
			return false;
		}
		else if (/highslide-html/.test(el.className) && hs.focusKey !=3D =
exp.key) {
			exp.focus();
			exp.redoShowHide();
		}
	} else if (e.type =3D=3D 'mouseup') {
	=09
		hs.removeEventListener(document, 'mousemove', hs.dragHandler);
	=09
		if (hs.dragArgs) {
			if (hs.dragArgs.type =3D=3D 'image')
				hs.dragArgs.exp.content.style.cursor =3D hs.styleRestoreCursor;
			var hasDragged =3D hs.dragArgs.hasDragged;
		=09
			if (!hasDragged &&!hs.hasFocused && =
!/(move|resize)/.test(hs.dragArgs.type)) {
				if (hs.fireEvent(exp, 'onImageClick'))
				exp.close();
			}=20
			else if (hasDragged || (!hasDragged && hs.hasHtmlexpanders)) {
				hs.dragArgs.exp.redoShowHide();
			}
		=09
			if (hs.dragArgs.exp.releaseMask)=20
				hs.dragArgs.exp.releaseMask.style.display =3D 'none';
		=09
			if (hasDragged) hs.fireEvent(hs.dragArgs.exp, 'onDrop', hs.dragArgs);
			if (hasDragged) hs.setDimmerSize(exp);
		=09
			hs.hasFocused =3D false;
			hs.dragArgs =3D null;
	=09
		} else if (/highslide-image-blur/.test(el.className)) {
			el.style.cursor =3D hs.styleRestoreCursor;	=09
		}
	}
	return false;
},

dragHandler : function(e)
{
	if (!hs.dragArgs) return true;
	if (!e) e =3D window.event;
	var a =3D hs.dragArgs, exp =3D a.exp;
	if (exp.iframe) {	=09
		if (!exp.releaseMask) exp.releaseMask =3D hs.createElement('div', =
null,=20
			{ position: 'absolute', width: exp.x.span+'px', height: =
exp.y.span+'px',=20
				left: 0, top: 0, zIndex: 4,	background: (hs.ie ? 'white' : 'none'),=20
				opacity: 0.01 },=20
			exp.wrapper, true);
		if (exp.releaseMask.style.display =3D=3D 'none')
			exp.releaseMask.style.display =3D '';
	}
=09
	a.dX =3D e.clientX - a.clickX;
	a.dY =3D e.clientY - a.clickY;=09
=09
	var distance =3D Math.sqrt(Math.pow(a.dX, 2) + Math.pow(a.dY, 2));
	if (!a.hasDragged) a.hasDragged =3D (a.type !=3D 'image' && distance > =
0)
		|| (distance > (hs.dragSensitivity || 5));
=09
	if (a.hasDragged && e.clientX > 5 && e.clientY > 5) {
		if (!hs.fireEvent(exp, 'onDrag', a)) return false;
	=09
		if (a.type =3D=3D 'resize') exp.resize(a);
		else exp.move(a);
	}
	return false;
},

wrapperMouseHandler : function (e) {
	try {=0A=
		if (!e) e =3D window.event;
		var over =3D /mouseover/i.test(e.type);=20
		if (!e.target) e.target =3D e.srcElement; // ie
		if (hs.ie) e.relatedTarget =3D=20
			over ? e.fromElement : e.toElement; // ie
		var exp =3D hs.getExpander(e.target);
		if (!exp.isExpanded) return;=09
		if (!exp || !e.relatedTarget || hs.getExpander(e.relatedTarget) =3D=3D =
exp=20
			|| hs.dragArgs) return;
		hs.fireEvent(exp, over ? 'onMouseOver' : 'onMouseOut', e);
		for (var i =3D 0; i < exp.overlays.length; i++) {
			var o =3D hs.$('hsId'+ exp.overlays[i]);
			if (o && o.hideOnMouseOut) {
				var from =3D over ? 0 : o.opacity,
					to =3D over ? o.opacity : 0;		=09
				hs.fade(o, from, to);
			}
		}=09
	} catch (e) {}
},

addEventListener : function (el, event, func) {
	try {
		el.addEventListener(event, func, false);
	} catch (e) {
		try {
			el.detachEvent('on'+ event, func);
			el.attachEvent('on'+ event, func);
		} catch (e) {
			el['on'+ event] =3D func;
		}
	}=20
},

removeEventListener : function (el, event, func) {
	try {
		el.removeEventListener(event, func, false);
	} catch (e) {
		try {
			el.detachEvent('on'+ event, func);
		} catch (e) {
			el['on'+ event] =3D null;
		}
	}
},

preloadFullImage : function (i) {
	if (hs.continuePreloading && hs.preloadTheseImages[i] && =
hs.preloadTheseImages[i] !=3D 'undefined') {
		var img =3D document.createElement('img');
		img.onload =3D function() {=20
			img =3D null;=0A=
			hs.preloadFullImage(i + 1);
		};
		img.src =3D hs.preloadTheseImages[i];
	}
},
preloadImages : function (number) {
	if (number && typeof number !=3D 'object') hs.numberOfImagesToPreload =
=3D number;
=09
	var arr =3D hs.getAnchors();
	for (var i =3D 0; i < arr.images.length && i < =
hs.numberOfImagesToPreload; i++) {
		hs.push(hs.preloadTheseImages, hs.getSrc(arr.images[i]));
	}
=09
	// preload outlines
	if (hs.outlineType)	new hs.Outline(hs.outlineType, function () { =
hs.preloadFullImage(0)} );
	else
=09
	hs.preloadFullImage(0);
=09
	// preload cursor
	var cur =3D hs.createElement('img', { src: hs.graphicsDir + =
hs.restoreCursor });
},


init : function () {
	if (!hs.container) {
		hs.container =3D hs.createElement('div',=20
			null,=20
			{ position: 'absolute', left: 0, top: 0, width: '100%', zIndex: =
hs.zIndexCounter },=20
			document.body,
			true
		);
		hs.loading =3D hs.createElement('a', {
				className: 'highslide-loading',
				title: hs.lang.loadingTitle,
				innerHTML: hs.lang.loadingText,
				href: 'javascript:;'
			}, {
				position: 'absolute',
				top: '-9999px',
				opacity: hs.loadingOpacity,
				zIndex: 1
			}, hs.container
		);
		hs.garbageBin =3D hs.createElement('div', null, { display: 'none' }, =
hs.container);
		hs.clearing =3D hs.createElement('div', null,=20
			{ clear: 'both', paddingTop: '1px' }, null, true);
	=09
		// http://www.robertpenner.com/easing/=20
		Math.linearTween =3D function (t, b, c, d) {
			return c*t/d + b;
		};
		Math.easeInQuad =3D function (t, b, c, d) {
			return c*(t/=3Dd)*t + b;
		};
		Math.easeInOutQuad =3D function (t, b, c, d) {
			if ((t/=3Dd/2) < 1) return c/2*t*t + b;
			return -c/2 * ((--t)*(t-2) - 1) + b;
		};=0A=
		for (var x in hs.langDefaults) {
			if (typeof hs[x] !=3D 'undefined') hs.lang[x] =3D hs[x];
			else if (typeof hs.langDefaults[x] !=3D 'undefined') hs.lang[x] =3D =
hs.langDefaults[x];
		}
		hs.ie6SSL =3D (hs.ie && hs.ieVersion() <=3D 6 && location.protocol =
=3D=3D 'https:');
		hs.fireEvent(this, 'onActivate');
	}
},
domReady : function() {
	hs.isDomReady =3D true;
	if (hs.onDomReady) hs.onDomReady();
},

updateAnchors : function() {
	var els =3D document.getElementsByTagName('*'), all =3D [], images =3D =
[], htmls =3D [],groups =3D {}, re;
	for (var i =3D 0; i < els.length; i++) {
		re =3D hs.isHsAnchor(els[i]);
		if (re) {
			hs.push(all, els[i]);=0A=
			if (re[0] =3D=3D 'hs.expand') hs.push(images, els[i]);=0A=
			else if (re[0] =3D=3D 'hs.htmlExpand') hs.push(htmls, els[i]);=0A=
			var g =3D hs.getParam(els[i], 'slideshowGroup') || 'none';
			if (!groups[g]) groups[g] =3D [];
			hs.push(groups[g], els[i]);
		}
	}
	hs.anchors =3D { all: all, groups: groups, images: images, htmls: htmls =
};
=09
	return hs.anchors;
},

getAnchors : function() {
	return hs.anchors || hs.updateAnchors();
},


fade : function (el, o, oFinal, dur, i, dir) {
	if (typeof i =3D=3D 'undefined') { // new fader
		if (typeof dur !=3D 'number') dur =3D 250;
		if (dur < 25) { // instant
			hs.setStyles( el, { opacity: oFinal	});=0A=
			return;
		}
		i =3D hs.faders.length;
		dir =3D oFinal > o ? 1 : -1;
		var step =3D (25 / (dur - dur % 25)) * Math.abs(o - oFinal);
	}
	o =3D parseFloat(o);
	var skip =3D (el.fade =3D=3D=3D 0 || el.fade =3D=3D=3D false || =
(el.fade =3D=3D 2 && hs.ie));
	el.style.visibility =3D ((skip ? oFinal : o) <=3D 0) ? 'hidden' : =
'visible';
=09
	if (skip || o < 0 || (dir =3D=3D 1 && o > oFinal)) return;
=09
	if (el.fading && el.fading.i !=3D i) { // reverse
		clearTimeout(hs.faders[el.fading.i]);
		o =3D el.fading.o;
	}
	el.fading =3D {i: i, o: o, step: (step || el.fading.step)};
	el.style.visibility =3D (o <=3D 0) ? 'hidden' : 'visible';
	hs.setStyles(el, { opacity: o });
	hs.faders[i] =3D setTimeout(function() {
		hs.fade(el, o + el.fading.step * dir, oFinal, null, i, dir);
	}, 25);
},

close : function(el) {
	var exp =3D hs.getExpander(el);
	if (exp) exp.close();
	return false;
}
}; // end hs object


//-----------------------------------------------------------------------=
------
hs.Outline =3D  function (outlineType, onLoad) {
	this.onLoad =3D onLoad;
	this.outlineType =3D outlineType;
	var v =3D hs.ieVersion(), tr;
=09
	this.hasAlphaImageLoader =3D hs.ie && v >=3D 5.5 && v < 7;
	if (!outlineType) {
		if (onLoad) onLoad();
		return;
	}
=09
	hs.init();
	this.table =3D hs.createElement(
		'table', { cellSpacing: 0 },
		{
			visibility: 'hidden',
			position: 'absolute',
			borderCollapse: 'collapse'
		},
		hs.container,
		true
	);
	var tbody =3D hs.createElement('tbody', null, null, this.table, 1);
=09
	this.td =3D [];
	for (var i =3D 0; i <=3D 8; i++) {
		if (i % 3 =3D=3D 0) tr =3D hs.createElement('tr', null, { height: =
'auto' }, tbody, true);
		this.td[i] =3D hs.createElement('td', null, null, tr, true);
		var style =3D i !=3D 4 ? { lineHeight: 0, fontSize: 0} : { position : =
'relative' };
		hs.setStyles(this.td[i], style);
	}
	this.td[4].className =3D outlineType;
=09
	this.preloadGraphic();=20
};

hs.Outline.prototype =3D {
preloadGraphic : function () {
	var src =3D hs.graphicsDir + (hs.outlinesDir || "outlines/")+ =
this.outlineType +".png";
			=09
	var appendTo =3D hs.safari ? hs.container : null;
	this.graphic =3D hs.createElement('img', null, { position: 'absolute', =
left: '-9999px',=20
		top: '-9999px' }, appendTo, true); // for onload trigger
=09
	var pThis =3D this;
	this.graphic.onload =3D function() { pThis.onGraphicLoad(); };
=09
	this.graphic.src =3D src;
},

onGraphicLoad : function () {
	var o =3D this.offset =3D this.graphic.width / 4,
		pos =3D [[0,0],[0,-4],[-2,0],[0,-8],0,[-2,-8],[0,-2],[0,-6],[-2,-2]],
		dim =3D { height: (2*o) +'px', width: (2*o) +'px' };
	hs.discardElement(this.graphic);
	for (var i =3D 0; i <=3D 8; i++) {
		if (pos[i]) {
			if (this.hasAlphaImageLoader) {
				var w =3D (i =3D=3D 1 || i =3D=3D 7) ? '100%' : this.graphic.width =
+'px';
				var div =3D hs.createElement('div', null, { width: '100%', height: =
'100%', position: 'relative', overflow: 'hidden'}, this.td[i], true);
				hs.createElement ('div', null, {=20
						filter: =
"progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=3Dscale,=
 src=3D'"+ this.graphic.src + "')",=20
						position: 'absolute',
						width: w,=20
						height: this.graphic.height +'px',
						left: (pos[i][0]*o)+'px',
						top: (pos[i][1]*o)+'px'
					},=20
				div,
				true);
			} else {
				hs.setStyles(this.td[i], { background: 'url('+ this.graphic.src +') =
'+ (pos[i][0]*o)+'px '+(pos[i][1]*o)+'px'});
			}
		=09
			if (window.opera && (i =3D=3D 3 || i =3D=3D5))=20
				hs.createElement('div', null, dim, this.td[i], true);
		=09
			hs.setStyles (this.td[i], dim);
		}
	}
	if (hs.pendingOutlines[this.outlineType]) =
hs.pendingOutlines[this.outlineType].destroy();
	hs.pendingOutlines[this.outlineType] =3D this;
	if (this.onLoad) this.onLoad();
},
=09
setPosition : function (exp, pos, vis) {
	pos =3D pos || {
		x: exp.x.min,
		y: exp.y.min,
		w: exp.x.span + exp.x.p1 + exp.x.p2,
		h: exp.y.span + exp.y.p1 + exp.y.p2
	};
	if (vis) this.table.style.visibility =3D (pos.h >=3D 4 * this.offset)=20
		? 'visible' : 'hidden';
	hs.setStyles(this.table, {
		left: (pos.x - this.offset) +'px',
		top: (pos.y - this.offset) +'px',
		width: (pos.w + 2 * (exp.x.cb + this.offset)) +'px'
	});
=09
	pos.w +=3D 2 * (exp.x.cb - this.offset);
	pos.h +=3D + 2 * (exp.y.cb - this.offset);
	hs.setStyles (this.td[4], {
		width: pos.w >=3D 0 ? pos.w +'px' : 0,
		height: pos.h >=3D 0 ? pos.h +'px' : 0
	});
	if (this.hasAlphaImageLoader) this.td[3].style.height=20
		=3D this.td[5].style.height =3D this.td[4].style.height;
},
=09
destroy : function(hide) {
	if (hide) this.table.style.visibility =3D 'hidden';
	else hs.discardElement(this.table);
}
};


//-----------------------------------------------------------------------=
------
// The expander object
hs.Expander =3D function(a, params, custom, contentType) {
	if (document.readyState && hs.ie && !hs.isDomReady) {
		hs.onDomReady =3D function() {
			new hs.Expander(a, params, custom, contentType);
		};
		return;
	}=20
	this.a =3D a;
	this.custom =3D custom;
	this.contentType =3D contentType || 'image';
	this.isHtml =3D (contentType =3D=3D 'html');
	this.isImage =3D !this.isHtml;
=09
	hs.continuePreloading =3D false;
	this.overlays =3D [];
	this.last =3D hs.last;
	hs.last =3D null;
	hs.init();
	var key =3D this.key =3D hs.expanders.length;
	// override inline parameters
	for (var i =3D 0; i < hs.overrides.length; i++) {
		var name =3D hs.overrides[i];
		this[name] =3D params && typeof params[name] !=3D 'undefined' ?
			params[name] : hs[name];
	}
	if (!this.src) this.src =3D a.href;
	// get thumb
	var el =3D (params && params.thumbnailId) ? hs.$(params.thumbnailId) : =
a;
	el =3D this.thumb =3D el.getElementsByTagName('img')[0] || el;
	this.thumbsUserSetId =3D el.id || a.id;
	if (!hs.fireEvent(this, 'onInit')) return true;=0A=
=09
	// check if already open
	for (var i =3D 0; i < hs.expanders.length; i++) {
		if (hs.expanders[i] && hs.expanders[i].a =3D=3D a=20
			&& !(this.last && this.transitions[1] =3D=3D 'crossfade')) {
			hs.expanders[i].focus();
			return false;
		}
	}=09
	// cancel other
	for (var i =3D 0; i < hs.expanders.length; i++) {
		if (hs.expanders[i] && hs.expanders[i].thumb !=3D el && =
!hs.expanders[i].onLoadStarted) {
			hs.expanders[i].cancelLoading();
		}
	}
	hs.expanders[this.key] =3D this;
	if (!hs.allowMultipleInstances) {
		if (hs.expanders[key-1]) hs.expanders[key-1].close();
		if (typeof hs.focusKey !=3D 'undefined' && hs.expanders[hs.focusKey])
			hs.expanders[hs.focusKey].close();=0A=
	}
=09
	var pos =3D hs.getPosition(el);
=09
	// initiate metrics
	var x =3D this.x =3D {};
	x.t =3D el.width ? parseInt(el.width) : el.offsetWidth;=0A=
	x.tpos =3D pos.x;=0A=
	x.tb =3D (el.offsetWidth - x.t) / 2;=0A=
	var y =3D this.y =3D {};
	y.t =3D el.height ? parseInt(el.height) : el.offsetHeight;
	y.tpos =3D pos.y;
	y.tb =3D (el.offsetHeight - y.t) / 2;
	x.p1 =3D x.p2 =3D y.p1 =3D y.p2 =3D 0;=0A=
	if (/area/i.test(el.tagName)) this.getImageMapAreaCorrection(el);
=09
	// instanciate the wrapper
	this.wrapper =3D hs.createElement(
		'div', {
			id: 'highslide-wrapper-'+ this.key,
			className: this.wrapperClassName
		}, {
			visibility: 'hidden',
			position: 'absolute',
			zIndex: hs.zIndexCounter++
		}, null, true );
=09
	this.wrapper.onmouseover =3D this.wrapper.onmouseout =3D =
hs.wrapperMouseHandler;
	if (this.contentType =3D=3D 'image' && this.outlineWhileAnimating =
=3D=3D 2)
		this.outlineWhileAnimating =3D 0;
=09
	// get the outline
	if (!this.outlineType=20
		|| (this.last && this.isImage && this.transitions[1] =3D=3D =
'crossfade')) {
=09
		this[this.contentType +'Create']();
=09
	} else if (hs.pendingOutlines[this.outlineType]) {
		this.connectOutline();
		this[this.contentType +'Create']();
=09
	} else {
		this.showLoading();
		var exp =3D this;
		new hs.Outline(this.outlineType,=20
			function () {=20
				exp.connectOutline();
				exp[exp.contentType +'Create']();
			}=20
		);
	}
	return true;=0A=
};

hs.Expander.prototype =3D {

connectOutline : function(x, y) {
	var o =3D this.outline =3D hs.pendingOutlines[this.outlineType];
	o.table.style.zIndex =3D this.wrapper.style.zIndex;
	hs.pendingOutlines[this.outlineType] =3D null;
},

showLoading : function() {
	if (this.onLoadStarted || this.loading) return;
=09
	this.loading =3D hs.loading;
	var exp =3D this;
	this.loading.onclick =3D function() {
		exp.cancelLoading();
	};
=09
=09
	if (!hs.fireEvent(this, 'onShowLoading')) return;
	var exp =3D this,=20
		l =3D (this.x.tpos + this.x.tb=20
			+ (this.x.t - this.loading.offsetWidth) / 2) +'px',
		t =3D (this.y.tpos=20
			+ (this.y.t - this.loading.offsetHeight) / 2) +'px';=0A=
	if (!tgt && this.last && this.transitions[1] =3D=3D 'crossfade')=20
		var tgt =3D this.last;=20
	if (tgt) {
		l =3D (tgt.x.min + tgt.x.cb + tgt.x.p1
			+ (tgt.x.span - this.loading.offsetWidth) / 2) +'px';
		t =3D (tgt.y.min + tgt.y.cb + tgt.y.p1
			+ (tgt.y.span - this.loading.offsetHeight) / 2) +'px';
		this.loading.style.zIndex =3D hs.zIndexCounter++;
	}
	setTimeout(function () {=20
		if (exp.loading) hs.setStyles(exp.loading, { left: l, top: t })}
	, 100);
},

imageCreate : function() {
	var exp =3D this;
=09
	var img =3D document.createElement('img');
    this.content =3D img;
    img.onload =3D function () {
    	if (hs.expanders[exp.key]) exp.contentLoaded();=20
	};
    if (hs.blockRightClick) img.oncontextmenu =3D function() { return =
false; };
    img.className =3D 'highslide-image';
    hs.setStyles(img, {
    	visibility: 'hidden',=0A=
    	display: 'block',
    	position: 'absolute',
		maxWidth: '9999px',
		zIndex: 3
	});
    img.title =3D hs.lang.restoreTitle;
    if (hs.safari) hs.container.appendChild(img);
    if (hs.ie && hs.flushImgSize) img.src =3D null;
	img.src =3D this.src;
=09
	this.showLoading();
},

htmlCreate : function () {
	if (!hs.fireEvent(this, 'onBeforeGetContent')) return;
=09
	this.content =3D hs.getCacheBinding(this.a);
	if (!this.content)=20
		this.content =3D hs.getNode(this.contentId);
	if (!this.content)=20
		this.content =3D hs.getSelfRendered();=0A=
	this.getInline(['maincontent']);
	if (this.maincontent) {
		var body =3D hs.getElementByClass(this.content, 'div', =
'highslide-body');
		if (body) body.appendChild(this.maincontent);
		this.maincontent.style.display =3D 'block';
	}
	hs.fireEvent(this, 'onAfterGetContent');
=09
	this.innerContent =3D this.content;
=09
	if (/(swf|iframe)/.test(this.objectType)) =
this.setObjContainerSize(this.innerContent);
=09
	// the content tree
	hs.container.appendChild(this.wrapper);
	hs.setStyles( this.wrapper, {=20
		position: 'static',
		padding: '0 '+ hs.marginRight +'px 0 '+ hs.marginLeft +'px'
	});
	this.content =3D hs.createElement(
    	'div', {
    		className: 'highslide-html'=20
    	}, {
			position: 'relative',
			zIndex: 3,
			overflow: 'hidden'
		},
		this.wrapper
	);
	this.mediumContent =3D hs.createElement('div', null, null, =
this.content, 1);
	this.mediumContent.appendChild(this.innerContent);
=09
	hs.setStyles (this.innerContent, { position: 'relative', display: =
'block' });
	if (this.width) this.innerContent.style.width =3D this.width+'px';
	if (this.height) this.innerContent.style.height =3D this.height+'px';
	if (this.innerContent.offsetWidth < this.minWidth)
		this.innerContent.style.width =3D this.minWidth +'px';
=09
   =20
	if (this.objectType =3D=3D 'ajax' && !hs.getCacheBinding(this.a)) {
		this.showLoading();
    	var ajax =3D new hs.Ajax(this.a, this.innerContent);
    	var exp =3D this;
    	ajax.onLoad =3D function () {	if (hs.expanders[exp.key]) =
exp.contentLoaded(); };
    	ajax.onError =3D function () { location.href =3D exp.src; };
    	ajax.run();
	}
    else
   =20
    if (this.objectType =3D=3D 'iframe' && this.objectLoadTime =3D=3D =
'before') {
		this.writeExtendedContent();
	}
    else
    	this.contentLoaded();
},

contentLoaded : function() {
	try {=09
		if (!this.content) return;
		this.content.onload =3D null;=0A=
		if (this.onLoadStarted) return;=0A=
		else this.onLoadStarted =3D true;
	=09
		var x =3D this.x, y =3D this.y;
	=09
		if (this.loading) {
			hs.setStyles(this.loading, { top: '-9999px' });
			this.loading =3D null;
			hs.fireEvent(this, 'onHideLoading');
		}
		this.marginBottom =3D hs.marginBottom;
		if (this.isImage) {=09
			x.full =3D this.content.width;
			y.full =3D this.content.height;
		=09
			hs.setStyles(this.content, {
				width: this.x.t +'px',
				height: this.y.t +'px'
			});
		} else if (this.htmlGetSize) this.htmlGetSize();
	=09
		this.wrapper.appendChild(this.content);=0A=
		//if (hs.safari && this.isHtml) this.content.style.position =3D =
'absolute';=20
		hs.setStyles (this.wrapper, {
			left: this.x.tpos +'px',
			top: this.y.tpos +'px'
		});
		hs.container.appendChild(this.wrapper);
	=09
		// correct for borders
		x.cb =3D (this.content.offsetWidth - this.x.t) / 2;=0A=
		y.cb =3D (this.content.offsetHeight - this.y.t) / 2;
		var modMarginRight =3D hs.marginRight + 2 * x.cb;
		this.marginBottom +=3D 2 * y.cb;
	=09
	=09
		this.initSlideshow();=0A=
		this.getOverlays();
	=09
		var ratio =3D x.full / y.full;
		var minWidth =3D this.allowSizeReduction=20
			? this.minWidth : x.full;
		var minHeight =3D this.allowSizeReduction=20
			? this.minHeight : y.full;
	=09
		var justify =3D { x: 'auto', y: 'auto' };
	=09
		if (this.align =3D=3D 'center') {
			justify.x =3D 'center';
			justify.y =3D 'center';
		} else {
			if (this.anchor.match(/^top/)) justify.y =3D null;
			if (this.anchor.match(/right$/)) justify.x =3D 'max';
			if (this.anchor.match(/^bottom/)) justify.y =3D 'max';
			if (this.anchor.match(/left$/)) justify.x =3D null;
		}
	=09
		var page =3D hs.getPageSize();
		// justify
		x.min =3D x.tpos - x.cb + x.tb;
		x.span =3D Math.min(x.full, this.maxWidth || x.full);
		x.minSpan =3D Math.min(x.full, minWidth);
		x.justify =3D justify.x;
		x.target =3D this.targetX;
		x.marginMin =3D hs.marginLeft;=20
		x.marginMax =3D modMarginRight;
		x.scroll =3D page.scrollLeft;
		x.clientSpan =3D page.width;
		this.justify(x);
	=09
		y.min =3D y.tpos - y.cb + y.tb;
		y.span =3D Math.min(y.full, this.maxHeight || y.full);
		y.minSpan =3D Math.min(y.full, minHeight);
		y.justify =3D justify.y;
		y.target =3D this.targetY;
		y.marginMin =3D hs.marginTop;=20
		y.marginMax =3D this.marginBottom;=20
		y.scroll =3D page.scrollTop;
		y.clientSpan =3D page.height;
		this.justify(y);
		if (this.isHtml) this.htmlSizeOperations();
		if (this.overlayBox) this.sizeOverlayBox(0, 1);
	=09
	=09
		if (this.allowSizeReduction) {
			if (this.isImage)
				this.correctRatio(ratio);
			else this.fitOverlayBox();
			var ss =3D this.slideshow;
		=09
			if (ss && this.last && ss.fixedControls && ss.useControls) {
				var pos =3D ss.overlayOptions.position || '';
				for (var dim in hs.oPos) for (var i =3D 0; i < 5; i++) {
					if (pos.match(hs.oPos[dim][i]))
						this[dim].min =3D this.last[dim].min=20
							+ (this.last[dim].p1 - this[dim].p1)
							+ (this.last[dim].span - this[dim].span) * [0, 0, .5, 1, 1][i] =20
				}
			}
		=09
			if (this.isImage && this.x.full > this.x.span) {
				this.createFullExpand();
				if (this.overlays.length =3D=3D 1) this.sizeOverlayBox();=09
			}
		}
	=09
		this.show();
	=09
	} catch (e) {
		window.location.href =3D this.src;
	}
},


setObjContainerSize : function(parent, auto) {
	var c =3D hs.getElementByClass(parent, 'DIV', 'highslide-body');
=09
	if (/(iframe|swf)/.test(this.objectType)) {
		if (this.objectWidth) c.style.width =3D this.objectWidth +'px';
		if (this.objectHeight) c.style.height =3D this.objectHeight +'px';
	}
},

writeExtendedContent : function () {
	if (this.hasExtendedContent) return;
	var exp =3D this;
	this.body =3D hs.getElementByClass(this.innerContent, 'DIV', =
'highslide-body');
	if (this.objectType =3D=3D 'iframe') {
		this.showLoading();
		var ruler =3D hs.clearing.cloneNode(1);
		this.body.appendChild(ruler);
		this.newWidth =3D this.innerContent.offsetWidth;
		if (!this.objectWidth) this.objectWidth =3D ruler.offsetWidth;
		var hDiff =3D this.innerContent.offsetHeight - this.body.offsetHeight,
			h =3D this.objectHeight || (hs.getPageSize()).height - hDiff - =
hs.marginTop - hs.marginBottom,
			onload =3D this.objectLoadTime =3D=3D 'before' ?=20
				' onload=3D"if (hs.expanders['+ this.key +']) hs.expanders['+ =
this.key +'].contentLoaded()" ' : '';
	=09
		this.body.innerHTML +=3D '<iframe name=3D"hs'+ (new Date()).getTime() =
+'" frameborder=3D"0" key=3D"'+ this.key +'" '
			+' allowtransparency=3D"true" style=3D"width:'+ this.objectWidth =
+'px; height:'+ h +'px" '
			+ onload +' src=3D"'+ this.src +'"></iframe>';
		this.ruler =3D this.body.getElementsByTagName('div')[0];
		this.iframe =3D this.body.getElementsByTagName('iframe')[0];
	=09
		if (this.objectLoadTime =3D=3D 'after') this.correctIframeSize();
	=09
	}
	if (this.objectType =3D=3D 'swf') {
		this.body.id =3D this.body.id || 'hs-flash-id-' + this.key;
		var a =3D this.swfOptions;
		if (typeof a.params.wmode =3D=3D 'undefined') a.params.wmode =3D =
'transparent';
		if (swfobject) swfobject.embedSWF(this.src, this.body.id, =
this.objectWidth, this.objectHeight,=20
			a.version || '7', a.expressInstallSwfurl, a.flashvars, a.params, =
a.attributes);=09
	}
	this.hasExtendedContent =3D true;
},
htmlGetSize : function() {
	if (this.iframe && !this.objectHeight) { // loadtime before
		var h;
		try {
			var doc =3D this.iframe.contentDocument || =
this.iframe.contentWindow.document;
			var clearing =3D doc.createElement('div');
			clearing.style.clear =3D 'both';
			doc.body.appendChild(clearing);
			h =3D clearing.offsetTop;
			if (hs.ie) h +=3D parseInt(doc.body.currentStyle.marginTop)=20
				+ parseInt(doc.body.currentStyle.marginBottom) - 1;

		} catch (e) { // other domain
			h =3D 300;
		}
		this.iframe.style.height =3D this.body.style.height =3D h +'px';
	}
	this.innerContent.appendChild(hs.clearing);
	if (!this.x.full) this.x.full =3D this.innerContent.offsetWidth;
    this.y.full =3D this.innerContent.offsetHeight;
    this.innerContent.removeChild(hs.clearing);
    if (hs.ie && this.newHeight > =
parseInt(this.innerContent.currentStyle.height)) { // ie css bug
		this.newHeight =3D parseInt(this.innerContent.currentStyle.height);
	}=0A=
	hs.setStyles( this.wrapper, { position: 'absolute',	padding: '0'});
	hs.setStyles( this.content, { width: this.x.t +'px',	height: this.y.t =
+'px'});
},

correctIframeSize : function () {
	var wDiff =3D this.innerContent.offsetWidth - this.ruler.offsetWidth;
	if (wDiff < 0) wDiff =3D 0;
=09
	var hDiff =3D this.innerContent.offsetHeight - this.body.offsetHeight;
=09
    hs.setStyles(this.iframe, { width: (this.x.span - wDiff) +'px',=20
		height: (this.y.span - hDiff) +'px' });
    hs.setStyles(this.body, { width: this.iframe.style.width,=20
    	height: this.iframe.style.height });
    =09
    this.scrollingContent =3D this.iframe;
    this.scrollerDiv =3D this.scrollingContent;
},
htmlSizeOperations : function () {
=09
	this.setObjContainerSize(this.innerContent);
=09
=09
	if (this.objectType =3D=3D 'swf' && this.objectLoadTime =3D=3D =
'before') this.writeExtendedContent();=09
=09
    // handle minimum size
    if (this.x.span < this.x.full && !this.allowWidthReduction) =
this.x.span =3D this.x.full;
    if (this.y.span < this.y.full && !this.allowHeightReduction) =
this.y.span =3D this.y.full;
    this.scrollerDiv =3D this.innerContent;
    hs.setStyles(this.mediumContent, {=20
		width: this.x.span +'px',
		position: 'relative',
		left: (this.x.min - this.x.tpos) +'px',
		top: (this.y.min - this.y.tpos) +'px'
	});
    hs.setStyles(this.innerContent, {=20
    	border: 'none',=20
    	width: 'auto',=20
    	height: 'auto'
    });
	var node =3D hs.getElementByClass(this.innerContent, 'DIV', =
'highslide-body');
    if (node && !/(iframe|swf)/.test(this.objectType)) {
    	var cNode =3D node; // wrap to get true size
    	node =3D hs.createElement(cNode.nodeName, null, {overflow: =
'hidden'}, null, true);
    	cNode.parentNode.insertBefore(node, cNode);
    	node.appendChild(hs.clearing); // IE6
    	node.appendChild(cNode);
    =09
    	var wDiff =3D this.innerContent.offsetWidth - node.offsetWidth;
    	var hDiff =3D this.innerContent.offsetHeight - node.offsetHeight;
    	node.removeChild(hs.clearing);
    =09
    	var kdeBugCorr =3D hs.safari || navigator.vendor =3D=3D 'KDE' ? 1 : =
0; // KDE repainting bug
    	hs.setStyles(node, {=20
    			width: (this.x.span - wDiff - kdeBugCorr) +'px',=20
    			height: (this.y.span - hDiff) +'px',
    			overflow: 'auto',=20
    			position: 'relative'=20
    		}=20
    	);
		if (kdeBugCorr && cNode.offsetHeight > node.offsetHeight)	{
    		node.style.width =3D (parseInt(node.style.width) + kdeBugCorr) + =
'px';
		}
    	this.scrollingContent =3D node;
    	this.scrollerDiv =3D this.scrollingContent;
	}
    if (this.iframe && this.objectLoadTime =3D=3D 'before') =
this.correctIframeSize();
    if (!this.scrollingContent && this.y.span < =
this.mediumContent.offsetHeight) this.scrollerDiv =3D this.content;
=09
	if (this.scrollerDiv =3D=3D this.content && !this.allowWidthReduction =
&& !/(iframe|swf)/.test(this.objectType)) {
		this.x.span +=3D 17; // room for scrollbars
	}
	if (this.scrollerDiv && this.scrollerDiv.offsetHeight > =
this.scrollerDiv.parentNode.offsetHeight) {
		setTimeout("try { hs.expanders["+ this.key =
+"].scrollerDiv.style.overflow =3D 'auto'; } catch(e) {}",
			 hs.expandDuration);
	}
},

getImageMapAreaCorrection : function(area) {
	var c =3D area.coords.split(',');
	for (var i =3D 0; i < c.length; i++) c[i] =3D parseInt(c[i]);
=09
	if (area.shape.toLowerCase() =3D=3D 'circle') {
		this.x.tpos +=3D c[0] - c[2];
		this.y.tpos +=3D c[1] - c[2];
		this.x.t =3D this.y.t =3D 2 * c[2];
	} else {=0A=
		var maxX, maxY, minX =3D maxX =3D c[0], minY =3D maxY =3D c[1];
		for (var i =3D 0; i < c.length; i++) {
			if (i % 2 =3D=3D 0) {
				minX =3D Math.min(minX, c[i]);
				maxX =3D Math.max(maxX, c[i]);
			} else {
				minY =3D Math.min(minY, c[i]);
				maxY =3D Math.max(maxY, c[i]);
			}
		}
		this.x.tpos +=3D minX;
		this.x.t =3D maxX - minX;
		this.y.tpos +=3D minY;
		this.y.t =3D maxY - minY;
	}
},
justify : function (p, moveOnly) {
	var tgt, dim =3D p =3D=3D this.x ? 'x' : 'y';
=09
=09
	if (p.target && p.target.match(/ /)) {
		tgt =3D p.target.split(' ');
		p.target =3D tgt[0];
	}
	if (p.target && hs.$(p.target)) {
		p.min =3D hs.getPosition(hs.$(p.target))[dim];
		if (tgt && tgt[1] && tgt[1].match(/^[-]?[0-9]+px$/)) p.min +=3D =
parseInt(tgt[1]);
	=09
	} else if (p.justify =3D=3D 'auto' || p.justify =3D=3D 'center') {
=09
		var hasMovedMin =3D false;
	=09
		var allowReduce =3D true;=0A=
		if (p.justify =3D=3D 'center') p.min =3D Math.round(p.scroll + =
(p.clientSpan - p.span - p.marginMax - p.p1 - p.p2) / 2);
		else
			p.min =3D Math.round(p.min - ((p.span + p.p1 + p.p2 - p.t) / 2));=0A=
		if (p.min < p.scroll + p.marginMin) {
			p.min =3D p.scroll + p.marginMin;
			hasMovedMin =3D true;	=09
		}=0A=
		if (!moveOnly && p.span < p.minSpan) {
			p.span =3D p.minSpan;
			allowReduce =3D false;
		}=0A=
		if (p.min + p.span + p.p1 + p.p2 > p.scroll + p.clientSpan - =
p.marginMax) {=0A=
			if (!moveOnly && hasMovedMin && allowReduce) {
				p.span =3D p.clientSpan - p.marginMin - p.marginMax; // can't expand =
more=0A=
			} else if (p.span + p.p1 + p.p2 < p.clientSpan - p.marginMin - =
p.marginMax) { // move newTop up
				p.min =3D p.scroll + p.clientSpan - p.span - p.marginMin - =
p.marginMax - p.p1 - p.p2;=0A=
			} else { // image larger than viewport
				p.min =3D p.scroll + p.marginMin;
				if (!moveOnly && allowReduce) p.span =3D p.clientSpan - p.marginMin =
- p.marginMax;
			}
		=09
		}=0A=
	=09
		if (!moveOnly && p.span < p.minSpan) {
			p.span =3D p.minSpan;
			allowReduce =3D false;
		}
	=09
=09
	} else if (p.justify =3D=3D 'max') {
		p.min =3D Math.floor(p.min - p.span + p.t);
	}
=09
	=09
	if (p.min < p.marginMin) {
		var tmpMin =3D p.min;
		p.min =3D p.marginMin;=20
	=09
		if (allowReduce && !moveOnly) p.span =3D p.span - (p.min - tmpMin);
	=09
	}
},

correctRatio : function(ratio) {
	=09
	var x =3D this.x, y =3D this.y;
	var changed =3D false;
	if (x.span / y.span > ratio) { // width greater
		x.span =3D y.span * ratio;
		if (x.span < x.minSpan) { // below minWidth
			x.span =3D x.minSpan;
			y.span =3D x.span / ratio;
		}
		changed =3D true;
=09
	} else if (x.span / y.span < ratio) { // height greater
		var tmpHeight =3D y.span;
		y.span =3D x.span / ratio;
		changed =3D true;
	}
	this.fitOverlayBox(ratio);
=09
	if (changed) {
		x.min =3D x.tpos - x.cb + x.tb;
		x.minSpan =3D x.span;
		this.justify(x, true);
=09
		y.min =3D y.tpos - y.cb + y.tb;
		y.minSpan =3D y.span;
		this.justify(y, true);
		if (this.overlayBox) this.sizeOverlayBox();
	}
},
fitOverlayBox : function(ratio) {
	var x =3D this.x, y =3D this.y;=0A=
	if (this.overlayBox) {
		while (y.span > this.minHeight && x.span > this.minWidth=20
				&& y.marginMin + y.p1 + y.span + y.p2 + y.marginMax > y.clientSpan) =
{
			y.span -=3D 10;
			if (ratio) x.span =3D y.span * ratio;
			this.sizeOverlayBox(0, 1);
		}
	}
},

reflow : function () {
	hs.setStyles(this.scrollerDiv, { height: 'auto', width: 'auto' });
	this.x.span =3D this.innerContent.offsetWidth;
	this.y.span =3D this.innerContent.offsetHeight;
	var size =3D { width: this.x.span +'px', height: this.y.span +'px' };
	hs.setStyles(this.content, size);
	if (this.outline) this.outline.setPosition(this);
},

show : function () {
=09
	// Selectbox bug
	var imgPos =3D {x: this.x.min - 20, y: this.y.min - 20, w: this.x.span =
+ 40,=20
		h: this.y.span + 40 };
	hs.hideSelects =3D (hs.ie && hs.ieVersion() < 7);
	if (hs.hideSelects) this.showHideElements('SELECT', 'hidden', imgPos);
	// Iframes bug
	hs.hideIframes =3D ((window.opera && navigator.appVersion < 9) || =
navigator.vendor =3D=3D 'KDE'=20
		|| (hs.ie && hs.ieVersion() < 5.5));
	if (hs.hideIframes) this.showHideElements('IFRAME', 'hidden', imgPos);
	// Scrollbars bug
	if (hs.geckoMac) this.showHideElements('*', 'hidden', imgPos);=20
=09
=09
	hs.fireEvent(this, 'onBeforeExpand');
	=09
	// Apply size change
	this.changeSize(
		1,
		{=20
			xmin: this.x.tpos + this.x.tb - this.x.cb,
			ymin: this.y.tpos + this.y.tb - this.y.cb,
			xspan: this.x.t,
			yspan: this.y.t,
			xp1: 0,
			xp2: 0,
			yp1: 0,
			yp2: 0,
			o: hs.outlineStartOffset
		},
		{
			xmin: this.x.min,
			ymin: this.y.min,
			xspan: this.x.span,
			yspan: this.y.span,
			xp1: this.x.p1,
			yp1: this.y.p1,
			xp2: this.x.p2,
			yp2: this.y.p2,
			o: this.outline ? this.outline.offset : 0
		},
		hs.expandDuration,
		hs.expandSteps
	);
},

changeSize : function(up, from, to, dur, steps) {
	// transition
	var trans =3D this.transitions,
	other =3D up ? (this.last ? this.last.a : null) : hs.upcoming,
	t =3D (trans[1] && other=20
			&& hs.getParam(other, 'transitions')[1] =3D=3D trans[1]) ?
		trans[1] : trans[0];=0A=
	if (up && this.isHtml && trans[1] =3D=3D 'crossfade') t =3D trans[1] =
=3D 'fade';
=09
	if (this[t] && t !=3D 'expand') {
		this[t](up, from, to);=20
		return;
	}
=09
	if (up) hs.setStyles(this.wrapper, { opacity: 1 });
=09
	if (this.outline && !this.outlineWhileAnimating) {
		if (up) this.outline.setPosition(this);
		else this.outline.destroy(
				(this.isHtml && this.preserveContent));
	}
=09
=09
	if (!up && this.overlayBox) {
		if (this.isHtml && this.preserveContent) {
			this.overlayBox.style.top =3D '-9999px';
			hs.container.appendChild(this.overlayBox);
		} else
		hs.discardElement(this.overlayBox);
	=09
	}
	if (this.fadeInOut) {
		from.op =3D up ? 0 : 1;
		to.op =3D up;
	}
	var t,
	exp =3D this,
	easing =3D Math[this.easing] || Math.easeInQuad;
	if (!up) easing =3D Math[this.easingClose] || easing;
=09
	for (var i =3D 1; i <=3D steps; i++) {
		t =3D Math.round(i * (dur / steps));
	=09
		(function(){
			var pI =3D i, size =3D {};
		=09
			for (var x in from) {
				size[x] =3D easing(t, from[x], to[x] - from[x], dur);
				if (!/^op$/.test(x)) size[x] =3D Math.round(size[x]);=0A=
			}
			setTimeout ( function() {
				if (up && pI =3D=3D 1) {
					exp.content.style.visibility =3D 'visible';
					exp.a.className +=3D ' highslide-active-anchor';
				}
				exp.setSize(size);
			}, t);			=09
		})();
	}
=09
	if (up) {=20
		=09
		setTimeout(function() {
			if (exp.outline) exp.outline.table.style.visibility =3D "visible";
		}, t);
		setTimeout(function() {
			exp.afterExpand();
		}, t + 50);
	}
	else setTimeout(function() { exp.afterClose(); }, t);
},

setSize : function (to) {
	try {	=09
		if (to.op) hs.setStyles(this.wrapper, { opacity: to.op });
		hs.setStyles ( this.wrapper, {
			width : (to.xspan +to.xp1 + to.xp2 +
				2 * this.x.cb) +'px',
			height : (to.yspan +to.yp1 + to.yp2 +
				2 * this.y.cb) +'px',
			left: to.xmin +'px',
			top: to.ymin +'px'
		});
		hs.setStyles(this.content, {
			top: to.yp1 +'px',
			left: to.xp1 +'px',
			width: to.xspan +'px',
			height: to.yspan +'px'
		});=0A=
		if (this.isHtml) {
			hs.setStyles(this.mediumContent, {=20
				left: (this.x.min - to.xmin=20
					+ this.x.p1 - to.xp1) +'px',
				top: (this.y.min - to.ymin=20
					+ this.y.p1 - to.yp1) +'px'=20
			});		=09
			this.innerContent.style.visibility =3D 'visible';
		}
	=09
		if (this.outline && this.outlineWhileAnimating) {
			var o =3D this.outline.offset - to.o;
			this.outline.setPosition(this, {
				x: to.xmin + o,=20
				y: to.ymin + o,=20
				w: to.xspan + to.xp1 + to.xp2 + - 2 * o,=20
				h: to.yspan + to.yp1 + to.yp2 + - 2 * o
			}, 1);
		}
		=09
		this.wrapper.style.visibility =3D 'visible';
	=09
	} catch (e) {
		window.location.href =3D this.src;=09
	}
},

fade : function(up, from, to) {
	this.outlineWhileAnimating =3D false;
	var exp =3D this,	t =3D up ? 250 : 0;
=09
	if (up) {
		hs.setStyles(this.wrapper, { opacity: 0 });
		this.setSize(to);
		this.content.style.visibility =3D 'visible';

		hs.fade (this.wrapper, 0, 1);
	}
=09
	if (this.outline) {
		this.outline.table.style.zIndex =3D this.wrapper.style.zIndex;
		var dir =3D up || -1;
		for (var i =3D from.o; dir * i <=3D dir * to.o; i +=3D dir, t +=3D 25) =
{
			(function() {
				var o =3D up ? to.o - i : from.o - i;
				setTimeout(function() {
					exp.outline.setPosition(exp, {
						x: (exp.x.min + o),=20
						y: (exp.y.min + o),
						w: (exp.x.span - 2 * o + exp.x.p1 + exp.x.p2),=20
						h: (exp.y.span - 2 * o + exp.y.p1 + exp.y.p2)
					}, 1);
				}, t);
			})();
		}
	}
=09
=09
	if (up) setTimeout(function() { exp.afterExpand(); }, t+50);
	else {
		setTimeout( function() {
			if (exp.outline) exp.outline.destroy(exp.preserveContent);
			hs.fade (exp.wrapper, 1, 0);
			setTimeout( function() {
				exp.afterClose();
			}, 250);
		}, t);	=09
	}
},

crossfade : function (up, from, to) {
	if (!up) return;
	var exp =3D this, steps =3D parseInt(hs.transitionDuration / 25), last =
=3D this.last;
	hs.removeEventListener(document, 'mousemove', hs.dragHandler);
=09
	hs.setStyles(this.content, {=20
		width: to.xspan +'px',=20
		height: to.yspan +'px'	=09
	});
	this.outline =3D this.last.outline;
	this.last.outline =3D null;=0A=
	this.fadeBox =3D hs.createElement('div',
		{	className: 'highslide-image' },
		{=20
			position: 'absolute',=20
			zIndex: 4,
			overflow: 'hidden',
			display: 'none'
		}
	);=0A=
	var names =3D { oldImg: last, newImg: this };
	for (var x in names) { =09
		this[x] =3D names[x].content.cloneNode(1);
		hs.setStyles(this[x], {
			position: 'absolute',
			border: 0,
			visibility: 'visible'
		});
		this.fadeBox.appendChild(this[x]);
	}
	this.wrapper.appendChild(this.fadeBox);
=09
	from =3D {=0A=
		xmin: last.x.min,
		xspan: last.x.span,
		xp1: last.x.p1,
		xp2: last.x.p2,
		ymin: last.y.min,
		yspan: last.y.span,
		yp1: last.y.p1,
		yp2: last.y.p2,
		o: 1 / steps
	};
=09
	to.yspan =3D this.y.span;
	to.o =3D 1;
	var t, easing =3D Math.easeInOutQuad;
=09
	this.crossfadeStep(from);=0A=
	function prep() {
		if (exp.overlayBox) {
			exp.wrapper.appendChild(exp.overlayBox);
			=09
			for (var i =3D 0; i < exp.last.overlays.length; i++) {
				var oDiv =3D hs.$('hsId'+ exp.last.overlays[i]);
				if (oDiv.reuse =3D=3D=3D exp.key) exp.overlayBox.appendChild(oDiv);
				else hs.fade(oDiv, oDiv.opacity, 0);=0A=
			}
		}
		exp.fadeBox.style.display =3D '';
		exp.last.content.style.display =3D 'none';
	};
	if (/rv:1\.[0-8].+Gecko/.test(navigator.userAgent)) setTimeout(prep, =
0);
	else prep();
	if (hs.safari) {=0A=
		var match =3D navigator.userAgent.match(/Safari\/([0-9]{3})/);
		if (match && parseInt(match[1]) < 525) this.wrapper.style.visibility =
=3D 'visible';
	} =20
=09
	for (var i =3D 1; i <=3D steps; i++) {
		t =3D Math.round(i * (hs.transitionDuration / steps));
	=09
		(function(){
			var size =3D {}, pI =3D i;
			for (var x in from)	{
				var val =3D easing(t, from[x], to[x] - from[x], =
hs.transitionDuration);
				size[x] =3D (x !=3D 'o') ? Math.round(val) : val;
			}
		=09
			setTimeout ( function() {
				exp.crossfadeStep(size);
			}, t);			=09
		})();
	}
	setTimeout ( function () {
		exp.crossfadeEnd();
	}, t + 100);

},

crossfadeStep : function (size) {
	try {
		if (this.outline) this.outline.setPosition(this, {=20
			x: size.xmin,=20
			y: size.ymin,=20
			w: size.xspan + size.xp1 + size.xp2,=20
			h: size.yspan + size.yp1 + size.yp2
		}, 1);=0A=
		this.last.wrapper.style.clip =3D 'rect('
			+ (size.ymin - this.last.y.min)+'px, '=0A=
			+ (size.xspan + size.xp1 + size.xp2 + 2 * this.last.x.cb + size.xmin =
- this.last.x.min) +'px, '=0A=
			+ (size.yspan + size.yp1 + size.yp2 + 2 * this.last.y.cb + size.ymin =
- this.last.y.min) +'px, '=0A=
			+ (size.xmin - this.last.x.min)+'px)';=0A=
		=09
		hs.setStyles(this.content, {
			top: size.yp1 +'px',
			left: size.xp1 +'px',
			marginTop: (this.y.min - size.ymin) +'px',
			marginLeft: (this.x.min - size.xmin) +'px'
		});
	=09
		hs.setStyles(this.wrapper, {
			top: size.ymin +'px',
			left: size.xmin +'px',
			width: (size.xp1 + size.xp2 + size.xspan + 2 * this.x.cb)+ 'px',
			height: (size.yp1 + size.yp2 + size.yspan + 2 * this.y.cb) + 'px'
		});
		=09
		hs.setStyles(this.fadeBox, {
			width: size.xspan + 'px',
			height: size.yspan +'px',
			left: size.xp1 +'px',
			top: size.yp1 +'px',
			visibility: 'visible'
		});
	=09
		hs.setStyles(this.oldImg, {
			top: (this.last.y.min - size.ymin + this.last.y.p1 - size.yp1)+'px',
			left: (this.last.x.min - size.xmin + this.last.x.p1 - size.xp1)+'px'
		});	=09
	=09
		hs.setStyles(this.newImg, {
			opacity: size.o,
			top: (this.y.min - size.ymin + this.y.p1 - size.yp1) +'px',
			left: (this.x.min - size.xmin + this.x.p1 - size.xp1) +'px'
		});
		hs.setStyles(this.overlayBox, {
			width: size.xspan + 'px',
			height: size.yspan +'px',
			left: (size.xp1 + this.x.cb)  +'px',
			top: (size.yp1 + this.y.cb) +'px'
		});
	} catch (e) {}
},
crossfadeEnd : function() {
	this.wrapper.style.background =3D this.wrapperBG || '';
=09
	this.wrapper.style.visibility =3D this.content.style.visibility =3D =
'visible';
	this.fadeBox.style.display =3D 'none';
	this.a.className +=3D ' highslide-active-anchor';
	this.afterExpand();
	this.last.afterClose();
},=0A=
reuseOverlay : function(o, el) {
	if (!this.last) return false;
	for (var i =3D 0; i < this.last.overlays.length; i++) {
		var oDiv =3D hs.$('hsId'+ this.last.overlays[i]);
		if (oDiv && oDiv.hsId =3D=3D o.hsId) {
			this.genOverlayBox();
			oDiv.reuse =3D this.key;
			hs.push(this.overlays, this.last.overlays[i]);
			return true;
		}
	}
	return false;
},


afterExpand : function() {
	this.isExpanded =3D true;=09
	this.focus();
=09
	if (this.isHtml && this.objectLoadTime =3D=3D 'after') =
this.writeExtendedContent();
=09
	if (this.isHtml) {
		if (this.iframe) {
			try {
				var exp =3D this,
					doc =3D this.iframe.contentDocument || =
this.iframe.contentWindow.document;
				hs.addEventListener(doc, 'mousedown', function () {
					if (hs.focusKey !=3D exp.key) exp.focus();
				});
			} catch(e) {}
			if (hs.ie && typeof this.isClosing !=3D 'boolean') // first open=20
				this.iframe.style.width =3D (this.objectWidth - 1) +'px'; // =
hasLayout
		}
	}
=09
	if (this.dimmingOpacity) hs.dim(this);
	if (hs.upcoming && hs.upcoming =3D=3D this.a) hs.upcoming =3D null;
	this.prepareNextOutline();
=09
=09
	if (this.overlayBox) this.showOverlays();
	hs.fireEvent(this, 'onAfterExpand');
=09
},


prepareNextOutline : function() {
	var key =3D this.key;
	var outlineType =3D this.outlineType;
	new hs.Outline(outlineType,=20
		function () { try { hs.expanders[key].preloadNext(); } catch (e) {} =
});
},


preloadNext : function() {
	var next =3D this.getAdjacentAnchor(1);
	if (next && next.onclick.toString().match(/hs\.expand/))=20
		var img =3D hs.createElement('img', { src: hs.getSrc(next) });
},


getAdjacentAnchor : function(op) {
	var current =3D this.getAnchorIndex(), as =3D =
hs.anchors.groups[this.slideshowGroup || 'none'];
=09
	/*< ? if ($cfg->slideshow) : ?>s*/
	if (!as[current + op] && this.slideshow && this.slideshow.repeat) {
		if (op =3D=3D 1) return as[0];
		else if (op =3D=3D -1) return as[as.length-1];
	}
	/*< ? endif ?>s*/
	return as[current + op] || null;
},

getAnchorIndex : function() {
	var arr =3D hs.anchors.groups[this.slideshowGroup || 'none'];
	for (var i =3D 0; i < arr.length; i++) {
		if (arr[i] =3D=3D this.a) return i;=20
	}
	return null;
},


getNumber : function() {
	if (this[this.numberPosition]) {
		var arr =3D hs.anchors.groups[this.slideshowGroup || 'none'];
		var s =3D hs.lang.number.replace('%1', this.getAnchorIndex() + =
1).replace('%2', arr.length);=0A=
		this[this.numberPosition].innerHTML =3D=20
			'<div class=3D"highslide-number">'+ s +'</div>'+ =
this[this.numberPosition].innerHTML;
	}
},
initSlideshow : function() {=0A=
	if (this.slideshow) return;
=09
	if (!this.last) {=0A=
		for (var i =3D 0; i < hs.slideshows.length; i++) {
			var ss =3D hs.slideshows[i], sg =3D ss.slideshowGroup;
			if (sg =3D=3D=3D this.slideshowGroup) {
				this.slideshow =3D new hs.Slideshow(ss);
			}
		}=20
	} else {=0A=
		this.slideshow =3D this.last.slideshow;
	}
	var ss =3D this.slideshow;
	if (!ss) return;
	var exp =3D ss.exp =3D this;
=09
	ss.checkFirstAndLast();
=09
	if (ss.useControls) {
		var o =3D ss.overlayOptions || {};
		o.overlayId =3D ss.controls;
		o.hsId =3D 'controls';
		this.createOverlay(o);
	}=0A=
	if (!this.last && this.autoplay) ss.play(true);=0A=
	if (ss.autoplay) {
		ss.autoplay =3D setTimeout(function() {
			hs.next(exp.key);
		}, (ss.interval || 500));
	}
},

cancelLoading : function() {=09
	hs.expanders[this.key] =3D null;
	if (hs.upcoming =3D=3D this.a) hs.upcoming =3D null;
	hs.undim();
	if (this.loading) hs.loading.style.left =3D '-9999px';
	hs.fireEvent(this, 'onHideLoading');
},

writeCredits : function () {
	if (this.credits) return;
	this.credits =3D hs.createElement('a',
		{
			href: hs.creditsHref,
			className: 'highslide-credits',
			innerHTML: hs.lang.creditsText,
			title: hs.lang.creditsTitle
		}
	);
	this.createOverlay({=20
		overlayId: this.credits,=20
		position: 'top left',=20
		hsId: 'credits'=20
	});
},

getInline : function(types, addOverlay) {
	for (var i =3D 0; i < types.length; i++) {
		var type =3D types[i], s =3D null;
		if (type =3D=3D 'caption' && !hs.fireEvent(this, =
'onBeforeGetCaption')) return;
		else if (type =3D=3D 'heading' && !hs.fireEvent(this, =
'onBeforeGetHeading')) return;=0A=
		if (!this[type +'Id'] && this.thumbsUserSetId) =20
			this[type +'Id'] =3D type +'-for-'+ this.thumbsUserSetId;=0A=
		if (this[type +'Id']) this[type] =3D hs.getNode(this[type +'Id']);=0A=
		if (!this[type] && !this[type +'Text'] && this[type +'Eval']) try {
			s =3D eval(this[type +'Eval']);
		} catch (e) {}=0A=
		if (!this[type] && this[type +'Text']) {
			s =3D this[type +'Text'];
		}=0A=
		if (!this[type] && !s) {
			var next =3D this.a.nextSibling;
			while (next && !hs.isHsAnchor(next)) {
				if ((new RegExp('highslide-'+ type)).test(next.className || null)) {
					this[type] =3D next.cloneNode(1);
					break;
				}
				next =3D next.nextSibling;
			}
		}=0A=
		if (!this[type] && !s && this.numberPosition =3D=3D type) s =3D '\n';
	=09
		if (!this[type] && s) this[type] =3D hs.createElement('div',=20
				{ className: 'highslide-'+ type, innerHTML: s } );
			=09
		if (addOverlay && this[type]) {
			var o =3D { position: (type =3D=3D 'heading') ? 'above' : 'below' };=0A=
			for (var x in this[type+'Overlay']) o[x] =3D this[type+'Overlay'][x];
			o.overlayId =3D this[type];
			this.createOverlay(o);
		}
	}
},


showHideElements : function (tagName, visibility, imgPos) {
	var els =3D document.getElementsByTagName(tagName);
	var prop =3D tagName =3D=3D '*' ? 'overflow' : 'visibility';
	for (var i =3D 0; i < els.length; i++) {
		if (prop =3D=3D 'visibility' || =
(document.defaultView.getComputedStyle(
				els[i], "").getPropertyValue('overflow') =3D=3D 'auto'
				|| els[i].getAttribute('hidden-by') !=3D null)) {
			var hiddenBy =3D els[i].getAttribute('hidden-by');
			if (visibility =3D=3D 'visible' && hiddenBy) {
				hiddenBy =3D hiddenBy.replace('['+ this.key +']', '');
				els[i].setAttribute('hidden-by', hiddenBy);
				if (!hiddenBy) els[i].style[prop] =3D els[i].origProp;
			} else if (visibility =3D=3D 'hidden') { // hide if behind
				var elPos =3D hs.getPosition(els[i]);
				elPos.w =3D els[i].offsetWidth;
				elPos.h =3D els[i].offsetHeight;
				if (!this.dimmingOpacity) { // hide all if dimming
			=09
					var clearsX =3D (elPos.x + elPos.w < imgPos.x || elPos.x > imgPos.x =
+ imgPos.w);
					var clearsY =3D (elPos.y + elPos.h < imgPos.y || elPos.y > imgPos.y =
+ imgPos.h);
				}
				var wrapperKey =3D hs.getWrapperKey(els[i]);
				if (!clearsX && !clearsY && wrapperKey !=3D this.key) { // element =
falls behind image
					if (!hiddenBy) {
						els[i].setAttribute('hidden-by', '['+ this.key +']');
						els[i].origProp =3D els[i].style[prop];
						els[i].style[prop] =3D 'hidden';
					} else if (!hiddenBy.match('['+ this.key +']')) {
						els[i].setAttribute('hidden-by', hiddenBy + '['+ this.key +']');
					}
				} else if (hiddenBy =3D=3D '['+ this.key +']' || hs.focusKey =3D=3D =
wrapperKey) { // on move
					els[i].setAttribute('hidden-by', '');
					els[i].style[prop] =3D els[i].origProp || '';
				} else if (hiddenBy && hiddenBy.match('['+ this.key +']')) {
					els[i].setAttribute('hidden-by', hiddenBy.replace('['+ this.key =
+']', ''));
				}
					=09
			}
		}
	}
},

focus : function() {
	this.wrapper.style.zIndex =3D hs.zIndexCounter++;
	// blur others
	for (var i =3D 0; i < hs.expanders.length; i++) {
		if (hs.expanders[i] && i =3D=3D hs.focusKey) {
			var blurExp =3D hs.expanders[i];
			blurExp.content.className +=3D ' highslide-'+ blurExp.contentType =
+'-blur';
			if (blurExp.isImage) {
				blurExp.content.style.cursor =3D hs.ie ? 'hand' : 'pointer';
				blurExp.content.title =3D hs.lang.focusTitle;=09
			}=09
			hs.fireEvent(this, 'onBlur');
		}
	}
=09
	// focus this
	if (this.outline) this.outline.table.style.zIndex=20
		=3D this.wrapper.style.zIndex;
	this.content.className =3D 'highslide-'+ this.contentType;
	if (this.isImage) {
		this.content.title =3D hs.lang.restoreTitle;
	=09
		hs.styleRestoreCursor =3D window.opera ? 'pointer' : 'url('+ =
hs.graphicsDir + hs.restoreCursor +'), pointer';
		if (hs.ie && hs.ieVersion() < 6) hs.styleRestoreCursor =3D 'hand';
		this.content.style.cursor =3D hs.styleRestoreCursor;
	}
	hs.focusKey =3D this.key;=09
	hs.addEventListener(document, window.opera ? 'keypress' : 'keydown', =
hs.keyHandler);=09
	hs.fireEvent(this, 'onFocus');=09
},

move : function (e) {
	this.x.min =3D e.left + e.dX;
	this.y.min =3D e.top + e.dY;
=09
	if (e.type =3D=3D 'image') this.content.style.cursor =3D 'move';
	hs.setStyles(this.wrapper, { left: this.x.min +'px', top: this.y.min =
+'px' });
=09
	if (this.outline) this.outline.setPosition(this);
=09
},
resize : function (e) {
	var w, h, r =3D e.width / e.height;
	w =3D Math.max(e.width + e.dX, Math.min(this.minWidth, this.x.full));
	if (this.isImage && Math.abs(w - this.x.full) < 12) w =3D this.x.full;=0A=
	h =3D this.isHtml ? e.height + e.dY : w / r;
=09
	if (h < Math.min(this.minHeight, this.y.full)) {
		h =3D Math.min(this.minHeight, this.y.full);
		if (this.isImage) w =3D h * r;
	}
=09
	this.x.span =3D w;
	this.y.span =3D h;
	if (this.isHtml) {
		var d =3D this.scrollerDiv;
		if (typeof this.wDiff =3D=3D 'undefined') {
			this.wDiff =3D this.innerContent.offsetWidth - d.offsetWidth;
			this.hDiff =3D this.innerContent.offsetHeight - d.offsetHeight;
		}
		hs.setStyles(d, { width: (this.x.span - this.wDiff) +'px',=20
			height: (this.y.span - this.hDiff) +'px' });
	}
	var size =3D { width: this.x.span +'px', height: this.y.span +'px' };
	hs.setStyles(this.content, size);
	if (this.releaseMask) hs.setStyles(this.releaseMask, size);
	if (this.isHtml) {
		this.mediumContent.style.width =3D 'auto';
		if (this.body) hs.setStyles(this.body, { width: 'auto', height: 'auto' =
});
	}
	if (this.overlayBox) this.sizeOverlayBox(true);
	hs.setStyles(this.wrapper, {
		width: (this.x.p1 + this.x.p2 +2 * this.x.cb + this.x.span) +'px',
		height: (this.y.p1 + this.y.p2 +2 * this.y.cb + this.y.span) +'px'
	});
	if (this.slideshow && this.isImage) {
		if (w =3D=3D this.x.full) this.slideshow.disable('full-expand');
		else this.slideshow.enable('full-expand');
	}
	if (this.outline) this.outline.setPosition(this);
=09
},

close : function() {
	if (this.isClosing || !this.isExpanded
		 || (hs.upcoming && this.transitions[1] =3D=3D 'crossfade')
		) return;
	this.isClosing =3D true;
	if (!hs.fireEvent(this, 'onBeforeClose')) return;
	if (this.slideshow && !hs.upcoming) this.slideshow.pause();
=09
	hs.removeEventListener(document, window.opera ? 'keypress' : 'keydown', =
hs.keyHandler);
=09
	try {
		if (this.isHtml) this.htmlPrepareClose();
		this.content.style.cursor =3D 'default';
		this.changeSize(
			0,
			{
				xmin: this.x.min,
				ymin: this.y.min,
				xspan: this.x.span,
				yspan: parseInt(this.content.style.height),
				xp1: this.x.p1,
				yp1: this.y.p1,
				xp2: this.x.p2,
				yp2: this.y.p2,
				o: this.outline ? this.outline.offset : 0
			},
			{
				xmin: this.x.tpos - this.x.cb + this.x.tb,
				ymin: this.y.tpos - this.y.cb + this.y.tb,
				xspan: this.x.t,
				yspan: this.y.t,
				xp1: 0,
				yp1: 0,
				xp2: 0,
				yp2: 0,
				o: hs.outlineStartOffset
			},
			hs.restoreDuration,
			hs.restoreSteps
		);
	=09
	} catch (e) { this.afterClose(); }=20
},

htmlPrepareClose : function() {
	if (hs.geckoMac) { // bad redraws
		if (!hs.mask) hs.mask =3D hs.createElement('div', null,=20
			{ position: 'absolute' }, hs.container);
		hs.setStyles(hs.mask, { width: this.x.span +'px', height: this.y.span =
+'px',=20
			left: this.x.min +'px', top: this.y.min +'px', display: 'block' });			=

	}
	if (this.objectType =3D=3D 'swf') try { hs.$(this.body.id).StopPlay(); =
} catch (e) {}
=09
	if (this.objectLoadTime =3D=3D 'after' && !this.preserveContent) =
this.destroyObject();	=09
	if (this.scrollerDiv && this.scrollerDiv !=3D this.scrollingContent)=20
		this.scrollerDiv.style.overflow =3D 'hidden';
},

destroyObject : function () {
	if (hs.ie && this.iframe)
		try { this.iframe.contentWindow.document.body.innerHTML =3D ''; } =
catch (e) {}
	if (this.objectType =3D=3D 'swf') swfobject.removeSWF(this.body.id);
	this.body.innerHTML =3D '';
},

sleep : function() {
	if (this.outline) this.outline.table.style.display =3D 'none';
	this.releaseMask =3D null;
	this.wrapper.style.display =3D 'none';
	hs.push(hs.sleeping, this);
},

awake : function() {
	hs.expanders[this.key] =3D this;
=09
	if (!hs.allowMultipleInstances &&hs.focusKey !=3D this.key) {=09
		try { hs.expanders[hs.focusKey].close(); } catch (e){}
	}
=09
	var z =3D hs.zIndexCounter++, stl =3D { display: '', zIndex: z };
	hs.setStyles (this.wrapper, stl);
	this.isClosing =3D false;
=09
	var o =3D this.outline || 0;
	if (o) {
		if (!this.outlineWhileAnimating) stl.visibility =3D 'hidden';
		hs.setStyles (o.table, stl);	=09
	}
	this.show();
},

createOverlay : function (o) {
	var el =3D o.overlayId;
	if (typeof el =3D=3D 'string') el =3D hs.getNode(el);
	if (!el || typeof el =3D=3D 'string') return;
	if (!hs.fireEvent(this, 'onCreateOverlay', { overlay: el })) return;
	el.style.display =3D 'block';
	o.hsId =3D o.hsId || o.overlayId;=20
	if (this.transitions[1] =3D=3D 'crossfade' && this.reuseOverlay(o, el)) =
return;
	this.genOverlayBox();
	var width =3D o.width && /^[0-9]+(px|%)$/.test(o.width) ? o.width : =
'auto';=0A=
	if (/^(left|right)panel$/.test(o.position) && =
!/^[0-9]+px$/.test(o.width)) width =3D '200px';
=09
	var overlay =3D hs.createElement(
		'div',
		{ id: 'hsId'+ hs.idCounter++, hsId: o.hsId },
		{
			position: 'absolute',
			visibility: 'hidden',
			width: width
		},
		this.overlayBox,
		true
	);
=09
	overlay.appendChild(el);
	hs.setAttribs(overlay, {
		hideOnMouseOut: o.hideOnMouseOut,
		opacity: o.opacity || 1,
		hsPos: o.position,
		fade: o.fade
	});
=09
	if (this.gotOverlays) {=0A=
		this.positionOverlay(overlay);
		if (!overlay.hideOnMouseOut || this.mouseIsOver) hs.fade(overlay, 0, =
overlay.opacity);
	}
	hs.push(this.overlays, hs.idCounter - 1);
},
positionOverlay : function(overlay) {
	var p =3D overlay.hsPos || 'middle center';=0A=
	if (/left$/.test(p)) overlay.style.left =3D 0;=20
	if (/center$/.test(p))	hs.setStyles (overlay, {=20
		left: '50%',
		marginLeft: '-'+ Math.round(overlay.offsetWidth / 2) +'px'
	});=09
	if (/right$/.test(p))	overlay.style.right =3D 0;
=09
	if (/^leftpanel$/.test(p)) {=20
		hs.setStyles(overlay, {
			right: '100%',
			marginRight: this.x.cb +'px',
			top: - this.y.cb +'px',
			bottom: - this.y.cb +'px',
			overflow: 'auto'
		});		=20
		this.x.p1 =3D overlay.offsetWidth;
=09
	} else if (/^rightpanel$/.test(p)) {
		hs.setStyles(overlay, {
			left: '100%',
			marginLeft: this.x.cb +'px',
			top: - this.y.cb +'px',
			bottom: - this.y.cb +'px',
			overflow: 'auto'
		});
		this.x.p2 =3D overlay.offsetWidth;
	}=0A=
	if (/^top/.test(p)) overlay.style.top =3D 0;=20
	if (/^middle/.test(p))	hs.setStyles (overlay, {=20
		top: '50%',=20
		marginTop: '-'+ Math.round(overlay.offsetHeight / 2) +'px'
	});=09
	if (/^bottom/.test(p)) overlay.style.bottom =3D 0;=0A=
	if (/^above$/.test(p)) {
		hs.setStyles(overlay, {
			left: (- this.x.p1 - this.x.cb) +'px',
			right: (- this.x.p2 - this.x.cb) +'px',
			bottom: '100%',
			marginBottom: this.y.cb +'px',
			width: 'auto'
		});
		this.y.p1 =3D overlay.offsetHeight;
=09
	} else if (/^below$/.test(p)) {
		hs.setStyles(overlay, {
			position: 'relative',
			left: (- this.x.p1 - this.x.cb) +'px',
			right: (- this.x.p2 - this.x.cb) +'px',
			top: '100%',
			marginTop: this.y.cb +'px',
			width: 'auto'
		});
		this.y.p2 =3D overlay.offsetHeight;
		overlay.style.position =3D 'absolute';=0A=
	}
},

getOverlays : function() {=09
	this.getInline(['heading', 'caption'], true);
	this.getNumber();
	if (this.caption) hs.fireEvent(this, 'onAfterGetCaption');
	if (this.heading) hs.fireEvent(this, 'onAfterGetHeading');
	if (this.heading && this.dragByHeading) this.heading.className +=3D ' =
highslide-move';
	if (hs.showCredits) this.writeCredits();
	for (var i =3D 0; i < hs.overlays.length; i++) {
		var o =3D hs.overlays[i], tId =3D o.thumbnailId, sg =3D =
o.slideshowGroup;
		if ((!tId && !sg) || (tId && tId =3D=3D this.thumbsUserSetId)
				|| (sg && sg =3D=3D=3D this.slideshowGroup)) {
			if (this.isImage || (this.isHtml && o.useOnHtml))
			this.createOverlay(o);
		}
	}=0A=
	var os =3D [];
	for (var i =3D 0; i < this.overlays.length; i++) {
		var o =3D hs.$('hsId'+ this.overlays[i]);
		if (/panel$/.test(o.hsPos)) this.positionOverlay(o);
		else hs.push(os, o);
	}=0A=
	var curW =3D this.x.p1 + this.x.full + this.x.p2;
	if (hs.padToMinWidth && curW < hs.minWidth) {
		this.x.p1 +=3D (hs.minWidth - curW) / 2;
		this.x.p2 +=3D (hs.minWidth - curW) / 2;
	}=0A=
	for (var i =3D 0; i < os.length; i++) this.positionOverlay(os[i]);
	this.gotOverlays =3D true;
},
genOverlayBox : function() {
	if (!this.overlayBox) this.overlayBox =3D hs.createElement (
		'div', null,=20
		{
			position : 'absolute',
			width: this.x.span ? this.x.span +'px' : this.x.full +'px',=0A=
			height: 0,
			visibility : 'hidden',
			overflow : 'hidden',=0A=
			zIndex : hs.ie ? 4 : null
		},
		hs.container,
		true
	);
},
sizeOverlayBox : function(doWrapper, doPanels) {
	hs.setStyles( this.overlayBox, {
		width: this.x.span +'px',=20
		height: this.y.span +'px'
	});
	if (doWrapper || doPanels) {
		for (var i =3D 0; i < this.overlays.length; i++) {
			var o =3D hs.$('hsId'+ this.overlays[i]);
			if (o && /^(above|below)$/.test(o.hsPos)) {
				if (hs.ie && (hs.ieVersion() <=3D 6 || document.compatMode =3D=3D =
'BackCompat')) {
					o.style.width =3D (this.overlayBox.offsetWidth + 2 * this.x.cb
						- this.x.p1 - this.x.p2) +'px';
				}=0A=
				this.y[o.hsPos =3D=3D 'above' ? 'p1' : 'p2'] =3D o.offsetHeight;
			}
		}
	}
	if (doWrapper) {
		hs.setStyles(this.content, {
			top: this.y.p1 +'px'
		});
		hs.setStyles(this.overlayBox, {
			top: (this.y.p1 + this.y.cb) +'px'
		});
	}
},

showOverlays : function() {=0A=
	hs.setStyles(this.overlayBox, {
		top: (this.y.p1 + this.y.cb) +'px',
		left: (this.x.p1 + this.x.cb) +'px',
		visibility : 'visible',
		overflow : 'visible'/*,
		position : hs.safari ? 'absolute' : 'absolute'*/
	});
	this.wrapper.appendChild (this.overlayBox);=0A=
	var page =3D hs.getPageSize(),=20
		mX =3D hs.mouse.x + page.scrollLeft,=20
		mY =3D hs.mouse.y + page.scrollTop;
	this.mouseIsOver =3D this.x.min < mX && mX < this.x.min + this.x.p1 + =
this.x.span + this.x.p2
			&& this.y.min < mY && mY < this.y.min + this.y.p1 + this.y.span + =
this.y.p2;
	for (var i =3D 0; i < this.overlays.length; i++) {
		var o =3D hs.$('hsId'+ this.overlays[i]);
		o.style.zIndex =3D 4;
		if (!o.hideOnMouseOut || this.mouseIsOver) hs.fade(o, 0, o.opacity);
	}
},



createFullExpand : function () {
	if (this.slideshow) {
		this.slideshow.enable('full-expand');
		return;
	}
	this.fullExpandLabel =3D hs.createElement(
		'a',
		{
			href: 'javascript:hs.expanders['+ this.key +'].doFullExpand();',
			title: hs.lang.fullExpandTitle,
			className: 'highslide-full-expand'
		}
	);
	if (!hs.fireEvent(this, 'onCreateFullExpand')) return;
=09
	this.createOverlay({=20
		overlayId: this.fullExpandLabel,=20
		position: hs.fullExpandPosition,=20
		hideOnMouseOut: true,=20
		opacity: hs.fullExpandOpacity
	});
},

doFullExpand : function () {
	try {
		if (!hs.fireEvent(this, 'onDoFullExpand')) return;
		if (this.fullExpandLabel) hs.discardElement(this.fullExpandLabel);
		else if (this.slideshow) this.slideshow.disable('full-expand');
	=09
		this.focus();
	=09
		this.x.min =3D parseInt(this.wrapper.style.left) - (this.x.full - =
this.content.width) / 2;
		if (this.x.min < hs.marginLeft) this.x.min =3D hs.marginLeft;	=09
		this.wrapper.style.left =3D this.x.min +'px';
	=09
		hs.setStyles(this.content, { width: this.x.full +'px', height: =
this.y.full +'px'});
	=09
		this.x.span =3D this.x.full;
		this.y.span =3D this.y.full;
	=09
	=09
		if (this.overlayBox) this.sizeOverlayBox(true);	=09
	=09
	=09
		hs.setStyles(this.wrapper, {
			width: (this.x.p1 + 2 * this.x.cb + this.x.span + this.x.p2) +'px',
			height: (this.y.p1 + 2 * this.y.cb + this.y.span + this.y.p2) +'px'
		});
	=09
	=09
		if (this.outline) this.outline.setPosition(this);
	=09
	=09
		this.redoShowHide();
	=09
		hs.setDimmerSize(this);
	=09
=09
	} catch (e) {
		window.location.href =3D this.content.src;
	}
},


// on end move and resize
redoShowHide : function() {
	var imgPos =3D {
		x: parseInt(this.wrapper.style.left) - 20,=20
		y: parseInt(this.wrapper.style.top) - 20,=20
		w: this.content.offsetWidth + 40,=20
		h: this.content.offsetHeight + 40
	};
	if (hs.hideSelects) this.showHideElements('SELECT', 'hidden', imgPos);
	if (hs.hideIframes) this.showHideElements('IFRAME', 'hidden', imgPos);
	if (hs.geckoMac) this.showHideElements('*', 'hidden', imgPos);

},

afterClose : function () {
	this.a.className =3D =
this.a.className.replace('highslide-active-anchor', '');
=09
	if (hs.hideSelects) this.showHideElements('SELECT', 'visible');
	if (hs.hideIframes) this.showHideElements('IFRAME', 'visible');
	if (hs.geckoMac) this.showHideElements('*', 'visible');=09
=09
	if (this.isHtml && this.preserveContent) this.sleep();
	else {
		if (this.outline && this.outlineWhileAnimating) =
this.outline.destroy();
=09
		hs.discardElement(this.wrapper);
	}
	if (hs.mask) hs.mask.style.display =3D 'none';
	if (this.dimmingOpacity) hs.undim(this.key);
	hs.fireEvent(this, 'onAfterClose');
	hs.expanders[this.key] =3D null;	=09
	hs.reOrder();
}

};


// hs.Ajax object prototype
hs.Ajax =3D function (a, content, pre) {
	this.a =3D a;
	this.content =3D content;
	this.pre =3D pre;=0A=
};

hs.Ajax.prototype =3D {
run : function () {
	if (!this.src) this.src =3D hs.getSrc(this.a);
	if (this.src.match('#')) {
		var arr =3D this.src.split('#');
		this.src =3D arr[0];
		this.id =3D arr[1];
	}
	if (hs.cachedGets[this.src]) {
		this.cachedGet =3D hs.cachedGets[this.src];
		if (this.id) this.getElementContent();
		else this.loadHTML();
		return;
	}
	try { this.xmlHttp =3D new XMLHttpRequest(); }
	catch (e) {
		try { this.xmlHttp =3D new ActiveXObject("Msxml2.XMLHTTP"); }
		catch (e) {
			try { this.xmlHttp =3D new ActiveXObject("Microsoft.XMLHTTP"); }
			catch (e) { this.onError(); }
		}
	}
	var pThis =3D this;
	this.xmlHttp.onreadystatechange =3D function() {
		if(pThis.xmlHttp.readyState =3D=3D 4) {
			if (pThis.id) pThis.getElementContent();
			else pThis.loadHTML();
		}
	};
=09
	this.xmlHttp.open("GET", this.src, true);
	this.xmlHttp.send(null);
},

getElementContent : function() {
	hs.init();
	var attribs =3D window.opera || hs.ie6SSL ? { src: 'about:blank' } : =
null;=0A=
=09
	this.iframe =3D hs.createElement('iframe', attribs,=20
		{ position: 'absolute', left: '-9999px' }, hs.container);
	=09
	this.loadHTML();
},

loadHTML : function() {
	var s =3D this.cachedGet || this.xmlHttp.responseText;
	if (this.pre) hs.cachedGets[this.src] =3D s;
	if (!hs.ie || hs.ieVersion() >=3D 5.5) {
		s =3D s.replace(/\s/g, ' ').replace(
			new RegExp('<link[^>]*>', 'gi'), '').replace(
			new RegExp('<script[^>]*>.*?</script>', 'gi'), '');

		if (this.iframe) {
			var doc =3D this.iframe.contentDocument;
			if (!doc && this.iframe.contentWindow) doc =3D =
this.iframe.contentWindow.document;
			if (!doc) { // Opera
				var pThis =3D this;
				setTimeout(function() {	pThis.loadHTML(); }, 25);
				return;
			}
			doc.open();
			doc.write(s);
			doc.close();
			try { s =3D doc.getElementById(this.id).innerHTML; } catch (e) {
				try { s =3D this.iframe.document.getElementById(this.id).innerHTML; =
} catch (e) {} // opera
			}
		} else {
			s =3D s.replace(new RegExp('^.*?<body[^>]*>(.*?)</body>.*?$', 'i'), =
'$1');
		}
	}
	hs.getElementByClass(this.content, 'DIV', 'highslide-body').innerHTML =
=3D s;
	this.onLoad();
	for (var x in this) this[x] =3D null;=0A=
}
};


hs.Slideshow =3D function (options) {
	hs.updateAnchors();
	for (var x in options) this[x] =3D options[x];
	if (this.useControls) this.getControls();
};
hs.Slideshow.prototype =3D {
getControls: function() {
	this.controls =3D hs.createElement('div', { innerHTML: =
hs.replaceLang(hs.skin.controls) },=20
		null, hs.container);
=09
	var buttons =3D ['play', 'pause', 'previous', 'next', 'move', =
'full-expand', 'close'];=0A=
	this.btn =3D {};
	var pThis =3D this;
	for (var i =3D 0; i < buttons.length; i++) {
		this.btn[buttons[i]] =3D hs.getElementByClass(this.controls, 'li', =
'highslide-'+ buttons[i]);
		this.enable(buttons[i]);
	}=0A=
	this.btn.pause.style.display =3D 'none';
	this.disable('full-expand');
},
checkFirstAndLast: function() {=0A=
	if (this.repeat) return;
	var cur =3D this.exp.getAnchorIndex(), re =3D /disabled$/;
	if (cur =3D=3D 0)=20
		this.disable('previous');
	else if =
(re.test(this.btn.previous.getElementsByTagName('a')[0].className))
		this.enable('previous');
	if (cur + 1 =3D=3D hs.anchors.groups[this.slideshowGroup || =
'none'].length) {
		this.disable('next');
		this.disable('play');
	} else if =
(re.test(this.btn.next.getElementsByTagName('a')[0].className)) {
		this.enable('next');
		this.enable('play');
	}
},
enable: function(btn) {
	var sls =3D this, a =3D this.btn[btn].getElementsByTagName('a')[0], re =
=3D /disabled$/;
	a.onclick =3D function() {
		sls[btn]();
		return false;
	};
	if (re.test(a.className)) a.className =3D a.className.replace(re, '');
},
disable: function(btn) {
	var a =3D this.btn[btn].getElementsByTagName('a')[0];
	a.onclick =3D function() { return false; };
	if (!/disabled$/.test(a.className)) a.className +=3D ' disabled';
},
hitSpace: function() {
	if (this.autoplay) this.pause();
	else this.play();
},
play: function(wait) {
	if (this.btn) {
		this.btn.play.style.display =3D 'none';
		this.btn.pause.style.display =3D '';
	}
=09
	this.autoplay =3D true;=09
	if (!wait) hs.next(this.exp.key);
},
pause: function() {
	if (this.btn) {
		this.btn.pause.style.display =3D 'none';
		this.btn.play.style.display =3D '';
	}
=09
	clearTimeout(this.autoplay);
	this.autoplay =3D null;
},
previous: function() {
	this.pause();
	hs.previous(this.btn.previous);
},
next: function() {
	this.pause();
	hs.next(this.btn.next);
},
move: function() {},
'full-expand': function() {
	hs.getExpander().doFullExpand();
},
close: function() {
	hs.close(this.btn.close);
}

};=0A=
if (document.readyState && hs.ie) {
	var src =3D (window.location.protocol =3D=3D 'https:') ? '://0' : =
'javascript:void(0)';
	document.write(
	'<script type=3D"text/javascript" defer=3D"defer" src=3D"' + src + '" ' =
+
	'onreadystatechange=3D"if (this.readyState =3D=3D \'complete\') =
hs.domReady();"' +
	'><\/script>');
}=0A=
hs.langDefaults =3D hs.lang;
// history
var HsExpander =3D hs.Expander;

// set handlers
hs.addEventListener(document, 'mousemove', function(e) {
	hs.mouse =3D { x: e.clientX, y: e.clientY	};
});
hs.addEventListener(document, 'mousedown', hs.mouseClickHandler);
hs.addEventListener(document, 'mouseup', hs.mouseClickHandler);
hs.addEventListener(window, 'load', hs.preloadImages);
hs.addEventListener(window, 'load', hs.preloadAjax);
hs.addEventListener(window, 'load', function() { hs.pageLoaded =3D true; =
});
hs.setClickEvents();
------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/templates/ja_teline_ii/ja_menus/ja_moomenu/ja.moomenu.js

if (typeof(MooTools) !=3D 'undefined'){

		var subnav =3D new Array();

		Element.extend(
		{
			hide: function(timeout)=20
			{
				this.status =3D 'hide';
				clearTimeout (this.timeout);
				if (timeout)
				{
					this.timeout =3D setTimeout (this.anim.bind(this), timeout);
				}else{
					this.anim();
				}
			},
				=09
			show: function(timeout)=20
			{
				this.status =3D 'show';
				clearTimeout (this.timeout);
				if (timeout)
				{
					this.timeout =3D setTimeout (this.anim.bind(this), timeout);
				}else{
					this.anim();
				}
			},

			setActive: function () {
				//this.addClass(classname);
				this.className+=3D'sfhover';
				/*
				for(var i=3D0;i<this.childNodes.length; i++) {
					if(this.childNodes[i].nodeName.toLowerCase() =3D=3D 'a') {
						//$(this.childNodes[i]).addClass(classname);
						$(this.childNodes[i]).setActive();
						return;
					}
				}
				*/
			},

			setDeactive: function () {
				//this.removeClass(classname);
				this.className=3Dthis.className.replace(new RegExp("sfhover\\b"), =
"");
				/*
				for(var i=3D0;i<this.childNodes.length; i++) {
					if(this.childNodes[i].nodeName.toLowerCase() =3D=3D 'a') {
						$(this.childNodes[i]).setDeactive();
						return;
					}
				}
				*/
			},

			anim: function() {
				if ((this.status =3D=3D 'hide' && this.style.left !=3D 'auto') || =
(this.status =3D=3D 'show' && this.style.left =3D=3D 'auto' && =
!this.hidding)) return;
				this.setStyle('overflow', 'hidden');
				if (this.status =3D=3D 'show') {
					this.hidding =3D 0;
					this.hideAll();
					//this.parentNode.setActive();
				} else {
					//this.parentNode.setDeactive();
				}

				if (this.status =3D=3D 'hide')
				{
					this.hidding =3D 1;
					//this.myFx1.stop();
					this.myFx2.stop();
					//this.myFx1.start(1,0);
					if (this.parent._id) this.myFx2.start(this.offsetWidth,0);
					else this.myFx2.start(this.offsetHeight,0);
				} else {
					this.setStyle('left', 'auto');
					//this.myFx1.stop();
					this.myFx2.stop();
					//this.myFx1.start(0,1);
					if (this.parent._id) this.myFx2.start(0,this.mw);
					else this.myFx2.start(0,this.mh);
				}
			},

			init: function() {
				this.mw =3D this.clientWidth;
				this.mh =3D this.clientHeight;
				//this.myFx1 =3D new Fx.Style(this, 'opacity');
				//this.myFx1.set(0);
				if (this.parent._id)
				{
					this.myFx2 =3D new Fx.Style(this, 'width', {duration: 300});
					this.myFx2.set(0);
				}else{
					this.myFx2 =3D new Fx.Style(this, 'height', {duration: 300});
					this.myFx2.set(0);
				}
				this.setStyle('left', '-999em');
				animComp =3D function(){
					if (this.status =3D=3D 'hide')
					{
						this.setStyle('left', '-999em');
						this.hidding =3D 0;
					}
					this.setStyle('overflow', '');
				}
				this.myFx2.addEvent ('onComplete', animComp.bind(this));
			},

			hideAll: function() {
				for(var i=3D0;i<subnav.length; i++) {
					if (!this.isChild(subnav[i]))
					{
						subnav[i].hide(0);
					}
				}
			},

			isChild: function(_obj) {
				obj =3D this;
				while (obj.parent)
				{
					if (obj._id =3D=3D _obj._id)
					{
						//alert(_obj._id);
						return true;
					}
					obj =3D obj.parent;
				}
				return false;
			}


		});
	=09

		var DropdownMenu =3D new Class({=09
			initialize: function(element)
			{
				//$(element).mh =3D 0;
				$A($(element).childNodes).each(function(el)
				{
					if(el.nodeName.toLowerCase() =3D=3D 'li')
					{
						//if($(element)._id) $(element).mh +=3D 30;
						$A($(el).childNodes).each(function(el2)
						{
							if(el2.nodeName.toLowerCase() =3D=3D 'ul')
							{
								$(el2)._id =3D subnav.length+1;
								$(el2).parent =3D $(element);
								subnav.push ($(el2));
								el2.init();
								el.addEvent('mouseover', function()
								{
									el.setActive();
									el2.show(0);
									return false;
								});
	=09
								el.addEvent('mouseout', function()
								{
									el.setDeactive();
									el2.hide(20);
								});
								new DropdownMenu(el2);
								el.hasSub =3D 1;
							}
						});
						if (!el.hasSub)
						{
							el.addEvent('mouseover', function()
							{
								el.setActive();
								return false;
							});

							el.addEvent('mouseout', function()
							{
								el.setDeactive();
							});
						}
					}
				});
				return this;
			}
		});
	=09
		window.addEvent('domready',function() {new =
DropdownMenu($('ja-cssmenu'))});
=09
	}else {
=09
		sfHover =3D function() {
		var sfEls =3D =
document.getElementById("ja-cssmenu").getElementsByTagName("li");
		for (var i=3D0; i<sfEls.length; ++i) {
			sfEls[i].onmouseover=3Dfunction() {
				this.className+=3D"sfhover";
			}
			sfEls[i].onmouseout=3Dfunction() {
				this.className=3Dthis.className.replace(new RegExp("sfhover\\b"), =
"");
			}
		}
	}
	if (window.attachEvent) window.attachEvent("onload", sfHover);
}

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.confirmado.net/modules/mod_ja_catslwi/mod_ja_catslwi.js


if (!self.jaSLWI) {
	var jaSLWI =3D {
		jaSLWIInit: function() {
			jaSLWI.modules =3D $$(".ja-catslwi");
			jaSLWI.modulesText =3D $$(".ja-catslwi-text");
			var x =3D new Fx.Elements(jaSLWI.modulesText, { wait: false, =
duration: 250 });

		var obj =3D {};
			jaSLWI.modules.each(function(module, i) {
				jaSLWI.modulesText[i].collapseH =3D =
module.getElementsByTagName('H3')[0].offsetHeight;
				obj[i] =3D { 'height': =
[jaSLWI.modulesText[i].getStyle('height').toInt(), =
jaSLWI.modulesText[i].collapseH]};
				module.addEvent('mouseenter', function(e) {
					var obj =3D {};
					obj[i] =3D { 'height': =
[jaSLWI.modulesText[i].getStyle('height').toInt(), jaSLWI.expandH]};
					jaSLWI.modules.each(function(other, j) {
						if (other !=3D module) {
							var h =3D jaSLWI.modulesText[j].getStyle('height').toInt();
							if (h !=3D jaSLWI.modulesText[j].collapseH) obj[j] =3D { =
'height': [h, jaSLWI.modulesText[j].collapseH] };
						}
					});
					x.start(obj);
				});

				module.addEvent('mouseleave', function(e) {
					var obj =3D {};
					jaSLWI.modules.each(function(other, j) {
						obj[j] =3D { 'height': =
[jaSLWI.modulesText[j].getStyle('height').toInt(), =
jaSLWI.modulesText[j].collapseH]};
					});
					x.start(obj);
				});
			});
			x.start(obj);
		}
	}

	window.addEvent('domready', jaSLWI.jaSLWIInit);
}

------=_NextPart_000_0000_01C9C2B0.3B521EC0
Content-Type: application/octet-stream
Content-Transfer-Encoding: quoted-printable
Content-Location: http://www.statcounter.com/counter/counter.js

var sc_width=3Dscreen.width;var sc_height=3Dscreen.height;var =
sc_referer=3D""+document.referrer;try{sc_referer=3D""+parent.document.ref=
errer}catch(ex){sc_referer=3D""+document.referrer}var sc_unique=3D0;var =
sc_returning=3D0;var sc_returns=3D0;var sc_error=3D0;var =
sc_remove=3D0;var sc_cls=3D-1;var sc_inv=3D0;var sc_os=3D"";var =
sc_title=3D"";var sc_url=3D"";var sc_base_dir=3D"";var =
sc_click_dir=3D"";var sc_link_back_start=3D"";var =
sc_link_back_end=3D"";var sc_security_code=3D"";var =
sc_http_url=3D"http";var =
sc_host=3D"statcounter.com";if(window.sc_invisible){if(window.sc_invisibl=
e=3D=3D1){sc_inv=3D1}}if(window.sc_click_stat){sc_cls=3Dwindow.sc_click_s=
tat}if(window.sc_https){if(sc_https=3D=3D1){sc_doc_loc=3D''+document.loca=
tion;myRE=3Dnew =
RegExp("^https","i");if(sc_doc_loc.match(myRE)){sc_http_url=3D"https"}}}i=
f(window.sc_local){sc_base_dir=3Dsc_local}else{if(window.sc_partition){if=
(sc_cls=3D=3D-1&&sc_partition=3D=3D3){sc_cls=3D1}var =
sc_counter=3D"";if(window.sc_partition!=3D34&&sc_partition<=3D45){sc_coun=
ter=3Dsc_partition+1}sc_base_dir=3Dsc_http_url+"://c"+sc_counter+"."+sc_h=
ost+"/"}else{sc_base_dir=3Dsc_http_url+"://c1."+sc_host+"/"}}sc_click_dir=
=3Dsc_base_dir;if(window.sc_text){sc_base_dir+=3D"text.php?"}else{sc_base=
_dir+=3D"t.php?"}if(window.sc_project){sc_base_dir+=3D"sc_project=3D"+sc_=
project}else =
if(window.usr){sc_base_dir+=3D"usr=3D"+usr}else{sc_error=3D1}if(window.sc=
_remove_link){sc_link_back_start=3D"";sc_link_back_end=3D""}else{sc_link_=
back_start=3D"<a class=3D\"statcounter\" =
href=3D\"http://www."+sc_host+"\" =
target=3D\"_blank\">";sc_link_back_end=3D"<\/a>"}sc_date=3Dnew =
Date();sc_time=3Dsc_date.getTime();sc_time_difference=3D3600000;sc_title=3D=
""+document.title;sc_url=3D""+document.location;sc_referer=3Dsc_referer.s=
ubstring(0,255);sc_title=3Dsc_title.substring(0,150);sc_url=3Dsc_url.subs=
tring(0,150);sc_referer=3Descape(sc_referer);if(encodeURIComponent){sc_ti=
tle=3DencodeURIComponent(sc_title)}else{sc_title=3Descape(sc_title)}sc_ur=
l=3Descape(sc_url);if(window.sc_security){sc_security_code=3Dsc_security}=
var =
sc_tracking_url=3Dsc_base_dir+"&resolution=3D"+sc_width+"&h=3D"+sc_height=
+"&camefrom=3D"+sc_referer+"&u=3D"+sc_url+"&t=3D"+sc_title+"&java=3D1&sec=
urity=3D"+sc_security_code+"&sc_random=3D"+Math.random();var =
sc_clstr=3D"<span class=3D\"statcounter\">";var sc_cltext=3D"\" =
alt=3D\"StatCounter - Free Web Tracker and Counter\" =
border=3D\"0\">";var sc_strout=3Dsc_clstr+sc_link_back_start+"<img =
src=3D\""+sc_tracking_url+sc_cltext+sc_link_back_end+"</span>";if(sc_erro=
r=3D=3D1){document.writeln("Code corrupted. Insert fresh copy.")}else =
if(sc_remove=3D=3D1){}else{if(sc_inv=3D=3D1){if(window.sc_call){sc_call++=
}else{sc_call=3D1}eval("var sc_img"+sc_call+" =3D new =
Image();sc_img"+sc_call+".src =3D =
\""+sc_tracking_url+"&invisible=3D1\"")}else =
if(window.sc_text){document.writeln('<scr'+'ipt =
language=3D"JavaScript"'+' =
src=3D'+sc_tracking_url+"&text=3D"+sc_text+'></scr'+'ipt>')}else{document=
.writeln(sc_strout)}}if(sc_cls>0){if(clickstat_done!=3D1){var =
clickstat_done=3D1;var clickstat_project=3Dwindow.sc_project;var =
clickstat_security=3Dwindow.sc_security_code;var =
dlext=3D"7z|aac|avi|csv|doc|exe|flv|gif|gz|jpe?g|js|mp(3|4|e?g)|mov|pdf|p=
hps|png|ppt|rar|sit|tar|torrent|txt|wma|wmv|xls|xml|zip";if(typeof(window=
.sc_download_type)=3D=3D'string'){dlext=3Dwindow.sc_download_type}var =
ltype=3D"https?|ftp|telnet|ssh|ssl|mailto";var =
second=3D"ac|co|gov|ltd|me|mod|net|nic|nhs|org|plc|police|sch|com";var =
dl=3Dnew RegExp("\\.("+dlext+")$","i");var lnk=3Dnew =
RegExp("^("+ltype+"):","i");var domsec=3Dnew =
RegExp("\^("+second+")$","i");var =
host_name=3Dlocation.host.replace(/^www\./i,"");var =
host_splitted=3Dhost_name.split(".");var =
domain=3Dhost_splitted.pop();var =
host_split=3Dhost_splitted.pop();if(domsec.test(host_split)){domain=3Dhos=
t_split+"."+domain;host_split=3Dhost_splitted.pop()}domain=3Dhost_split+"=
."+domain;var lnklocal_mask=3D"^https?:\/\/(.*)"+domain;var =
lnklocal=3Dnew =
RegExp(lnklocal_mask,"i");if(document.getElementsByTagName){var =
anchors=3Ddocument.getElementsByTagName('a');for(var =
i=3D0;i<anchors.length;i++){var =
anchor=3Danchors[i];if(anchor.onmousedown){var =
original_click=3Danchor.onmousedown;var =
s=3Doriginal_click.toString().split("\n").join(" ");var =
bs=3Ds.indexOf('{');var head=3Ds.substr(0,bs);var =
ps=3Dhead.indexOf('(');var pe=3Dhead.indexOf(')');var =
params=3Dhead.substring(ps+1,pe);var plist=3Dparams.split(",");var =
body=3Ds.substr(bs+1,s.length-bs-2);var =
insert=3D"sc_clickstat_call(this,'"+sc_click_dir+"');";var =
final_body=3Dinsert+body;var ev_head=3D"new Function (";var =
ev_params=3D"";var ev_sep=3D"";for(var =
sc_i=3D0;sc_i<plist.length;sc_i++){ev_params=3Dev_sep+"'"+plist[sc_i]+"'"=
;ev_sep=3D","}if(ev_sep=3D=3D","){ev_params+=3D","}var =
ev_foot=3D"final_body);";var =
ev_final=3Dev_head+ev_params+ev_foot;anchor.onmousedown=3Deval(ev_final)}=
else{anchor.onmousedown=3Dnew =
Function("event","sc_clickstat_call(this,'"+sc_click_dir+"');return =
true;")}}}function sc_none(){return}function sc_delay(){var =
d=3Dtypeof(window.sc_delay)!=3D"undefined"?sc_delay:250;var n=3Dnew =
Date();var t=3Dn.getTime()+d;while(n.getTime()<t){var n=3Dnew =
Date()}}function sc_clickstat_call(adata,sc_click_dir){if(adata){var =
clickmode=3D0;if(lnk.test(adata)){if((lnklocal.test(adata))){if(dl.test(a=
data)){clickmode=3D1}else{if(sc_cls=3D=3D2){clickmode=3D2}}}else{clickmod=
e=3D2}}if(clickmode!=3D0){var =
sc_link=3Descape(adata);if(sc_link.length>0){var =
sc_req=3Dsc_click_dir+"click.gif?sc_project=3D"+clickstat_project+"&secur=
ity=3D"+clickstat_security+"&c=3D"+sc_link+"&m=3D"+clickmode+"&u=3D"+sc_u=
rl+"&t=3D"+sc_title+"&rand=3D"+Math.random();var sc_req_image=3Dnew =
Image();sc_req_image.onload=3Dsc_none;sc_req_image.src=3Dsc_req;sc_delay(=
)}}}}var =
sc_gsyn_pattern=3D'googlesyndication\.com|ypn-js\.overture\.com|googleads=
\.g\.doubleclick\.net';var sc_px;var sc_py;function =
sc_adsense_click(sc_data){var sc_link=3Descape(sc_data.src);var i=3Dnew =
Image();var =
sc_req=3Dsc_click_dir+"click.gif?sc_project=3D"+clickstat_project+"&secur=
ity=3D"+clickstat_security+"&c=3D"+sc_link+"&m=3D2&u=3D"+sc_url+"&t=3D"+s=
c_title+"&rand=3D"+Math.random();i.src=3Dsc_req;sc_delay()}function =
sc_adsense_init(){if(document.all&&typeof =
window.opera=3D=3D"undefined"){var =
el=3Ddocument.getElementsByTagName("iframe");for(var =
i=3D0;i<el.length;i++){if(el[i].src.match(sc_gsyn_pattern)){el[i].onfocus=
=3Dfunction(){sc_adsense_click(this)}}}}else{if(typeof =
window.addEventListener!=3D"undefined"){window.addEventListener("unload",=
sc_exitpage,false);window.addEventListener("mousemove",sc_getmouse,true)}=
}}if(typeof =
window.addEventListener!=3D'undefined'){window.addEventListener('load',sc=
_adsense_init,false)}else{if(typeof =
document.addEventListener!=3D'undefined'){document.addEventListener('load=
',sc_adsense_init,false)}else{if(typeof =
window.attachEvent!=3D'undefined'){window.attachEvent('onload',sc_adsense=
_init)}else{if(typeof window.onload=3D=3D'function'){var =
sc_existing=3Donload;window.onload=3Dfunction(){sc_existing();sc_adsense_=
init()}}else{window.onload=3Dsc_adsense_init}}}}function =
sc_getmouse(e){if(typeof =
e.pageX=3D=3D"number"){sc_px=3De.pageX;sc_py=3De.pageY}else{if(typeof =
e.clientX=3D=3D"number"){sc_px=3De.clientX;sc_py=3De.clientY;if(document.=
body&&(document.body.scrollLeft||document.body.scrollTop)){sc_px+=3Ddocum=
ent.body.scrollLeft;sc_py+=3Ddocument.body.scrollTop}else{if(document.doc=
umentElement&&(document.documentElement.scrollLeft||document.documentElem=
ent.scrollTop)){sc_px+=3Ddocument.documentElement.scrollLeft;sc_py+=3Ddoc=
ument.documentElement.scrollTop}}}}}function sc_findy(obj){var =
y=3D0;while(obj){y+=3Dobj.offsetTop;obj=3Dobj.offsetParent}return(y)}func=
tion sc_findx(obj){var =
x=3D0;while(obj){x+=3Dobj.offsetLeft;obj=3Dobj.offsetParent}return(x)}fun=
ction =
sc_exitpage(e){ad=3Ddocument.getElementsByTagName("iframe");if(typeof =
sc_px=3D=3D"undefined"){return}for(i=3D0;i<ad.length;i++){var =
adLeft=3Dsc_findx(ad[i]);var adTop=3Dsc_findy(ad[i]);var =
adW=3DparseInt(adLeft)+parseInt(ad[i].width)+15;var =
adH=3DparseInt(adTop)+parseInt(ad[i].height)+10;var =
inFrameX=3D(sc_px>(adLeft-10)&&sc_px<adW);var =
inFrameY=3D(sc_py>(adTop-10)&&sc_py<adH);if(inFrameY&&inFrameX){if(ad[i].=
src.match(sc_gsyn_pattern)){sc_adsense_click(ad[i])}}}}}}
------=_NextPart_000_0000_01C9C2B0.3B521EC0--

