From: Subject: Ledger-Enquirer.com | 05/09/2008 | Father walks to grieve for his children Date: Sat, 10 May 2008 21:51:22 -0400 MIME-Version: 1.0 Content-Type: multipart/related; type="text/html"; boundary="----=_NextPart_000_0000_01C8B2E7.FC64C0B0" X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3198 This is a multi-part message in MIME format. ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.ledger-enquirer.com/news/story/317778.html Ledger-Enquirer.com | 05/09/2008 | Father walks to = grieve for his children
3D"Columbus=20
Search =20
Lo= gout |=20 Memb= er=20 Center | Plac= e a=20 Classified Ad =20
  • Home
  • News
  • Sports
  • Business
  • Life
  • Blogs
  • Opinion
  • Jobs =
  • Real Estate =
  • Cars =
  • Classifieds =
  • Shopp= ing=20
  • Contests<= /A>=20
  • Columbus = Connect=20
News =

News  

Posted on Fri, May. 09, 2008

Father walks to grieve for his children

Man hopes to raise awareness, scholarship funds with 380-mile = trek

BY BRAD BARNES - bbarnes@ledger-enquirer.com --=20

3D"Lee
Lee Wagner
Jillian Wagner"=20 href=3D"http://media.ledger-enquirer.com/smedia/2008/05/09/06/394-Jillian= _Wagner.standalone.prod_affiliate.70.jpg"=20 rel=3DstoryImg>3D"Jillian

3D"Quick=20
=20
Enter Keyword(s):
=20
Enter a City:
=20
Select a State:

Select a Category:
=20
  • Advanced=20 Job Search=20
  • Search=20 by Category

"This ol' dog's gonna tear me up," says Lee Wagner, 55, who's out of = breath=20 from walking as he talks into his cell phone. The dog barks in the=20 background.

"That's OK, I've got my son's 9-iron with me," he says. "That'll = protect=20 me."

His son is dead. So is his daughter. Both died in a freak single-car = accident=20 four years ago in LaGrange, Ga.

They're the reason he's on the road today, hoofing it to North = Carolina,=20 beating off the occasional stray dog or redneck hurtling a beer bottle. = His=20 journey ends Sunday, on Mother's Day, the day that Wagner and his wife = -- the=20 kids' mother -- lost their two teens.

=95 =95 =95 

Walk it off.

That's what a coach might tell a football player who got the wind = knocked out=20 of him or suffered a stinger on the field.

And that's what Wagner's doing. He's going from his home in Peachtree = City,=20 Ga., to Bethesda, N.C., trying to walk off the sting of death.

On the fateful day in 2004, Jillian Wagner, 18, and her brother, Lee, = 16,=20 were heading home from their grandparents' house in Columbus. Their own = parents=20 -- Lee and wife Debbie -- drove separately and headed home later, only = learning=20 of the wreck after they were home.

With the walk, the elder Lee hopes to raise awareness about the = danger of=20 SUVs in the hands of inexperienced drivers and about making good choices = in=20 general. He's also hoping to bolster the money in a scholarship fund the = parents=20 created with the kids' college funds.

Wagner says the wreck happened when Jillian, who was driving, made a = sudden,=20 evasive move on Interstate 85 to avoid a car merging from an on-ramp. = Her Jeep=20 Cherokee spun sideways before momentum toppled the vehicle and rolled it = like a=20 die on the felt of a craps table. Both kids were wearing seat belts, but = both=20 were ejected.

"You gotta always try to make the right choices," he says.

"My kids, they weren't drunk, they weren't on drugs. They weren't = speeding.=20 They weren't out late at night. The roads weren't wet," he says. "And = still=20 they're gone. Imagine what happens to the odds if you make bad choices = in=20 there."

The parents held two funerals, one in Peachtree City and one in = Bethesda,=20 their former home.

Last March, the father began walking and tracking the distance, with = the idea=20 of covering 380 miles, or the equivalent distance between the two = cities.

"I'm traveling their final journey," he told Debbie, a Columbus = native and=20 1975 Columbus High School graduate.

=95 =95 =95 

By April 30, he'd walked 178 miles, and he drove to the equivalent = spot on=20 U.S. 29 in South Carolina and started hoofing the rest of the trip on = the=20 highway, walking every day and staying with a string of friends he'd = lined up=20 along the route. He'll arrive at Bethesda United Methodist Church on = Sunday,=20 which is not only Mother's Day but also his birthday.

He's a sales director for Boyd Brothers Transportation. He conducts = what=20 business he can on the cell phone during the day, and he blogs his = progress and=20 works from his laptop at night.

His spirits typically are high.

"I think I've lost about 15 pounds so far. You can do that if you = just drink=20 water and eat energy bars," he says. "But every now and then I pass a = Dairy=20 Queen and there's a chocolate sundae calling my name. I blow that whole=20 day."

On Thursday he walked from the north city limits of Charlotte, N.C., = to China=20 Grove, which is about 25 miles and one of his longer stretches.

"I was a whipped puppy. My knees and hips were screaming," he says. = "It's=20 been great therapy for me."

But when he talks about his kids, he'll still break out in sobs.

"It'll always be tough," he says. "I tell grieving parents, 'We can = mourn=20 forever, every one of us.' We all belong, unfortunately, to that same = fraternity=20 -- the fraternity nobody wants."

Cable news host Nancy Grace has interviewed him, as have newspapers = in=20 Fayetteville, Ga., and Winston-Salem, N.C.

"The support of people I meet is just phenomenal."

That's aside, of course, from the hick in the pickup truck who = pitched a beer=20 bottle at him in Gaffney, S.C. No worries, though. The pitch was "high = and=20 away," he says.

And if there was any more trouble, he had his son's golf club at the=20 ready.

"I borrowed that from him," he says, "and he wouldn't mind a = bit."

Contact Brad Barnes at 706-571-8524

------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: image/jpeg Content-Transfer-Encoding: base64 Content-Location: http://media.ledger-enquirer.com/images/logos/head_bulleter_01.jpg /9j/4AAQSkZJRgABAgEASABIAAD/4QbERXhpZgAATU0AKgAAAAgABwESAAMAAAABAAEAAAEaAAUA AAABAAAAYgEbAAUAAAABAAAAagEoAAMAAAABAAIAAAExAAIAAAAUAAAAcgEyAAIAAAAUAAAAhodp AAQAAAABAAAAnAAAAMgAAABIAAAAAQAAAEgAAAABQWRvYmUgUGhvdG9zaG9wIDcuMAAyMDA4OjAz OjIxIDE3OjMwOjE2AAAAAAOgAQADAAAAAf//AACgAgAEAAAAAQAAAH2gAwAEAAAAAQAAABYAAAAA AAAABgEDAAMAAAABAAYAAAEaAAUAAAABAAABFgEbAAUAAAABAAABHgEoAAMAAAABAAIAAAIBAAQA AAABAAABJgICAAQAAAABAAAFlgAAAAAAAABIAAAAAQAAAEgAAAAB/9j/4AAQSkZJRgABAgEASABI AAD/7QAMQWRvYmVfQ00AAv/uAA5BZG9iZQBkgAAAAAH/2wCEAAwICAgJCAwJCQwRCwoLERUPDAwP FRgTExUTExgRDAwMDAwMEQwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwBDQsLDQ4NEA4OEBQO Dg4UFA4ODg4UEQwMDAwMEREMDAwMDAwRDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDP/AABEI ABYAfQMBIgACEQEDEQH/3QAEAAj/xAE/AAABBQEBAQEBAQAAAAAAAAADAAECBAUGBwgJCgsBAAEF AQEBAQEBAAAAAAAAAAEAAgMEBQYHCAkKCxAAAQQBAwIEAgUHBggFAwwzAQACEQMEIRIxBUFRYRMi cYEyBhSRobFCIyQVUsFiMzRygtFDByWSU/Dh8WNzNRaisoMmRJNUZEXCo3Q2F9JV4mXys4TD03Xj 80YnlKSFtJXE1OT0pbXF1eX1VmZ2hpamtsbW5vY3R1dnd4eXp7fH1+f3EQACAgECBAQDBAUGBwcG BTUBAAIRAyExEgRBUWFxIhMFMoGRFKGxQiPBUtHwMyRi4XKCkkNTFWNzNPElBhaisoMHJjXC0kST VKMXZEVVNnRl4vKzhMPTdePzRpSkhbSVxNTk9KW1xdXl9VZmdoaWprbG1ub2JzdHV2d3h5ent8f/ 2gAMAwEAAhEDEQA/APVEiYEpQg5Vra6XkmDBifGElNTqPVKsXEtvFgYaxO4tLx/mMLXOWR0n644+ R0N/XM4ijFYDLWtcXCDsP51m7dK5nJ+sbt1lD93drokafFUW/suzGdUWObjvbtdS6yzbA927aX+3 btTbXU9rZ9d8Ou9rXUWeg5ge9/D2S40/pKXN+jv/ANG5Wj9b+li41H1Nv6Vos2+0upG7IZ+9+jZ7 lwzsjAzCLnD1S0Bm71H6tad2x/u9/u/fQ3VtdkG02Qxz32FjZAPqD07mt3Pd/O/4RK0U98z63dNs rqfU2yw37xU1rdXFjfU9v9hD6v8AWvEwunPzaLGv9L6VZa5xJ59P2Fnp/wBdy5BlmMz7PsMfZZ9A 73y2RtInd7mub+8p5PUa8ljsOwte2wS6tpLSQP6u1yVlVPVY31qAxmZOawBuRb6dDaQSdZ2epu9v uapP+u3SGVV2kW7Xt9R/sMsYHig2P/687Z7VxQOFTYxuo2uFtbHWvIBafpsa9/7zlDIqw7WfZ2n0 rLGuraA9xJaXNyLPY53u9zd/8hK1U92frf0z7QcYCz1BZZVq3TdW31Hf9FCwvrpgZDKQW2Otsx2Z TyxhDRW7l+rnfQXIThuv+1Ag2OebA8PfBeR6b3Bs7fco1DEoI9JkbKfs4Ie/+a/0R9yVpp7yj60d MyG1uq9R3rFwqG0y7a31Zb/YWnXkVWQGnU9ivMmXU1Nx2MDgMWfQh75bI2R9L6Oz2rZ6F1q+3qlV E6OOs+A9zv8AopWqnuU0phBEp4Cctf/Q9VVHqjanY5Fj9g8YJ/IvmNJJT65n4f1YdkvN2fax/wCc K2Xkf+B1lqrnC+qPoW7uo3ejtPq7q7/ox7uaf3V5Wkgl9Rvwfqdp63Ubp2tj9HkfRj2fQqQRg/Ub v1G6I0mvJiP5E1f9SvNEklfa+mnB+pR+j1LIGv5teT/6RKken/VD9DPU8jdtPo/o7922fd/gN/0l 5gkkr7X039n/AFLkbup3zJjdXfP0vdG6j99SfgfU/bTv6nkTNnozXfvn2+ts/Qep+6vMEklPqFXT /qhDtnU8g+x0zXdO2Pf6e6j/AKhDb076nmNnVcsN28CvIiPP9XXmaSSftfSh036nz/ytmfypryP+ l+rLf+qmJ9Xqr/1HNsyLN0/pmWh3wHrV1e1eLJJIL9UMjYI4hSXyqkih/9n/7QwEUGhvdG9zaG9w IDMuMAA4QklNBAQAAAAAAAccAgAAAgACADhCSU0EJQAAAAAAEEYM8okmuFbasJwBobCnkHc4QklN A+kAAAAAAHgAAwAAAEgASAAAAAAC3gJA/+7/7gMGAlIDZwUoA/wAAgAAAEgASAAAAAAC2AIoAAEA AABkAAAAAQADAwMAAAABf/8AAQABAAAAAAAAAAAAAAAAaAgAGQGQAAAAAAAgAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAA4QklNA+0AAAAAABAASAAAAAEAAQBIAAAAAQABOEJJTQQmAAAAAAAOAAAA AAAAAAAAAD+AAAA4QklNBA0AAAAAAAQAAAAeOEJJTQQZAAAAAAAEAAAAHjhCSU0D8wAAAAAACQAA AAAAAAAAAQA4QklNBAoAAAAAAAEAADhCSU0nEAAAAAAACgABAAAAAAAAAAE4QklNA/UAAAAAAEgA L2ZmAAEAbGZmAAYAAAAAAAEAL2ZmAAEAoZmaAAYAAAAAAAEAMgAAAAEAWgAAAAYAAAAAAAEANQAA AAEALQAAAAYAAAAAAAE4QklNA/gAAAAAAHAAAP////////////////////////////8D6AAAAAD/ ////////////////////////////A+gAAAAA/////////////////////////////wPoAAAAAP// //////////////////////////8D6AAAOEJJTQQIAAAAAAAQAAAAAQAAAkAAAAJAAAAAADhCSU0E HgAAAAAABAAAAAA4QklNBBoAAAAAA1UAAAAGAAAAAAAAAAAAAAAWAAAAfQAAABAAaABlAGEAZABf AGIAdQBsAGwAZQB0AGUAcgBfADAAMQAAAAEAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAA fQAAABYAAAAAAAAAAAAAAAAAAAAAAQAAAAAAAAAAAAAAAAAAAAAAAAAQAAAAAQAAAAAAAG51bGwA AAACAAAABmJvdW5kc09iamMAAAABAAAAAAAAUmN0MQAAAAQAAAAAVG9wIGxvbmcAAAAAAAAAAExl ZnRsb25nAAAAAAAAAABCdG9tbG9uZwAAABYAAAAAUmdodGxvbmcAAAB9AAAABnNsaWNlc1ZsTHMA AAABT2JqYwAAAAEAAAAAAAVzbGljZQAAABIAAAAHc2xpY2VJRGxvbmcAAAAAAAAAB2dyb3VwSURs b25nAAAAAAAAAAZvcmlnaW5lbnVtAAAADEVTbGljZU9yaWdpbgAAAA1hdXRvR2VuZXJhdGVkAAAA AFR5cGVlbnVtAAAACkVTbGljZVR5cGUAAAAASW1nIAAAAAZib3VuZHNPYmpjAAAAAQAAAAAAAFJj dDEAAAAEAAAAAFRvcCBsb25nAAAAAAAAAABMZWZ0bG9uZwAAAAAAAAAAQnRvbWxvbmcAAAAWAAAA AFJnaHRsb25nAAAAfQAAAAN1cmxURVhUAAAAAQAAAAAAAG51bGxURVhUAAAAAQAAAAAAAE1zZ2VU RVhUAAAAAQAAAAAABmFsdFRhZ1RFWFQAAAABAAAAAAAOY2VsbFRleHRJc0hUTUxib29sAQAAAAhj ZWxsVGV4dFRFWFQAAAABAAAAAAAJaG9yekFsaWduZW51bQAAAA9FU2xpY2VIb3J6QWxpZ24AAAAH ZGVmYXVsdAAAAAl2ZXJ0QWxpZ25lbnVtAAAAD0VTbGljZVZlcnRBbGlnbgAAAAdkZWZhdWx0AAAA C2JnQ29sb3JUeXBlZW51bQAAABFFU2xpY2VCR0NvbG9yVHlwZQAAAABOb25lAAAACXRvcE91dHNl dGxvbmcAAAAAAAAACmxlZnRPdXRzZXRsb25nAAAAAAAAAAxib3R0b21PdXRzZXRsb25nAAAAAAAA AAtyaWdodE91dHNldGxvbmcAAAAAADhCSU0EEQAAAAAAAQEAOEJJTQQUAAAAAAAEAAAAAThCSU0E DAAAAAAFsgAAAAEAAAB9AAAAFgAAAXgAACBQAAAFlgAYAAH/2P/gABBKRklGAAECAQBIAEgAAP/t AAxBZG9iZV9DTQAC/+4ADkFkb2JlAGSAAAAAAf/bAIQADAgICAkIDAkJDBELCgsRFQ8MDA8VGBMT FRMTGBEMDAwMDAwRDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAENCwsNDg0QDg4QFA4ODhQU Dg4ODhQRDAwMDAwREQwMDAwMDBEMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwM/8AAEQgAFgB9 AwEiAAIRAQMRAf/dAAQACP/EAT8AAAEFAQEBAQEBAAAAAAAAAAMAAQIEBQYHCAkKCwEAAQUBAQEB AQEAAAAAAAAAAQACAwQFBgcICQoLEAABBAEDAgQCBQcGCAUDDDMBAAIRAwQhEjEFQVFhEyJxgTIG FJGhsUIjJBVSwWIzNHKC0UMHJZJT8OHxY3M1FqKygyZEk1RkRcKjdDYX0lXiZfKzhMPTdePzRieU pIW0lcTU5PSltcXV5fVWZnaGlqa2xtbm9jdHV2d3h5ent8fX5/cRAAICAQIEBAMEBQYHBwYFNQEA AhEDITESBEFRYXEiEwUygZEUobFCI8FS0fAzJGLhcoKSQ1MVY3M08SUGFqKygwcmNcLSRJNUoxdk RVU2dGXi8rOEw9N14/NGlKSFtJXE1OT0pbXF1eX1VmZ2hpamtsbW5vYnN0dXZ3eHl6e3x//aAAwD AQACEQMRAD8A9USJgSlCDlWtrpeSYMGJ8YSU1Oo9UqxcS28WBhrE7i0vH+Ywtc5ZHSfrjj5HQ39c ziKMVgMta1xcIOw/nWbt0rmcn6xu3WUP3d2uiRp8VRb+y7MZ1RY5uO9u11LrLNsD3btpf7du1Ntd T2tn13w672tdRZ6DmB738PZLjT+kpc36O/8A0blaP1v6WLjUfU2/pWizb7S6kbshn736NnuXDOyM DMIucPVLQGbvUfq1p3bH+73+799DdW12QbTZDHPfYWNkA+oPTua3c9387/hErRT3zPrd02yup9Tb LDfvFTWt1cWN9T2/2EPq/wBa8TC6c/Nosa/0vpVlrnEnn0/YWen/AF3LkGWYzPs+wx9ln0DvfLZG 0id3ua5v7ynk9RryWOw7C17bBLq2ktJA/q7XJWVU9VjfWoDGZk5rAG5Fvp0NpBJ1nZ6m72+5qk/6 7dIZVXaRbte31H+wyxgeKDY//rztntXFA4VNjG6ja4W1sda8gFp+mxr3/vOUMirDtZ9nafSssa6t oD3Elpc3Is9jne73N3/yErVT3Z+t/TPtBxgLPUFllWrdN1bfUd/0ULC+umBkMpBbY62zHZlPLGEN FbuX6ud9BchOG6/7UCDY55sDw98F5HpvcGzt9yjUMSgj0mRsp+zgh7/5r/RH3JWmnvKPrR0zIbW6 r1HesXCobTLtrfVlv9hadeRVZAadT2K8yZdTU3HYwOAxZ9CHvlsjZH0vo7PatnoXWr7eqVUTo46z 4D3O/wCilaqe5TSmEESngJy1/9D1VUeqNqdjkWP2Dxgn8i+Y0klPrmfh/Vh2S83Z9rH/AJwrZeR/ 4HWWqucL6o+hbu6jd6O0+rurv+jHu5p/dXlaSCX1G/B+p2nrdRuna2P0eR9GPZ9CpBGD9Ru/Uboj Sa8mI/kTV/1K80SSV9r6acH6lH6PUsga/m15P/pEqR6f9UP0M9TyN20+j+jv3bZ93+A3/SXmCSSv tfTf2f8AUuRu6nfMmN1d8/S90bqP31J+B9T9tO/qeRM2ejNd++fb62z9B6n7q8wSSU+oVdP+qEO2 dTyD7HTNd07Y9/p7qP8AqENvTvqeY2dVyw3bwK8iI8/1deZpJJ+19KHTfqfP/K2Z/KmvI/6X6st/ 6qYn1eqv/Uc2zIs3T+mZaHfAetXV7V4skkgv1QyNgjiFJfKqSKH/2ThCSU0EIQAAAAAAVQAAAAEB AAAADwBBAGQAbwBiAGUAIABQAGgAbwB0AG8AcwBoAG8AcAAAABMAQQBkAG8AYgBlACAAUABoAG8A dABvAHMAaABvAHAAIAA3AC4AMAAAAAEAOEJJTQQGAAAAAAAHAAYAAAABAQD/4RuSaHR0cDovL25z LmFkb2JlLmNvbS94YXAvMS4wLwA8P3hwYWNrZXQgYmVnaW49J++7vycgaWQ9J1c1TTBNcENlaGlI enJlU3pOVGN6a2M5ZCc/Pgo8P2Fkb2JlLXhhcC1maWx0ZXJzIGVzYz0iQ1IiPz4KPHg6eGFwbWV0 YSB4bWxuczp4PSdhZG9iZTpuczptZXRhLycgeDp4YXB0az0nWE1QIHRvb2xraXQgMi44LjItMzMs IGZyYW1ld29yayAxLjUnPgo8cmRmOlJERiB4bWxuczpyZGY9J2h0dHA6Ly93d3cudzMub3JnLzE5 OTkvMDIvMjItcmRmLXN5bnRheC1ucyMnIHhtbG5zOmlYPSdodHRwOi8vbnMuYWRvYmUuY29tL2lY LzEuMC8nPgoKIDxyZGY6RGVzY3JpcHRpb24gYWJvdXQ9J3V1aWQ6Yzk5ODcxODMtZjc4ZC0xMWRj LWI5NzAtODdmODNkZjk3ODQ1JwogIHhtbG5zOmV4aWY9J2h0dHA6Ly9ucy5hZG9iZS5jb20vZXhp Zi8xLjAvJz4KICA8ZXhpZjpQaXhlbFhEaW1lbnNpb24+MTI1PC9leGlmOlBpeGVsWERpbWVuc2lv bj4KICA8ZXhpZjpQaXhlbFlEaW1lbnNpb24+Mjc8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogIDxl eGlmOkNvbG9yU3BhY2U+LTE8L2V4aWY6Q29sb3JTcGFjZT4KICA8ZXhpZjpOYXRpdmVEaWdlc3Q+ MzY4NjQsNDA5NjAsNDA5NjEsMzcxMjEsMzcxMjIsNDA5NjIsNDA5NjMsMzc1MTAsNDA5NjQsMzY4 NjcsMzY4NjgsMzM0MzQsMzM0MzcsMzQ4NTAsMzQ4NTIsMzQ4NTUsMzQ4NTYsMzczNzcsMzczNzgs MzczNzksMzczODAsMzczODEsMzczODIsMzczODMsMzczODQsMzczODUsMzczODYsMzczOTYsNDE0 ODMsNDE0ODQsNDE0ODYsNDE0ODcsNDE0ODgsNDE0OTIsNDE0OTMsNDE0OTUsNDE3MjgsNDE3Mjks NDE3MzAsNDE5ODUsNDE5ODYsNDE5ODcsNDE5ODgsNDE5ODksNDE5OTAsNDE5OTEsNDE5OTIsNDE5 OTMsNDE5OTQsNDE5OTUsNDE5OTYsNDIwMTYsMCwyLDQsNSw2LDcsOCw5LDEwLDExLDEyLDEzLDE0 LDE1LDE2LDE3LDE4LDIwLDIyLDIzLDI0LDI1LDI2LDI3LDI4LDMwOzlFRDkwOERFNEU3MkY3MjZG RjkxOTMzNDIxMTk5MDQ2PC9leGlmOk5hdGl2ZURpZ2VzdD4KIDwvcmRmOkRlc2NyaXB0aW9uPgoK IDxyZGY6RGVzY3JpcHRpb24gYWJvdXQ9J3V1aWQ6Yzk5ODcxODMtZjc4ZC0xMWRjLWI5NzAtODdm ODNkZjk3ODQ1JwogIHhtbG5zOnBkZj0naHR0cDovL25zLmFkb2JlLmNvbS9wZGYvMS4zLyc+CiAg PCEtLSBwZGY6Q3JlYXRpb25EYXRlIGlzIGFsaWFzZWQgLS0+CiAgPCEtLSBwZGY6TW9kRGF0ZSBp cyBhbGlhc2VkIC0tPgogIDwhLS0gcGRmOkNyZWF0b3IgaXMgYWxpYXNlZCAtLT4KIDwvcmRmOkRl c2NyaXB0aW9uPgoKIDxyZGY6RGVzY3JpcHRpb24gYWJvdXQ9J3V1aWQ6Yzk5ODcxODMtZjc4ZC0x MWRjLWI5NzAtODdmODNkZjk3ODQ1JwogIHhtbG5zOnBob3Rvc2hvcD0naHR0cDovL25zLmFkb2Jl LmNvbS9waG90b3Nob3AvMS4wLyc+CiAgPHBob3Rvc2hvcDpDb2xvck1vZGU+MzwvcGhvdG9zaG9w OkNvbG9yTW9kZT4KICA8cGhvdG9zaG9wOkhpc3Rvcnk+PC9waG90b3Nob3A6SGlzdG9yeT4KIDwv cmRmOkRlc2NyaXB0aW9uPgoKIDxyZGY6RGVzY3JpcHRpb24gYWJvdXQ9J3V1aWQ6Yzk5ODcxODMt Zjc4ZC0xMWRjLWI5NzAtODdmODNkZjk3ODQ1JwogIHhtbG5zOnRpZmY9J2h0dHA6Ly9ucy5hZG9i ZS5jb20vdGlmZi8xLjAvJz4KICA8dGlmZjpPcmllbnRhdGlvbj4xPC90aWZmOk9yaWVudGF0aW9u PgogIDx0aWZmOlhSZXNvbHV0aW9uPjcyMDAwMC8xMDAwMDwvdGlmZjpYUmVzb2x1dGlvbj4KICA8 dGlmZjpZUmVzb2x1dGlvbj43MjAwMDAvMTAwMDA8L3RpZmY6WVJlc29sdXRpb24+CiAgPHRpZmY6 UmVzb2x1dGlvblVuaXQ+MjwvdGlmZjpSZXNvbHV0aW9uVW5pdD4KICA8dGlmZjpOYXRpdmVEaWdl c3Q+MjU2LDI1NywyNTgsMjU5LDI2MiwyNzQsMjc3LDI4NCw1MzAsNTMxLDI4MiwyODMsMjk2LDMw MSwzMTgsMzE5LDUyOSw1MzIsMzA2LDI3MCwyNzEsMjcyLDMwNSwzMTUsMzM0MzI7Qzk5MTRGMEEz REUzMzRDQzMxNjI2M0IyQkQ5NzcxOEU8L3RpZmY6TmF0aXZlRGlnZXN0PgogPC9yZGY6RGVzY3Jp cHRpb24+CgogPHJkZjpEZXNjcmlwdGlvbiBhYm91dD0ndXVpZDpjOTk4NzE4My1mNzhkLTExZGMt Yjk3MC04N2Y4M2RmOTc4NDUnCiAgeG1sbnM6eGFwPSdodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8x LjAvJz4KICA8eGFwOkNyZWF0ZURhdGU+MjAwOC0wMy0yMVQxNDo0Mzo1MS0wNDowMDwveGFwOkNy ZWF0ZURhdGU+CiAgPHhhcDpNb2RpZnlEYXRlPjIwMDgtMDMtMjFUMTQ6NTQ6MTgtMDQ6MDA8L3hh cDpNb2RpZnlEYXRlPgogIDx4YXA6TWV0YWRhdGFEYXRlPjIwMDgtMDMtMjFUMTQ6NTQ6MTgtMDQ6 MDA8L3hhcDpNZXRhZGF0YURhdGU+CiAgPHhhcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3Ag Q1MyIE1hY2ludG9zaDwveGFwOkNyZWF0b3JUb29sPgogIDwhLS0geGFwOkZvcm1hdCBpcyBhbGlh c2VkIC0tPgogPC9yZGY6RGVzY3JpcHRpb24+CgogPHJkZjpEZXNjcmlwdGlvbiBhYm91dD0ndXVp ZDpjOTk4NzE4My1mNzhkLTExZGMtYjk3MC04N2Y4M2RmOTc4NDUnCiAgeG1sbnM6eGFwTU09J2h0 dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8nPgogIDx4YXBNTTpEb2N1bWVudElEPmFkb2Jl OmRvY2lkOnBob3Rvc2hvcDpjOTk4NzE4MS1mNzhkLTExZGMtYjk3MC04N2Y4M2RmOTc4NDU8L3hh cE1NOkRvY3VtZW50SUQ+CiAgPHhhcE1NOkluc3RhbmNlSUQ+dXVpZDpDNTQ0RTBDN0Y4RTgxMURD QjlCMkUwOEFCNzA1MzFCNDwveGFwTU06SW5zdGFuY2VJRD4KIDwvcmRmOkRlc2NyaXB0aW9uPgoK IDxyZGY6RGVzY3JpcHRpb24gYWJvdXQ9J3V1aWQ6Yzk5ODcxODMtZjc4ZC0xMWRjLWI5NzAtODdm ODNkZjk3ODQ1JwogIHhtbG5zOmRjPSdodHRwOi8vcHVybC5vcmcvZGMvZWxlbWVudHMvMS4xLyc+ CiAgPGRjOmZvcm1hdD5pbWFnZS9qcGVnPC9kYzpmb3JtYXQ+CiA8L3JkZjpEZXNjcmlwdGlvbj4K CjwvcmRmOlJERj4KPC94OnhhcG1ldGE+CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAK ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIAogICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgCiAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIAo8P3hwYWNrZXQgZW5kPSd3Jz8+/+4ADkFkb2JlAGRAAAAAAf/bAIQA AgICAgICAgICAgMCAgIDBAMCAgMEBQQEBAQEBQYFBQUFBQUGBgcHCAcHBgkJCgoJCQwMDAwMDAwM DAwMDAwMDAEDAwMFBAUJBgYJDQoJCg0PDg4ODg8PDAwMDAwPDwwMDAwMDA8MDAwMDAwMDAwMDAwM DAwMDAwMDAwMDAwMDAwM/8AAEQgAFgB9AwERAAIRAQMRAf/dAAQAEP/EAaIAAAAHAQEBAQEAAAAA AAAAAAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAAAQACAwQFBgcICQoLEAACAQMDAgQCBgcD BAIGAnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPBUtHhMxZi8CRygvElQzRTkqKyY3PCNUQn k6OzNhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3 R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZqbnJ2en5KjpKWmp6ipqqusra6voRAAIC AQIDBQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEyobHwFMHR4SNCFVJicvEzJDRDghaSUyWi Y7LCB3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp0+PzhJSktMTU5PRldYWVpbXF1eX1RlZm doaWprbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6 ytrq+v/aAAwDAQACEQMRAD8A+/XIYqsldUjdiwQKK8j2A74LV4z+Yv5oaZ5T8o65r6a1Dp8ukQPI bye1mvIQygkg29vJHI5IFAAw+eV+IzMbfO35Tf8AOYeg+ZPyQ1P8/fzBubfyz5M09JFlsba0uGu4 GhmEDkgS3BkV2deIRQRXeuHiRSrqH/Ob3k7S9dsLW48rau3l260uLUNR1WojvtN53j2LLdWMsasy eqBxaF36k0pQ4iSKLPW/5y9/K2HWX0qUautny1i3t9ZNqfQkutAj9bU7cADmrW8fxkkAMPsFjh4w mlW0/wCct/y41Ow0G+0ex1jVpPM5v00Gwt7YGa6awtjdsIgxUNyiUmvKg6NQ4PERwlKvzc/5ys8p +Rvy81Pz55d1eyvzolfruky2dzeSyycS/wBW/cSRCBjQ/G/JV/lwDItFA+W/+cqoYfLWmeZ/PWn2 8dt5s1z9E+UrLQY555WEnNoDctISlXj4E8T8JYq1GVgCMlrRRd5/zmv+UVnpmkarJFrbW1/ZvqWo cbFy+n2Md4mnyXFwCB8K3Mix0Tkd60474+IvCUzf/nLz8tf09c+WI4NUTV4tW1PRFL237v6zplqL uQkcgeJQimPiJ4Uj8l/85neQvMdl5chmstVutY1XyjY+ctSkstPdLaDTrokPOA8sjBYyNxyZvbDx heF6FoX/ADk9+WnmO20a40o6pcf4jluk8vw/U3V7wWtqt4zxA0BVom5A19jvth4wii9usfMOmakY kt5v3syhhE4owr2IPfAJXyWk9qKVrtk0KfqbVxV//9D788R+O+Ksc80anBpmjalNJKkMhtpVhZzQ cyhC19q4CNkjm/FDzH/zkZc/WNW0HUFu+LB7e9aBXUBDyDBXryrt1BGYtDucqnlMB/LDUPLV1o8u nXlt5Y1C0a1vPLV1q2qLatDARJ6hje5Kpw4A8lKnbr2LxIEGSXWveQvOsttrd0h1ye2gTTlvTqd6 xmt7dxKsFxScCZVf4qSV+eNleEJNcadBca/Jq0us+hYXmp3+pyaVbmVI3OpwC1vo4zJcOFW4SokK ryP7LLQHGyvCGfWOo+W7FfJ62b/Vz5HeQ+V5hqN6ZLX1omidOfqEyI8bcSrkgjamRIK8CaeZfzF0 /wA0WN35L1Oa11G21eMS32i21w9s9xHEykgmIxSUBpXifYnGivCGFxyeS9GvrC2o9u1lcxaxpGn3 WsX0saTW8jAXEEc1wwoHkZWA+Hl2wgkLwhKte0zydq1ovluCX9C6jq9lcabYxpf3Lzy2j3kWp3Sr BLKyyASRLJ0PCvw0w2V4QypZfKF3ra+bopbabVbjUptUTUYdSvBFJeTRC2nkSISen8ajiw409sBJ XgUNNh8peXpbcaXphgWw8u/4VikTUL5lbR61Fm/KY8gvYtuOxxsqYouz1rRtIt/J9lZRXscHkdpD 5T4alqDNah4/RKBjMWKGM8OLErTtgEk7PpT8ivzq1vWfzO0LQGdHgvZQLguxIEcf72QtsKHgpA9z k4y3RP1Dd+p0bLKisv2X3zKcVf6a/wCZP9cVf//R+/mKvL/zQt9LufL06apqDadAVP7705JCPoQM cVfj/wCfPKP/ADjJc+Zr+TWfzX13T9RIIvINN03zC8ANTvW2s3jrXrvkDTMcTDpfJX/OJA0TXfrf 5x+ZDof1Gf8AThuNM8x8fqnpn1q89PDU4deOQAja+pLdc8k/84dVh/TP5y+ZPU+qWZiK6X5lr9WC D0AfRsK0K9a70+1TJelPqY7H5J/5wcq3P85vMpQxt6HraX5r9MJyavoc7DjseX2MfSvqRU3kb/nC 2Xa3/OnzZbtzJL2mmeaiOrVX/jmuvy/DAeFRxI6byB/ziHx8tCT89PN31kWc48usul+YPrZg9YGU rx0r1ac9jyxqKTxJe3kD/nDASRm5/PTzQ0jST/Vxd6X5g5hjcVl9P1dKrxE2xptywelHqR155B/5 xB+r+XRe/nn5s9UTaqPLRfS/MH14yn0jfmA/ov16hQg+ED4TtthAim5L9L8gf84iKt/9R/PTza7N pt4JS+la+HW14n6wbb1NKB5fap6fxV7VwelNySiH8uv+cQX9NrH/AJyA8/w262zBkj0nzKYjF4vy 0gj/AFakHwx9K3JCp+W3/OH4dv8ArIb8xiyqProk0jzN8W5p63LRvu5Y+lFyfXP/ADin5U/5x70f W1HkH80NX82al9Y5ltd0/VoLylR8CfXbO2ITr0FPfLBw21m3672IjFpbiNuSBBRtxUU98khG4q// 2Q== ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: image/jpeg Content-Transfer-Encoding: base64 Content-Location: http://media.ledger-enquirer.com/images/logos/head_bulleter_02.jpg /9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAAZAAA/+4ADkFkb2JlAGTAAAAAAf/b AIQAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgICAgIC AwMDAwMDAwMDAwEBAQEBAQECAQECAgIBAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMD AwMDAwMDAwMDAwMDAwMDAwMD/8AAEQgACwB9AwERAAIRAQMRAf/EAKIAAAICAgMAAAAAAAAAAAAA AAcIBgkCCgMEBQEBAQEBAAAAAAAAAAAAAAAAAAgHCRAAAAQDAgoECggHAAAAAAAABAUGBwIDCAEU ABEVFjY3GDgJORITNRchQTM0VCVVZWYZIjJiY1YnZ2hSI2RFJkdIEQABAgMGBAMHBQAAAAAAAAAA AQIRAxMhBBQFBgcxEiIVFhcIQVEyIzNTNEMkRDU2/9oADAMBAAIRAxEAPwDcQ4krpr9laLHnc1rl IJSK6TXd1kNQgwxcNEl+WXXQqfMurDmoMeAm3soNhEi3rJUfRhm22w4orIbbNa2J09kuq91MryDU Eht5yifiaktVciOp3O8TGRVrmusexqpakVSCxSKLg/qa1XqHQ2yGd6p0reXXPPrrg6U5rWOVlTML pKfBsxr2LzS3vba1YItkFRFSm/hXVy1WP3VoTt87rwnC1RwlDLU1nkY4mSQGTMHlgMLMACbZ5Ony 0ZDFImTMcNnWWQ24/DZbhUXqI2j260dttNzvTWVyrrmjb3IYkxsyc5Ua9y8yQfMc3qRPdG2xUIs9 J2/G7W4O78nTmss5nX3JXXC8vWU6Vd2Ir5bWqxYy5THRRfZzQX2xGiqwqNeGh5Z1PPauQiid43Uz a1XrqiQel3uXxgz4E0p3o/WD4Caen2pTKj5MkRCKlGDMnoiSuCyQohhiKFSwYoxIxYwvLxEBnUs7 FTlWTsrOs6ntlGaW7YJKW3NezVIMGqjg0UpsjlEAe7hYV9OVNK3VT6UWSdhXQYuPgJIaJ9PwjymA 2N5JVZeg8yOQOkgT9F8RV3xx0yxy4iASyZaNXQvQgxq3b5NnjuA3qflm3NqVbmYjWrFljhJ44adK uYn6fZCxQp0eEimLVaWn0RZCKAjQEM4wAkibq6qoVSaoYOyKfS2ajK81EBN07KKy1xjNNs03FjAr N+zUuFKwGuZs17lVLLEXMLAppILkYAnC59scYKXBJthmgV602VrVFkAdxH+DKdHKhJENGPDqdhZt G6CzcVZL1bDXUXtSBCfJlmDY0V8oOlF0oZs4LIAmBiEUUaiNZJaUzJAazoDZYFnbC1lP+9lTiuSA NgxganJPu5UWw5mt4i8CXnSCWVPyjNk0Xq9SqMY5QiapiN3xyZGTS4kDJEsGlZeYk5hfjIIMnTAo AMaarurUYYmDdqpxGBMFau6u68UAiHHXDWKBFN+2jX0mrZRBQaLPColdmROXq0VpFJDTSqZaZFAg AQgDMzFZYiAR2CAMqhX5cqo9jOEM4SBTK/TFtYr8Jk/W7PoyopwWBMz5JKPhv1nP1JQw59GsiTiz lpxPrJFE53Jmh5YSE5jJg0E8PKgnxyoQDVUi7q/QaHYVAJtKvU1opO1TUAt2cLQ8VohWkqzTCwfJ rEqs0UFdM2Vxy4Lm2jSUxEFxyYHoeUKOMc6cIjmxzY4ogOd4KyX/ACKsCbT2zDBjHFTLeh6bzp1R dheAsOTVIv4u1Wl1Cq04oTRyUcARhO0ycTE42kzpxMpZauMAo8mgtKJ4WAYIAr7EcRB6p7oUx1SK EU10KSc/htVdvmimETqsVhOGbGBwar+GI2zcRVVD5xsflg86ZqSszPOFSBSYpsIY7FUWSAcNhfPG DgDoc8RiqEsWbhU8kiEaxyXxSFWbi05E7gNui1IbNofAG2o5puqfERzW5O3rT5yCcNQnL/RE4gll rERGQgiM2GQ2m0RVMkDAHFo2qWqCqRcKoCBx2wRTLoplDdnW6Gt2JMTFSPKTu64tIdKVUywT6sUB SaT25mErcTahRKf68ssFWmwoJ1sFoaSGsjMALBcAFXrSuuzM5V92frtiR3W7UmWO4nT9L9DPrIHr bF1mLJnU/wB5unS+h0sND2qqePbhS71z/Ph2nk7h+NOjh6nRw+rzfoVIdUDKN76Plhmlfw7S/bR7 7V7X+Zd4Yql8zj9Dl/k0Y9MSuCg3Im0CXXH5Tt4zVU2LZC7we+To3WR0rjnH6szexef4/p9Xi6Pj w3LeLF+C5lbzG5MRK/usNgeK8afXU+3Cz3k0+n/A+YkrD+UdTBz/APPYvuUIJ8Nboo/djbCEBgms 32aqOV3oOa6rd9nyhTvUeLMj0v7V3wkou0X8t3RouR35sZdm49kXQqpT63iu/pPuTPHABj0pvYUp csvdXl6K71/mSp3UsX/LP8P3F+wAj9M+u5XcqreYXW7Prs1Tr7S/9zPt34TypgB4AXWdRryjPLoz zXWboscbmn3/ALG913jAA3EfMZWfL51LFnYXMZ8kS6ZY/B3L+i/Zu+AAZfXs2rblJbwDL69ezdEi De2/cB+C/dF1wAI3E03eERy2dbKa5m27zoMvdCP1Y9me48qYARl5+Wmi+Vnoa0Wuflp9qkOLMv4M /CP9VdcAAO1/Y3Dn5HenC91X9i611Fy6Pjn298V3vACcC8vXmunNb5eOcmaFTOQtmDu22l8q5IaO 47QHfF+VGUrx0c/c4/UvVZAvf8jp4AIHR/lj5bdSedHyvc89qpA55bU2Y2y5lzZPpT6rvI7nvyEz jyFcsw8wv8d7vM2+s9b5UwA2AafP9q7u+m6G3fcePdtYPWrj8Oe/sL9Ns1sAGIwA/9k= ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: image/jpeg Content-Transfer-Encoding: base64 Content-Location: http://media.ledger-enquirer.com/images/logos/head_bulleter_03.jpg /9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAAZAAA/+4ADkFkb2JlAGTAAAAAAf/b AIQAAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQEBAQICAgICAgICAgIC AwMDAwMDAwMDAwEBAQEBAQECAQECAgIBAgIDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMD AwMDAwMDAwMDAwMDAwMDAwMD/8AAEQgACwB9AwERAAIRAQMRAf/EAKEAAAICAgMAAAAAAAAAAAAA AAgJBgcAAgQFCgEBAQEBAQAAAAAAAAAAAAAAAAgHCQYQAAEDAgMEBgIOCwAAAAAAAAYEBQcDCAEC NwARNjgUVRZmCTk0FxIiEzNTY1RkFWVWZxhoITFBUWElNUVGR0gRAAECAwQGCAcAAAAAAAAAAAAB AgMEBRE1BgcxQRITNDYhMlNjFGQ3CGFCM0PDRMT/2gAMAwEAAhEDEQA/APX94np8axhY1N5zHhS9 hZix4xr9Dkw44KGt6bcXKXgBocOhr0uenXoYLGtwrp6nscfbUqufLjvwxx22P2/0al4gzcpFIrcv Cm6ZF8VvIURqPhv2JOZelrVtRbHta5LdCoip0oT77pcQ1zC2RFdr2G5qPI1qB4Ldx4L1ZEZt1CUh v2XtW1NqG9zF6UtaqovQolDwkrqbkpbvCZg+T5wkw8FawCcr6o+Uljq8NNRchRJaiJXnRK1FSjjX TZs+OOTNu9rjj+jarfcnl3gTDWWEWp0CkU+TqKTku1IkKCxj0a5y7TUciJYi600LrIb9n+bOZmMM 54FGxTXqpP0pafNPWDHmIkSGrmMbsqrXKqWt0otlqahj01SvKNs1zJzIEkdrZQH5ccpHZ7NlkfTc b4ggITx3aK9SI8wNO9qDY8jrA9ZXd9iIpfkRyhpFbnlUutBIsysCdOlq1ud51mB9ni+yWJXMrfQK MyOMBFwzVPB+m3IT0iIl7O5iq98kvPaisLOEzATpq5GBtzDCY65NLF0lCpe8XPCjWXU6apMqTgEQ yX9zlQfYpyHooAM8YUZ8lG3KWpwBBAiksSM5WHZ9a4IiIQABNvlJoNooyTQ8uGdLSenCgbtLIWJa 7Crz45adJ1UAbj16F0p3FFiMkhmS2Wu4+IfLAkOx4MKmmRXBqgYFdrTLmbnyNMemjUd415ckBgRQ TTbcciFmEUeDriqb6uXJl3OVAAFg2864kROLjpuGjEEWsUO2azlOBLGs3G8kEdMvQQx4ht/wpmGY 8r5yqjgEu5OPCjaz0yFRRe07DSTtDXSaVabMnyowCamDxQblAlFeNJ4bbGoeIUtZE7vE7yrImxK0 ugiWWzW3Fk2j5dIBF61KKpYPycXClMfoC7eMUXGi2vrS+U3iukrqaSQC3L5H+4lENeHcGESUiJZA lq8UsD5dju0+Zzm3fIfsDZYvfdLTMEDss1zuPy5AyjJVHI87KVCl2a6byqYd+ZLSpKPo/AAcLe/E AuvcGKAIvC41d7iylniCE5Zmp1cm5CpNXEama4CY4te49xLXY4ipuYZBtjHosVIXokrsL6hNydtr JOiMfu+C3YCXs3imTc8PQ4BpoqAKxo8PCa1xW6U6RPSGkt/wfcgGxDNEcpG+u+4Oa6NhOIy2tJKf CmozOGYbZHDNgpr40subECPNvivzQWvRONRqHxcX0TdVZITWzSeUjpBHAaYxbexcEeQWMFT2DoJX kuSFbCNUxVO7oXZxThy4no1a2XIxNybKmXKQNz+7i5I4mizl9SLYjRNDT4hN7MGtkGD5aSAMgyIR Wl2GeIoMuiyVXx2JnUcRxVKUqBTcTtjarZ8+UVaFIu6qFrpWXU8UQDQLMZzKZ6h9QQyJnb0crCZo RR9LIeijl6jCvG0gMGRvWusfOjA7SRLaVzcB5E8Jf5y2EDg0vSetSWJcaNOt7hSALPYDNgBqu75e JC5bP1ifN5v/AA88cjOoW/8AZ1T9edD293lpztJX7965ry4eLw/5vL70zLOP03qXLP6/MNz8VA4z +fzO4sF/2Ta6IPJs4aIeSbf69PeKHoG//Gusfi/Y7bNmtyi/1R+vDv279Pzd72Wq0nnI3nyH6K8N G5ZvTqp1O47b4WF0Rn5h8w+Wlwfk0z8w/wBGZ9Ye5/7viuj7S8WmD/HmhkpeSn/c9Pd3qM9Ouk1R /h8q+O7bbAWQJai+Hf5Tem5Vwlu9Yv8ASqfl3/dt1r813bAdhBvMpIflVc3KvQ3mU0GuZ1D/ADc/ C9w+2ewEfNuJ4g8ovWkN424n1yuh0f3/AO6Opu/HbbYDnXD8zk1+U1ybyrzD7vxOcEOGtX5N/tX9 R+67AMHkvjS3vR/WB61L400CnDl7++D5b3A7S7AL6lLiWz/ymuZiYNUd3abW935P9/8A0x9sO/HS NgCNo8YCHJRzrm/vPF2h0kcIfnY687jfTGwAxQH6SU+UVzDiWgfpOv1fin8w/VHf/wBlsBKDvmtm TysuD0vHfNboHNmsnc/4LuD2k2AJaxflci/lH9GIeRflc4qfdL/m3WH1r0rYAt9gM2A//9k= ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: image/jpeg Content-Transfer-Encoding: base64 Content-Location: http://media.ledger-enquirer.com/images/logos/head_bulleter_04.jpg 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 6TY/ZNu4Ar/gA4AOADgA4A//2Q== ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://media.ledger-enquirer.com/images/logos/site_logo_340x60.gif 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 d5fXqQRBAAA7 ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://media.ledger-enquirer.com/static/images/e-ledger_tout_2.gif R0lGODlhGAFGAOYAAI6NjbHR1W+nz1J8r/r5+S4sLPLx8HNxcd6JdcXDwuGUgPLRyecxLmiZyry7 u+/u7jCQqu7FuBYVFrC91amopzhuremmlvns51qZybPS59spLuu3qd7d3crW5djk65rMzleJvtLd 7dJWR0VEQ2aCuQBmmeXk5NPS0tTt8tt5ZNBDOmrGzekfLPff2DaXypCayoe+zHSpt4Sp0tHnxlZW VeCvruDe7tggLM3L5eny9O19esDV2Vioyn+txZe6y91xjuVVSPz52uXr973I3OxnXeTu7uk6QZy8 1tOYlP388KLI5vP6+5K84iAPD8fi5+Dr1tZoVoqtr4iz09HGmsvLyykUKTNmn1yfrsa6zpirzBdr oezm5v3x76at0eHn7vL1+JuZme/v9qa4xU5iou/17x8fH8/c0q+srBsbGndZWP35zjRQnycmJN3x 9mOYp7a0s1BPT359fTc2NiQ+kNnY2GVlZT8/PmYzZvX083uNvOvq6dFfYvf29swyMhISEv///yH5 BAAAAAAALAAAAAAYAUYAAAf/gH+Cg4SFhoeIiYqLjI2Oj5CRkpOUlZaXmJmam5ydnp+goaKjpKWm p6ipqqusra6sDyZnb7S1trcOJqhbdAkJVL5UJwSqHMHBeq/Ky5BUFGgF0dLT1HYUlHhc2sSOb3Ej I3DgcAcGqgDj4DRnzO3uhwkAfvP09fZ+BWCPBBctCxEbLFjYECHCBS6MwNCwJ2GEuVR1mtTLJ+mB xQfvMn5yIM+PBI8fQc77+JFiowsRLOjQ0YfFDQ0MGKjQsaEFxkQKR450qOqAPZOOHrwBQBQMN41I MSUA47GMhDJVPFaJ6qdMVXz6GBGIAEQDCwtGXGpoyYJFHwVUFOW86pEnxJ8A/5rJoVfmYdK7lDjq bIIGjR++JD1iZXTBAhEGZadYQHwjZmMNKoBssFto7ce+cCibqsMWX1xHeuz4nVdAM97TjeKNRCOB 9T16QBFdUKBCg+0bC7ikaMwCpkvEM03/yWkVpFtUnD9ajb2Igj05wlFLP8SR78gyTcpo9wt1edZD BFroKIuYgZEFgrq2fNnnxg2XRA4plFi8yYhVceA2IvBgIVs5riwRwoA57KcHDmE40kYIhBAgRAhh eCDEUagsZU8ZddBxAgccLjADhyZE98cWFowlllccCLIBWSaWtR4ChlDA2V9VNSSiIXhwwBFRuSxC AAdgEJUARjPOA81nhTxABf9RRJ3hgB312GfaAw4ECQAFuiACoh4cZGkCUdckUsQEApS5gyFFFDFI GF6QIYYVQ1CYyAcYEBLGBA100MAECaqi11PzsHEAJRG01OJYagjCRYkMsGciWWkRstZVaNBw4yAP UDACdvNIVEAcdCRygF/0jUBFfmwxR0UdVkkk0YXg1EFIjnG02ikbdURKiHPaSVCArGfM1QQciSzR wwAZmBCADUnkMKAQZPTQg5oE4BlCFlpM4IEXxBQx4FEEeGBDFi4QMCAKDwQgQAcDHMEgAXgUIWco FtaDISUp9GZoTEYMEt4PvtnmUlk3xCcpDdnRYyMjHPh0IT1ysGOIw1GWMdf/REgOR6PCo9ETJiEm 1PoaaRn/4cCrVeV6sR80JOKFFRkYsEQYeDyhhAwySBGAFRV88McDLlTQgw9W9CBADx7gAYMMef5B wBJDCCADBhgYIPUKHQzRgxMkSCFAEQYM4cOlmyz1qgRVCDrJA16RV5YKUDS4QFeNmmjEDUaI0MLB 9tjHyAn+vVZcxIU4d11TdBkJ1BkoV9XxPFbdR0jD9iZOWhwnDGL4U2XAEUcB9LSMSAcVCOLEBEMM gcEZQ7ghxQANBPCH1Rjs0IUWL1BBghJDuOBEAyDw4UUGA/iQAQgu/PHBEBBkQfQQewoAwx8udHGK hU+1JoEcdXRfBw3eO6DI/wIw+faSEf3e5HQEiAnsYmM62DVpjccdEvLhlUMcqiAPjID4wxhz2gPg YA80yMEOTnFKp77zgI6MDFB/iUOWHGAvO8ihY6I7RAYgIIgPQGAAMqhAA2AwgDysoAGD+AAJ8DCB MShhCTL4QNA+0IASGCAEDWgAg2j4ByqswAoCmEAFhtAupv2hAig4hV768jjBwOY7hiDAD17SqJiw AAg/MIQBamAE2/RBA41hgAagcJScNAFQaMhMIvAABjbYA1cAqEMBWgM5GiTjD4bzCHdGQAM5hKQ4 FAHSXCB4AD08AAygQ5wd8OC0MyTSD36pFAAOMEg6oiErZ1CYJQElq9FV4P8JfyiCGAYggAGsIAs9 IBMKOygAL0gBTn8oEwZckAUY8OCGOWSQFGIngCHwAAQ+gEAASNCFDLggACBYwvXkQUcJhMSZOpHD xwzxACI05j1iZAERkOC0Bm1BAWExCwvqRoQLDGItxVkYIuhQJHoMShAdCYk0BeGfkKQxc1R4pEco QofPdeYNgjhBGiBHH11Qzol+UOMfzkBHenTyDavRSegS8QUQCCAEBlBC8a4whBB44AE5HIQSSFCE I8CJADI4IQZs4AEUGEAIE+CoHgTgAgFgIAwCcN0QByCGMGBgANNTogPRUIXHOdMq80zE3WDymIJZ YHb+wgMBFgCFsjB1nED/2JsgLCORNIroDG4UiQQyJwg6sMYvEsCV06DUUKC0Exr6OIE/nRgpdirM I8lIgP8a6geACsIAYZUnMTI5kqP6Sg5yeCciQAoBF7hABh6AQWMx0AElQGCVKHABBsTgAgZ14QV/ aEBjQcufLlxBsy+YQQVc0AAZBKCzQQzDB0qQCrPpUQJndCZfAAnFQhDgi79plFMRwYcNqOAxLLgb EbI0HP8osCGMRAQY0AqVp7whAVjwBRtw2xpoEMAEVrHKR+Tg1z9QjDT6MAEYLqZAAPCBAA4gIOTw oQsKbPdxFMiuLwbpGj/oAqJNocqn6GCC/S1iAYkahAn0QIwk3uQBDzFA/4ND+bNCtEFegkAXVAUR hCRQz2cVYsp1IPiT3hLiAWHpYt00gIApJEI377nbS/R2zsCJV3KIQNVty0ADGtyhxyR+ipIUhlRd tXMwenDAyqwChwUDoDidkpwD6+HjHtOAU9nzQ1oo8Co0uLEJB0hRUARBAMoIp8x/PYr6+KPmBplD wgZgmvpMUa/VPIUNeC6AdpIKnj30Roy3IUIN/uq06DptA/nCpgbKWWOO2cfQE6NLVNKKZzyDZDRj pQI90CAROZDVvPWAq9P0ELiPsCEcc5wvmOFJ5DtXervNnAdAIVoc1pQBAHNOxJzNwWYJn9hfDyCG OdQXbM0QmxASNgFGcv89iiXSBQ4UiDYFzhDtN4gZEQoYmG1sgwCycoM/VIiAHvrhZ0PpQH3o1KNC D5GcvrCBKkayMz2oQMHCGpC5M0qbZwahZIYYFR+R0rFg+ApJPdJDH5kkSV8KcIZ5ISJRGIHz7Lih PjXYxdcQJ0QS1JAEXwsiwUFg88Qf/DORexzZyHb4IlQTkpQR4OUwh7kh+PDmCPCGLAxAAHpmF93C AIEIFmhBDchiBASUcUa4bYuIkN7derS85X5wAAXFyxo5GJgzTvELUPiAyPnSIzudpgA38vMUeEP9 NXEB8KTLYIc3qFzXhyA5mSM8LzQnaRCaic7Jf53mQSQY72/H3mjKkIb/RMCrQcQgwBbE+JJtK+AC BjAAArTKhwgYoQ+RIcLdGACECPCNUuo8BMW8HBU4iCMcqBeHOE6g6cuM9+oIBcoJRjAa6yhODnFw gKFRhYbu+CH14VD96dmRyTIMnryNCEMMmCAAHtjAC2KQgQCOsAMf/MEDMQjDA2AQAGl9wAM+gIEA VhCCB3xAeh0wgQ+kEIMelD8D0h9CB2IAgyxwqwNGw9ofUimtHXwBDz4wBAZQBD3QAWJgND5gAh8w AX+wA9MiLTDgASpXZ3emWJEwHi3CAAqAEUTAAjXQBoLQAvkyMLwBIwfTOA2hCPnRBJYmZIygaWzR BFY3CAfQOBShJHKA/zK5QgXCoGzzMmXz1ggnE2rIxwhFoAUCEAAD8AJHAAI78AED0AMgQAAwoAVD 4AUukAcDEAAZYAawoy4gYAAZQCcNgAOwowR5AAIeAAEOoFHY0gAfkANhkAckEAAyAAJhUAEC8AF5 gAEe8AddAAFL4ARCUwE6AwJZUCZ/sDNFUAEk4AMFggjOZiRwIHUO8AYU4ACZSAvMZQgroi+9oQB/ YE0sMBmCcAE68BLi9B5a1WiqZg3ThomZGG0cMFTbVQa6Yl6nBj4HAAAc8AD1MQ9yID70NF+ilgA0 wAb1YWKHQAFW4WX0QIyC8Dnh0D0HkBb1hjbaMQLSqAh4YAWy40Ey4P8CMEBCUsADHtAA0jMBPOAD JNBRHjAAQ/AHdFABY6IEICCP8vgHT1ABMFABTAADINADVpAFBdKIf2gAWoADJOAEX4BMHfAHbVAB HbA06sggTNMA1jcEFXABQ8RshFAvCfMar9IEBVAyhLAohtIHRqADCvAeLAAFD7EVYkQWLMBNlYEw xQFlnRIlNPAGiTSScYApj/QqKTICCcM5dTBsPOkZBOCMf1QVfMSLcRAHYOAA6qNXI+Y3g7AyriI+ 9VZUkFSEi7AEWpA5SqCHA9AFMtAFZiAFRhMCVBMAOaAEGAACRMSAzPMBFWCHGBAAGDAEZIADFcAD j+VatzMBfPAHJuD/AjtAAEVgBR1wBQgyAZQlCDKQBy7QAc3nBHwgAy/QAKB1BBDAAcKUA2+nFyMG Zb03Ecw4COIBk7ZxN3eTVYOwACLgIiywB/IROGfUlF6XIUUCQbmnKW8kOqgCQQVwABSwMleRD2xk OSPTacR4P5VDA5oYOLAhCLwyeNzYCBM5A8ozQgJgFwHQM9QDATiQBE8gAyWQBSCkPD2TPD1AAhwA Qu0JhxWQKG5SAROAYRWwAuZnBShAAlSQLgOAA4KgWg3wAD3gn0VAAhMwjn/wAkhUATNABnsXkmDw myOjH3EXgiwxTmDUKFc0aGW2KO6hTYT2eeHVFNnTMU1QB08pXk15/zaDQ4z1xjEb0xknSQDBUntX 0ThREiZKNpJf53TF8U5DuGlkqQhbAAEZ8AdE5AQ8QAJS4wUdAAHz+AIuEAZHQAINkAdDQAJuUEpD QIgC0ABuQDxnSlkEiKVHIAZc+hATkIU8IANLMAAe8JCUxUhkYAUrQAAdAAJXQAIx0AGkEwV3qQdS ipqJUC8QhEaD1xrMcQgqCZPX1JIPsSjmYQEg2VwoyJOtOQ+yYp358xND2ZUjA2W8RY8A8EjpZKPK ATkpogcOBJwkNozc6XUGVF6K8ABmIAQG8ABD8AWngwUZkANfsAO6YANn4gFUkAE2cJ9ikAE48ABQ 01E7wC5iIH/dMv8BOxACXrADeuBreNAB4kqsOKBMOfBRHhYCEHAmXxACO6AtX7AESnACIWAGBLAD QhBskSoPaPVuHzoYiHB4BBAG4gEEIpBNfSACOxceEWBgvckWpNIpTdRJdHAABeCh86U9uAdp+WRn rYEhVLEccWEAdOBcdoZpEvVOuJpqfwEoz1QAI3AG7/UHAEYXT2p4c0cMSZANX0Bm3yYIeJAgNlA7 S+BxeGAAZDADCUpzULUEL1doi8lIT5N4xCBVeOBhNgBUjKS1ZEAMQWC1FZZ4ilAd00mklxpF5oAH KaF5XyQCGwAJ83GwUdJJf3BQIyMoptERHmofO0oysHoxRNopOzn/DzgWMgo0pDtZBxzASBjBZfVw at24H3+gtSf3ZkjbTXqwA9SyYfBCB1f4cieHB0vQBibgBWjLYXO3mPBCAGYgA2ryBzTXtQTgYSZg Ana3CFSASIg1vAUwvMaLWCMwTUD7B/2wAAuwATVQE5BAAaNSBtQQDco4DWigWHhwKiOgT37ABnAA AFQwL+wUWL+aT9ZbBmwgB2DwJXoGSKY3AoiljK0pT9HFBydAvfr0FCNAvlLVTW8ADdIgB9/ZCA+Q YLtGAEHAPx+nRQ78M+gisBv2wEXwAWsQA2ryd3PWBpP7wC3qa+ZQQziAAtnaYbpmAm9giVK3wiz8 wtcWCfDCBW93/wgcQAXUdgY6vMNvsMM+nIuKlwBnQBRVeSVDkgj7CwBVeZX84cOzYAz+IxhlQAE8 mABSR21YRw9sQBk/8gZgUJVxAABgkAB3RAh6MG087AAcUMOFUMJ/EAQekCUSpmEPgC78UQQogGEk 9wA8IDv8eAIJYhEaFgY4AAMn4AFqUsfLNsEDAAEMchMosMaCjALKpDxKoFoQQMkbagls3AlXG3My x7WfDB4PoAe9y2CMwAemvAV2obYwB1b2EsNkxhQtVxqHgAenrAeLmbCg3E2NQAUucFkPgAEftAIo wDQQ0DMNIKh6kkMQQFkukCI0tMwDsDwy8Mx/cELq+Qc45AJRU/8nrAVSJTAAKDAAVqAFIMAgHOAC PHMFSsADWjAGCrrOOVQCa6BD05HPSAsGiysBdZALWxALN8wZIwkHnfwJEwliK0ACQmBSppU8K1AB HECYZlBTD0AH0oOeMvQAW/gAAsAEQiAAoVkBOKAG1VICXDoGMfAHJeACHzAHK2ADHo3OGbAED1AB gmoFEGAFVuCWDIYDJfACK9DSB0pcu6zP7kAAb5CDgpEdBwQOI2BByuhEKGkKGWAFg9CX3JxDOfQA OIDVfwABMrCFghADbrDNfPkHPHAC5TwGICBCMiQIJVUCecAEFSADQP0CQK3VUjBExEDCYVACe1gB UqpML80BSlD/AgpqeHhgyr372JAd2ZI92ZRd2ZZ92Zid2ZqN2clwAkXCk84ETWd0FU3GCvWYRKEl A9xMjtKjPC6AESWgOtbzByTwoD5jWRydARxAAmLAAR8VUqH0oEbjnyuwBj6DAiVgnwIwRILgAiWA Ai9QAlPaBRWQzqGFRG5QATexySMSBwYM1eAd3uI93uRd3uZ93uid3uqd3geAB3jgAHIkxVGSZfMA BwnQCjlQJjAwBMgkfiSAA15DqBVQZu1yBe1YJiEwjkxwBQNgNTHgBEfQAFIgBiigiH9gAyRQAl2g hB8k0VRTQm2QByL0hzKgBQNAAnroWEvILRhQAXG2BjwAL0dd/wi4fMMacuMnoCEnsCFUwAE5/uMa 4uM93uNA/uOsd8M+juM6PuQ2XuRHjuQcEORB/uQ9ruQbguRDbuVY3uQ4vuVE3onsFBWJW0eZuwoc cEIoBAOtFWwBMAR1/AEYsQK9I5owsAN4gAI5hAM+Qybfl5HmB2LyGtshIH4+xAFe+gEgqC4wkMgN sAIcMEI5xAQSaAAv4DM4AIfFdtBInRFKQgFKXMRgcJWhqgp3PiB/4AUeRQxyCJkYhgJDAAIf8Hxl KyAQoiZCgMhf4AHfkiaC0ADV3QFfUAQfhQJ4YAMhUAQJ8q6u6zQhQOzk+iz/xwc2oCZh0AEYpumb nu2nQSEeIP8FU0oJbeAGlNUn4AEJcoLt2p7to44UuV4gAdwI5hAi3iKBj2ADoCQiBWJm6J7ulvAP /K4J7z4rRwvBUdQGJ5546FrDeqCFvuw0kRd5O5AHGUAh+y4IFqAAGJ/xGO95m9ACGP9UFo/x5vQH G4DxrfgIhXIWi2BcfaDyqrAiIrAICtDyHH8JDfzwOG8AfPC0s9MGDYy6JxcikUcAqry5Dx9KMtAD Eua1KAxVkTc7S68HMCAGTi9hD5AHkOUDFJkJUNDyXu/1osgJLR/zguD1HN/1fTAJKR/2sqECLQ8F IO8JNX8IaD/3hjDzfWD3lPAAMkACpKQEMSADMVCHZCB9JFD/hwbgBGNNAkeQA09QSiQQQ1KjM1IA Aov+BydQAU7QBWUCQh2gTMNUSjKQUVIjAFnA+NI31jIQAstdAT6w3JBWCQgABVAgAmNP+3GvCWhv Tinv8m+v9i3P9odgAS2f+5yAAG6vCBsgAikg8zSfCSHEAxCgBQR5BdmtQxWgBSVOzg2whB8UACIO z92PzjwwACIUAGRQoSXQAS1OzBUgBgaAB/B8lxVgAj2gBejs64GoBcsMCBVDFVoDYgIuf4qLjI2O j38KfX0RkJaKLREtl5KUfxaTfSl/C5MWjAubjheVixGTCpyTrYwtC7W3jxEXkFCTj7aQCxG5ip20 l5YGBCEl/w1/FS55FRlqJC5izn8uVkpaFRAlIA0VOBzOLhVPIS5aeTYGf25WHFYkIeRHS39WFX8f az6AKNEljIAKRyqM+dOgRAdyOP4MkKEmmcVGxxSlmLTpVZ+Okzb82SAilIhijTaY+rPRl4iRk3Ip UDHp5KIFviYhUOQxFqg+Ingpyhnqjy8FCPpAUURykopTii5snARF6KJQRY8mXZrTGM2arTJevPSh BA4czkCQeKKkQh4mZh+UcEEFnAwcYWJUePChwgptBB7IqBCjyANwKCrIYCeIgIEKz1yUeJBuCIEB EDLM+cDPxRArEDp0CGBmrGmxKvuITNrnVKcLqVXkVIFy0f+FSaNK/ozUR4WipCoQlFSxqQVNKKx3 9jQO1KpRrH2el1QKU9RUkX9KipgJtBH06C6pPo/+RzgUKDRV8BJr+lGANRBczGkAQQuEORBCyChR oR8OFN+44NlgFZTgTAkf2PCCCxisIYMQcjVARQkBTFBCfn+YYKB8KzyghQshmDBAHj7MocRhDQxR ghU9CLBGF+1dxB4s2eH2XG698eLRKI+UtNQvs/gySguz/HEBTae0ZExvf/Tki3qOiJWTCBvcUlIs N36SY5MxNdLVUDVVOV5UiizQiWtFxuhICytg4MAK3oxBwgo74BEFZC6gUNEEbmDwQgdFyLACDhI2 gEMRMDT/4AITQvwxg6FKNIDCQzB4QEAAczWgxB8PCPBBEfpNEICkDzTwgRBKCADDBwJk8ICasnii kVK3ufQHkqX0sZMiw5V33nm/zUKdbrpp2YcCyPpYIxTIThWBR9Nhh1GaOalCpCjIdrXRdsjSyMiX 46ky5h8tTBVKLOzB+ggHFXCmSBskuKHIq4/Ec8kyi1TkiIv0NhJEEo8E8Ui/6jLCHigqvKJASblm 4u2YRJH3U1I7bdTJLZ1A9+N3lHgUylJRUvsLTxyDxzGWi4AL7phH9pbCVOimWbAjrNrACAmbznzR BAL8oa/OQC8pK7k6qbZRUi9dy2ONLwFTU2u8pafITxs8//vsLTSlYPWzrNQ0FVQGi0weKbBsXcm2 ZosL5tgrd0U1l8fyNnTQfziRQaOKEDCBB3zESAAB7YUwxB8A0w10utP1cQHCUNfoSScoO5I4SDYS LYoq2G30FCa39NQybdPKurJ2raRirAK8sOLI17e0/cuZLNGYLt19OwJ4MngU3Pfthh8uc3ni3dYl KV+Z5FwjU/lmeePAQ8cLc1gpR+NPTS8i5chMfYdd4jU58hN1rkd3LXQxz9277kDzfr6aFpyHEk5Q QJUCFEuTmwJN2x3fSPvIpew+I+3zmrVSMJ34keI88kMgAP/nK5C54n4ua8UFFlaTXTUCAVlrICMQ AKyRaF1nAwrkX23Opz6//aGEakLh+lbIwha68IUwjKEMZ0jDGtrwhjjMoQ53yMMe+vCHQAyiEIdI xCIa8YhITKISl8jEJjrxiVCMohSnSMUqWvGKWMyiFrfIxS568YtBDAQAOw== ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://ad.doubleclick.net/ad/ledgerenquirer.news/news;c2=news_homepage;template=article;!category=news;pos=top;group=banner;sz=728x90;ord='+_krdDartOrd+'? R0lGODlh2AJaAOYAAIC10fn5+egvji8xMPjM4+fn6Pe72ld1tsfFxm+IvDRXori4uagAVqWlpT1A QOMQfNbS1NnU1cQAZe5tr3yXxNzZ2oeIiERFRRESEGZmZvScyXZ5eY+TrOLa3lZYWEZlq/GFvXJ1 keUghYvJ3tvW2N7b5cK7udjVzktstNvZ0+xUo36DgkcsIOk/lkBRdtbV2F9hYpqhtsO/w8fCvc3L y6qtvlJnjv3u9pw/a8PG1SguCdXP0JycnP18yiAdHENdiu3t7tPY0iIkIqSgoeDi6t3e3dfZ2xYz K7dLdm5yc7u8v1FUUqCHlM7R3KuqqsaVqvwgf/vd7JCUlPg5o7a0s0JJWs/Qz4CFoctda9RKkeLh 4dY3iWFjgFtcXK2vrjU5OJSKhlBusMgsTvLy86+un2NjS19GNFh0oGF6tJ+goPaq0nx9fXN0c09O T7GysYqOjkpMS/kQlWptbcFij7Svrz9gp15+wB9EkSQ8Yn83XZOSkX5qY+IAdJmZmQAAAP///yH/ C05FVFNDQVBFMi4wAwECAAAh+QQECgAAACwAAAAA2AJaAAAH/4B8goOEhYaHiImKi4yNjo+QkZKT lJWWl5iZmpucnZ6foKGio6Slmn+oqaqrrK2ur7CxsrO0tba3uLm6u7y9vr/AsTUxJjQVLxHJysvJ JR3PyMtazcwk0NXYyzMmIU3B361wfuN+QgHg6Onq6+ztr4Lu8fLz9PX29/iow8XH2c1qTwCqMWIN mRVjEBAoQ7iDBg0IBSNKjLjtSo58t774wTAOwxiMIEOKvAdvpMmTKFOqxBijBpUd/SYWLPHkCRIQ TIrorKAFgZ4KC/ocK+IEQU8EDWDKXIrABAclK1kN6FjuY9SrWK+WzMq1q9evI5/SWToRgRokamQY UVgBAY0+Mv8WODFB1wmVBcXo0F3QkOxQGiZq1OjqgNxGq2ATK163dbHjx5AjvxLrd6aSJ3OeuCky RG1nKp0bNOggmgSdBiZAU9GbtPKOwBwIbySHWLLt264a497Nu3fIEHFjVjaAY+CznQhAmxiSVDQN KnadDOFLwl/M1zKudNU4248W3+Aj6w5Pvrz5XlyCC6/OHloJGU9MHB8qQyFgtw7rAy5W/9r6oceY kENsXPlADkdJnHPeglrxweCDEEaoCnBU+PdfM0UUYCFPx2nR4YfzcdjeiCmcQJd2XF0wwABCrPgF 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 m/ZrDaNei/Ld6EEgADs= ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: image/jpeg Content-Transfer-Encoding: base64 Content-Location: http://media.ledger-enquirer.com/smedia/2008/05/09/06/192-Lee_Wagner.embedded.prod_affiliate.70.jpg /9j/4AAQSkZJRgABAQEASABIAAD/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkz ODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2Nj Y2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wAARCABwAEkDASIA AhEBAxEB/8QAGwAAAgMBAQEAAAAAAAAAAAAABAUCAwYHAQD/xAA3EAEAAQQABQIBCQYHAAAAAAAB AgADBBEFEiExQRNR0gYWIkJhcYGRoRQyVKOx0TRVcoOS4fD/xAAZAQADAQEBAAAAAAAAAAAAAAAB AgMEAAX/xAAfEQEBAAIDAQEAAwAAAAAAAAABAAIRAyFBMRITMlH/2gAMAwEAAhEDEQA/ANr11o8v ags+9ax1lelGIHZTbX2ZxOxh47cnIZaUBN71WH4pxK9nXZXZyQ7Rjup72zmOvsx4nx1lMMV+ieVp TkcSypXG43UU1oWhOZLbzdPaqXmV27aYIsVb4pl2d8t6TvqjJ6UXZ47lbGTzB4WlVoFdm10O68Vg PL79KaVPW2WDxKzmR/eIS9l70Zo10KwlvIYSEWMjujWt4TmmXjgu5j333KJIh5HarnFdI0jr865v XQLS5lyWZlyVSLJ/A3S3KkF8jD92PZo1JTlySdR1vdVW8OUrdy5vpF199SNFpReiC2zQ873Uw2dj rR9jClJ3KKxSrbeAEkU1r3ouQRx432UQAJaOu2voWmXR89aZTwOVXmA371KGNC1HcpAND9l38bvT K21q5pjoorH9fDuRlF0d+lHzx8bcWM9vf/3SoZD6ZCLIR6H2Vxnti8fW59iX/wBosE/Ojdc9rXcN yGGRC3L6wFZGqjZsjTPC4Cu9rtOtE493miR7C9Sl3eQB0OlH4ttUm1JALRiqziMBiEUD7q+t4MVV Xb51UbVyJI2+KtM23F1yyfuqerQaPtGfC4z+s/lXl7hNqdkgqJ5dUZZ4jjy+iwlFdG2r7npEObYj 43RTqY0sglweBIIzTXlO9U5eBKMiRLYU3u5tqDtiv3UFk5lq7bmRGMk6b80ou4piGpXbvMeIWevQ lrf40gprC4uZbjrqTP60qrTj8vOz/tPcjFnj3prrlXdH4gelHfd/vV3EbMr0ZSiPTbVGLGUIxJdN VJerYYayiWPpvM1A4lbtSI+mylLt0OlXEiUtJsoq3YhpkwCT59qAnsyPlSS5jcoghvYe9XTvaxyJ 4qq8enFN9XzVY7tK12ST4D7UZeTHEsRm2+Yk6P1qnJus4hciRU2aNUbjkLtlJRJA9mo5VmHdj1Dv Q2SuOW2R2LUI8RjKbqIi0lp9esMSdyWwlID8/wDukNWHqx5493QWMiLtERKWz3HZ9rWlyOFkpSna vEfPLrp/Ws5eOW5KL1RRqSNpxzMnqtxzZvzTSwbiMmlmOdOnSjoyYwOm6VO6olRxI1rld7X8Kqxy EhJS7Haip2vVTZ0fxqH7LagbRPd96OiYe6jCIxuSiO47qeYIPt4qBGMLhGEhX2qPEbkrOOsx2ddt IjNsB3L7y3sjHxQ3qQv5n9qzFargPp5F+eTcuw511GKinf8AvWVrVjj1eXy57y3dmBXQ6E9qyGfD ky7mz61bAdarNZ9slnXo+dj+hU8p+L7C2UGiyJdsaJInkoEG3JGibctaB70lp3RcW/BNXlH2qM8a 7KWm7NPbVHwu/R6G3xXvLNObWn2otXFllrEbV4nKS696W/KXOZW+SKnN08eHdNs28wtpJBO7WL4h kuVkMvqnQrsRXflLnzMcdH2HhcnBGMmKezXtQe9Tq1guzb3IPAp+VZ2/InxK9Iemw/QppPJzPTkR 4VlEkdLO13f9ylVvD4kXGUuG31Xbq5a+OlyF+VeJB7aWRikjmAH7KDbd2DvT0poQz9aeF5P/ADtf HXjazP8AKslPtna+OkRrfvH/AGBs5DbkMjX4URLiNuMWUh+zvV3oX0+lwjJX/XZ+OhM3Bz70OWzw q9H752j+kqVxymOTE9s38os6U0jBQl1de3Ws/wBq1HEfkzxvLvEreBIgGgldtj+kqD+Z/Htf4H+d D4qriaLNyZfrLe5HU6dfM7j38D/Oh8Ve/NDjv8D/ADofFTU7/9k= ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: image/jpeg Content-Transfer-Encoding: base64 Content-Location: http://media.ledger-enquirer.com/smedia/2008/05/09/06/865-Jillian_Wagner.thumb.prod_affiliate.70.jpg /9j/4AAQSkZJRgABAQEASABIAAD/2wBDABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkz ODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2P/2wBDARESEhgVGC8aGi9jQjhCY2NjY2Nj Y2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2P/wAARCABkAEEDASIA AhEBAxEB/8QAGwAAAwADAQEAAAAAAAAAAAAAAAQFAQIDBgf/xAAzEAACAgIBAwEGBAQHAAAAAAAB AgADBBESITFBBQYTIlFh0RQyQnEWI4GEUlRydJGTwf/EABgBAAMBAQAAAAAAAAAAAAAAAAIDBAEA /8QAHBEBAQADAQEBAQAAAAAAAAAAAQACESEDMRJR/9oADAMBAAIRAxEAPwDbP9pVxsZFoC2ZDKCT 4WeayvV8+9ybMl++9BjqJfH1bRPjc2qoexhodJnzsJiWTZbceVjs/wDqO5yYEnZGpWGLwQaGjqbY fphyG5N2Bg/ojMV+UfWhudKqxzHMbUyxlelipuYHwnxFhj8G4kfCZ36LnFI9P/kZD1Meh7SmTEaK dtxP5l7RtG3pT0M3e5aO6DCEJttTNPu6Vr6HfWUMbCHEOw1oTjoNlrsS1UASlQHTuZPlnPxxkzhm ziCACfrKmPjLVWAvgTkql7iR2HaPe7YgCAO6vHECQzaFevQ8yVZin9Q7dDL91aUqTY0WYJfTyr0d d5ow+gNIagKA6jqJzvT4eQ7jrHkIYMh8RVjpireO0Zi0mReb3CZhG7hvQ8N5W/G5WX4bLDrRCxCl eV2yOxjFljHMtrB/R0kr9CoC7Yz3jRBTXy31j9WUSGVxxYeJ5vFwMgvzts877x4FjboEnpomEnJm KzWbk1jXJDY57LuSqfWbkyQjU8UPQgCO1gMwVhsjsZ3GOpJIVdTjWonBaXlMa72ZeitNX271sP8A DGMysFD8xFKGPMKeuppI9MdUCEzCMk6vW1Jq9xrzBlLZzftGOIXIJPbfWa2KVzmOuhk2+1nnNLjg JsEDpE6ET8Qys2o8Wb3egB/WKVGrkH1zbeughzuQ+qrg6dQPnHa7kZdEAE9praltiDhjn/iL0WM2 T7h6+JA3uZrUSn20zEU74iSVHDK6y7k16GjIlh3mEDwIWFP6/wBvPwmIR1Ju9reeNjDfmDWr71C3 6hqaZLbHICK5JL4wZfzIdyTXanF0Vyoq9RQ6Df8AknY6ZGK5FHEqW8ia4uZzUeH11jldgPVdRhya IzNhyr6de8478r0i9NH4ZtlixJ6kx9FY09O8Ry7PdL8XWdl2I1aZlm1c+AJ51LeeVYwO41m5TP8A AnbzEsOngLGY9zGYGil9cu0iEIQ5G71isTQjdwROQ6Eg9jF8DMVgca08WB2pjDg1Py7qfEncUn4o 2ErH5ex+YjFXvqDyIJE580BDKwEo1ZFNihSdt+07c3GyM+wrrif6CIZDXXn4t6laqoMOqzllUcV6 TRiaM1PBGIGz9ZOsvFQKb+sr5Z41HR8TzWS+2+u47HtL6cl9wmIQ9Sr6l/B/o3IN7m3kOx9+/wB5 1Psz6aV4kZGvl+If7whObiwPZb0tTsLkA/7h/vOi+zuCvZskf3D/AHhCdotFtx6HjDtdmD+5f7zD ehYrfmtyz++S/wB4QnaLttzb2a9PYEN+JO/nkP8AecG9jvRWO2x7Sfre/wB4Qmli2P4L9D/y1n/c /wB4QhNsv//Z ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://media.ledger-enquirer.com/images/mi/icons/external_link.gif R0lGODlhDAAMAJEAAP///wAzZgAzmQBmmSH5BAQUAP8ALAAAAAAMAAwAAAIihI+pKSMd4BErTCOC BhYfZ3XAcEThlXkiBbDGWpXaPC9KAQA7 ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://img.icbdr.com/images/plink/cbslanding/tab_quickjobsearch.gif R0lGODlhyAAZAMQAAP9mAP////+td/+PRP/Wu//r3f/Mqv/17v+jZv+4iP96Iv+FM/+ZVf9wEf/C mf/gzP/EnP+tdv9tDP+fX/+JOv/u4/+CLv/+/v/Cmv/07QAAAAAAAAAAAAAAAAAAAAAAACH5BAAA AAAALAAAAADIABkAAAX/YCCKFTRZQKqubOu+cCzPdG3feB5L1gRVo2DggqHojsikcslsviiYizAT cVqv2KzWFsmMLtWteEwu5yLSAMbMbrvNmEDF+K7b70hKSYYoBAoCLwIBAy2DhS8EAS4DAYEtDQYi BgpKjY94mS4mMQoBDwMPAQsuCASkLIcwioyOLpIMgwaWrpq2KycxgwwADLU1qomLLZcuAQQpx7SY t7YWErqEAMU2wS6sxL8rfykCCMvNzRLQMKrFh+jSCSIOAOmVLNgOAQcJ05/08CmSzAt+Bd8aKApg r9E6AAgOHFPQ6MGBA/rCSVRhzlW6AYcQOJKEkVABZC1YaRQgaUEjB776/4n4lqJAgQEFDrjbOKpR PU8GBglolFPbRIkVA10cSkhnAJbxFl28RE2FxgC8ACgTeepQMaaOsDL7GS7ozI5grQ1yKeyr1aw+ EeaTCkoUgAYOCPgZcPWXVq4/vRIFS5FegbJL0W7tRlBqEADrDCii66rpXbxApZ0rSpkv4XmIUiRA xirwTm0E7DVQpkxFZ0J1MT2G3Exv5b27ArQzveg02NVSQZLmXFsp6saCcbPWtODYAAIHECjQyTEd ycoGDjRQAevAX+YBGAYwsI5ZzFiurMNcBGtxseI9P6sfHq5PEAEKHmI+FEmEvYxHVfj7U6j+gUAn WRfRAqLUk4J7APViHSJH1CSgEAENCMfehBRWaOGFGGao4YYcdujhhyCGKOKIdoQAADs= ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://ad.doubleclick.net/ad/ledgerenquirer.news/news;c2=news_homepage;template=article;!category=news;pos=bottom;group=234x60;sz=234x60;ord='+_krdDartOrd+'? R0lGODlhAQABAIABAAAAAP///yH5BAEAAAEALAAAAAABAAEAAAICTAEAOw== ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://ad.doubleclick.net/ad/ledgerenquirer.news/news;c2=news_homepage;template=article;!category=news;pos=center6;group=rectangle;sz=300x250;ord='+_krdDartOrd+'? R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw== ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://ad.doubleclick.net/ad/ledgerenquirer.news/news;c2=news_homepage;template=article;!category=news;pos=center7;group=rectangle;sz=300x250;ord='+_krdDartOrd+'? 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 ADs= ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://media.ledger-enquirer.com/images/mi/rc_logo.gif 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 rnjNq173yte+vjUQADs= ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://mcclatchy.112.2o7.net/b/ss/nmcolumbus/1/H.10--NS/0?pageName=Story:%20317778%7CFather%20walks%20to%20grieve%20for%20his%20children&server=www.ledger-enquirer.com&channel=News&c1=http%26%2358;%26%2347;%26%2347;www.ledger-enquirer.com%26%2347;164%26%2347;story%26%2347;317778.html&c3=Story&c4=le%7CXMUltra%7CUnknown%7CBY%20BRAD%20BARNES%20-%20%3Ca%20href=%22mailto:bbarnes@ledger-enquirer.com%22%3Ebbarnes@ledger-enquirer.com%3C/a%3E&c6=LED%7CLE&c28=&h1=LED%7CLE%7CNews%7C%7C%7C%7C%7CNews R0lGODlhAgACAIAAAP///wAAACH5BAEAAAAALAAAAAACAAIAAAIChFEAOw== ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://media.ledger-enquirer.com/styles/mi/browser_conformity.css :link { TEXT-DECORATION: none } :visited { TEXT-DECORATION: none } UL { LIST-STYLE-TYPE: none } OL { LIST-STYLE-TYPE: none } H1 { FONT-SIZE: 2.5em } H2 { FONT-SIZE: 2em } H3 { FONT-SIZE: 1.75em } H4 { FONT-SIZE: 1.5em } H5 { FONT-SIZE: 1.25em } H6 { FONT-SIZE: 1.1em } PRE { FONT-SIZE: 1em } CODE { FONT-SIZE: 1em } 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 } INPUT { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } H1 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } H2 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } H3 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } H4 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } H5 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } H6 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } UL { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } OL { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } LI { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } DL { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } DD { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } DT { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } TABLE { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } THEAD { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } TBODY { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } TFOOT { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } TH { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } TR { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } TD { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } PRE { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } P { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } BLOCKQUOTE { 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 } A IMG { BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: = none; BORDER-BOTTOM-STYLE: none } :link IMG { BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: = none; BORDER-BOTTOM-STYLE: none } :visited IMG { BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: = none; BORDER-BOTTOM-STYLE: none } ADDRESS { FONT-STYLE: normal } TABLE { BORDER-COLLAPSE: collapse } ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://media.ledger-enquirer.com/static/styles/test/cle_menu.css .yuimenu .yuimenu { VISIBILITY: hidden; POSITION: absolute } .yuimenubar .yuimenu { VISIBILITY: hidden; POSITION: absolute } .yuimenubar LI { LIST-STYLE-TYPE: none } .yuimenu LI { LIST-STYLE-TYPE: none } .yuimenubar UL { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } .yuimenu UL { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } .yuimenubar LI { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } .yuimenu LI { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } .yuimenu H6 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } .yuimenubar H6 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } .yuimenuitemlabel { WHITE-SPACE: nowrap } .yuimenubaritemlabel { WHITE-SPACE: nowrap } .yui-menu-shadow { Z-INDEX: -1; POSITION: absolute } .hide-scrollbars * { OVERFLOW: hidden } .hide-scrollbars SELECT { DISPLAY: none } .show-scrollbars.yuimenu { OVERFLOW: visible } .hide-scrollbars.yuimenu .yui-menu-shadow { OVERFLOW: hidden } .show-scrollbars.yuimenu .yui-menu-shadow { OVERFLOW: auto } .yui-skin-sam .yuimenubar { BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; = BACKGROUND: url(http://www.ledger-enquirer.com/static/images/sprite.png) = repeat-x 0px 0px; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 = 1px solid } .yui-skin-sam .yuimenubar .bd { ZOOM: 1 } .yui-skin-sam .yuimenubar UL { ZOOM: 1 } .yui-skin-sam .yuimenubar > .bd > UL:unknown { CLEAR: both; DISPLAY: block; VISIBILITY: hidden; LINE-HEIGHT: 0; = HEIGHT: 0px; content: "." } .yui-skin-sam .yuimenubaritem { FLOAT: left } .yui-skin-sam .yuimenubarnav .yuimenubaritem { BORDER-RIGHT: #ccc 1px solid } .yui-skin-sam .yuimenubaritemlabel { BORDER-RIGHT: #808080 0px solid; PADDING-RIGHT: 1px; BORDER-TOP: = #808080 1px solid; DISPLAY: inline-block; PADDING-LEFT: 1px; FONT-SIZE: = 100%; PADDING-BOTTOM: 0px; MARGIN: -1px 0px; BORDER-LEFT: #808080 0px = solid; CURSOR: default; COLOR: #000; LINE-HEIGHT: 1.9; PADDING-TOP: 0px; = BORDER-BOTTOM: #808080 1px solid; POSITION: relative; TEXT-DECORATION: = none; outline: none } .yui-skin-sam .yuimenubarnav .yuimenubaritemlabel { PADDING-RIGHT: 20px } .yui-skin-sam .yuimenubaritemlabel .submenuindicator { LEFT: 0px; WIDTH: 1px; TOP: 0px; HEIGHT: 1px } .yui-skin-sam .yuimenubarnav .yuimenubaritemlabel .submenuindicator { BACKGROUND-POSITION: -16px -856px; MARGIN-TOP: -3px; RIGHT: 8px; LEFT: = auto; WIDTH: 7px; TEXT-INDENT: 8px; TOP: 50%; HEIGHT: 4px } .yui-skin-sam .yuimenubaritem A.selected { BORDER-LEFT-COLOR: #7d98b8; BACKGROUND: = url(http://www.ledger-enquirer.com/static/images/sprite.png) repeat-x = 0px -1700px; BORDER-BOTTOM-COLOR: #7d98b8; BORDER-TOP-COLOR: #7d98b8; = BORDER-RIGHT-COLOR: #7d98b8 } .yui-skin-sam .yuimenubarnav .yuimenubaritem A.selected { BORDER-LEFT-WIDTH: 1px; LEFT: -1px; MARGIN-LEFT: -1px } .yui-skin-sam .yuimenubar A.selected .submenuindicator { BACKGROUND: none transparent scroll repeat 0% 0% } .yui-skin-sam .yuimenubarnav A.selected .submenuindicator { BACKGROUND: = url(http://www.ledger-enquirer.com/static/images/sprite.png) repeat-x = -16px -856px } .yui-skin-sam .yuimenubaritem A.disabled { CURSOR: default; COLOR: #a6a6a6 } .yui-skin-sam .yuimenubarnav .yuimenubaritem A.disabled = .submenuindicator { BACKGROUND-POSITION: -16px -881px } .yui-skin-sam .yuimenu .bd { BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; = BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: #808080 1px solid; = BACKGROUND-COLOR: #fff } .yui-skin-sam .yuimenu UL { BORDER-RIGHT: #ccc 0px solid; PADDING-RIGHT: 0px; BORDER-TOP: #ccc 1px = solid; PADDING-LEFT: 0px; PADDING-BOTTOM: 3px; BORDER-LEFT: #ccc 0px = solid; PADDING-TOP: 3px; BORDER-BOTTOM: #ccc 0px solid } .yui-skin-sam .yuimenu UL.first-of-type { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; BORDER-RIGHT-WIDTH: 0px } .yui-skin-sam .yuimenu H6 { BORDER-RIGHT: #ccc 0px solid; PADDING-RIGHT: 10px; BORDER-TOP: #ccc 1px = solid; PADDING-LEFT: 10px; FONT-WEIGHT: bold; FONT-SIZE: 93%; = PADDING-BOTTOM: 0px; BORDER-LEFT: #ccc 0px solid; COLOR: #a4a4a4; = LINE-HEIGHT: 1.45; PADDING-TOP: 3px; BORDER-BOTTOM: #ccc 0px solid } .yui-skin-sam .yuimenu UL.hastitle { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; BORDER-RIGHT-WIDTH: 0px } .yui-skin-sam .yuimenu H6.first-of-type { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; BORDER-RIGHT-WIDTH: 0px } .yui-skin-sam .yuimenu .yui-menu-body-scrolled { BORDER-LEFT-COLOR: #808080; BORDER-BOTTOM-COLOR: #ccc; OVERFLOW: = hidden; BORDER-TOP-COLOR: #ccc; BORDER-RIGHT-COLOR: #808080 } .yui-skin-sam .yuimenu .topscrollbar { BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; = BACKGROUND: url(http://www.ledger-enquirer.com/static/images/sprite.png) = #fff no-repeat 0px 0px; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: = #808080 1px solid; HEIGHT: 16px } .yui-skin-sam .yuimenu .bottomscrollbar { BORDER-RIGHT: #808080 1px solid; BORDER-TOP: #808080 1px solid; = BACKGROUND: url(http://www.ledger-enquirer.com/static/images/sprite.png) = #fff no-repeat 0px 0px; BORDER-LEFT: #808080 1px solid; BORDER-BOTTOM: = #808080 1px solid; HEIGHT: 16px } .yui-skin-sam .yuimenu .topscrollbar { BACKGROUND-POSITION: center -950px; BORDER-BOTTOM-WIDTH: 0px } .yui-skin-sam .yuimenu .topscrollbar_disabled { BACKGROUND-POSITION: center -975px } .yui-skin-sam .yuimenu .bottomscrollbar { BORDER-TOP-WIDTH: 0px; BACKGROUND-POSITION: center -850px } .yui-skin-sam .yuimenu .bottomscrollbar_disabled { BACKGROUND-POSITION: center -875px } .yui-skin-sam .yuimenuitemlabel { PADDING-RIGHT: 20px; DISPLAY: block; PADDING-LEFT: 20px; FONT-SIZE: = 93%; PADDING-BOTTOM: 0px; CURSOR: default; COLOR: #000; LINE-HEIGHT: = 1.45; PADDING-TOP: 0px; POSITION: static; TEXT-DECORATION: none; = outline: none } .yui-skin-sam .yuimenuitemlabel .helptext { DISPLAY: block; MARGIN: -1.45em 0px 0px 10em; FONT-STYLE: normal } .yui-skin-sam .yuimenuitemlabel .submenuindicator { BACKGROUND: = url(http://www.ledger-enquirer.com/static/images/sprite.png) no-repeat; = OVERFLOW: hidden; POSITION: absolute } .yui-skin-sam .yuimenuitemlabel .checkedindicator { BACKGROUND: = url(http://www.ledger-enquirer.com/static/images/sprite.png) no-repeat; = OVERFLOW: hidden; POSITION: absolute } .yui-skin-sam .yuimenubaritemlabel .submenuindicator { BACKGROUND: = url(http://www.ledger-enquirer.com/static/images/sprite.png) no-repeat; = OVERFLOW: hidden; POSITION: absolute } .yui-skin-sam .yuimenuitemlabel .submenuindicator { DISPLAY: inline-block; POSITION: static } .yui-skin-sam .yuimenuitemlabel .checkedindicator { DISPLAY: inline-block; POSITION: static } .yui-skin-sam .yuimenuitemlabel .submenuindicator { BACKGROUND-POSITION: 0px -906px; MARGIN-TOP: -3px; RIGHT: 8px; WIDTH: = 4px; TEXT-INDENT: 5px; TOP: 50%; HEIGHT: 7px } .yui-skin-sam .yuimenuitemlabel .checkedindicator { BACKGROUND-POSITION: 0px -1006px; MARGIN-TOP: -3px; LEFT: 8px; WIDTH: = 7px; TEXT-INDENT: 8px; TOP: 50%; HEIGHT: 7px } .yui-skin-sam .visible .yuimenuitemlabel .submenuindicator { FLOAT: right; MARGIN: -1em 8px 0px } .yui-skin-sam .visible .yuimenuitem .hassubmenu { PADDING-RIGHT: 0px } .yui-skin-sam .visible .yuimenuitemlabel .checkedindicator { FLOAT: left; MARGIN: -1em 0px 0px -12px } .yui-skin-sam .yui-menu-shadow-visible { RIGHT: -3px; FILTER: alpha(opacity=3D12); LEFT: -3px; VISIBILITY: = visible; BOTTOM: -3px; TOP: 2px; BACKGROUND-COLOR: #000; opacity: .12 } .yui-skin-sam .visible .bd { _zoom: 1 } .yui-skin-sam .visible .yuimenuitem { _zoom: 1 } .yui-skin-sam .visible .yuimenuitemlabel { ZOOM: 1 } .yui-skin-sam .yuimenuitem A.selected { BACKGROUND: #b3d4ff } .yui-skin-sam .yuimenubar .yuimenuitem A.selected .submenuindicator { BACKGROUND: = url(http://www.ledger-enquirer.com/static/images/sprite.png) no-repeat = 0px -906px } .yui-skin-sam .yuimenubarnav .yuimenuitem A.selected { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; LEFT: 0px; = BORDER-BOTTOM-WIDTH: 0px; MARGIN: 0px; BORDER-RIGHT-WIDTH: 0px } .yui-skin-sam .yuimenuitem A.disabled { CURSOR: default; COLOR: #a6a6a6 } .yui-skin-sam .yuimenuitem A.disabled .submenuindicator { BACKGROUND-POSITION: 0px -931px } .yui-skin-sam .yuimenuitem A.disabled .checkedindicator { BACKGROUND-POSITION: 0px -1031px } BODY { BACKGROUND: #fff; COLOR: #000 } BODY { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } DIV { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } DL { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } DT { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } DD { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } UL { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } OL { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } LI { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } H1 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } H2 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } H3 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } H4 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } H5 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } H6 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } PRE { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } CODE { 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 } LEGEND { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } INPUT { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } TEXTAREA { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } P { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } BLOCKQUOTE { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } TH { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } TD { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } TABLE { BORDER-COLLAPSE: collapse; border-spacing: 0 } FIELDSET { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; BORDER-RIGHT-WIDTH: 0px } IMG { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; BORDER-RIGHT-WIDTH: 0px } ADDRESS { FONT-WEIGHT: normal; FONT-STYLE: normal } CAPTION { FONT-WEIGHT: normal; FONT-STYLE: normal } CITE { FONT-WEIGHT: normal; FONT-STYLE: normal } CODE { FONT-WEIGHT: normal; FONT-STYLE: normal } DFN { FONT-WEIGHT: normal; FONT-STYLE: normal } EM { FONT-WEIGHT: normal; FONT-STYLE: normal } STRONG { FONT-WEIGHT: normal; FONT-STYLE: normal } TH { FONT-WEIGHT: normal; FONT-STYLE: normal } VAR { FONT-WEIGHT: normal; FONT-STYLE: normal } .yuimenubar LI { LIST-STYLE-TYPE: none } CAPTION { TEXT-ALIGN: left } TH { TEXT-ALIGN: left } H1 { FONT-WEIGHT: normal; FONT-SIZE: 100% } H2 { FONT-WEIGHT: normal; FONT-SIZE: 100% } H3 { FONT-WEIGHT: normal; FONT-SIZE: 100% } H4 { FONT-WEIGHT: normal; FONT-SIZE: 100% } H5 { FONT-WEIGHT: normal; FONT-SIZE: 100% } H6 { FONT-WEIGHT: normal; FONT-SIZE: 100% } Q:unknown { content: '' } Q:unknown { content: '' } ABBR { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; BORDER-RIGHT-WIDTH: 0px; FONT-VARIANT: normal } ACRONYM { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; BORDER-RIGHT-WIDTH: 0px; FONT-VARIANT: normal } SUP { VERTICAL-ALIGN: text-top } SUB { VERTICAL-ALIGN: text-top } SUB { VERTICAL-ALIGN: text-bottom } INPUT { FONT-FAMILY: inherit } TEXTAREA { FONT-FAMILY: inherit } SELECT { FONT-FAMILY: inherit } BODY { FONT: small/1.22 arial,helvetica,clean,sans-serif } TABLE { =09 } PRE { FONT-SIZE: 108%; LINE-HEIGHT: 99%; FONT-FAMILY: monospace } CODE { FONT-SIZE: 108%; LINE-HEIGHT: 99%; FONT-FAMILY: monospace } KBD { FONT-SIZE: 108%; LINE-HEIGHT: 99%; FONT-FAMILY: monospace } SAMP { FONT-SIZE: 108%; LINE-HEIGHT: 99%; FONT-FAMILY: monospace } TT { FONT-SIZE: 108%; LINE-HEIGHT: 99%; FONT-FAMILY: monospace } ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://media.ledger-enquirer.com/static/styles/test/layout.css DIV#pageContainer { MARGIN: auto; WIDTH: 999px; POSITION: relative; BACKGROUND-COLOR: #fff; = TEXT-ALIGN: left } DIV#header { MARGIN-BOTTOM: 0px; OVERFLOW: hidden; POSITION: relative; HEIGHT: 90px } DIV#col1 { DISPLAY: block; LEFT: 0px; FLOAT: none; WIDTH: 140px; POSITION: = absolute; TOP: 102px } DIV#col1 .content { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } DIV#col2 { DISPLAY: block; BACKGROUND: #fff; FLOAT: none; MARGIN: 0px 210px 0px = 150px; WIDTH: auto } DIV#col2 DIV.content { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; = PADDING-TOP: 5px } DIV#col2 DIV.left_half DIV.content { PADDING-RIGHT: 5px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } DIV#col2 DIV.right_half DIV.content { PADDING-RIGHT: 0px; PADDING-LEFT: 5px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } DIV#col3 { PADDING-RIGHT: 0px; DISPLAY: block; PADDING-LEFT: 0px; RIGHT: 0px; = FLOAT: none; PADDING-BOTTOM: 0px; WIDTH: 200px; PADDING-TOP: 0px; = POSITION: absolute; TOP: 102px } DIV#footer { BORDER-TOP: #666 1px solid; MARGIN: 5px 210px 0px 150px; OVERFLOW: = hidden; WIDTH: auto; HEIGHT: 50px } DIV#col3 .content { PADDING-TOP: 5px } .content { OVERFLOW: hidden } ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://media.ledger-enquirer.com/static/styles/test/site2.css BODY { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 11px; BACKGROUND: = #999999; PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: #000; PADDING-TOP: = 0px; FONT-FAMILY: Arial, Helvetica, sans-serif; LETTER-SPACING: 0px; = TEXT-ALIGN: left } A:hover { TEXT-DECORATION: underline } A IMG { FONT-SIZE: 9px } .dateline { DISPLAY: none } .dateline-separator { DISPLAY: none } .more_container { MARGIN-TOP: -9px; MARGIN-BOTTOM: 12px } .more_arrow { FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #f00; LETTER-SPACING: 1px } .more_link { FONT-WEIGHT: normal; FONT-SIZE: 12px; FONT-FAMILY: arial, sans-serif } .navigation { MARGIN-BOTTOM: 25px } .navigation LI { BORDER-RIGHT: #ddd 1px solid; PADDING-LEFT: 5px; FONT-WEIGHT: bold; = FONT-SIZE: 12px; BORDER-BOTTOM: #ddd 1px solid; FONT-FAMILY: arial, = sans-serif } .navigation LI A { COLOR: #333 } .navigation LI A:hover { TEXT-DECORATION: underline } .navigation .header { BORDER-TOP-WIDTH: 0px; PADDING-LEFT: 3px; FONT-WEIGHT: bold; = BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 12px; TEXT-TRANSFORM: uppercase; = COLOR: #036; BORDER-BOTTOM: #036 4px solid; FONT-FAMILY: arial, = sans-serif; HEIGHT: 16px; BORDER-RIGHT-WIDTH: 0px } .navigation LI UL LI { BORDER-TOP-WIDTH: 0px; PADDING-LEFT: 15px; FONT-WEIGHT: normal; = BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 12px; BORDER-BOTTOM-WIDTH: 0px; = HEIGHT: 16px; BORDER-RIGHT-WIDTH: 0px } #classifieds_link_box A { BACKGROUND-POSITION: left center; PADDING-LEFT: 15px; BACKGROUND-IMAGE: = url(http://static.mcclatchyinteractive.com/images/mi/bullets/nav_bullet_b= lue.gif); BACKGROUND-REPEAT: no-repeat } #classifieds_link_box UL A { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND-IMAGE: none; = PADDING-BOTTOM: 0px; PADDING-TOP: 0px } #masthead { OVERFLOW: hidden; POSITION: relative; HEIGHT: 66px } #mast_subscribe { MARGIN-TOP: 0px; DISPLAY: block; FONT-SIZE: 10px; FLOAT: left; = MARGIN-LEFT: 10px; WIDTH: 135px; TEXT-ALIGN: center } #mast_subscribe IMG { DISPLAY: inline } #weathernode IMG { DISPLAY: inline } #mast_logo { DISPLAY: block; FLOAT: left; MARGIN-LEFT: 0px; WIDTH: 360px } #mast_content { FONT-SIZE: 11px; RIGHT: 5px; WIDTH: 390px; POSITION: absolute; TOP: 3px } #masthead .advertisement { DISPLAY: block; FLOAT: left; WIDTH: 160px; TOP: 0px; HEIGHT: 60px } #mast_logo { PADDING-LEFT: 50px } #weathernode { DISPLAY: block; LEFT: 0px; FLOAT: left; WIDTH: 105px; MARGIN-RIGHT: = 8px; TOP: 0px } #footerad { TEXT-ALIGN: center } #footer { FONT-SIZE: 10px; POSITION: relative; TEXT-ALIGN: center } #footer .footerlinks { MARGIN: 0px auto; OVERFLOW: hidden; WIDTH: 720px; FONT-FAMILY: = arial,helvetica,sans-serif; TEXT-ALIGN: center } #footer .footerlinks LI { DISPLAY: inline } #realcitieslink { LEFT: 5px; POSITION: absolute; TOP: 5px } #realcities { WIDTH: 120px } #searchbar { BORDER-TOP: #666 1px solid; FONT-SIZE: 10px; BACKGROUND: #efefef; = OVERFLOW: hidden; BORDER-BOTTOM: #666 1px solid } #searchbar FORM { BORDER-RIGHT: #ccc 1px solid; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; = PADDING-BOTTOM: 4px; WIDTH: 669px; PADDING-TOP: 4px; TEXT-ALIGN: center } #searchbar LABEL { VERTICAL-ALIGN: middle; MARGIN-RIGHT: 5px } #searchbar .button { MARGIN-LEFT: 5px } .legend { PADDING-RIGHT: 10px; FONT-WEIGHT: bold; VERTICAL-ALIGN: middle } #searchbar .radio { MARGIN-LEFT: 0px; VERTICAL-ALIGN: middle; MARGIN-RIGHT: 3px } #searchbar .commonsearch { FLOAT: left; WIDTH: 675px } #registration { FLOAT: left; WIDTH: 290px; PADDING-TOP: 3px; TEXT-ALIGN: center } #myclassifieds { PADDING-RIGHT: 8px; PADDING-LEFT: 8px; PADDING-BOTTOM: 8px; = PADDING-TOP: 8px; TEXT-ALIGN: center } #news_flash { MARGIN-BOTTOM: 10px; PADDING-BOTTOM: 5px; BORDER-BOTTOM: #c0c0c0 2px = solid } #news_flash .story { FONT-SIZE: 12px; FLOAT: none; WIDTH: auto } #news_flash .story H1 { FONT-SIZE: 18px } #news_flash .title { FONT-WEIGHT: bold; TEXT-TRANSFORM: uppercase; COLOR: #c10 } DIV.image { FLOAT: right; MARGIN: 5px } DIV.image IMG { DISPLAY: block } DIV.image H5 { FONT-WEIGHT: normal; FONT-SIZE: 10px } DIV.image H6 { FONT-WEIGHT: normal; FONT-SIZE: 10px } .html_module { CLEAR: both } .story { CLEAR: both } .story #pagetitle H1 { FONT-SIZE: 24px; TEXT-ALIGN: center } .story #col2 .content { POSITION: relative } .story #storyCol2 { FLOAT: right; WIDTH: 310px } .skyscraper #storyCol2 { WIDTH: 180px } .skyscraper #storyCol #storyExtras { FLOAT: right; MARGIN-BOTTOM: 10px; MARGIN-LEFT: 5px } #storyCol #storyExtras .advertisement { MARGIN-TOP: 5px; MARGIN-BOTTOM: 10px } #storyExtras #storyAssets { FLOAT: none; MARGIN: 0px; WIDTH: 300px } .story H1 { FONT-SIZE: 18px; MARGIN-BOTTOM: 7px; TEXT-ALIGN: left } .story H2 { FONT-SIZE: 14px; MARGIN-BOTTOM: 7px } .story H2.overline { FONT-SIZE: 13px } .story H3 { FONT-SIZE: 11px; MARGIN-BOTTOM: 5px; FONT-STYLE: italic } .story H3.kicker { FONT-STYLE: italic } .story H3.shirttail { =09 } .story H3.creditline { FONT-SIZE: 10px; MARGIN: 2px 2px 2px 0px } .story H3.printSection { FONT-SIZE: 12px; MARGIN-BOTTOM: 0px } .story H3.dateline { DISPLAY: inline; FONT-WEIGHT: bold; MARGIN: 0px 3px 0px 0px; = TEXT-TRANSFORM: uppercase } .story H4 { FONT-SIZE: 11px } .story H4.copyright { =09 } .story H5 { DISPLAY: inline; FONT-SIZE: 10px; FLOAT: left } .story H5.createDate { FLOAT: none } .story H5.expireDate { FLOAT: none } .story H5.modDate { FLOAT: none } .story H5.printDate { FLOAT: none } .story H4 { FONT-WEIGHT: normal } .story .byline { FONT-WEIGHT: normal } .story H3 { FONT-WEIGHT: normal } .shirttail { FONT-WEIGHT: bold } .printSection { FONT-WEIGHT: bold } .story P { MARGIN-BOTTOM: 7px } .story .factbox { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px = 5px 10px; PADDING-TOP: 0px } .story .factbox P { MARGIN: 5px } .story .factbox UL { FONT-SIZE: 11px; MARGIN: 0px; LIST-STYLE-TYPE: square } .story .factbox LI { LIST-STYLE-POSITION: inside; MARGIN-BOTTOM: 2px } .story .factbox H2 { FONT-SIZE: 12px; MARGIN-BOTTOM: 0px } BODY.story .storyTools { FLOAT: none; OVERFLOW: hidden; HEIGHT: 20px } BODY.story #col2 { MARGIN: 0px 0px 0px 150px } BODY.story #storyDate-Links { MARGIN: 0px 0px 20px; OVERFLOW: hidden } BODY.story .pubDate { FONT-WEIGHT: 400; FLOAT: left } BODY.story A#emailStoryLink { FONT-SIZE: 11px; FLOAT: right; LINE-HEIGHT: 11px } BODY.story A#printStoryLink { FONT-SIZE: 11px; FLOAT: right; LINE-HEIGHT: 11px } BODY.story A#reprintStoryLink { FONT-SIZE: 11px; FLOAT: right; LINE-HEIGHT: 11px } BODY.story A#diggStoryLink { FONT-SIZE: 11px; FLOAT: right; LINE-HEIGHT: 11px } BODY.story A#deliciousStoryLink { FONT-SIZE: 11px; FLOAT: right; LINE-HEIGHT: 11px } BODY.story A#aimStoryLink { FONT-SIZE: 11px; FLOAT: right; LINE-HEIGHT: 11px } BODY.story A#emailStoryLink:hover { TEXT-DECORATION: underline } BODY.story A#printStoryLink:hover { TEXT-DECORATION: underline } BODY.story A#reprintStoryLink:hover { TEXT-DECORATION: underline } BODY.story A#diggStoryLink:hover { TEXT-DECORATION: underline } BODY.story A#deliciousStoryLink:hover { TEXT-DECORATION: underline } BODY.story A#aimStoryLink:hover { TEXT-DECORATION: underline } BODY.story A#emailStoryLink { PADDING-RIGHT: 0px; PADDING-LEFT: 25px; BACKGROUND: = url(http://static.mcclatchyinteractive.com/images/mi/icons/button_email_t= his_small.gif) no-repeat 7px 1px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px } BODY.story A#printStoryLink { PADDING-RIGHT: 0px; PADDING-LEFT: 23px; BACKGROUND: = url(http://static.mcclatchyinteractive.com/images/mi/icons/button_print_t= his_small.gif) no-repeat 7px 1px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px } BODY.story A#reprintStoryLink { PADDING-RIGHT: 0px; PADDING-LEFT: 20px; BACKGROUND: = url(http://static.mcclatchyinteractive.com/images/mi/icons/button_reprint= _license_this_small.gif) no-repeat 7px 1px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } BODY.story A#diggStoryLink { PADDING-RIGHT: 0px; PADDING-LEFT: 25px; BACKGROUND: = url(http://static.mcclatchyinteractive.com/images/mi/icons/digg.gif) = no-repeat 7px 1px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px; HEIGHT: 20px } BODY.story A#deliciousStoryLink { PADDING-RIGHT: 0px; PADDING-LEFT: 20px; BACKGROUND: = url(http://static.mcclatchyinteractive.com/images/mi/icons/delicious.gif)= no-repeat 7px 1px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px } BODY.story A#aimStoryLink { PADDING-RIGHT: 0px; PADDING-LEFT: 23px; BACKGROUND: = url(http://static.mcclatchyinteractive.com/images/mi/icons/aim.gif) = no-repeat 7px 1px; PADDING-BOTTOM: 0px; PADDING-TOP: 0px; HEIGHT: 20px } BODY.story #storyTitle { FONT-SIZE: 24px; MARGIN: 0px 0px 10px } BODY.story #byLine { FONT-WEIGHT: normal; FONT-SIZE: 11px; MARGIN: 0px 0px 10px } BODY.story #storyCol { PADDING-RIGHT: 15px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: = 0px; WIDTH: 610px; PADDING-TOP: 0px } BODY.skyscraper #storyCol { WIDTH: 605px } BODY.story #storyBody { OVERFLOW: hidden } BODY.story #storyAssets { BORDER-RIGHT: #000 1px solid; BORDER-TOP: #000 1px solid; FLOAT: right; = MARGIN: 0px 0px 10px 10px; BORDER-LEFT: #000 1px solid; WIDTH: 210px; = BORDER-BOTTOM: #666 4px solid } BODY.story #storyAssets H2.related_content_title { FONT-WEIGHT: normal; COLOR: #fff; BACKGROUND-COLOR: #60669f; = TEXT-ALIGN: center } BODY.story #storyAssets #mainImage { MARGIN: 2px; OVERFLOW: hidden } BODY.story #storyAssets #additionalImages { MARGIN: 2px 2px 2px 5px; OVERFLOW: hidden } BODY.story #storyAssets UL.link_list { MARGIN-LEFT: 5px; LIST-STYLE-TYPE: none } BODY.story #storyAssets #mainImage IMG { DISPLAY: inline; MARGIN: 0px } BODY.story #storyAssets #mainImage DIV.image { BACKGROUND: #eaeaea; FLOAT: none; MARGIN: 0px; TEXT-ALIGN: center } BODY.story #storyAssets #mainImage DIV.imageByline { FONT-SIZE: 10px; MARGIN: 2px 5px 0px 0px; COLOR: #666666; TEXT-ALIGN: = right } BODY.story #storyAssets #mainImage DIV.imageCaption { FONT-SIZE: 11px; MARGIN: 2px 5px 5px } BODY.story #storyAssets #additionalImages A { FLOAT: left; MARGIN: 0px 2px 2px 0px } BODY.story #col2 .content { BORDER-BOTTOM: #ccc 6px double } .gallery #galleryFooter { BORDER-BOTTOM: #ccc 6px double } DIV#col2 DIV.content { PADDING-RIGHT: 0px; MARGIN-RIGHT: 5px } .section H1 { FONT-SIZE: 24px; TEXT-ALIGN: center } .section .section H1 { TEXT-ALIGN: left } .section H2 { FONT-SIZE: 12px; BORDER-BOTTOM: #c0c0c0 1px solid } .section H3 { FONT-SIZE: 12px; BORDER-BOTTOM: #c0c0c0 1px solid } .section .story { FONT-SIZE: 11px; MARGIN-BOTTOM: 10px } .section .story H1 { FONT-SIZE: 13px; MARGIN-BOTTOM: 0px; TEXT-ALIGN: left } .section .story H5 { FONT-WEIGHT: normal; FLOAT: none; COLOR: #666 } .wide { CLEAR: both } .wide .section .story { WIDTH: 95% } .wide .section .gallery { WIDTH: 95% } .wide .html_module { WIDTH: 95% } .span2 .section { CLEAR: none; FLOAT: left; WIDTH: 49%; MARGIN-RIGHT: 5px } .span2 .story { CLEAR: none; FLOAT: left; WIDTH: 49%; MARGIN-RIGHT: 5px } .span2 .gallery { CLEAR: none; FLOAT: left; WIDTH: 49%; MARGIN-RIGHT: 5px } .span2 .html_module { CLEAR: none; FLOAT: left; WIDTH: 49%; MARGIN-RIGHT: 5px } .span3 .section { CLEAR: none; FLOAT: left; WIDTH: 32%; MARGIN-RIGHT: 5px } .span3 .story { CLEAR: none; FLOAT: left; WIDTH: 32%; MARGIN-RIGHT: 5px } .span3 .gallery { CLEAR: none; FLOAT: left; WIDTH: 32%; MARGIN-RIGHT: 5px } .span3 .html_module { CLEAR: none; FLOAT: left; WIDTH: 32%; MARGIN-RIGHT: 5px } .span4 .section { CLEAR: none; FLOAT: left; WIDTH: 24%; MARGIN-RIGHT: 5px } .span4 .story { CLEAR: none; FLOAT: left; WIDTH: 24%; MARGIN-RIGHT: 5px } .span4 .gallery { CLEAR: none; FLOAT: left; WIDTH: 24%; MARGIN-RIGHT: 5px } .span4 .html_module { CLEAR: none; FLOAT: left; WIDTH: 24%; MARGIN-RIGHT: 5px } .span3 #news_flash { FLOAT: left; WIDTH: 32%; MARGIN-RIGHT: 5px } .span4 #news_flash { FLOAT: left; WIDTH: 24%; MARGIN-RIGHT: 5px } .span2 .story H1 { FONT-SIZE: 11px } .span3 .story H1 { FONT-SIZE: 11px } .span4 .story H1 { FONT-SIZE: 11px } .span3 .story P { FONT-SIZE: 9px } .span4 .story P { FONT-SIZE: 9px } .wide { MARGIN-BOTTOM: 10px; OVERFLOW: hidden } .left_half { MARGIN-BOTTOM: 10px; OVERFLOW: hidden } .right_half { MARGIN-BOTTOM: 10px; OVERFLOW: hidden } .wide .thumb_link { FLOAT: right; MARGIN: 0px 0px 3px 3px } .left_half { FLOAT: left } .right_half { FLOAT: right } .left_half { WIDTH: 50% } .right_half { WIDTH: 50% } .section DIV.story { MARGIN-BOTTOM: 6px } .section .blog { OVERFLOW: hidden } .section .blog H1 { FONT-SIZE: 11px; BORDER-BOTTOM: #c0c0c0 1px solid } .section .blog H1 A { COLOR: #b22222 } .section .blog .mug { FLOAT: right; MARGIN-LEFT: 5px } .section .blog .story H1 { FONT-SIZE: 13px; BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; = BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: none } .section .blog .story H1 A { COLOR: #039 } .section .blog .story P { DISPLAY: inline } .section .blog .story H5 { DISPLAY: inline } .more_stories { MARGIN-BOTTOM: 6px } .more_stories .story H1 { DISPLAY: inline; FONT-WEIGHT: normal; FONT-SIZE: 11px } .top_stories .story H1 { DISPLAY: inline; FONT-WEIGHT: normal; FONT-SIZE: 11px } .more_stories LI { CLEAR: both } A.gallery { PADDING-LEFT: 20px; BACKGROUND: = url(http://static.mcclatchyinteractive.com/images/mi/icons/photo.gif) = no-repeat left center } .spill_nav { CLEAR: both; MARGIN-BOTTOM: 15px; OVERFLOW: hidden } .spill_nav .previous { FLOAT: left; WIDTH: 49% } .spill_nav .next { FLOAT: right; WIDTH: 49%; TEXT-ALIGN: right } .static H1 { FONT-SIZE: 16px; TEXT-ALIGN: center } .static H2 { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; FONT-SIZE: 12px; = BORDER-BOTTOM-WIDTH: 0px; TEXT-ALIGN: left; BORDER-RIGHT-WIDTH: 0px } .static H5 { FONT-WEIGHT: normal; FONT-SIZE: 10px; FONT-STYLE: italic; TEXT-ALIGN: = left } .static OL { MARGIN-BOTTOM: 10px; MARGIN-LEFT: 20px } .static UL { MARGIN-BOTTOM: 10px; MARGIN-LEFT: 20px } .static OL LI { LIST-STYLE-TYPE: disc } .static UL LI { LIST-STYLE-TYPE: disc } .static P { MARGIN-BOTTOM: 15px } .tla { CLEAR: both; FONT-SIZE: 10pt; FONT-FAMILY: arial, sans-serif } .tla H5 { FONT-WEIGHT: normal; FONT-SIZE: 10px; COLOR: #666 } .tla TABLE { BORDER-RIGHT: #b3c7e3 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: = #b3c7e3 1px solid; PADDING-LEFT: 0px; BACKGROUND: #cedbed; = PADDING-BOTTOM: 0px; MARGIN: 0px auto; BORDER-LEFT: #b3c7e3 1px solid; = WIDTH: 100%; PADDING-TOP: 0px; BORDER-BOTTOM: #b3c7e3 1px solid; = BORDER-COLLAPSE: collapse } .tla TABLE TR TD { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } .tla .tla_toprow { BORDER-RIGHT: #b3c7e3 1px solid; BORDER-TOP: #b3c7e3 1px solid; = BACKGROUND: #fff; BORDER-LEFT: #b3c7e3 1px solid; BORDER-BOTTOM: #b3c7e3 = 1px solid } .tla .tla_toprow TD { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; FONT-WEIGHT: bold; = PADDING-BOTTOM: 10px; PADDING-TOP: 10px } .tla .tla_secondrow { BORDER-RIGHT: #b3c7e3 1px solid; BORDER-TOP: #b3c7e3 1px solid; = BACKGROUND: #e4ebf5; BORDER-LEFT: #b3c7e3 1px solid; BORDER-BOTTOM: = #b3c7e3 1px solid } .tla .tla_secondrow TD { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 10px; = PADDING-TOP: 10px } #top_jobs_container { BORDER-RIGHT: #efefef 1px solid; BORDER-TOP: #efefef 1px solid; = FONT-WEIGHT: bold; FONT-SIZE: 11px; BORDER-LEFT: #efefef 1px solid; = BORDER-BOTTOM: #efefef 1px solid; FONT-FAMILY: verdana, helvetica, = sans-serif } #top_jobs_container A { FONT-WEIGHT: normal } #top_jobs_container UL { PADDING-RIGHT: 0px; PADDING-LEFT: 20px; LIST-STYLE-POSITION: outside; = PADDING-BOTTOM: 10px; PADDING-TOP: 10px; LIST-STYLE-TYPE: disc } #top_jobs_container UL LI { PADDING-BOTTOM: 5px } #top_jobs_container .topjobs_employer { COLOR: #444444 } #top_jobs_head { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; = PADDING-TOP: 3px; BACKGROUND-COLOR: #efefef; TEXT-ALIGN: center } #top_jobs_all_link { FONT-WEIGHT: bold; PADDING-BOTTOM: 5px; TEXT-ALIGN: center } #top_jobs_all_link .arrow { FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #ff0000; LETTER-SPACING: 1px } #top_jobs_feed { PADDING-RIGHT: 5px; BORDER-TOP: #efefef 1px solid; PADDING-LEFT: 5px; = FONT-WEIGHT: normal; FONT-SIZE: 9px; PADDING-BOTTOM: 5px; = VERTICAL-ALIGN: top; PADDING-TOP: 5px; TEXT-ALIGN: center } #top_jobs_feed * { VERTICAL-ALIGN: middle } #top_jobs_feed_link { PADDING-LEFT: 0.4em; VERTICAL-ALIGN: middle } #marketwatch_widget { BORDER-RIGHT: #007b01 2px solid; BORDER-LEFT: #007b01 2px solid; = BORDER-BOTTOM: #007b01 4px solid } #marketwatch_widget #mw_header { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; = PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: #fff; PADDING-TOP: 0px; = WHITE-SPACE: nowrap; HEIGHT: 20px; BACKGROUND-COLOR: #007b01; = TEXT-ALIGN: center } #marketwatch_widget #mw_content { MARGIN: 0px auto; WIDTH: 150px } #marketwatch_widget #mw_ad { FONT-SIZE: 10px; FONT-FAMILY: Verdana, Arial, sans-serif; TEXT-ALIGN: = center } BODY.story #storyAssets .poll { MARGIN: 6px 5px } .poll LABEL { DISPLAY: block; FONT-WEIGHT: bold } #pollposition { DISPLAY: block } .poll .question { DISPLAY: block } .poll_results { DISPLAY: none } #poll_result .total { BORDER-TOP: #c0c0c0 1px solid; DISPLAY: block } .poll { BORDER-RIGHT: #c0c0c0 1px solid; PADDING-RIGHT: 2px; BORDER-TOP: = #c0c0c0 1px solid; PADDING-LEFT: 2px; PADDING-BOTTOM: 2px; BORDER-LEFT: = #c0c0c0 1px solid; PADDING-TOP: 2px; BORDER-BOTTOM: #c0c0c0 1px solid } .pubDate { FONT-SIZE: 11px; COLOR: #666 } .square { MARGIN: 0px 0px 0px 15px; COLOR: #666; LIST-STYLE-TYPE: square } .story_list { MARGIN-BOTTOM: 10px } .story_list .story { MARGIN-BOTTOM: 2px } .story_list .story H1 { DISPLAY: inline; FONT-WEIGHT: normal; FONT-SIZE: 12px } .story_list .pubDate { FONT-SIZE: 10px } .full_link { FONT-WEIGHT: bold; FONT-SIZE: 13px; COLOR: #666 } .section_name { BORDER-BOTTOM: #c0c0c0 1px solid } .advertisement { FONT-WEIGHT: bold; COLOR: #666; TEXT-ALIGN: center } #col3 .advertisement { MARGIN: 0px auto 10px } #leaderboard { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: #ccc; = PADDING-BOTTOM: 2px; PADDING-TOP: 2px; TEXT-ALIGN: center } #leaderboard .advertisement { MARGIN: 0px auto } #date_display { FONT-SIZE: 10px; FLOAT: right; COLOR: #666 } #pagetitle { MARGIN: 10px 0px; OVERFLOW: hidden; BORDER-BOTTOM: #ccc 6px double } .controlPanel { DISPLAY: none } .ajax_iframe { DISPLAY: none } .content_printable { PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; = PADDING-TOP: 10px } #backHome { FONT-SIZE: 10px; FLOAT: left; COLOR: #666 } #backHome A:hover { TEXT-DECORATION: underline } .gallery #galleryFooter { BORDER-BOTTOM: #ccc 6px double } .gallery #col2 { MARGIN: 0px 0px 0px 150px } .gallery DIV.galleryTitle { MARGIN: 0px 0px 10px; OVERFLOW: hidden; BORDER-BOTTOM: #000 1px solid } .gallery #imageCount { FLOAT: right } .gallery #galleryCol { FLOAT: left; WIDTH: 535px; TEXT-ALIGN: center } .gallery .galleryImage IMG { BORDER-RIGHT: #000 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #000 1px = solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; BORDER-LEFT: #000 1px = solid; PADDING-TOP: 5px; BORDER-BOTTOM: #000 1px solid } .gallery #captionCol { MARGIN: 0px 0px 0px 545px } .gallery A.previous { MARGIN: 0px 10px 0px 0px } .temp_hi { COLOR: red } .temp_lo { COLOR: blue } .weathermap { BORDER-RIGHT: #b5c6cd 1px solid; BORDER-TOP: #b5c6cd 1px solid; FLOAT: = left; MARGIN: 8px 0px; BORDER-LEFT: #b5c6cd 1px solid; BORDER-BOTTOM: = #b5c6cd 1px solid; BACKGROUND-COLOR: #e7eff2 } .weathermapleft { BORDER-TOP: #ffffff 1px solid; FLOAT: left; BORDER-LEFT: #ffffff 1px = solid } .weathermapimage { BORDER-RIGHT: #b5c6cd 1px solid; PADDING-RIGHT: 1px; BORDER-TOP: = #b5c6cd 1px solid; PADDING-LEFT: 1px; PADDING-BOTTOM: 1px; MARGIN: 4px; = BORDER-LEFT: #b5c6cd 1px solid; WIDTH: 270px; PADDING-TOP: 1px; = BORDER-BOTTOM: #b5c6cd 1px solid; HEIGHT: 203px; BACKGROUND-COLOR: = #ffffff } .weathermapright { BORDER-TOP: #ffffff 1px solid; FLOAT: left; BORDER-LEFT: #b5c6cd 1px = solid; WIDTH: 156px; POSITION: relative } .weathermaptext { BORDER-RIGHT: #b5c6cd 0px solid; PADDING-RIGHT: 4px; BORDER-TOP: = #b5c6cd 0px solid; PADDING-LEFT: 4px; FONT-WEIGHT: bold; FONT-SIZE: = 0.75em; FLOAT: left; PADDING-BOTTOM: 4px; BORDER-LEFT: #b5c6cd 0px = solid; WIDTH: 147px; COLOR: #333333; PADDING-TOP: 4px; BORDER-BOTTOM: = #b5c6cd 1px solid; FONT-FAMILY: sans-serif; BACKGROUND-COLOR: #e7eff2 } .galleryImageTickbox { BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; = VERTICAL-ALIGN: middle; BORDER-LEFT: #000000 1px solid; BORDER-BOTTOM: = #000000 1px solid } .galleryImageTickboxBox { BORDER-RIGHT: #000000 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: = #000000 1px solid; PADDING-LEFT: 5px; FONT-SIZE: 10px; BACKGROUND: = #efefef; FLOAT: left; PADDING-BOTTOM: 5px; MARGIN: 2px; OVERFLOW: = hidden; BORDER-LEFT: #000000 1px solid; WIDTH: 200px; CURSOR: hand; = PADDING-TOP: 6px; BORDER-BOTTOM: #000000 1px solid; HEIGHT: 201px; = TEXT-DECORATION: none; border-radius-topleft: 0.6em; = border-radius-topright: 0.6em; -moz-border-radius-topleft: 0.6em; = -moz-border-radius-topright: 0.6em } .galleryImageTickboxBox:hover { BORDER-RIGHT: #000000 1px double; BORDER-TOP: #000000 1px double; = BORDER-LEFT: #000000 1px double; BORDER-BOTTOM: #000000 1px double } .galleryImageTickboxCaption { FONT-SIZE: 10px; COLOR: #000000; TEXT-DECORATION: none } .error_message { MARGIN: 20px } #ff_topix { BORDER-RIGHT: #dbd4d6 1px solid; BORDER-TOP: #dbd4d6 1px solid; = FONT-SIZE: x-small; MARGIN: 0px auto; OVERFLOW: hidden; BORDER-LEFT: = #dbd4d6 1px solid; WIDTH: 600px; BORDER-BOTTOM: #dbd4d6 1px solid; = FONT-FAMILY: arial,helvetica; TEXT-ALIGN: left } #ff_topix LI { PADDING-BOTTOM: 3px } #ff_topix #twhead1 { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; BACKGROUND: = #dbd4d6; PADDING-BOTTOM: 2px; COLOR: #000; PADDING-TOP: 2px; = BORDER-BOTTOM: #00188f 4px solid; TEXT-ALIGN: center } #ff_topix #twbody { CLEAR: none; PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: = 5px; PADDING-TOP: 5px } #ff_topix .twcolumn { FLOAT: left; WIDTH: 33% } #ff_topix UL.topixlist { PADDING-LEFT: 15px; LIST-STYLE-POSITION: outside; FONT-SIZE: x-small; = MARGIN: 0px; LIST-STYLE-TYPE: square } #google_ads { TEXT-ALIGN: center } .ptNameFieldLabel { DISPLAY: block } .advertisement DIV { MARGIN: 0px auto } #leaderboard DIV { MARGIN: 0px auto } #top_jobs_container_300px { BORDER-LEFT-COLOR: #666666; MARGIN-BOTTOM: 10px; BORDER-BOTTOM-COLOR: = #666666; WIDTH: 300px; BORDER-TOP-COLOR: #666666; BACKGROUND-COLOR: = #ffc; BORDER-RIGHT-COLOR: #666666 } #top_jobs_head_300px { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; COLOR: = #ffffff; PADDING-TOP: 3px; BACKGROUND-COLOR: #ff6600; TEXT-ALIGN: center } #top_jobs_container_300px { BORDER-RIGHT: #efefef 1px solid; BORDER-TOP: #efefef 1px solid; = FONT-WEIGHT: bold; FONT-SIZE: 11px; BORDER-LEFT: #efefef 1px solid; = BORDER-BOTTOM: #efefef 1px solid; FONT-FAMILY: verdana, helvetica, = sans-serif } #top_jobs_container_300px A { FONT-WEIGHT: normal } #top_jobs_container_300px UL { PADDING-RIGHT: 0px; PADDING-LEFT: 20px; LIST-STYLE-POSITION: outside; = PADDING-BOTTOM: 10px; PADDING-TOP: 10px; LIST-STYLE-TYPE: disc } #top_jobs_container_300px UL LI { PADDING-BOTTOM: 5px } #top_jobs_container_300px .topjobs_employer { COLOR: #444444 } #top_jobs_head_300px { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; = PADDING-TOP: 3px; BACKGROUND-COLOR: #efefef; TEXT-ALIGN: center } #top_jobs_all_link_300px { FONT-WEIGHT: bold; PADDING-BOTTOM: 5px; TEXT-ALIGN: center } #top_jobs_all_link_300px .arrow { FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #ff0000; LETTER-SPACING: 1px } #top_jobs_feed_300px { PADDING-RIGHT: 5px; BORDER-TOP: #efefef 1px solid; PADDING-LEFT: 5px; = FONT-WEIGHT: normal; FONT-SIZE: 9px; PADDING-BOTTOM: 5px; = VERTICAL-ALIGN: top; PADDING-TOP: 5px; TEXT-ALIGN: center } #top_jobs_feed_300px * { VERTICAL-ALIGN: middle } #top_jobs_feed_link_300px { PADDING-LEFT: 0.4em; VERTICAL-ALIGN: middle } .option_results { MARGIN: 8px 0px } .poll_title { FONT-WEIGHT: bold; WHITE-SPACE: nowrap } #poll_form .question { FONT-WEIGHT: bold } #poll_form LABEL { FONT-WEIGHT: normal; MARGIN: 10px 0px } DIV#most_popular { CLEAR: right; BORDER-RIGHT: black 1px solid; PADDING-RIGHT: 5px; = BORDER-TOP: black 1px solid; PADDING-LEFT: 5px; FLOAT: right; = PADDING-BOTTOM: 0em; MARGIN-LEFT: 10px; BORDER-LEFT: black 2px solid; = WIDTH: 280px; PADDING-TOP: 5px; BORDER-BOTTOM: black 2px solid; = LIST-STYLE-TYPE: none } ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://media.ledger-enquirer.com/styles/mi/thickbox.css * { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px } #TB_window { FONT: 12px Arial, Helvetica, sans-serif; COLOR: #333333 } #TB_secondLine { FONT: 10px Arial, Helvetica, sans-serif; COLOR: #666666 } #TB_window A:link { COLOR: #666666 } #TB_window A:visited { COLOR: #666666 } #TB_window A:hover { COLOR: #000 } #TB_window A:active { COLOR: #666666 } #TB_window A:focus { COLOR: #666666 } #TB_overlay { Z-INDEX: 100; LEFT: 0px; WIDTH: 100%; POSITION: fixed; TOP: 0px; = HEIGHT: 100% } .TB_overlayMacFFBGHack { BACKGROUND: url(macFFBgHack.png) } .TB_overlayBG { FILTER: alpha(opacity=3D75); BACKGROUND-COLOR: #000; opacity: 0.75; = -moz-opacity: 0.75 } * HTML #TB_overlay { POSITION: absolute; ; HEIGHT: expression(document.body.scrollHeight > = document.body.offsetHeight ? document.body.scrollHeight : = document.body.offsetHeight + 'px') } #TB_window { BORDER-RIGHT: #525252 4px solid; BORDER-TOP: #525252 4px solid; = DISPLAY: none; Z-INDEX: 102; BACKGROUND: #ffffff; LEFT: 50%; = BORDER-LEFT: #525252 4px solid; COLOR: #000000; BORDER-BOTTOM: #525252 = 4px solid; POSITION: fixed; TOP: 50%; TEXT-ALIGN: left } * HTML #TB_window { ; MARGIN-TOP: expression(0 - parseInt(this.offsetHeight / 2) + = (TBWindowMargin =3D document.documentElement && = document.documentElement.scrollTop || document.body.scrollTop) + 'px'); = POSITION: absolute } #TB_window IMG#TB_Image { BORDER-RIGHT: #ccc 1px solid; BORDER-TOP: #666 1px solid; DISPLAY: = block; MARGIN: 15px 0px 0px 15px; BORDER-LEFT: #666 1px solid; = BORDER-BOTTOM: #ccc 1px solid } #TB_caption { PADDING-RIGHT: 30px; PADDING-LEFT: 25px; FLOAT: left; PADDING-BOTTOM: = 10px; PADDING-TOP: 7px; HEIGHT: 25px } #TB_closeWindow { PADDING-RIGHT: 25px; PADDING-LEFT: 0px; FLOAT: right; PADDING-BOTTOM: = 10px; PADDING-TOP: 11px; HEIGHT: 25px } #TB_closeAjaxWindow { PADDING-RIGHT: 10px; PADDING-LEFT: 0px; FLOAT: right; MARGIN-BOTTOM: = 1px; PADDING-BOTTOM: 5px; PADDING-TOP: 7px; TEXT-ALIGN: right } #TB_ajaxWindowTitle { PADDING-RIGHT: 0px; PADDING-LEFT: 10px; FLOAT: left; MARGIN-BOTTOM: = 1px; PADDING-BOTTOM: 5px; PADDING-TOP: 7px } #TB_title { HEIGHT: 27px; BACKGROUND-COLOR: #e8e8e8 } #TB_ajaxContent { CLEAR: both; PADDING-RIGHT: 15px; PADDING-LEFT: 15px; PADDING-BOTTOM: = 15px; OVERFLOW: auto; LINE-HEIGHT: 1.4em; PADDING-TOP: 2px; TEXT-ALIGN: = left } .TB_modal#TB_ajaxContent { PADDING-RIGHT: 15px; PADDING-LEFT: 15px; PADDING-BOTTOM: 15px; = PADDING-TOP: 15px } #TB_ajaxContent P { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 5px; = PADDING-TOP: 5px } #TB_load { DISPLAY: none; Z-INDEX: 103; LEFT: 50%; MARGIN: -6px 0px 0px -104px; = WIDTH: 208px; POSITION: fixed; TOP: 50%; HEIGHT: 13px } * HTML #TB_load { ; MARGIN-TOP: expression(0 - parseInt(this.offsetHeight / 2) + = (TBWindowMargin =3D document.documentElement && = document.documentElement.scrollTop || document.body.scrollTop) + 'px'); = POSITION: absolute } #TB_HideSelect { Z-INDEX: 99; FILTER: alpha(opacity=3D0); LEFT: 0px; WIDTH: 100%; = BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: = none; POSITION: fixed; TOP: 0px; HEIGHT: 100%; BACKGROUND-COLOR: #fff; = BORDER-BOTTOM-STYLE: none; opacity: 0; -moz-opacity: 0 } * HTML #TB_HideSelect { POSITION: absolute; ; HEIGHT: expression(document.body.scrollHeight > = document.body.offsetHeight ? document.body.scrollHeight : = document.body.offsetHeight + 'px') } #TB_iframeContent { CLEAR: both; MARGIN-TOP: 1px; MARGIN-BOTTOM: -1px; BORDER-TOP-STYLE: = none; BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; = BORDER-BOTTOM-STYLE: none; _margin-bottom: 1px } ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Location: http://media.ledger-enquirer.com/styles/mi/story_body.css UNKNOWN { } UNKNOWN { } UNKNOWN { } else { } UNKNOWN { } else { } UNKNOWN { } else { } UNKNOWN { } ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://media.ledger-enquirer.com/static/styles/test/layout_floated.css #left_rail { MARGIN-TOP: 0px; DISPLAY: none; FLOAT: left; WIDTH: 0px } #center_rail { FLOAT: left; MARGIN: 4px; WIDTH: 665px! important } #right_rail { PADDING-RIGHT: 2px; MARGIN-TOP: 15px; PADDING-LEFT: 2px; FLOAT: left; = PADDING-BOTTOM: 2px; WIDTH: 305px; PADDING-TOP: 2px; BACKGROUND-COLOR: = #eeeeee } .story #center_rail { PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 2px; OVERFLOW: = visible; WIDTH: 665px; MARGIN-RIGHT: 0px; PADDING-TOP: 2px } .story #right_rail { WIDTH: 300px; MARGIN-RIGHT: 0px } .story #center_rail #storyDate-Links { MARGIN: 0pt 10px 20px 0px } DIV#left_rail DIV.content { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } DIV#center_rail DIV.content { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; OVERFLOW: = visible; PADDING-TOP: 5px } DIV#right_rail .content { OVERFLOW: visible; WIDTH: 200px; PADDING-TOP: 5px } .wide { CLEAR: both; WIDTH: 100%; POSITION: relative } #center_rail .html_module { CLEAR: both; DISPLAY: block } .section { CLEAR: both } #rails { BACKGROUND: #fff; FLOAT: left; WIDTH: 998px } #masthead { =09 } #leaderboard { =09 } #searchbar { =09 } DIV#pageContainer { BORDER-RIGHT: #666 1px solid; BORDER-TOP: #666 1px solid; BORDER-LEFT: = #666 1px solid; BORDER-BOTTOM: #666 1px solid } #footer { CLEAR: both; BACKGROUND: #fff; MARGIN: 0px auto; WIDTH: 970px! = important } #footerad { PADDING-BOTTOM: 15px } #omniture { DISPLAY: none } .span2 .section { CLEAR: none! important } .span2 .story { CLEAR: none! important } .span2 .gallery { CLEAR: none! important } .span2 .html_module { CLEAR: none! important } .span3 .section { CLEAR: none! important } .span3 .story { CLEAR: none! important } .span3 .gallery { CLEAR: none! important } .span3 .html_module { CLEAR: none! important } .span4 .section { CLEAR: none! important } .span4 .story { CLEAR: none! important } .span4 .gallery { CLEAR: none! important } .span4 .html_module { CLEAR: none! important } ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://media.ledger-enquirer.com/styles/test/cle.css .community_highlight_box { BORDER-RIGHT: #991020 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: = #991020 1px solid; PADDING-LEFT: 5px; FONT-SIZE: 20pt; MARGIN-BOTTOM: = 5px; PADDING-BOTTOM: 0px; OVERFLOW: hidden; BORDER-LEFT: #991020 1px = solid; WIDTH: 293px; PADDING-TOP: 0px; BORDER-BOTTOM: #991020 1px solid; = HEIGHT: 118px; BACKGROUND-COLOR: #ffffff } .community_highlight_box_left { FONT-SIZE: 20pt; FLOAT: left; MARGIN: 5px 0px; WIDTH: 293px } .community_highlight_title { FONT-WEIGHT: bold; MARGIN-LEFT: -5px; COLOR: #ffffff; FONT-FAMILY: = Arial, Helvetica, sans-serif; BACKGROUND-COLOR: #991020 } .community_highlight_title P { PADDING-RIGHT: 0px; PADDING-LEFT: 5px; FONT-SIZE: 13pt; PADDING-BOTTOM: = 2px; MARGIN: 0px; PADDING-TOP: 2px } .big_breaking_box H1 { DISPLAY: block; FONT-WEIGHT: bold; FONT-SIZE: 2em; COLOR: #114683; = LINE-HEIGHT: 1em; LETTER-SPACING: -1px } .big_breaking_box { BORDER-RIGHT: #ccc 2px solid; PADDING-RIGHT: 5px; BORDER-TOP: #ccc 2px = solid; PADDING-LEFT: 5px; FONT-SIZE: 13px; PADDING-BOTTOM: 5px; = OVERFLOW: hidden; BORDER-LEFT: #ccc 2px solid; PADDING-TOP: 5px; = BORDER-BOTTOM: #ccc 2px solid; BACKGROUND-COLOR: #ffffcc } .blog_feed_title { FONT-SIZE: 18px; PADDING-TOP: 9px } .blog_feed_container { TEXT-ALIGN: left } .instory_jobs_widget_large { BORDER-BOTTOM: #ccc 2px dashed; BACKGROUND-COLOR: #ffffcc } .instory_jobs_widget_large A { PADDING-LEFT: 15px } .story_cb { BORDER-RIGHT: 1px solid; BORDER-TOP: medium none; BACKGROUND: #ffffcc = 0% 50%; BORDER-LEFT: 1px solid; BORDER-BOTTOM: 1px solid } .instory_jobs_widget_large H5 { PADDING-LEFT: 4px; FONT-WEIGHT: bold; FONT-SIZE: 12px; FONT-FAMILY: = arial,helvetica } .instory_jobs_widget_large .story_cb { BORDER-TOP-STYLE: none; BORDER-RIGHT-STYLE: solid; BORDER-LEFT-STYLE: = solid; BORDER-BOTTOM-STYLE: solid } .reg_body { FONT-SIZE: 11px; COLOR: #000; LINE-HEIGHT: 135%; FONT-FAMILY: = verdana,arial,sans-serif; TEXT-ALIGN: center } TABLE TD { FONT-SIZE: 11px; COLOR: #000; FONT-FAMILY: verdana,arial,sans-serif } A { COLOR: #900; TEXT-DECORATION: underline } A:hover { COLOR: #f00; TEXT-DECORATION: none } .miregtext { FONT-SIZE: 10px; MARGIN-BOTTOM: 4px; WIDTH: 130px; TEXT-INDENT: 2px } .miregradio { MARGIN-TOP: 3px; FONT-SIZE: 10px; TEXT-INDENT: 2px } .miregselect { FONT-SIZE: 10px; MARGIN-BOTTOM: 3px; TEXT-INDENT: 2px } .miregpassword { FONT-SIZE: 10px; MARGIN-BOTTOM: 4px; WIDTH: 130px; TEXT-INDENT: 2px } .miregcheckbox { MARGIN-BOTTOM: 0px } .bold { FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: #399 } .center { TEXT-ALIGN: center } .fielddesc { FONT-SIZE: 11px; VERTICAL-ALIGN: top; WIDTH: 25% } .step1_desc { FONT-SIZE: 11px; VERTICAL-ALIGN: top; WIDTH: 28% } .frmbutton { FONT-WEIGHT: bold; FONT-SIZE: 9pt; COLOR: #000; FONT-FAMILY: = Verdana,Arial,sans-serif } .newsletter_thumb { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; PADDING-BOTTOM: 5px; BORDER-RIGHT-WIDTH: 0px } .newsletter_info { VERTICAL-ALIGN: top } .required { MARGIN-TOP: 0px; COLOR: #cc0000 } .required2 { MARGIN-TOP: 0px; FONT-WEIGHT: bold; FONT-SIZE: 10px } .desc { FONT-SIZE: 10px } .fieldtitle { FONT-WEIGHT: bold } .subtitle { FONT-WEIGHT: bold; COLOR: #399 } .heading { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; FONT-SIZE: = 14px; PADDING-BOTTOM: 0px; MARGIN: 0px; COLOR: #066; LINE-HEIGHT: 150%; = PADDING-TOP: 0px } .smallHr { MARGIN-TOP: -5px; MARGIN-BOTTOM: -5px } #menu { PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 2px; MARGIN: 0px = auto; WIDTH: 80%; PADDING-TOP: 2px; BACKGROUND-COLOR: #eee; TEXT-ALIGN: = center } #content { BORDER-RIGHT: #333 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: #333 1px = solid; PADDING-LEFT: 10px; PADDING-BOTTOM: 10px; MARGIN: 0px auto; = BORDER-LEFT: #333 1px solid; WIDTH: 550px; PADDING-TOP: 3px; = BORDER-BOTTOM: #333 1px solid; BACKGROUND-COLOR: #fff; TEXT-ALIGN: left } #content P { PADDING-BOTTOM: 15px; TEXT-ALIGN: left } #content H2 { MARGIN-TOP: 0px; FONT-SIZE: 15px; COLOR: #000; PADDING-TOP: 0px } #content OL LI { PADDING-BOTTOM: 10px } #lookup { LEFT: -10px; MARGIN: 0px auto; WIDTH: 550px; POSITION: relative } #register { MARGIN: 0px auto; WIDTH: 550px; POSITION: relative } #register2 { BORDER-RIGHT: #333 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #333 1px = solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; MARGIN: 0px auto; = BORDER-LEFT: #333 1px solid; WIDTH: 550px; PADDING-TOP: 5px; = BORDER-BOTTOM: #333 1px solid; POSITION: relative } #features { BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; = BORDER-LEFT: #000000 1px solid; WIDTH: 100%; BORDER-BOTTOM: #000000 1px = solid; BACKGROUND-COLOR: #fff } #features TD { BORDER-RIGHT: #333 2px solid; PADDING-RIGHT: 5px; BORDER-TOP: #666 1px = solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; VERTICAL-ALIGN: top; = BORDER-LEFT: #666 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: #333 2px = solid } #features UL { PADDING-LEFT: 2.5em; MARGIN-BOTTOM: 0px; MARGIN-LEFT: 0px } #sidedesc { BORDER-RIGHT: #333 2px solid; PADDING-RIGHT: 5px; BORDER-TOP: #666 1px = solid; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; VERTICAL-ALIGN: top; = BORDER-LEFT: #666 1px solid; WIDTH: 32%; PADDING-TOP: 5px; = BORDER-BOTTOM: #333 2px solid; TEXT-ALIGN: justify } #miregselectbirth_year { WIDTH: 55px } #firstPara { MARGIN: 0px 0px 5px; PADDING-TOP: 0px } #privacyPara { PADDING-BOTTOM: 5px; MARGIN: 5px 0px 0px } #story-widgets .widget { BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; MARGIN: 0px = auto 10px; BORDER-LEFT: black 1px solid; WIDTH: 300px; BORDER-BOTTOM: = black 1px solid; BACKGROUND-COLOR: white } #advert-widgets .widget { BORDER-RIGHT: black 1px solid; BORDER-TOP: black 1px solid; MARGIN: 0px = auto 10px; BORDER-LEFT: black 1px solid; WIDTH: 300px; BORDER-BOTTOM: = black 1px solid; BACKGROUND-COLOR: white } #story-widgets .widget { WIDTH: 270px } #story-widgets .widget * { FONT-FAMILY: Arial, Helvetica, sans-serif; TEXT-ALIGN: left } #advert-widgets .widget * { FONT-FAMILY: Arial, Helvetica, sans-serif; TEXT-ALIGN: left } #story-widgets .widget .head { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; FONT-WEIGHT: bold; FONT-SIZE: = 0.9em; PADDING-BOTTOM: 3px; PADDING-TOP: 3px; BORDER-BOTTOM: black 1px = solid } #advert-widgets .widget .head { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; FONT-WEIGHT: bold; FONT-SIZE: = 0.9em; PADDING-BOTTOM: 3px; PADDING-TOP: 3px; BORDER-BOTTOM: black 1px = solid } #story-widgets .widget .head A { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 0.75em; FLOAT: right; = PADDING-BOTTOM: 2px; PADDING-TOP: 2px } #advert-widgets .widget .head A { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 0.75em; FLOAT: right; = PADDING-BOTTOM: 2px; PADDING-TOP: 2px } #story-widgets .widget .head A.title { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 1em; FLOAT: none; = PADDING-BOTTOM: 0px; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; = BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: = none } #advert-widgets .widget .head A.title { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-SIZE: 1em; FLOAT: none; = PADDING-BOTTOM: 0px; BORDER-TOP-STYLE: none; PADDING-TOP: 0px; = BORDER-RIGHT-STYLE: none; BORDER-LEFT-STYLE: none; BORDER-BOTTOM-STYLE: = none } #story-widgets .widget .body { PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-SIZE: 0.82em; = PADDING-BOTTOM: 10px; PADDING-TOP: 10px } #advert-widgets .widget .body { PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-SIZE: 0.82em; = PADDING-BOTTOM: 10px; PADDING-TOP: 10px } #story-widgets .widget .body A { FONT-WEIGHT: bold } #advert-widgets .widget .body A { FONT-WEIGHT: bold } #story-widgets .widget .foot { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; = PADDING-TOP: 3px; TEXT-ALIGN: center } #advert-widgets .widget .foot { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; = PADDING-TOP: 3px; TEXT-ALIGN: center } #top-jobs .widget { BORDER-LEFT-COLOR: #ff9933; BORDER-BOTTOM-COLOR: #ff9933; = BORDER-TOP-COLOR: #ff9933; BORDER-RIGHT-COLOR: #ff9933 } #top-jobs .widget .head { BORDER-LEFT-COLOR: #ff9933; BORDER-BOTTOM-COLOR: #ff9933; = BORDER-TOP-COLOR: #ff9933; BORDER-RIGHT-COLOR: #ff9933 } #top-jobs .widget .head { FONT-SIZE: 12px; COLOR: #e85753; BACKGROUND-COLOR: #ffd099 } #top-jobs .widget .body .item { MARGIN-BOTTOM: 5px } #top-jobs .widget .search { MARGIN: 10px 0px } #top-jobs .widget .search .search-head { BACKGROUND: = url(http://media.newsobserver.com/stylesheets/live/components/advert-widg= ets/assets/top-jobs/top-left.gif) #f8a023 no-repeat left top } #top-jobs .widget .search .search-head .wrapper { BACKGROUND: = url(http://media.newsobserver.com/stylesheets/live/components/advert-widg= ets/assets/top-jobs/top-right.gif) no-repeat right top } #top-jobs .widget .search .search-head .wrapper DIV { PADDING-RIGHT: 10px; PADDING-LEFT: 10px; FONT-WEIGHT: bold; = PADDING-BOTTOM: 3px; COLOR: white; PADDING-TOP: 3px } #top-jobs .widget .search FORM { BORDER-RIGHT: #f8a023 1px solid; PADDING-RIGHT: 8px; BORDER-TOP: = #f8a023 1px solid; DISPLAY: block; PADDING-LEFT: 8px; PADDING-BOTTOM: = 8px; BORDER-LEFT: #f8a023 1px solid; PADDING-TOP: 8px; BORDER-BOTTOM: = #f8a023 1px solid; BACKGROUND-COLOR: #fff9f3 } #top-jobs FORM DIV.row { HEIGHT: 30px } #top-jobs FORM LABEL { FONT-SIZE: 0.88em; COLOR: #434343; LINE-HEIGHT: 30px } #top-jobs-keywords { WIDTH: 165px } #top-jobs-city { WIDTH: 135px } #top-jobs-category { WIDTH: 160px } #top-jobs-state { WIDTH: 55px } #top-jobs FORM INPUT.button { BORDER-RIGHT: #e57504 1px solid; PADDING-RIGHT: 15px; BORDER-TOP: = #e57504 1px solid; PADDING-LEFT: 15px; FONT-WEIGHT: bold; = PADDING-BOTTOM: 0px; MARGIN-LEFT: 130px; BORDER-LEFT: #e57504 1px solid; = WIDTH: 90px; COLOR: #fff; PADDING-TOP: 0px; BORDER-BOTTOM: #e57504 1px = solid; BACKGROUND-COLOR: #f99f24 } #top-jobs FORM A { FONT-SIZE: 0.88em; MARGIN-LEFT: 130px } .vertical_ads { FONT-SIZE: 9px } #sectionTitle { DISPLAY: none } .chad { PADDING-RIGHT: 0px; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } DIV.chad P { COLOR: #053264; LINE-HEIGHT: 1.15em } DIV.chad P.c:first-letter { MARGIN: 0px 0px 0px -10px } DIV.chad P:first-letter { MARGIN: 0px 0px 0px -10px } DIV.chad P.more:first-letter { MARGIN: 0px } .chad U { TEXT-DECORATION: none } .chad LI { DISPLAY: list-item } .chad_tjobs { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } DIV.chad_tjobs P { COLOR: #053264; LINE-HEIGHT: 1.15em } DIV.chad_tjobs P.c:first-letter { MARGIN: 0px 0px 0px -10px } DIV.chad P:first-letter { MARGIN: 0px 0px 0px -10px } DIV.chad_tjobs P.more:first-letter { MARGIN: 0px } .chad_tjobs U { TEXT-DECORATION: none } .chad_tjobs LI { DISPLAY: list-item } .story_list LI { PADDING-RIGHT: 0px; LIST-STYLE: square none outside; PADDING-LEFT: 0px; = PADDING-BOTTOM: 0px; MARGIN: 0px 0px 0px 8px; PADDING-TOP: 0px } .story_list UL { PADDING-RIGHT: 0px; LIST-STYLE: square none outside; PADDING-LEFT: 8px; = PADDING-BOTTOM: 0px; MARGIN: 5px 0px 0px 8px; PADDING-TOP: 0px } .contentBlockTitle { FONT-WEIGHT: bold; FONT-SIZE: 11px; PADDING-BOTTOM: 6px; = TEXT-TRANSFORM: uppercase; COLOR: #7f93c6 } .contentBlockTitle_grey { FONT-WEIGHT: bold; FONT-SIZE: 14px; PADDING-BOTTOM: 6px; = TEXT-TRANSFORM: uppercase; COLOR: #0312d0 } .sectionMenu { BACKGROUND: = url(http://media.ledger-enquirer.com/static/images/poo9.gif) #666666 = repeat-x; OVERFLOW: visible; LINE-HEIGHT: 22px; HEIGHT: 23px } .sectionMenu A { COLOR: #ffffff } .list2 LI.first { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: = url(http://media.ledger-enquirer.com/static/images/sectionMenuBG2.gif) = repeat-x } .list2 LI.last { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; BACKGROUND: = url(http://media.ledger-enquirer.com/static/images/sectionMenuBG2.gif) = repeat-x } .list2 LI.first A { PADDING-RIGHT: 10px; DISPLAY: block; PADDING-LEFT: 10px } .list2 LI.last A { PADDING-RIGHT: 10px; DISPLAY: block; PADDING-LEFT: 10px } .list2 LI.first A { BACKGROUND: = url(http://media.ledger-enquirer.com/static/images/sectionMenuDiv1.gif) = no-repeat left top } .list2 LI.last A { BACKGROUND: = url(http://media.ledger-enquirer.com/static/images/sectionMenuDiv2.gif) = no-repeat right top } .list2 LI { BACKGROUND: = url(http://media.ledger-enquirer.com/static/images/sectionMenuBG2.gif) = repeat-x } .list2 LI DIV.subMenu LI { BACKGROUND: none transparent scroll repeat 0% 0% } .list2 LI DIV.subMenu LI A { BACKGROUND: none transparent scroll repeat 0% 0% } .list2 LI DIV.subMenu1Column LI { BACKGROUND: none transparent scroll repeat 0% 0% } .list2 LI DIV.subMenu1Column LI A { BACKGROUND: none transparent scroll repeat 0% 0% } .list2 LI DIV.subMenu LI A { PADDING-RIGHT: 0px; PADDING-LEFT: 0px } .list2 LI DIV.subMenu1Column LI A { PADDING-RIGHT: 0px; PADDING-LEFT: 0px } UL.dropDown { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 0px; LIST-STYLE-TYPE: none } LI.dropDownItem { PADDING-RIGHT: 10px; PADDING-LEFT: 10px; Z-INDEX: 1000; FLOAT: left; = POSITION: relative; HEIGHT: 23px } LI.dropDownItemHome { PADDING-RIGHT: 6px; PADDING-LEFT: 0px; Z-INDEX: 1000; FLOAT: left; = POSITION: relative; HEIGHT: 23px } A.menuLink { FONT-WEIGHT: bold } DIV.subMenu { BORDER-RIGHT: #d2d2d2 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: = #d2d2d2 1px solid; PADDING-LEFT: 0px; BACKGROUND: #fff; LEFT: -2000px; = PADDING-BOTTOM: 0px; BORDER-LEFT: #d2d2d2 1px solid; WIDTH: 440px; = COLOR: #000; PADDING-TOP: 0px; BORDER-BOTTOM: #d2d2d2 1px solid; = POSITION: absolute; TOP: 23px; HEIGHT: auto } DIV.subMenu1Column { BORDER-RIGHT: #d2d2d2 1px solid; PADDING-RIGHT: 0px; BORDER-TOP: = #d2d2d2 1px solid; PADDING-LEFT: 0px; BACKGROUND: #fff; LEFT: -2000px; = PADDING-BOTTOM: 0px; BORDER-LEFT: #d2d2d2 1px solid; WIDTH: 175px; = COLOR: #000; PADDING-TOP: 0px; BORDER-BOTTOM: #d2d2d2 1px solid; = POSITION: absolute; TOP: 23px; HEIGHT: auto } LI.dropDownItem:hover DIV.subMenu { LEFT: 0px } LI.dropDownItem:hover DIV.subMenu1Column { LEFT: 0px } LI.dropDownItemHome:hover DIV.subMenu { LEFT: 0px } LI.dropDownItemHome:hover DIV.subMenu1Column { LEFT: 0px } DIV.subMenuContent { BACKGROUND: #fff } DIV.subMenu .subMenuCol { FLOAT: left; WIDTH: 110px } DIV.subMenu1Column .subMenuCol { FLOAT: left; WIDTH: 150px } DIV.subMenu UL { LIST-STYLE-TYPE: none } DIV.subMenu1Column UL { LIST-STYLE-TYPE: none } DIV.subMenu LI { FLOAT: none; MARGIN: 5px 0px; TEXT-TRANSFORM: uppercase; WIDTH: 90px; = LINE-HEIGHT: 13px } DIV.subMenu1Column LI { FLOAT: none; MARGIN: 5px 0px; TEXT-TRANSFORM: uppercase; WIDTH: 120px; = LINE-HEIGHT: 13px } DIV.subMenu UL UL { PADDING-LEFT: 0px; MARGIN-LEFT: 0px } DIV.subMenu1Column UL UL { PADDING-LEFT: 0px; MARGIN-LEFT: 0px } DIV.subMenu LI LI { DISPLAY: block; FLOAT: none } DIV.subMenu1Column LI LI { DISPLAY: block; FLOAT: none } DIV.subMenu A { TEXT-TRANSFORM: none; COLOR: #0e4887 } DIV.subMenu1Column A { TEXT-TRANSFORM: none; COLOR: #0e4887 } .sectionMenu IMG { BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; DISPLAY: block; = PADDING-LEFT: 0px; BORDER-LEFT-WIDTH: 0px; FLOAT: left; = BORDER-BOTTOM-WIDTH: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: = 0px; BORDER-RIGHT-WIDTH: 0px } .sectionMenu IMG.sectionMenuImg1 { PADDING-LEFT: 15px } .section_scrollbox_header { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FONT-WEIGHT: bold; = PADDING-BOTTOM: 2px; WIDTH: 600px; COLOR: #ffffff; TEXT-INDENT: 5px; = LINE-HEIGHT: 16px; PADDING-TOP: 2px; HEIGHT: 16px; BACKGROUND-COLOR: = #0e4887 } .section_scrollbox_content { BORDER-RIGHT: #c0c0c0 1px solid; BORDER-TOP: #c0c0c0 0px solid; = FONT-SIZE: 9px; OVERFLOW-X: hidden; OVERFLOW: auto; BORDER-LEFT: #c0c0c0 = 1px solid; WIDTH: 598px; BORDER-BOTTOM: #c0c0c0 1px solid; HEIGHT: 75px } .skybox-headline { FONT-WEIGHT: bold; FONT-SIZE: 14px } .skybox-headline2 { FONT-WEIGHT: bold } .containertitle { CLEAR: both; FONT-WEIGHT: bold; MARGIN-BOTTOM: 5px; COLOR: #000; = BORDER-BOTTOM: #ccc 1px solid; TEXT-ALIGN: left } .tab-headline { FONT-WEIGHT: bold; FONT-SIZE: 18px } .tab-byline { FONT-SIZE: 10px; MARGIN: 0px 0px 5px; COLOR: #666 } .tab-photocredit { FONT-SIZE: 10px; MARGIN: 0px 0px 5px; COLOR: #666 } .tab-headline2 { FONT-WEIGHT: bold } .story_list .story H1 A { DISPLAY: block; FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: #0e4887 } #storyBody H1 { FONT-WEIGHT: bold; FONT-SIZE: 24px; FONT-FAMILY: georgia,"Times New = Roman",serif } #storyBody { FONT-SIZE: 12px; FONT-FAMILY: arial,sans-serif } .section A H2 { COLOR: #0e4887 } .html_module FIELDSET A { COLOR: #0e4887 } .navigation .header { BORDER-LEFT-COLOR: #990000; BORDER-BOTTOM-COLOR: #990000; COLOR: = #0e4887; BORDER-TOP-COLOR: #990000; BORDER-RIGHT-COLOR: #990000 } #classifieds_link_box A { BACKGROUND-IMAGE: url(/images/nav_bullet_red.gif) } A { COLOR: #0e4887 } .more_container { MARGIN-TOP: -6px; PADDING-LEFT: 12px; MARGIN-BOTTOM: 12px } .more_arrow { FONT-WEIGHT: bold; FONT-SIZE: 11px; COLOR: #f00; FONT-FAMILY: arial, = sans-serif; LETTER-SPACING: 1px } .more_link { FONT-WEIGHT: normal; FONT-SIZE: 12px; COLOR: #0e4887; FONT-FAMILY: = arial, sans-serif } .storyPubDate { DISPLAY: none } .section149 .storyPubDate { DISPLAY: inline } H2 A { COLOR: #0e4887 } .top_stories H1 A { COLOR: #0e4887 } .top_stories .story H1 { DISPLAY: block; FONT-WEIGHT: bold; FONT-SIZE: 18px } .story_list H1 { FONT-SIZE: 14px } H2 { TEXT-TRANSFORM: uppercase } .bold_links A { FONT-WEIGHT: bold } .section { FONT-FAMILY: arial, sans-serif } .topStoriesCreditLine { DISPLAY: inline; FONT-SIZE: 10px } .topStories .storyByline { DISPLAY: inline; FONT-SIZE: 10px } .top_stories_summaries .top_stories LI .story H1 A { FONT-SIZE: 30px } .top_stories_summaries .top_stories LI .story P { FONT-SIZE: 12px } .skybox { FONT-WEIGHT: normal; FONT-SIZE: 12px; FONT-FAMILY: arial, sans-serif } .skybox .section .story P { FONT-WEIGHT: normal; FONT-SIZE: 12px; FONT-FAMILY: arial, sans-serif } .skybox A { FONT-WEIGHT: bold; FONT-SIZE: 12px; COLOR: #0e4887 } .wide .skybox .box1 { BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 3px; PADDING-LEFT: 3px; = BORDER-LEFT-WIDTH: 0px; FLOAT: left; BORDER-BOTTOM-WIDTH: 0px; = PADDING-BOTTOM: 3px; MARGIN: 0px; WIDTH: 32%; PADDING-TOP: 3px; = BORDER-RIGHT-WIDTH: 0px } .wide .skybox .box2 { BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 3px; PADDING-LEFT: 3px; = BORDER-LEFT-WIDTH: 0px; FLOAT: left; BORDER-BOTTOM-WIDTH: 0px; = PADDING-BOTTOM: 3px; MARGIN: 0px; WIDTH: 32%; PADDING-TOP: 3px; = BORDER-RIGHT-WIDTH: 0px } .wide .skybox .box3 { BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 3px; PADDING-LEFT: 3px; = BORDER-LEFT-WIDTH: 0px; FLOAT: left; BORDER-BOTTOM-WIDTH: 0px; = PADDING-BOTTOM: 3px; MARGIN: 0px; WIDTH: 32%; PADDING-TOP: 3px; = BORDER-RIGHT-WIDTH: 0px } .wide .skybox .box2 { BORDER-RIGHT: #cccccc 1px solid; BORDER-LEFT: #cccccc 1px solid } .wide .skybox_wide .box1 { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; MARGIN: 0px; WIDTH: 33%; BORDER-RIGHT-WIDTH: 0px } .wide .skybox_wide .box2 { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; MARGIN: 0px; WIDTH: 33%; BORDER-RIGHT-WIDTH: 0px } .wide .skybox_wide .box3 { BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: = 0px; MARGIN: 0px; WIDTH: 33%; BORDER-RIGHT-WIDTH: 0px } .skybox .box1 .story { MARGIN: 0px 3px 0px 0px } .skybox .box2 .story { MARGIN: 0px 3px } .skybox .box3 .story { MARGIN: 0px 0px 0px 3px } .skybox .image_highlight { BORDER-TOP-WIDTH: 0px; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; = BORDER-LEFT-WIDTH: 0px; FLOAT: right; BORDER-BOTTOM-WIDTH: 0px; = PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px; TEXT-ALIGN: center; = BORDER-RIGHT-WIDTH: 0px } .skybox A.skybox-headline { FONT-SIZE: 14px } #financial_markets { BORDER-RIGHT: #007b01 2px solid; BORDER-TOP: #007b01 2px solid; = BORDER-LEFT: #007b01 2px solid; BORDER-BOTTOM: #007b01 2px solid } #financial_markets TABLE { TEXT-ALIGN: center } #financial_markets H2 { PADDING-RIGHT: 2px; PADDING-LEFT: 2px; PADDING-BOTTOM: 2px; COLOR: = #fff; PADDING-TOP: 2px; BACKGROUND-COLOR: #007b01; TEXT-ALIGN: center } .footer_copyright { BORDER-TOP: #ccc 6px double; MARGIN-TOP: 20px; OVERFLOW: hidden; COLOR: = #ccc; PADDING-TOP: 10px; TEXT-ALIGN: center } #pf P { PADDING-BOTTOM: 4px; PADDING-TOP: 4px } #pf H2 { FONT-SIZE: 12px; PADDING-BOTTOM: 10px } .section .story H4 { FONT-WEIGHT: bold; FONT-SIZE: 12px } .section .story { FONT-SIZE: 12px } .more_stories .story H1 { FONT-WEIGHT: bold; FONT-SIZE: 18px } .top_stories .story H1 { FONT-WEIGHT: bold; FONT-SIZE: 18px } .byline { DISPLAY: inline; FONT-SIZE: 10px; COLOR: #666 } .credit_line { DISPLAY: inline; FONT-SIZE: 10px; COLOR: #666 } BODY.story #storyAssets { WIDTH: 300px } .section .story H1 { FONT-SIZE: 18px; MARGIN-BOTTOM: 0pt; TEXT-ALIGN: left } .square.story_list { DISPLAY: inline; FONT-WEIGHT: normal; FONT-SIZE: 12px } #info .headline { FONT-WEIGHT: bold; FONT-SIZE: 18px; COLOR: #900 } .galleryImageTickboxBox { WIDTH: 175px; HEIGHT: 100px } .galleryImageTickbox { TEXT-ALIGN: center } A.more_link:hover { COLOR: #0e4887 } H2 A:hover { COLOR: #0e4887 } #cont { PADDING-BOTTOM: 5px; COLOR: #c0c0c0; FONT-STYLE: italic; TEXT-ALIGN: = center } BODY.story #storyAssets #additionalImages A { FLOAT: left; MARGIN: 0pt 2px 2px 0pt; HEIGHT: auto } .advertisement { DISPLAY: inline; PADDING-BOTTOM: 15px; MARGIN-LEFT: auto; MARGIN-RIGHT: = -100px } #rotateContainer { PADDING-RIGHT: 0px; PADDING-LEFT: 8px; MIN-HEIGHT: 280px; BACKGROUND: = url(http://media.ledger-enquirer.com/static/images/tabs/left_line.gif) = no-repeat 0% 50%; FLOAT: left; PADDING-BOTTOM: 0px; MARGIN: 0px; WIDTH: = 662px; PADDING-TOP: 0px; HEIGHT: 330px } #rotateTabs { FONT-SIZE: 11px; BACKGROUND: = url(http://media.ledger-enquirer.com/static/images/tabs/bg.gif) repeat-x = 50% top; FLOAT: left; MARGIN: 0px; WIDTH: 662px; LINE-HEIGHT: normal } #rotateTabs UL { PADDING-RIGHT: 10px; PADDING-LEFT: 10px; PADDING-BOTTOM: 0px; MARGIN: = 0px; PADDING-TOP: 1px; LIST-STYLE-TYPE: none } #rotateTabs LI { PADDING-RIGHT: 0px; PADDING-LEFT: 6px; BACKGROUND: = url(http://media.ledger-enquirer.com/static/images/tabs/left.gif) = no-repeat left top; FLOAT: left; PADDING-BOTTOM: 6px; MARGIN: 0px; = PADDING-TOP: 0px } #rotateTabs A { PADDING-RIGHT: 24px; DISPLAY: block; PADDING-LEFT: 6px; FONT-WEIGHT: = bold; BACKGROUND: = url(http://media.ledger-enquirer.com/static/images/tabs/right.gif) = no-repeat right top; FLOAT: left; PADDING-BOTTOM: 9px; COLOR: #666666; = PADDING-TOP: 5px; TEXT-DECORATION: none } #rotateTabs A { FLOAT: none } #rotateTabs A:hover { COLOR: #333 } #rotateTabs #currentTab { BACKGROUND-IMAGE: = url(http://media.ledger-enquirer.com/static/images/tabs/left_on.gif); = MARGIN: -1px } #rotateTabs #currentTab A { BACKGROUND-IMAGE: = url(http://media.ledger-enquirer.com/static/images/tabs/right_on.gif); = PADDING-BOTTOM: 12px; COLOR: #333 } #rotateControls { FLOAT: right; MARGIN: -28px 30px 0px 0px; WIDTH: 66px; LINE-HEIGHT: = normal } #top_rotate { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: 0px; = PADDING-TOP: 0px } #rotateLinksTop { CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: = 0px; MARGIN-LEFT: auto; WIDTH: 0px; MARGIN-RIGHT: auto; PADDING-TOP: 0px } #bottom { BORDER-RIGHT: #cccce6 1px solid; PADDING-RIGHT: 10px; DISPLAY: block; = PADDING-LEFT: 10px; MIN-HEIGHT: 360px; PADDING-BOTTOM: 10px; MARGIN: = 0px; BORDER-LEFT: #cccce6 1px solid; PADDING-TOP: 10px; BORDER-BOTTOM: = #cccce6 1px solid; HEIGHT: 360px } #rotateLinksBottom { CLEAR: both; PADDING-RIGHT: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: = 0px; MARGIN-LEFT: auto; WIDTH: 680px; MARGIN-RIGHT: auto; PADDING-TOP: = 0px } #rotateFrame { PADDING-RIGHT: 0px; MARGIN-TOP: 0px; PADDING-LEFT: 0px; PADDING-BOTTOM: = 0px; MARGIN-LEFT: auto; WIDTH: 660px; MARGIN-RIGHT: auto; PADDING-TOP: = 0px; TEXT-ALIGN: left } #rotateContentLeft { PADDING-RIGHT: 0px; PADDING-LEFT: 0px; FLOAT: left; PADDING-BOTTOM: = 0px; WIDTH: 322px; PADDING-TOP: 0px } #rotateContentRight { PADDING-LEFT: 10px; FLOAT: left; WIDTH: 322px } HR { BORDER-TOP-WIDTH: 1px; MARGIN: 10px 0px; WIDTH: 100%; BORDER-TOP-COLOR: = #cccce6; HEIGHT: 1px } .rotateByline { DISPLAY: block; FONT-SIZE: 0.9em; COLOR: #6c6a6a } A.rotateMainHeadline { DISPLAY: block; FONT-WEIGHT: bold; FONT-SIZE: 1.8em; COLOR: #990000; = LINE-HEIGHT: 1em; LETTER-SPACING: -1px } #photoLink { BORDER-RIGHT: #000000 1px solid; BORDER-TOP: #000000 1px solid; = OVERFLOW: hidden; BORDER-LEFT: #000000 1px solid; BORDER-BOTTOM: #000000 = 1px solid } #imageLink { BORDER-RIGHT: #cccce6 1px solid; BORDER-TOP: #cccce6 1px solid; = OVERFLOW: hidden; BORDER-LEFT: #cccce6 1px solid; BORDER-BOTTOM: #cccce6 = 1px solid } .rotateImageCaption { CLEAR: right; DISPLAY: block; FONT-SIZE: 0.9em; MARGIN: 0px } .rotateImageCredit { DISPLAY: block; FONT-SIZE: 0.9em; FLOAT: right; COLOR: #999999 } .jobs_widget_large_300px { MARGIN-TOP: 10px; MARGIN-BOTTOM: 10px } .jobs_widget_large_300px H5 { FONT-SIZE: 12px; TEXT-ALIGN: center } .jobs_widget_large_300px .button { MARGIN-TOP: 3px; MARGIN-BOTTOM: 3px; TEXT-ALIGN: center } .jobs_widget_large_bottom_300px { TEXT-ALIGN: center } .jobs_widget_large_300px UL { TEXT-ALIGN: center } .main_box_300px { BORDER-RIGHT: rgb(204,204,204) 1px solid; PADDING-RIGHT: 1px; = PADDING-LEFT: 1px; FONT-SIZE: 8px; PADDING-BOTTOM: 1px; BORDER-LEFT: = rgb(204,204,204) 1px solid; WIDTH: 179px; PADDING-TOP: 1px; = BORDER-BOTTOM: rgb(204,204,204) 1px solid; BACKGROUND-COLOR: #ffc; = TEXT-ALIGN: center; align: center } #top_jobs_container_300px { BORDER-LEFT-COLOR: #666666; MARGIN-BOTTOM: 10px; BORDER-BOTTOM-COLOR: = #666666; WIDTH: 300px; BORDER-TOP-COLOR: #666666; BACKGROUND-COLOR: = #ffc; BORDER-RIGHT-COLOR: #666666 } #top_jobs_head_300px { PADDING-RIGHT: 3px; PADDING-LEFT: 3px; PADDING-BOTTOM: 3px; COLOR: = #ffffff; PADDING-TOP: 3px; BACKGROUND-COLOR: #ff6600; TEXT-ALIGN: center } #top_jobs_container_300px UL { PADDING-LEFT: 5px; LIST-STYLE-POSITION: outside; FONT-SIZE: 10px; = LIST-STYLE-TYPE: disc } A.rotateMainHeadline { DISPLAY: block; FONT-WEIGHT: bold; FONT-SIZE: 1.8em; COLOR: #114683; = LINE-HEIGHT: 1em; LETTER-SPACING: -1px } .contentBlockTitle { FONT-WEIGHT: bold; FONT-SIZE: 11px; PADDING-BOTTOM: 6px; = TEXT-TRANSFORM: uppercase; COLOR: #7f93c6 } A.titleLink4 { DISPLAY: block; FONT-WEIGHT: bold } A.titleLink5 { DISPLAY: block; FONT-WEIGHT: bold } A.siteIndex { FONT-WEIGHT: bold; FONT-SIZE: 14px; MARGIN-BOTTOM: 14px; MARGIN-LEFT: = 420px; COLOR: #114683 } .siteMap1 { PADDING-LEFT: 10px; FLOAT: left; MARGIN: 10px 0px 0px; WIDTH: 108px } .siteMap2 { PADDING-LEFT: 10px; FLOAT: left; MARGIN: 10px 0px 10px 10px; = BORDER-LEFT: #cccce6 1px solid; WIDTH: 108px; HEIGHT: 350px } .clear { CLEAR: both } ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Content-Location: http://media.ledger-enquirer.com/static/styles/ie7Hacks.css DIV { MIN-HEIGHT: 1% } .sectionMenu LI DIV.subMenu .subMenuCol { OVERFLOW: hidden; voice-family: inherit } .sectionMenu LI DIV.subMenu1Column .subMenuCol { OVERFLOW: hidden; voice-family: inherit } #headerMenu { OVERFLOW: hidden; voice-family: inherit } .sectionMenu LI.sfHover DIV.subMenu { LEFT: 0px } .sectionMenu LI.sfHover DIV.subMenu1Column { LEFT: 0px } UL.dropDown IFRAME { POSITION: absolute } .sectionMenu LI DIV.subMenu { WIDTH: 440px; voice-family: inherit } .sectionMenu LI DIV.subMenu1Column { WIDTH: 175px; voice-family: inherit } .sectionMenu LI DIV UL LI UL { LEFT: 0px; voice-family: inherit } .sectionMenu LI DIV UL LI { WIDTH: 90px; voice-family: inherit } ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://media.ledger-enquirer.com/static/styles/mi/DC_headlines.css #MI_DC_headlines { BORDER-RIGHT: #ccc 1px solid; PADDING-RIGHT: 10px; BORDER-TOP: #142958 = 2px solid; PADDING-LEFT: 10px; MARGIN-BOTTOM: 15px; PADDING-BOTTOM: = 10px; BORDER-LEFT: #ccc 1px solid; PADDING-TOP: 10px; BORDER-BOTTOM: = #ccc 1px solid } #MI_DC_headlines H1 { MARGIN: 6px 0px; FONT: 11px/16px arial black, arial, helvetica, = verdana, sans-serif; TEXT-TRANSFORM: uppercase; COLOR: #142958 } #MI_DC_headlines IMG { VERTICAL-ALIGN: middle } #MI_DC_headlines UL { PADDING-LEFT: 8px; MARGIN: 0px 0px 8px 8px } #MI_DC_headlines LI { FONT: 14px arial, verdana, helvetica, sans-serif; COLOR: #999 } #MI_DC_headlines A { FONT: 12px arial, verdana, helvetica, sans-serif } #MI_DC_headlines A:link { COLOR: #075099; TEXT-DECORATION: none } #MI_DC_headlines A:visited { COLOR: #075099; TEXT-DECORATION: none } #MI_DC_headlines A:active { COLOR: #075099; TEXT-DECORATION: underline } #MI_DC_headlines A:hover { COLOR: #075099; TEXT-DECORATION: underline } ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://media.ledger-enquirer.com/static/mi/yahoo/css/search_bar.css .radio_label { FONT-WEIGHT: normal; FONT-SIZE: 9px; COLOR: #000000; MARGIN-RIGHT: 2px; = FONT-FAMILY: Verdana, Sans-Serif; TEXT-DECORATION: none } .search_label { FONT-WEIGHT: normal; FONT-SIZE: 9px; COLOR: #000000; FONT-FAMILY: = Verdana, Sans-Serif; TEXT-DECORATION: none } .search_label2 { FONT-WEIGHT: bold; FONT-SIZE: 9px; COLOR: #ff0033; FONT-FAMILY: = Verdana, Sans-Serif; TEXT-DECORATION: none } .search_label3 { FONT-WEIGHT: bold; FONT-SIZE: 9px; COLOR: #545454; FONT-FAMILY: = Verdana, Sans-Serif; TEXT-DECORATION: none } ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://media.ledger-enquirer.com/static/mi/yahoo/css/results.css .sponsored { BORDER-RIGHT: #666 1px solid; PADDING-RIGHT: 5px; BORDER-TOP: #666 1px = solid; PADDING-LEFT: 5px; FONT-SIZE: 12px; PADDING-BOTTOM: 5px; = BORDER-LEFT: #666 1px solid; PADDING-TOP: 5px; BORDER-BOTTOM: #666 1px = solid; FONT-FAMILY: Arial, Helvetica, sans-serif; BACKGROUND-COLOR: = #e5eef3 } .content { PADDING-RIGHT: 5px; PADDING-LEFT: 5px; PADDING-BOTTOM: 5px; = PADDING-TOP: 5px } .adlabel { FONT-WEIGHT: bold } #searched_for { FONT-WEIGHT: bold; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, = sans-serif } #search_header { FONT-WEIGHT: bold; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, = sans-serif } #nav_links { FONT-WEIGHT: bold; FONT-SIZE: 12px; FLOAT: right; FONT-FAMILY: Arial, = Helvetica, sans-serif } #nav_links A:unknown { TEXT-DECORATION: underline } .about { FONT-WEIGHT: bold; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, = sans-serif } .about A:link { FONT-WEIGHT: bold; FONT-SIZE: 12px; FONT-FAMILY: Arial, Helvetica, = sans-serif; TEXT-DECORATION: underline } .toplink { FONT-SIZE: 14px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: none } .toplink A:link { FONT-SIZE: 14px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: none } .toplink A:visited { FONT-SIZE: 14px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: none } .toplink A:hover { FONT-SIZE: 14px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: none } .middle_link { FONT-SIZE: 12px; PADDING-BOTTOM: 3px; LINE-HEIGHT: 140%; PADDING-TOP: = 3px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: none } .middle_link A:hover { FONT-SIZE: 12px; PADDING-BOTTOM: 3px; LINE-HEIGHT: 140%; PADDING-TOP: = 3px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: none } .middle_link A:visited { FONT-SIZE: 12px; PADDING-BOTTOM: 3px; LINE-HEIGHT: 140%; PADDING-TOP: = 3px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: none } .middle_link A:link { FONT-SIZE: 12px; PADDING-BOTTOM: 3px; LINE-HEIGHT: 140%; PADDING-TOP: = 3px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: none } .bottomlink A:link { FONT-SIZE: 11px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: = underline } .bottomlink A:visited { FONT-SIZE: 11px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: = underline } .bottomlink A:hover { FONT-SIZE: 11px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: = underline } .keywords { FONT-SIZE: 12px; COLOR: #3333ff; FONT-FAMILY: Arial,Sans-Serif } .result_line { FONT-SIZE: 14px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: none } .result_line A:link { FONT-SIZE: 14px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: = underline } .result_line A:visited { FONT-SIZE: 14px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: = underline } .result_line A:hover { FONT-SIZE: 14px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: none } .search_url_link { FONT-SIZE: 11px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: = underline } .search_description { FONT-SIZE: 12px; PADDING-BOTTOM: 3px; LINE-HEIGHT: 140%; PADDING-TOP: = 3px; FONT-FAMILY: Arial,Sans-Serif; TEXT-DECORATION: none } #dym { COLOR: red } #dym { FONT-WEIGHT: bold } #related { FONT-WEIGHT: bold } #dym A { FONT-STYLE: italic } #related A { FONT-STYLE: italic } #related { MARGIN-BOTTOM: 5px } #related A { TEXT-DECORATION: underline } ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://media.ledger-enquirer.com/static/js/prototype.js /* Prototype JavaScript framework, version 1.6.0=0A= * (c) 2005-2007 Sam Stephenson=0A= *=0A= * Prototype is freely distributable under the terms of an MIT-style = license.=0A= * For details, see the Prototype web site: http://www.prototypejs.org/=0A= *=0A= = *------------------------------------------------------------------------= --*/=0A= =0A= var Prototype =3D {=0A= Version: '1.6.0',=0A= =0A= Browser: {=0A= IE: !!(window.attachEvent && !window.opera),=0A= Opera: !!window.opera,=0A= WebKit: navigator.userAgent.indexOf('AppleWebKit/') > -1,=0A= Gecko: navigator.userAgent.indexOf('Gecko') > -1 && = navigator.userAgent.indexOf('KHTML') =3D=3D -1,=0A= MobileSafari: !!navigator.userAgent.match(/Apple.*Mobile.*Safari/)=0A= },=0A= =0A= BrowserFeatures: {=0A= XPath: !!document.evaluate,=0A= ElementExtensions: !!window.HTMLElement,=0A= SpecificElementExtensions:=0A= document.createElement('div').__proto__ &&=0A= document.createElement('div').__proto__ !=3D=3D=0A= document.createElement('form').__proto__=0A= },=0A= =0A= ScriptFragment: ']*>([\\S\\s]*?)<\/script>',=0A= JSONFilter: /^\/\*-secure-([\s\S]*)\*\/\s*$/,=0A= =0A= emptyFunction: function() { },=0A= K: function(x) { return x }=0A= };=0A= =0A= if (Prototype.Browser.MobileSafari)=0A= Prototype.BrowserFeatures.SpecificElementExtensions =3D false;=0A= =0A= if (Prototype.Browser.WebKit)=0A= Prototype.BrowserFeatures.XPath =3D false;=0A= =0A= /* Based on Alex Arnell's inheritance implementation. */=0A= var Class =3D {=0A= create: function() {=0A= var parent =3D null, properties =3D $A(arguments);=0A= if (Object.isFunction(properties[0]))=0A= parent =3D properties.shift();=0A= =0A= function klass() {=0A= this.initialize.apply(this, arguments);=0A= }=0A= =0A= Object.extend(klass, Class.Methods);=0A= klass.superclass =3D parent;=0A= klass.subclasses =3D [];=0A= =0A= if (parent) {=0A= var subclass =3D function() { };=0A= subclass.prototype =3D parent.prototype;=0A= klass.prototype =3D new subclass;=0A= parent.subclasses.push(klass);=0A= }=0A= =0A= for (var i =3D 0; i < properties.length; i++)=0A= klass.addMethods(properties[i]);=0A= =0A= if (!klass.prototype.initialize)=0A= klass.prototype.initialize =3D Prototype.emptyFunction;=0A= =0A= klass.prototype.constructor =3D klass;=0A= =0A= return klass;=0A= }=0A= };=0A= =0A= Class.Methods =3D {=0A= addMethods: function(source) {=0A= var ancestor =3D this.superclass && this.superclass.prototype;=0A= var properties =3D Object.keys(source);=0A= =0A= if (!Object.keys({ toString: true }).length)=0A= properties.push("toString", "valueOf");=0A= =0A= for (var i =3D 0, length =3D properties.length; i < length; i++) {=0A= var property =3D properties[i], value =3D source[property];=0A= if (ancestor && Object.isFunction(value) &&=0A= value.argumentNames().first() =3D=3D "$super") {=0A= var method =3D value, value =3D Object.extend((function(m) {=0A= return function() { return ancestor[m].apply(this, arguments) = };=0A= })(property).wrap(method), {=0A= valueOf: function() { return method },=0A= toString: function() { return method.toString() }=0A= });=0A= }=0A= this.prototype[property] =3D value;=0A= }=0A= =0A= return this;=0A= }=0A= };=0A= =0A= var Abstract =3D { };=0A= =0A= Object.extend =3D function(destination, source) {=0A= for (var property in source)=0A= destination[property] =3D source[property];=0A= return destination;=0A= };=0A= =0A= Object.extend(Object, {=0A= inspect: function(object) {=0A= try {=0A= if (object =3D=3D=3D undefined) return 'undefined';=0A= if (object =3D=3D=3D null) return 'null';=0A= return object.inspect ? object.inspect() : object.toString();=0A= } catch (e) {=0A= if (e instanceof RangeError) return '...';=0A= throw e;=0A= }=0A= },=0A= =0A= toJSON: function(object) {=0A= var type =3D typeof object;=0A= switch (type) {=0A= case 'undefined':=0A= case 'function':=0A= case 'unknown': return;=0A= case 'boolean': return object.toString();=0A= }=0A= =0A= if (object =3D=3D=3D null) return 'null';=0A= if (object.toJSON) return object.toJSON();=0A= if (Object.isElement(object)) return;=0A= =0A= var results =3D [];=0A= for (var property in object) {=0A= var value =3D Object.toJSON(object[property]);=0A= if (value !=3D=3D undefined)=0A= results.push(property.toJSON() + ': ' + value);=0A= }=0A= =0A= return '{' + results.join(', ') + '}';=0A= },=0A= =0A= toQueryString: function(object) {=0A= return $H(object).toQueryString();=0A= },=0A= =0A= toHTML: function(object) {=0A= return object && object.toHTML ? object.toHTML() : = String.interpret(object);=0A= },=0A= =0A= keys: function(object) {=0A= var keys =3D [];=0A= for (var property in object)=0A= keys.push(property);=0A= return keys;=0A= },=0A= =0A= values: function(object) {=0A= var values =3D [];=0A= for (var property in object)=0A= values.push(object[property]);=0A= return values;=0A= },=0A= =0A= clone: function(object) {=0A= return Object.extend({ }, object);=0A= },=0A= =0A= isElement: function(object) {=0A= return object && object.nodeType =3D=3D 1;=0A= },=0A= =0A= isArray: function(object) {=0A= return object && object.constructor =3D=3D=3D Array;=0A= },=0A= =0A= isHash: function(object) {=0A= return object instanceof Hash;=0A= },=0A= =0A= isFunction: function(object) {=0A= return typeof object =3D=3D "function";=0A= },=0A= =0A= isString: function(object) {=0A= return typeof object =3D=3D "string";=0A= },=0A= =0A= isNumber: function(object) {=0A= return typeof object =3D=3D "number";=0A= },=0A= =0A= isUndefined: function(object) {=0A= return typeof object =3D=3D "undefined";=0A= }=0A= });=0A= =0A= Object.extend(Function.prototype, {=0A= argumentNames: function() {=0A= var names =3D = this.toString().match(/^[\s\(]*function[^(]*\((.*?)\)/)[1].split(",").inv= oke("strip");=0A= return names.length =3D=3D 1 && !names[0] ? [] : names;=0A= },=0A= =0A= bind: function() {=0A= if (arguments.length < 2 && arguments[0] =3D=3D=3D undefined) return = this;=0A= var __method =3D this, args =3D $A(arguments), object =3D = args.shift();=0A= return function() {=0A= return __method.apply(object, args.concat($A(arguments)));=0A= }=0A= },=0A= =0A= bindAsEventListener: function() {=0A= var __method =3D this, args =3D $A(arguments), object =3D = args.shift();=0A= return function(event) {=0A= return __method.apply(object, [event || = window.event].concat(args));=0A= }=0A= },=0A= =0A= curry: function() {=0A= if (!arguments.length) return this;=0A= var __method =3D this, args =3D $A(arguments);=0A= return function() {=0A= return __method.apply(this, args.concat($A(arguments)));=0A= }=0A= },=0A= =0A= delay: function() {=0A= var __method =3D this, args =3D $A(arguments), timeout =3D = args.shift() * 1000;=0A= return window.setTimeout(function() {=0A= return __method.apply(__method, args);=0A= }, timeout);=0A= },=0A= =0A= wrap: function(wrapper) {=0A= var __method =3D this;=0A= return function() {=0A= return wrapper.apply(this, = [__method.bind(this)].concat($A(arguments)));=0A= }=0A= },=0A= =0A= methodize: function() {=0A= if (this._methodized) return this._methodized;=0A= var __method =3D this;=0A= return this._methodized =3D function() {=0A= return __method.apply(null, [this].concat($A(arguments)));=0A= };=0A= }=0A= });=0A= =0A= Function.prototype.defer =3D Function.prototype.delay.curry(0.01);=0A= =0A= Date.prototype.toJSON =3D function() {=0A= return '"' + this.getUTCFullYear() + '-' +=0A= (this.getUTCMonth() + 1).toPaddedString(2) + '-' +=0A= this.getUTCDate().toPaddedString(2) + 'T' +=0A= this.getUTCHours().toPaddedString(2) + ':' +=0A= this.getUTCMinutes().toPaddedString(2) + ':' +=0A= this.getUTCSeconds().toPaddedString(2) + 'Z"';=0A= };=0A= =0A= var Try =3D {=0A= these: function() {=0A= var returnValue;=0A= =0A= for (var i =3D 0, length =3D arguments.length; i < length; i++) {=0A= var lambda =3D arguments[i];=0A= try {=0A= returnValue =3D lambda();=0A= break;=0A= } catch (e) { }=0A= }=0A= =0A= return returnValue;=0A= }=0A= };=0A= =0A= RegExp.prototype.match =3D RegExp.prototype.test;=0A= =0A= RegExp.escape =3D function(str) {=0A= return String(str).replace(/([.*+?^=3D!:${}()|[\]\/\\])/g, '\\$1');=0A= };=0A= =0A= /*-----------------------------------------------------------------------= ---*/=0A= =0A= var PeriodicalExecuter =3D Class.create({=0A= initialize: function(callback, frequency) {=0A= this.callback =3D callback;=0A= this.frequency =3D frequency;=0A= this.currentlyExecuting =3D false;=0A= =0A= this.registerCallback();=0A= },=0A= =0A= registerCallback: function() {=0A= this.timer =3D setInterval(this.onTimerEvent.bind(this), = this.frequency * 1000);=0A= },=0A= =0A= execute: function() {=0A= this.callback(this);=0A= },=0A= =0A= stop: function() {=0A= if (!this.timer) return;=0A= clearInterval(this.timer);=0A= this.timer =3D null;=0A= },=0A= =0A= onTimerEvent: function() {=0A= if (!this.currentlyExecuting) {=0A= try {=0A= this.currentlyExecuting =3D true;=0A= this.execute();=0A= } finally {=0A= this.currentlyExecuting =3D false;=0A= }=0A= }=0A= }=0A= });=0A= Object.extend(String, {=0A= interpret: function(value) {=0A= return value =3D=3D null ? '' : String(value);=0A= },=0A= specialChar: {=0A= '\b': '\\b',=0A= '\t': '\\t',=0A= '\n': '\\n',=0A= '\f': '\\f',=0A= '\r': '\\r',=0A= '\\': '\\\\'=0A= }=0A= });=0A= =0A= Object.extend(String.prototype, {=0A= gsub: function(pattern, replacement) {=0A= var result =3D '', source =3D this, match;=0A= replacement =3D arguments.callee.prepareReplacement(replacement);=0A= =0A= while (source.length > 0) {=0A= if (match =3D source.match(pattern)) {=0A= result +=3D source.slice(0, match.index);=0A= result +=3D String.interpret(replacement(match));=0A= source =3D source.slice(match.index + match[0].length);=0A= } else {=0A= result +=3D source, source =3D '';=0A= }=0A= }=0A= return result;=0A= },=0A= =0A= sub: function(pattern, replacement, count) {=0A= replacement =3D this.gsub.prepareReplacement(replacement);=0A= count =3D count =3D=3D=3D undefined ? 1 : count;=0A= =0A= return this.gsub(pattern, function(match) {=0A= if (--count < 0) return match[0];=0A= return replacement(match);=0A= });=0A= },=0A= =0A= scan: function(pattern, iterator) {=0A= this.gsub(pattern, iterator);=0A= return String(this);=0A= },=0A= =0A= truncate: function(length, truncation) {=0A= length =3D length || 30;=0A= truncation =3D truncation =3D=3D=3D undefined ? '...' : truncation;=0A= return this.length > length ?=0A= this.slice(0, length - truncation.length) + truncation : = String(this);=0A= },=0A= =0A= strip: function() {=0A= return this.replace(/^\s+/, '').replace(/\s+$/, '');=0A= },=0A= =0A= stripTags: function() {=0A= return this.replace(/<\/?[^>]+>/gi, '');=0A= },=0A= =0A= stripScripts: function() {=0A= return this.replace(new RegExp(Prototype.ScriptFragment, 'img'), '');=0A= },=0A= =0A= extractScripts: function() {=0A= var matchAll =3D new RegExp(Prototype.ScriptFragment, 'img');=0A= var matchOne =3D new RegExp(Prototype.ScriptFragment, 'im');=0A= return (this.match(matchAll) || []).map(function(scriptTag) {=0A= return (scriptTag.match(matchOne) || ['', ''])[1];=0A= });=0A= },=0A= =0A= evalScripts: function() {=0A= return this.extractScripts().map(function(script) { return = eval(script) });=0A= },=0A= =0A= escapeHTML: function() {=0A= var self =3D arguments.callee;=0A= self.text.data =3D this;=0A= return self.div.innerHTML;=0A= },=0A= =0A= unescapeHTML: function() {=0A= var div =3D new Element('div');=0A= div.innerHTML =3D this.stripTags();=0A= return div.childNodes[0] ? (div.childNodes.length > 1 ?=0A= $A(div.childNodes).inject('', function(memo, node) { return = memo+node.nodeValue }) :=0A= div.childNodes[0].nodeValue) : '';=0A= },=0A= =0A= toQueryParams: function(separator) {=0A= var match =3D this.strip().match(/([^?#]*)(#.*)?$/);=0A= if (!match) return { };=0A= =0A= return match[1].split(separator || '&').inject({ }, function(hash, = pair) {=0A= if ((pair =3D pair.split('=3D'))[0]) {=0A= var key =3D decodeURIComponent(pair.shift());=0A= var value =3D pair.length > 1 ? pair.join('=3D') : pair[0];=0A= if (value !=3D undefined) value =3D decodeURIComponent(value);=0A= =0A= if (key in hash) {=0A= if (!Object.isArray(hash[key])) hash[key] =3D [hash[key]];=0A= hash[key].push(value);=0A= }=0A= else hash[key] =3D value;=0A= }=0A= return hash;=0A= });=0A= },=0A= =0A= toArray: function() {=0A= return this.split('');=0A= },=0A= =0A= succ: function() {=0A= return this.slice(0, this.length - 1) +=0A= String.fromCharCode(this.charCodeAt(this.length - 1) + 1);=0A= },=0A= =0A= times: function(count) {=0A= return count < 1 ? '' : new Array(count + 1).join(this);=0A= },=0A= =0A= camelize: function() {=0A= var parts =3D this.split('-'), len =3D parts.length;=0A= if (len =3D=3D 1) return parts[0];=0A= =0A= var camelized =3D this.charAt(0) =3D=3D '-'=0A= ? parts[0].charAt(0).toUpperCase() + parts[0].substring(1)=0A= : parts[0];=0A= =0A= for (var i =3D 1; i < len; i++)=0A= camelized +=3D parts[i].charAt(0).toUpperCase() + = parts[i].substring(1);=0A= =0A= return camelized;=0A= },=0A= =0A= capitalize: function() {=0A= return this.charAt(0).toUpperCase() + = this.substring(1).toLowerCase();=0A= },=0A= =0A= underscore: function() {=0A= return this.gsub(/::/, = '/').gsub(/([A-Z]+)([A-Z][a-z])/,'#{1}_#{2}').gsub(/([a-z\d])([A-Z])/,'#{= 1}_#{2}').gsub(/-/,'_').toLowerCase();=0A= },=0A= =0A= dasherize: function() {=0A= return this.gsub(/_/,'-');=0A= },=0A= =0A= inspect: function(useDoubleQuotes) {=0A= var escapedString =3D this.gsub(/[\x00-\x1f\\]/, function(match) {=0A= var character =3D String.specialChar[match[0]];=0A= return character ? character : '\\u00' + = match[0].charCodeAt().toPaddedString(2, 16);=0A= });=0A= if (useDoubleQuotes) return '"' + escapedString.replace(/"/g, '\\"') = + '"';=0A= return "'" + escapedString.replace(/'/g, '\\\'') + "'";=0A= },=0A= =0A= toJSON: function() {=0A= return this.inspect(true);=0A= },=0A= =0A= unfilterJSON: function(filter) {=0A= return this.sub(filter || Prototype.JSONFilter, '#{1}');=0A= },=0A= =0A= isJSON: function() {=0A= var str =3D this.replace(/\\./g, '@').replace(/"[^"\\\n\r]*"/g, '');=0A= return (/^[,:{}\[\]0-9.\-+Eaeflnr-u \n\r\t]*$/).test(str);=0A= },=0A= =0A= evalJSON: function(sanitize) {=0A= var json =3D this.unfilterJSON();=0A= try {=0A= if (!sanitize || json.isJSON()) return eval('(' + json + ')');=0A= } catch (e) { }=0A= throw new SyntaxError('Badly formed JSON string: ' + this.inspect());=0A= },=0A= =0A= include: function(pattern) {=0A= return this.indexOf(pattern) > -1;=0A= },=0A= =0A= startsWith: function(pattern) {=0A= return this.indexOf(pattern) =3D=3D=3D 0;=0A= },=0A= =0A= endsWith: function(pattern) {=0A= var d =3D this.length - pattern.length;=0A= return d >=3D 0 && this.lastIndexOf(pattern) =3D=3D=3D d;=0A= },=0A= =0A= empty: function() {=0A= return this =3D=3D '';=0A= },=0A= =0A= blank: function() {=0A= return /^\s*$/.test(this);=0A= },=0A= =0A= interpolate: function(object, pattern) {=0A= return new Template(this, pattern).evaluate(object);=0A= }=0A= });=0A= =0A= if (Prototype.Browser.WebKit || Prototype.Browser.IE) = Object.extend(String.prototype, {=0A= escapeHTML: function() {=0A= return = this.replace(/&/g,'&').replace(//g,'>');=0A= },=0A= unescapeHTML: function() {=0A= return = this.replace(/&/g,'&').replace(/</g,'<').replace(/>/g,'>');=0A= }=0A= });=0A= =0A= String.prototype.gsub.prepareReplacement =3D function(replacement) {=0A= if (Object.isFunction(replacement)) return replacement;=0A= var template =3D new Template(replacement);=0A= return function(match) { return template.evaluate(match) };=0A= };=0A= =0A= String.prototype.parseQuery =3D String.prototype.toQueryParams;=0A= =0A= Object.extend(String.prototype.escapeHTML, {=0A= div: document.createElement('div'),=0A= text: document.createTextNode('')=0A= });=0A= =0A= with (String.prototype.escapeHTML) div.appendChild(text);=0A= =0A= var Template =3D Class.create({=0A= initialize: function(template, pattern) {=0A= this.template =3D template.toString();=0A= this.pattern =3D pattern || Template.Pattern;=0A= },=0A= =0A= evaluate: function(object) {=0A= if (Object.isFunction(object.toTemplateReplacements))=0A= object =3D object.toTemplateReplacements();=0A= =0A= return this.template.gsub(this.pattern, function(match) {=0A= if (object =3D=3D null) return '';=0A= =0A= var before =3D match[1] || '';=0A= if (before =3D=3D '\\') return match[2];=0A= =0A= var ctx =3D object, expr =3D match[3];=0A= var pattern =3D /^([^.[]+|\[((?:.*?[^\\])?)\])(\.|\[|$)/, match = =3D pattern.exec(expr);=0A= if (match =3D=3D null) return before;=0A= =0A= while (match !=3D null) {=0A= var comp =3D match[1].startsWith('[') ? match[2].gsub('\\\\]', = ']') : match[1];=0A= ctx =3D ctx[comp];=0A= if (null =3D=3D ctx || '' =3D=3D match[3]) break;=0A= expr =3D expr.substring('[' =3D=3D match[3] ? match[1].length : = match[0].length);=0A= match =3D pattern.exec(expr);=0A= }=0A= =0A= return before + String.interpret(ctx);=0A= }.bind(this));=0A= }=0A= });=0A= Template.Pattern =3D /(^|.|\r|\n)(#\{(.*?)\})/;=0A= =0A= var $break =3D { };=0A= =0A= var Enumerable =3D {=0A= each: function(iterator, context) {=0A= var index =3D 0;=0A= iterator =3D iterator.bind(context);=0A= try {=0A= this._each(function(value) {=0A= iterator(value, index++);=0A= });=0A= } catch (e) {=0A= if (e !=3D $break) throw e;=0A= }=0A= return this;=0A= },=0A= =0A= eachSlice: function(number, iterator, context) {=0A= iterator =3D iterator ? iterator.bind(context) : Prototype.K;=0A= var index =3D -number, slices =3D [], array =3D this.toArray();=0A= while ((index +=3D number) < array.length)=0A= slices.push(array.slice(index, index+number));=0A= return slices.collect(iterator, context);=0A= },=0A= =0A= all: function(iterator, context) {=0A= iterator =3D iterator ? iterator.bind(context) : Prototype.K;=0A= var result =3D true;=0A= this.each(function(value, index) {=0A= result =3D result && !!iterator(value, index);=0A= if (!result) throw $break;=0A= });=0A= return result;=0A= },=0A= =0A= any: function(iterator, context) {=0A= iterator =3D iterator ? iterator.bind(context) : Prototype.K;=0A= var result =3D false;=0A= this.each(function(value, index) {=0A= if (result =3D !!iterator(value, index))=0A= throw $break;=0A= });=0A= return result;=0A= },=0A= =0A= collect: function(iterator, context) {=0A= iterator =3D iterator ? iterator.bind(context) : Prototype.K;=0A= var results =3D [];=0A= this.each(function(value, index) {=0A= results.push(iterator(value, index));=0A= });=0A= return results;=0A= },=0A= =0A= detect: function(iterator, context) {=0A= iterator =3D iterator.bind(context);=0A= var result;=0A= this.each(function(value, index) {=0A= if (iterator(value, index)) {=0A= result =3D value;=0A= throw $break;=0A= }=0A= });=0A= return result;=0A= },=0A= =0A= findAll: function(iterator, context) {=0A= iterator =3D iterator.bind(context);=0A= var results =3D [];=0A= this.each(function(value, index) {=0A= if (iterator(value, index))=0A= results.push(value);=0A= });=0A= return results;=0A= },=0A= =0A= grep: function(filter, iterator, context) {=0A= iterator =3D iterator ? iterator.bind(context) : Prototype.K;=0A= var results =3D [];=0A= =0A= if (Object.isString(filter))=0A= filter =3D new RegExp(filter);=0A= =0A= this.each(function(value, index) {=0A= if (filter.match(value))=0A= results.push(iterator(value, index));=0A= });=0A= return results;=0A= },=0A= =0A= include: function(object) {=0A= if (Object.isFunction(this.indexOf))=0A= if (this.indexOf(object) !=3D -1) return true;=0A= =0A= var found =3D false;=0A= this.each(function(value) {=0A= if (value =3D=3D object) {=0A= found =3D true;=0A= throw $break;=0A= }=0A= });=0A= return found;=0A= },=0A= =0A= inGroupsOf: function(number, fillWith) {=0A= fillWith =3D fillWith =3D=3D=3D undefined ? null : fillWith;=0A= return this.eachSlice(number, function(slice) {=0A= while(slice.length < number) slice.push(fillWith);=0A= return slice;=0A= });=0A= },=0A= =0A= inject: function(memo, iterator, context) {=0A= iterator =3D iterator.bind(context);=0A= this.each(function(value, index) {=0A= memo =3D iterator(memo, value, index);=0A= });=0A= return memo;=0A= },=0A= =0A= invoke: function(method) {=0A= var args =3D $A(arguments).slice(1);=0A= return this.map(function(value) {=0A= return value[method].apply(value, args);=0A= });=0A= },=0A= =0A= max: function(iterator, context) {=0A= iterator =3D iterator ? iterator.bind(context) : Prototype.K;=0A= var result;=0A= this.each(function(value, index) {=0A= value =3D iterator(value, index);=0A= if (result =3D=3D undefined || value >=3D result)=0A= result =3D value;=0A= });=0A= return result;=0A= },=0A= =0A= min: function(iterator, context) {=0A= iterator =3D iterator ? iterator.bind(context) : Prototype.K;=0A= var result;=0A= this.each(function(value, index) {=0A= value =3D iterator(value, index);=0A= if (result =3D=3D undefined || value < result)=0A= result =3D value;=0A= });=0A= return result;=0A= },=0A= =0A= partition: function(iterator, context) {=0A= iterator =3D iterator ? iterator.bind(context) : Prototype.K;=0A= var trues =3D [], falses =3D [];=0A= this.each(function(value, index) {=0A= (iterator(value, index) ?=0A= trues : falses).push(value);=0A= });=0A= return [trues, falses];=0A= },=0A= =0A= pluck: function(property) {=0A= var results =3D [];=0A= this.each(function(value) {=0A= results.push(value[property]);=0A= });=0A= return results;=0A= },=0A= =0A= reject: function(iterator, context) {=0A= iterator =3D iterator.bind(context);=0A= var results =3D [];=0A= this.each(function(value, index) {=0A= if (!iterator(value, index))=0A= results.push(value);=0A= });=0A= return results;=0A= },=0A= =0A= sortBy: function(iterator, context) {=0A= iterator =3D iterator.bind(context);=0A= return this.map(function(value, index) {=0A= return {value: value, criteria: iterator(value, index)};=0A= }).sort(function(left, right) {=0A= var a =3D left.criteria, b =3D right.criteria;=0A= return a < b ? -1 : a > b ? 1 : 0;=0A= }).pluck('value');=0A= },=0A= =0A= toArray: function() {=0A= return this.map();=0A= },=0A= =0A= zip: function() {=0A= var iterator =3D Prototype.K, args =3D $A(arguments);=0A= if (Object.isFunction(args.last()))=0A= iterator =3D args.pop();=0A= =0A= var collections =3D [this].concat(args).map($A);=0A= return this.map(function(value, index) {=0A= return iterator(collections.pluck(index));=0A= });=0A= },=0A= =0A= size: function() {=0A= return this.toArray().length;=0A= },=0A= =0A= inspect: function() {=0A= return '#';=0A= }=0A= };=0A= =0A= Object.extend(Enumerable, {=0A= map: Enumerable.collect,=0A= find: Enumerable.detect,=0A= select: Enumerable.findAll,=0A= filter: Enumerable.findAll,=0A= member: Enumerable.include,=0A= entries: Enumerable.toArray,=0A= every: Enumerable.all,=0A= some: Enumerable.any=0A= });=0A= function $A(iterable) {=0A= if (!iterable) return [];=0A= if (iterable.toArray) return iterable.toArray();=0A= var length =3D iterable.length, results =3D new Array(length);=0A= while (length--) results[length] =3D iterable[length];=0A= return results;=0A= }=0A= =0A= if (Prototype.Browser.WebKit) {=0A= function $A(iterable) {=0A= if (!iterable) return [];=0A= if (!(Object.isFunction(iterable) && iterable =3D=3D '[object = NodeList]') &&=0A= iterable.toArray) return iterable.toArray();=0A= var length =3D iterable.length, results =3D new Array(length);=0A= while (length--) results[length] =3D iterable[length];=0A= return results;=0A= }=0A= }=0A= =0A= Array.from =3D $A;=0A= =0A= Object.extend(Array.prototype, Enumerable);=0A= =0A= if (!Array.prototype._reverse) Array.prototype._reverse =3D = Array.prototype.reverse;=0A= =0A= Object.extend(Array.prototype, {=0A= _each: function(iterator) {=0A= for (var i =3D 0, length =3D this.length; i < length; i++)=0A= iterator(this[i]);=0A= },=0A= =0A= clear: function() {=0A= this.length =3D 0;=0A= return this;=0A= },=0A= =0A= first: function() {=0A= return this[0];=0A= },=0A= =0A= last: function() {=0A= return this[this.length - 1];=0A= },=0A= =0A= compact: function() {=0A= return this.select(function(value) {=0A= return value !=3D null;=0A= });=0A= },=0A= =0A= flatten: function() {=0A= return this.inject([], function(array, value) {=0A= return array.concat(Object.isArray(value) ?=0A= value.flatten() : [value]);=0A= });=0A= },=0A= =0A= without: function() {=0A= var values =3D $A(arguments);=0A= return this.select(function(value) {=0A= return !values.include(value);=0A= });=0A= },=0A= =0A= reverse: function(inline) {=0A= return (inline !=3D=3D false ? this : this.toArray())._reverse();=0A= },=0A= =0A= reduce: function() {=0A= return this.length > 1 ? this : this[0];=0A= },=0A= =0A= uniq: function(sorted) {=0A= return this.inject([], function(array, value, index) {=0A= if (0 =3D=3D index || (sorted ? array.last() !=3D value : = !array.include(value)))=0A= array.push(value);=0A= return array;=0A= });=0A= },=0A= =0A= intersect: function(array) {=0A= return this.uniq().findAll(function(item) {=0A= return array.detect(function(value) { return item =3D=3D=3D value = });=0A= });=0A= },=0A= =0A= clone: function() {=0A= return [].concat(this);=0A= },=0A= =0A= size: function() {=0A= return this.length;=0A= },=0A= =0A= inspect: function() {=0A= return '[' + this.map(Object.inspect).join(', ') + ']';=0A= },=0A= =0A= toJSON: function() {=0A= var results =3D [];=0A= this.each(function(object) {=0A= var value =3D Object.toJSON(object);=0A= if (value !=3D=3D undefined) results.push(value);=0A= });=0A= return '[' + results.join(', ') + ']';=0A= }=0A= });=0A= =0A= // use native browser JS 1.6 implementation if available=0A= if (Object.isFunction(Array.prototype.forEach))=0A= Array.prototype._each =3D Array.prototype.forEach;=0A= =0A= if (!Array.prototype.indexOf) Array.prototype.indexOf =3D function(item, = i) {=0A= i || (i =3D 0);=0A= var length =3D this.length;=0A= if (i < 0) i =3D length + i;=0A= for (; i < length; i++)=0A= if (this[i] =3D=3D=3D item) return i;=0A= return -1;=0A= };=0A= =0A= if (!Array.prototype.lastIndexOf) Array.prototype.lastIndexOf =3D = function(item, i) {=0A= i =3D isNaN(i) ? this.length : (i < 0 ? this.length + i : i) + 1;=0A= var n =3D this.slice(0, i).reverse().indexOf(item);=0A= return (n < 0) ? n : i - n - 1;=0A= };=0A= =0A= Array.prototype.toArray =3D Array.prototype.clone;=0A= =0A= function $w(string) {=0A= if (!Object.isString(string)) return [];=0A= string =3D string.strip();=0A= return string ? string.split(/\s+/) : [];=0A= }=0A= =0A= if (Prototype.Browser.Opera){=0A= Array.prototype.concat =3D function() {=0A= var array =3D [];=0A= for (var i =3D 0, length =3D this.length; i < length; i++) = array.push(this[i]);=0A= for (var i =3D 0, length =3D arguments.length; i < length; i++) {=0A= if (Object.isArray(arguments[i])) {=0A= for (var j =3D 0, arrayLength =3D arguments[i].length; j < = arrayLength; j++)=0A= array.push(arguments[i][j]);=0A= } else {=0A= array.push(arguments[i]);=0A= }=0A= }=0A= return array;=0A= };=0A= }=0A= Object.extend(Number.prototype, {=0A= toColorPart: function() {=0A= return this.toPaddedString(2, 16);=0A= },=0A= =0A= succ: function() {=0A= return this + 1;=0A= },=0A= =0A= times: function(iterator) {=0A= $R(0, this, true).each(iterator);=0A= return this;=0A= },=0A= =0A= toPaddedString: function(length, radix) {=0A= var string =3D this.toString(radix || 10);=0A= return '0'.times(length - string.length) + string;=0A= },=0A= =0A= toJSON: function() {=0A= return isFinite(this) ? this.toString() : 'null';=0A= }=0A= });=0A= =0A= $w('abs round ceil floor').each(function(method){=0A= Number.prototype[method] =3D Math[method].methodize();=0A= });=0A= function $H(object) {=0A= return new Hash(object);=0A= };=0A= =0A= var Hash =3D Class.create(Enumerable, (function() {=0A= if (function() {=0A= var i =3D 0, Test =3D function(value) { this.key =3D value };=0A= Test.prototype.key =3D 'foo';=0A= for (var property in new Test('bar')) i++;=0A= return i > 1;=0A= }()) {=0A= function each(iterator) {=0A= var cache =3D [];=0A= for (var key in this._object) {=0A= var value =3D this._object[key];=0A= if (cache.include(key)) continue;=0A= cache.push(key);=0A= var pair =3D [key, value];=0A= pair.key =3D key;=0A= pair.value =3D value;=0A= iterator(pair);=0A= }=0A= }=0A= } else {=0A= function each(iterator) {=0A= for (var key in this._object) {=0A= var value =3D this._object[key], pair =3D [key, value];=0A= pair.key =3D key;=0A= pair.value =3D value;=0A= iterator(pair);=0A= }=0A= }=0A= }=0A= =0A= function toQueryPair(key, value) {=0A= if (Object.isUndefined(value)) return key;=0A= return key + '=3D' + encodeURIComponent(String.interpret(value));=0A= }=0A= =0A= return {=0A= initialize: function(object) {=0A= this._object =3D Object.isHash(object) ? object.toObject() : = Object.clone(object);=0A= },=0A= =0A= _each: each,=0A= =0A= set: function(key, value) {=0A= return this._object[key] =3D value;=0A= },=0A= =0A= get: function(key) {=0A= return this._object[key];=0A= },=0A= =0A= unset: function(key) {=0A= var value =3D this._object[key];=0A= delete this._object[key];=0A= return value;=0A= },=0A= =0A= toObject: function() {=0A= return Object.clone(this._object);=0A= },=0A= =0A= keys: function() {=0A= return this.pluck('key');=0A= },=0A= =0A= values: function() {=0A= return this.pluck('value');=0A= },=0A= =0A= index: function(value) {=0A= var match =3D this.detect(function(pair) {=0A= return pair.value =3D=3D=3D value;=0A= });=0A= return match && match.key;=0A= },=0A= =0A= merge: function(object) {=0A= return this.clone().update(object);=0A= },=0A= =0A= update: function(object) {=0A= return new Hash(object).inject(this, function(result, pair) {=0A= result.set(pair.key, pair.value);=0A= return result;=0A= });=0A= },=0A= =0A= toQueryString: function() {=0A= return this.map(function(pair) {=0A= var key =3D encodeURIComponent(pair.key), values =3D pair.value;=0A= =0A= if (values && typeof values =3D=3D 'object') {=0A= if (Object.isArray(values))=0A= return values.map(toQueryPair.curry(key)).join('&');=0A= }=0A= return toQueryPair(key, values);=0A= }).join('&');=0A= },=0A= =0A= inspect: function() {=0A= return '#';=0A= },=0A= =0A= toJSON: function() {=0A= return Object.toJSON(this.toObject());=0A= },=0A= =0A= clone: function() {=0A= return new Hash(this);=0A= }=0A= }=0A= })());=0A= =0A= Hash.prototype.toTemplateReplacements =3D Hash.prototype.toObject;=0A= Hash.from =3D $H;=0A= var ObjectRange =3D Class.create(Enumerable, {=0A= initialize: function(start, end, exclusive) {=0A= this.start =3D start;=0A= this.end =3D end;=0A= this.exclusive =3D exclusive;=0A= },=0A= =0A= _each: function(iterator) {=0A= var value =3D this.start;=0A= while (this.include(value)) {=0A= iterator(value);=0A= value =3D value.succ();=0A= }=0A= },=0A= =0A= include: function(value) {=0A= if (value < this.start)=0A= return false;=0A= if (this.exclusive)=0A= return value < this.end;=0A= return value <=3D this.end;=0A= }=0A= });=0A= =0A= var $R =3D function(start, end, exclusive) {=0A= return new ObjectRange(start, end, exclusive);=0A= };=0A= =0A= var Ajax =3D {=0A= getTransport: function() {=0A= return Try.these(=0A= function() {return new XMLHttpRequest()},=0A= function() {return new ActiveXObject('Msxml2.XMLHTTP')},=0A= function() {return new ActiveXObject('Microsoft.XMLHTTP')}=0A= ) || false;=0A= },=0A= =0A= activeRequestCount: 0=0A= };=0A= =0A= Ajax.Responders =3D {=0A= responders: [],=0A= =0A= _each: function(iterator) {=0A= this.responders._each(iterator);=0A= },=0A= =0A= register: function(responder) {=0A= if (!this.include(responder))=0A= this.responders.push(responder);=0A= },=0A= =0A= unregister: function(responder) {=0A= this.responders =3D this.responders.without(responder);=0A= },=0A= =0A= dispatch: function(callback, request, transport, json) {=0A= this.each(function(responder) {=0A= if (Object.isFunction(responder[callback])) {=0A= try {=0A= responder[callback].apply(responder, [request, transport, = json]);=0A= } catch (e) { }=0A= }=0A= });=0A= }=0A= };=0A= =0A= Object.extend(Ajax.Responders, Enumerable);=0A= =0A= Ajax.Responders.register({=0A= onCreate: function() { Ajax.activeRequestCount++ },=0A= onComplete: function() { Ajax.activeRequestCount-- }=0A= });=0A= =0A= Ajax.Base =3D Class.create({=0A= initialize: function(options) {=0A= this.options =3D {=0A= method: 'post',=0A= asynchronous: true,=0A= contentType: 'application/x-www-form-urlencoded',=0A= encoding: 'UTF-8',=0A= parameters: '',=0A= evalJSON: true,=0A= evalJS: true=0A= };=0A= Object.extend(this.options, options || { });=0A= =0A= this.options.method =3D this.options.method.toLowerCase();=0A= if (Object.isString(this.options.parameters))=0A= this.options.parameters =3D = this.options.parameters.toQueryParams();=0A= }=0A= });=0A= =0A= Ajax.Request =3D Class.create(Ajax.Base, {=0A= _complete: false,=0A= =0A= initialize: function($super, url, options) {=0A= $super(options);=0A= this.transport =3D Ajax.getTransport();=0A= this.request(url);=0A= },=0A= =0A= request: function(url) {=0A= this.url =3D url;=0A= this.method =3D this.options.method;=0A= var params =3D Object.clone(this.options.parameters);=0A= =0A= if (!['get', 'post'].include(this.method)) {=0A= // simulate other verbs over post=0A= params['_method'] =3D this.method;=0A= this.method =3D 'post';=0A= }=0A= =0A= this.parameters =3D params;=0A= =0A= if (params =3D Object.toQueryString(params)) {=0A= // when GET, append parameters to URL=0A= if (this.method =3D=3D 'get')=0A= this.url +=3D (this.url.include('?') ? '&' : '?') + params;=0A= else if (/Konqueror|Safari|KHTML/.test(navigator.userAgent))=0A= params +=3D '&_=3D';=0A= }=0A= =0A= try {=0A= var response =3D new Ajax.Response(this);=0A= if (this.options.onCreate) this.options.onCreate(response);=0A= Ajax.Responders.dispatch('onCreate', this, response);=0A= =0A= this.transport.open(this.method.toUpperCase(), this.url,=0A= this.options.asynchronous);=0A= =0A= if (this.options.asynchronous) = this.respondToReadyState.bind(this).defer(1);=0A= =0A= this.transport.onreadystatechange =3D = this.onStateChange.bind(this);=0A= this.setRequestHeaders();=0A= =0A= this.body =3D this.method =3D=3D 'post' ? (this.options.postBody = || params) : null;=0A= this.transport.send(this.body);=0A= =0A= /* Force Firefox to handle ready state 4 for synchronous requests = */=0A= if (!this.options.asynchronous && this.transport.overrideMimeType)=0A= this.onStateChange();=0A= =0A= }=0A= catch (e) {=0A= this.dispatchException(e);=0A= }=0A= },=0A= =0A= onStateChange: function() {=0A= var readyState =3D this.transport.readyState;=0A= if (readyState > 1 && !((readyState =3D=3D 4) && this._complete))=0A= this.respondToReadyState(this.transport.readyState);=0A= },=0A= =0A= setRequestHeaders: function() {=0A= var headers =3D {=0A= 'X-Requested-With': 'XMLHttpRequest',=0A= 'X-Prototype-Version': Prototype.Version,=0A= 'Accept': 'text/javascript, text/html, application/xml, text/xml, = */*'=0A= };=0A= =0A= if (this.method =3D=3D 'post') {=0A= headers['Content-type'] =3D this.options.contentType +=0A= (this.options.encoding ? '; charset=3D' + this.options.encoding = : '');=0A= =0A= /* Force "Connection: close" for older Mozilla browsers to work=0A= * around a bug where XMLHttpRequest sends an incorrect=0A= * Content-length header. See Mozilla Bugzilla #246651.=0A= */=0A= if (this.transport.overrideMimeType &&=0A= (navigator.userAgent.match(/Gecko\/(\d{4})/) || [0,2005])[1] < = 2005)=0A= headers['Connection'] =3D 'close';=0A= }=0A= =0A= // user-defined headers=0A= if (typeof this.options.requestHeaders =3D=3D 'object') {=0A= var extras =3D this.options.requestHeaders;=0A= =0A= if (Object.isFunction(extras.push))=0A= for (var i =3D 0, length =3D extras.length; i < length; i +=3D 2)=0A= headers[extras[i]] =3D extras[i+1];=0A= else=0A= $H(extras).each(function(pair) { headers[pair.key] =3D = pair.value });=0A= }=0A= =0A= for (var name in headers)=0A= this.transport.setRequestHeader(name, headers[name]);=0A= },=0A= =0A= success: function() {=0A= var status =3D this.getStatus();=0A= return !status || (status >=3D 200 && status < 300);=0A= },=0A= =0A= getStatus: function() {=0A= try {=0A= return this.transport.status || 0;=0A= } catch (e) { return 0 }=0A= },=0A= =0A= respondToReadyState: function(readyState) {=0A= var state =3D Ajax.Request.Events[readyState], response =3D new = Ajax.Response(this);=0A= =0A= if (state =3D=3D 'Complete') {=0A= try {=0A= this._complete =3D true;=0A= (this.options['on' + response.status]=0A= || this.options['on' + (this.success() ? 'Success' : 'Failure')]=0A= || Prototype.emptyFunction)(response, response.headerJSON);=0A= } catch (e) {=0A= this.dispatchException(e);=0A= }=0A= =0A= var contentType =3D response.getHeader('Content-type');=0A= if (this.options.evalJS =3D=3D 'force'=0A= || (this.options.evalJS && contentType=0A= && = contentType.match(/^\s*(text|application)\/(x-)?(java|ecma)script(;.*)?\s= *$/i)))=0A= this.evalResponse();=0A= }=0A= =0A= try {=0A= (this.options['on' + state] || Prototype.emptyFunction)(response, = response.headerJSON);=0A= Ajax.Responders.dispatch('on' + state, this, response, = response.headerJSON);=0A= } catch (e) {=0A= this.dispatchException(e);=0A= }=0A= =0A= if (state =3D=3D 'Complete') {=0A= // avoid memory leak in MSIE: clean up=0A= this.transport.onreadystatechange =3D Prototype.emptyFunction;=0A= }=0A= },=0A= =0A= getHeader: function(name) {=0A= try {=0A= return this.transport.getResponseHeader(name);=0A= } catch (e) { return null }=0A= },=0A= =0A= evalResponse: function() {=0A= try {=0A= return eval((this.transport.responseText || '').unfilterJSON());=0A= } catch (e) {=0A= this.dispatchException(e);=0A= }=0A= },=0A= =0A= dispatchException: function(exception) {=0A= (this.options.onException || Prototype.emptyFunction)(this, = exception);=0A= Ajax.Responders.dispatch('onException', this, exception);=0A= }=0A= });=0A= =0A= Ajax.Request.Events =3D=0A= ['Uninitialized', 'Loading', 'Loaded', 'Interactive', 'Complete'];=0A= =0A= Ajax.Response =3D Class.create({=0A= initialize: function(request){=0A= this.request =3D request;=0A= var transport =3D this.transport =3D request.transport,=0A= readyState =3D this.readyState =3D transport.readyState;=0A= =0A= if((readyState > 2 && !Prototype.Browser.IE) || readyState =3D=3D 4) = {=0A= this.status =3D this.getStatus();=0A= this.statusText =3D this.getStatusText();=0A= this.responseText =3D String.interpret(transport.responseText);=0A= this.headerJSON =3D this._getHeaderJSON();=0A= }=0A= =0A= if(readyState =3D=3D 4) {=0A= var xml =3D transport.responseXML;=0A= this.responseXML =3D xml =3D=3D=3D undefined ? null : xml;=0A= this.responseJSON =3D this._getResponseJSON();=0A= }=0A= },=0A= =0A= status: 0,=0A= statusText: '',=0A= =0A= getStatus: Ajax.Request.prototype.getStatus,=0A= =0A= getStatusText: function() {=0A= try {=0A= return this.transport.statusText || '';=0A= } catch (e) { return '' }=0A= },=0A= =0A= getHeader: Ajax.Request.prototype.getHeader,=0A= =0A= getAllHeaders: function() {=0A= try {=0A= return this.getAllResponseHeaders();=0A= } catch (e) { return null }=0A= },=0A= =0A= getResponseHeader: function(name) {=0A= return this.transport.getResponseHeader(name);=0A= },=0A= =0A= getAllResponseHeaders: function() {=0A= return this.transport.getAllResponseHeaders();=0A= },=0A= =0A= _getHeaderJSON: function() {=0A= var json =3D this.getHeader('X-JSON');=0A= if (!json) return null;=0A= json =3D decodeURIComponent(escape(json));=0A= try {=0A= return json.evalJSON(this.request.options.sanitizeJSON);=0A= } catch (e) {=0A= this.request.dispatchException(e);=0A= }=0A= },=0A= =0A= _getResponseJSON: function() {=0A= var options =3D this.request.options;=0A= if (!options.evalJSON || (options.evalJSON !=3D 'force' &&=0A= !(this.getHeader('Content-type') || = '').include('application/json')))=0A= return null;=0A= try {=0A= return this.transport.responseText.evalJSON(options.sanitizeJSON);=0A= } catch (e) {=0A= this.request.dispatchException(e);=0A= }=0A= }=0A= });=0A= =0A= Ajax.Updater =3D Class.create(Ajax.Request, {=0A= initialize: function($super, container, url, options) {=0A= this.container =3D {=0A= success: (container.success || container),=0A= failure: (container.failure || (container.success ? null : = container))=0A= };=0A= =0A= options =3D options || { };=0A= var onComplete =3D options.onComplete;=0A= options.onComplete =3D (function(response, param) {=0A= this.updateContent(response.responseText);=0A= if (Object.isFunction(onComplete)) onComplete(response, param);=0A= }).bind(this);=0A= =0A= $super(url, options);=0A= },=0A= =0A= updateContent: function(responseText) {=0A= var receiver =3D this.container[this.success() ? 'success' : = 'failure'],=0A= options =3D this.options;=0A= =0A= if (!options.evalScripts) responseText =3D = responseText.stripScripts();=0A= =0A= if (receiver =3D $(receiver)) {=0A= if (options.insertion) {=0A= if (Object.isString(options.insertion)) {=0A= var insertion =3D { }; insertion[options.insertion] =3D = responseText;=0A= receiver.insert(insertion);=0A= }=0A= else options.insertion(receiver, responseText);=0A= }=0A= else receiver.update(responseText);=0A= }=0A= =0A= if (this.success()) {=0A= if (this.onComplete) this.onComplete.bind(this).defer();=0A= }=0A= }=0A= });=0A= =0A= Ajax.PeriodicalUpdater =3D Class.create(Ajax.Base, {=0A= initialize: function($super, container, url, options) {=0A= $super(options);=0A= this.onComplete =3D this.options.onComplete;=0A= =0A= this.frequency =3D (this.options.frequency || 2);=0A= this.decay =3D (this.options.decay || 1);=0A= =0A= this.updater =3D { };=0A= this.container =3D container;=0A= this.url =3D url;=0A= =0A= this.start();=0A= },=0A= =0A= start: function() {=0A= this.options.onComplete =3D this.updateComplete.bind(this);=0A= this.onTimerEvent();=0A= },=0A= =0A= stop: function() {=0A= this.updater.options.onComplete =3D undefined;=0A= clearTimeout(this.timer);=0A= (this.onComplete || Prototype.emptyFunction).apply(this, arguments);=0A= },=0A= =0A= updateComplete: function(response) {=0A= if (this.options.decay) {=0A= this.decay =3D (response.responseText =3D=3D this.lastText ?=0A= this.decay * this.options.decay : 1);=0A= =0A= this.lastText =3D response.responseText;=0A= }=0A= this.timer =3D this.onTimerEvent.bind(this).delay(this.decay * = this.frequency);=0A= },=0A= =0A= onTimerEvent: function() {=0A= this.updater =3D new Ajax.Updater(this.container, this.url, = this.options);=0A= }=0A= });=0A= function $(element) {=0A= if (arguments.length > 1) {=0A= for (var i =3D 0, elements =3D [], length =3D arguments.length; i < = length; i++)=0A= elements.push($(arguments[i]));=0A= return elements;=0A= }=0A= if (Object.isString(element))=0A= element =3D document.getElementById(element);=0A= return Element.extend(element);=0A= }=0A= =0A= if (Prototype.BrowserFeatures.XPath) {=0A= document._getElementsByXPath =3D function(expression, parentElement) {=0A= var results =3D [];=0A= var query =3D document.evaluate(expression, $(parentElement) || = document,=0A= null, XPathResult.ORDERED_NODE_SNAPSHOT_TYPE, null);=0A= for (var i =3D 0, length =3D query.snapshotLength; i < length; i++)=0A= results.push(Element.extend(query.snapshotItem(i)));=0A= return results;=0A= };=0A= }=0A= =0A= /*-----------------------------------------------------------------------= ---*/=0A= =0A= if (!window.Node) var Node =3D { };=0A= =0A= if (!Node.ELEMENT_NODE) {=0A= // DOM level 2 ECMAScript Language Binding=0A= Object.extend(Node, {=0A= ELEMENT_NODE: 1,=0A= ATTRIBUTE_NODE: 2,=0A= TEXT_NODE: 3,=0A= CDATA_SECTION_NODE: 4,=0A= ENTITY_REFERENCE_NODE: 5,=0A= ENTITY_NODE: 6,=0A= PROCESSING_INSTRUCTION_NODE: 7,=0A= COMMENT_NODE: 8,=0A= DOCUMENT_NODE: 9,=0A= DOCUMENT_TYPE_NODE: 10,=0A= DOCUMENT_FRAGMENT_NODE: 11,=0A= NOTATION_NODE: 12=0A= });=0A= }=0A= =0A= (function() {=0A= var element =3D this.Element;=0A= this.Element =3D function(tagName, attributes) {=0A= attributes =3D attributes || { };=0A= tagName =3D tagName.toLowerCase();=0A= var cache =3D Element.cache;=0A= if (Prototype.Browser.IE && attributes.name) {=0A= tagName =3D '<' + tagName + ' name=3D"' + attributes.name + '">';=0A= delete attributes.name;=0A= return Element.writeAttribute(document.createElement(tagName), = attributes);=0A= }=0A= if (!cache[tagName]) cache[tagName] =3D = Element.extend(document.createElement(tagName));=0A= return Element.writeAttribute(cache[tagName].cloneNode(false), = attributes);=0A= };=0A= Object.extend(this.Element, element || { });=0A= }).call(window);=0A= =0A= Element.cache =3D { };=0A= =0A= Element.Methods =3D {=0A= visible: function(element) {=0A= return $(element).style.display !=3D 'none';=0A= },=0A= =0A= toggle: function(element) {=0A= element =3D $(element);=0A= Element[Element.visible(element) ? 'hide' : 'show'](element);=0A= return element;=0A= },=0A= =0A= hide: function(element) {=0A= $(element).style.display =3D 'none';=0A= return element;=0A= },=0A= =0A= show: function(element) {=0A= $(element).style.display =3D '';=0A= return element;=0A= },=0A= =0A= remove: function(element) {=0A= element =3D $(element);=0A= element.parentNode.removeChild(element);=0A= return element;=0A= },=0A= =0A= update: function(element, content) {=0A= element =3D $(element);=0A= if (content && content.toElement) content =3D content.toElement();=0A= if (Object.isElement(content)) return = element.update().insert(content);=0A= content =3D Object.toHTML(content);=0A= element.innerHTML =3D content.stripScripts();=0A= content.evalScripts.bind(content).defer();=0A= return element;=0A= },=0A= =0A= replace: function(element, content) {=0A= element =3D $(element);=0A= if (content && content.toElement) content =3D content.toElement();=0A= else if (!Object.isElement(content)) {=0A= content =3D Object.toHTML(content);=0A= var range =3D element.ownerDocument.createRange();=0A= range.selectNode(element);=0A= content.evalScripts.bind(content).defer();=0A= content =3D range.createContextualFragment(content.stripScripts());=0A= }=0A= element.parentNode.replaceChild(content, element);=0A= return element;=0A= },=0A= =0A= insert: function(element, insertions) {=0A= element =3D $(element);=0A= =0A= if (Object.isString(insertions) || Object.isNumber(insertions) ||=0A= Object.isElement(insertions) || (insertions && = (insertions.toElement || insertions.toHTML)))=0A= insertions =3D {bottom:insertions};=0A= =0A= var content, t, range;=0A= =0A= for (position in insertions) {=0A= content =3D insertions[position];=0A= position =3D position.toLowerCase();=0A= t =3D Element._insertionTranslations[position];=0A= =0A= if (content && content.toElement) content =3D content.toElement();=0A= if (Object.isElement(content)) {=0A= t.insert(element, content);=0A= continue;=0A= }=0A= =0A= content =3D Object.toHTML(content);=0A= =0A= range =3D element.ownerDocument.createRange();=0A= t.initializeRange(element, range);=0A= t.insert(element, = range.createContextualFragment(content.stripScripts()));=0A= =0A= content.evalScripts.bind(content).defer();=0A= }=0A= =0A= return element;=0A= },=0A= =0A= wrap: function(element, wrapper, attributes) {=0A= element =3D $(element);=0A= if (Object.isElement(wrapper))=0A= $(wrapper).writeAttribute(attributes || { });=0A= else if (Object.isString(wrapper)) wrapper =3D new Element(wrapper, = attributes);=0A= else wrapper =3D new Element('div', wrapper);=0A= if (element.parentNode)=0A= element.parentNode.replaceChild(wrapper, element);=0A= wrapper.appendChild(element);=0A= return wrapper;=0A= },=0A= =0A= inspect: function(element) {=0A= element =3D $(element);=0A= var result =3D '<' + element.tagName.toLowerCase();=0A= $H({'id': 'id', 'className': 'class'}).each(function(pair) {=0A= var property =3D pair.first(), attribute =3D pair.last();=0A= var value =3D (element[property] || '').toString();=0A= if (value) result +=3D ' ' + attribute + '=3D' + = value.inspect(true);=0A= });=0A= return result + '>';=0A= },=0A= =0A= recursivelyCollect: function(element, property) {=0A= element =3D $(element);=0A= var elements =3D [];=0A= while (element =3D element[property])=0A= if (element.nodeType =3D=3D 1)=0A= elements.push(Element.extend(element));=0A= return elements;=0A= },=0A= =0A= ancestors: function(element) {=0A= return $(element).recursivelyCollect('parentNode');=0A= },=0A= =0A= descendants: function(element) {=0A= return $A($(element).getElementsByTagName('*')).each(Element.extend);=0A= },=0A= =0A= firstDescendant: function(element) {=0A= element =3D $(element).firstChild;=0A= while (element && element.nodeType !=3D 1) element =3D = element.nextSibling;=0A= return $(element);=0A= },=0A= =0A= immediateDescendants: function(element) {=0A= if (!(element =3D $(element).firstChild)) return [];=0A= while (element && element.nodeType !=3D 1) element =3D = element.nextSibling;=0A= if (element) return [element].concat($(element).nextSiblings());=0A= return [];=0A= },=0A= =0A= previousSiblings: function(element) {=0A= return $(element).recursivelyCollect('previousSibling');=0A= },=0A= =0A= nextSiblings: function(element) {=0A= return $(element).recursivelyCollect('nextSibling');=0A= },=0A= =0A= siblings: function(element) {=0A= element =3D $(element);=0A= return = element.previousSiblings().reverse().concat(element.nextSiblings());=0A= },=0A= =0A= match: function(element, selector) {=0A= if (Object.isString(selector))=0A= selector =3D new Selector(selector);=0A= return selector.match($(element));=0A= },=0A= =0A= up: function(element, expression, index) {=0A= element =3D $(element);=0A= if (arguments.length =3D=3D 1) return $(element.parentNode);=0A= var ancestors =3D element.ancestors();=0A= return expression ? Selector.findElement(ancestors, expression, = index) :=0A= ancestors[index || 0];=0A= },=0A= =0A= down: function(element, expression, index) {=0A= element =3D $(element);=0A= if (arguments.length =3D=3D 1) return element.firstDescendant();=0A= var descendants =3D element.descendants();=0A= return expression ? Selector.findElement(descendants, expression, = index) :=0A= descendants[index || 0];=0A= },=0A= =0A= previous: function(element, expression, index) {=0A= element =3D $(element);=0A= if (arguments.length =3D=3D 1) return = $(Selector.handlers.previousElementSibling(element));=0A= var previousSiblings =3D element.previousSiblings();=0A= return expression ? Selector.findElement(previousSiblings, = expression, index) :=0A= previousSiblings[index || 0];=0A= },=0A= =0A= next: function(element, expression, index) {=0A= element =3D $(element);=0A= if (arguments.length =3D=3D 1) return = $(Selector.handlers.nextElementSibling(element));=0A= var nextSiblings =3D element.nextSiblings();=0A= return expression ? Selector.findElement(nextSiblings, expression, = index) :=0A= nextSiblings[index || 0];=0A= },=0A= =0A= select: function() {=0A= var args =3D $A(arguments), element =3D $(args.shift());=0A= return Selector.findChildElements(element, args);=0A= },=0A= =0A= adjacent: function() {=0A= var args =3D $A(arguments), element =3D $(args.shift());=0A= return Selector.findChildElements(element.parentNode, = args).without(element);=0A= },=0A= =0A= identify: function(element) {=0A= element =3D $(element);=0A= var id =3D element.readAttribute('id'), self =3D arguments.callee;=0A= if (id) return id;=0A= do { id =3D 'anonymous_element_' + self.counter++ } while ($(id));=0A= element.writeAttribute('id', id);=0A= return id;=0A= },=0A= =0A= readAttribute: function(element, name) {=0A= element =3D $(element);=0A= if (Prototype.Browser.IE) {=0A= var t =3D Element._attributeTranslations.read;=0A= if (t.values[name]) return t.values[name](element, name);=0A= if (t.names[name]) name =3D t.names[name];=0A= if (name.include(':')) {=0A= return (!element.attributes || !element.attributes[name]) ? null = :=0A= element.attributes[name].value;=0A= }=0A= }=0A= return element.getAttribute(name);=0A= },=0A= =0A= writeAttribute: function(element, name, value) {=0A= element =3D $(element);=0A= var attributes =3D { }, t =3D Element._attributeTranslations.write;=0A= =0A= if (typeof name =3D=3D 'object') attributes =3D name;=0A= else attributes[name] =3D value =3D=3D=3D undefined ? true : value;=0A= =0A= for (var attr in attributes) {=0A= var name =3D t.names[attr] || attr, value =3D attributes[attr];=0A= if (t.values[attr]) name =3D t.values[attr](element, value);=0A= if (value =3D=3D=3D false || value =3D=3D=3D null)=0A= element.removeAttribute(name);=0A= else if (value =3D=3D=3D true)=0A= element.setAttribute(name, name);=0A= else element.setAttribute(name, value);=0A= }=0A= return element;=0A= },=0A= =0A= getHeight: function(element) {=0A= return $(element).getDimensions().height;=0A= },=0A= =0A= getWidth: function(element) {=0A= return $(element).getDimensions().width;=0A= },=0A= =0A= classNames: function(element) {=0A= return new Element.ClassNames(element);=0A= },=0A= =0A= hasClassName: function(element, className) {=0A= if (!(element =3D $(element))) return;=0A= var elementClassName =3D element.className;=0A= return (elementClassName.length > 0 && (elementClassName =3D=3D = className ||=0A= new RegExp("(^|\\s)" + className + = "(\\s|$)").test(elementClassName)));=0A= },=0A= =0A= addClassName: function(element, className) {=0A= if (!(element =3D $(element))) return;=0A= if (!element.hasClassName(className))=0A= element.className +=3D (element.className ? ' ' : '') + className;=0A= return element;=0A= },=0A= =0A= removeClassName: function(element, className) {=0A= if (!(element =3D $(element))) return;=0A= element.className =3D element.className.replace(=0A= new RegExp("(^|\\s+)" + className + "(\\s+|$)"), ' ').strip();=0A= return element;=0A= },=0A= =0A= toggleClassName: function(element, className) {=0A= if (!(element =3D $(element))) return;=0A= return element[element.hasClassName(className) ?=0A= 'removeClassName' : 'addClassName'](className);=0A= },=0A= =0A= // removes whitespace-only text node children=0A= cleanWhitespace: function(element) {=0A= element =3D $(element);=0A= var node =3D element.firstChild;=0A= while (node) {=0A= var nextNode =3D node.nextSibling;=0A= if (node.nodeType =3D=3D 3 && !/\S/.test(node.nodeValue))=0A= element.removeChild(node);=0A= node =3D nextNode;=0A= }=0A= return element;=0A= },=0A= =0A= empty: function(element) {=0A= return $(element).innerHTML.blank();=0A= },=0A= =0A= descendantOf: function(element, ancestor) {=0A= element =3D $(element), ancestor =3D $(ancestor);=0A= =0A= if (element.compareDocumentPosition)=0A= return (element.compareDocumentPosition(ancestor) & 8) =3D=3D=3D 8;=0A= =0A= if (element.sourceIndex && !Prototype.Browser.Opera) {=0A= var e =3D element.sourceIndex, a =3D ancestor.sourceIndex,=0A= nextAncestor =3D ancestor.nextSibling;=0A= if (!nextAncestor) {=0A= do { ancestor =3D ancestor.parentNode; }=0A= while (!(nextAncestor =3D ancestor.nextSibling) && = ancestor.parentNode);=0A= }=0A= if (nextAncestor) return (e > a && e < nextAncestor.sourceIndex);=0A= }=0A= =0A= while (element =3D element.parentNode)=0A= if (element =3D=3D ancestor) return true;=0A= return false;=0A= },=0A= =0A= scrollTo: function(element) {=0A= element =3D $(element);=0A= var pos =3D element.cumulativeOffset();=0A= window.scrollTo(pos[0], pos[1]);=0A= return element;=0A= },=0A= =0A= getStyle: function(element, style) {=0A= element =3D $(element);=0A= style =3D style =3D=3D 'float' ? 'cssFloat' : style.camelize();=0A= var value =3D element.style[style];=0A= if (!value) {=0A= var css =3D document.defaultView.getComputedStyle(element, null);=0A= value =3D css ? css[style] : null;=0A= }=0A= if (style =3D=3D 'opacity') return value ? parseFloat(value) : 1.0;=0A= return value =3D=3D 'auto' ? null : value;=0A= },=0A= =0A= getOpacity: function(element) {=0A= return $(element).getStyle('opacity');=0A= },=0A= =0A= setStyle: function(element, styles) {=0A= element =3D $(element);=0A= var elementStyle =3D element.style, match;=0A= if (Object.isString(styles)) {=0A= element.style.cssText +=3D ';' + styles;=0A= return styles.include('opacity') ?=0A= element.setOpacity(styles.match(/opacity:\s*(\d?\.?\d*)/)[1]) : = element;=0A= }=0A= for (var property in styles)=0A= if (property =3D=3D 'opacity') = element.setOpacity(styles[property]);=0A= else=0A= elementStyle[(property =3D=3D 'float' || property =3D=3D = 'cssFloat') ?=0A= (elementStyle.styleFloat =3D=3D=3D undefined ? 'cssFloat' : = 'styleFloat') :=0A= property] =3D styles[property];=0A= =0A= return element;=0A= },=0A= =0A= setOpacity: function(element, value) {=0A= element =3D $(element);=0A= element.style.opacity =3D (value =3D=3D 1 || value =3D=3D=3D '') ? = '' :=0A= (value < 0.00001) ? 0 : value;=0A= return element;=0A= },=0A= =0A= getDimensions: function(element) {=0A= element =3D $(element);=0A= var display =3D $(element).getStyle('display');=0A= if (display !=3D 'none' && display !=3D null) // Safari bug=0A= return {width: element.offsetWidth, height: element.offsetHeight};=0A= =0A= // All *Width and *Height properties give 0 on elements with display = none,=0A= // so enable the element temporarily=0A= var els =3D element.style;=0A= var originalVisibility =3D els.visibility;=0A= var originalPosition =3D els.position;=0A= var originalDisplay =3D els.display;=0A= els.visibility =3D 'hidden';=0A= els.position =3D 'absolute';=0A= els.display =3D 'block';=0A= var originalWidth =3D element.clientWidth;=0A= var originalHeight =3D element.clientHeight;=0A= els.display =3D originalDisplay;=0A= els.position =3D originalPosition;=0A= els.visibility =3D originalVisibility;=0A= return {width: originalWidth, height: originalHeight};=0A= },=0A= =0A= makePositioned: function(element) {=0A= element =3D $(element);=0A= var pos =3D Element.getStyle(element, 'position');=0A= if (pos =3D=3D 'static' || !pos) {=0A= element._madePositioned =3D true;=0A= element.style.position =3D 'relative';=0A= // Opera returns the offset relative to the positioning context, = when an=0A= // element is position relative but top and left have not been = defined=0A= if (window.opera) {=0A= element.style.top =3D 0;=0A= element.style.left =3D 0;=0A= }=0A= }=0A= return element;=0A= },=0A= =0A= undoPositioned: function(element) {=0A= element =3D $(element);=0A= if (element._madePositioned) {=0A= element._madePositioned =3D undefined;=0A= element.style.position =3D=0A= element.style.top =3D=0A= element.style.left =3D=0A= element.style.bottom =3D=0A= element.style.right =3D '';=0A= }=0A= return element;=0A= },=0A= =0A= makeClipping: function(element) {=0A= element =3D $(element);=0A= if (element._overflow) return element;=0A= element._overflow =3D Element.getStyle(element, 'overflow') || = 'auto';=0A= if (element._overflow !=3D=3D 'hidden')=0A= element.style.overflow =3D 'hidden';=0A= return element;=0A= },=0A= =0A= undoClipping: function(element) {=0A= element =3D $(element);=0A= if (!element._overflow) return element;=0A= element.style.overflow =3D element._overflow =3D=3D 'auto' ? '' : = element._overflow;=0A= element._overflow =3D null;=0A= return element;=0A= },=0A= =0A= cumulativeOffset: function(element) {=0A= var valueT =3D 0, valueL =3D 0;=0A= do {=0A= valueT +=3D element.offsetTop || 0;=0A= valueL +=3D element.offsetLeft || 0;=0A= element =3D element.offsetParent;=0A= } while (element);=0A= return Element._returnOffset(valueL, valueT);=0A= },=0A= =0A= positionedOffset: function(element) {=0A= var valueT =3D 0, valueL =3D 0;=0A= do {=0A= valueT +=3D element.offsetTop || 0;=0A= valueL +=3D element.offsetLeft || 0;=0A= element =3D element.offsetParent;=0A= if (element) {=0A= if (element.tagName =3D=3D 'BODY') break;=0A= var p =3D Element.getStyle(element, 'position');=0A= if (p =3D=3D 'relative' || p =3D=3D 'absolute') break;=0A= }=0A= } while (element);=0A= return Element._returnOffset(valueL, valueT);=0A= },=0A= =0A= absolutize: function(element) {=0A= element =3D $(element);=0A= if (element.getStyle('position') =3D=3D 'absolute') return;=0A= // Position.prepare(); // To be done manually by Scripty when it = needs it.=0A= =0A= var offsets =3D element.positionedOffset();=0A= var top =3D offsets[1];=0A= var left =3D offsets[0];=0A= var width =3D element.clientWidth;=0A= var height =3D element.clientHeight;=0A= =0A= element._originalLeft =3D left - parseFloat(element.style.left || = 0);=0A= element._originalTop =3D top - parseFloat(element.style.top || = 0);=0A= element._originalWidth =3D element.style.width;=0A= element._originalHeight =3D element.style.height;=0A= =0A= element.style.position =3D 'absolute';=0A= element.style.top =3D top + 'px';=0A= element.style.left =3D left + 'px';=0A= element.style.width =3D width + 'px';=0A= element.style.height =3D height + 'px';=0A= return element;=0A= },=0A= =0A= relativize: function(element) {=0A= element =3D $(element);=0A= if (element.getStyle('position') =3D=3D 'relative') return;=0A= // Position.prepare(); // To be done manually by Scripty when it = needs it.=0A= =0A= element.style.position =3D 'relative';=0A= var top =3D parseFloat(element.style.top || 0) - = (element._originalTop || 0);=0A= var left =3D parseFloat(element.style.left || 0) - = (element._originalLeft || 0);=0A= =0A= element.style.top =3D top + 'px';=0A= element.style.left =3D left + 'px';=0A= element.style.height =3D element._originalHeight;=0A= element.style.width =3D element._originalWidth;=0A= return element;=0A= },=0A= =0A= cumulativeScrollOffset: function(element) {=0A= var valueT =3D 0, valueL =3D 0;=0A= do {=0A= valueT +=3D element.scrollTop || 0;=0A= valueL +=3D element.scrollLeft || 0;=0A= element =3D element.parentNode;=0A= } while (element);=0A= return Element._returnOffset(valueL, valueT);=0A= },=0A= =0A= getOffsetParent: function(element) {=0A= if (element.offsetParent) return $(element.offsetParent);=0A= if (element =3D=3D document.body) return $(element);=0A= =0A= while ((element =3D element.parentNode) && element !=3D = document.body)=0A= if (Element.getStyle(element, 'position') !=3D 'static')=0A= return $(element);=0A= =0A= return $(document.body);=0A= },=0A= =0A= viewportOffset: function(forElement) {=0A= var valueT =3D 0, valueL =3D 0;=0A= =0A= var element =3D forElement;=0A= do {=0A= valueT +=3D element.offsetTop || 0;=0A= valueL +=3D element.offsetLeft || 0;=0A= =0A= // Safari fix=0A= if (element.offsetParent =3D=3D document.body &&=0A= Element.getStyle(element, 'position') =3D=3D 'absolute') break;=0A= =0A= } while (element =3D element.offsetParent);=0A= =0A= element =3D forElement;=0A= do {=0A= if (!Prototype.Browser.Opera || element.tagName =3D=3D 'BODY') {=0A= valueT -=3D element.scrollTop || 0;=0A= valueL -=3D element.scrollLeft || 0;=0A= }=0A= } while (element =3D element.parentNode);=0A= =0A= return Element._returnOffset(valueL, valueT);=0A= },=0A= =0A= clonePosition: function(element, source) {=0A= var options =3D Object.extend({=0A= setLeft: true,=0A= setTop: true,=0A= setWidth: true,=0A= setHeight: true,=0A= offsetTop: 0,=0A= offsetLeft: 0=0A= }, arguments[2] || { });=0A= =0A= // find page position of source=0A= source =3D $(source);=0A= var p =3D source.viewportOffset();=0A= =0A= // find coordinate system to use=0A= element =3D $(element);=0A= var delta =3D [0, 0];=0A= var parent =3D null;=0A= // delta [0,0] will do fine with position: fixed elements,=0A= // position:absolute needs offsetParent deltas=0A= if (Element.getStyle(element, 'position') =3D=3D 'absolute') {=0A= parent =3D element.getOffsetParent();=0A= delta =3D parent.viewportOffset();=0A= }=0A= =0A= // correct by body offsets (fixes Safari)=0A= if (parent =3D=3D document.body) {=0A= delta[0] -=3D document.body.offsetLeft;=0A= delta[1] -=3D document.body.offsetTop;=0A= }=0A= =0A= // set position=0A= if (options.setLeft) element.style.left =3D (p[0] - delta[0] + = options.offsetLeft) + 'px';=0A= if (options.setTop) element.style.top =3D (p[1] - delta[1] + = options.offsetTop) + 'px';=0A= if (options.setWidth) element.style.width =3D source.offsetWidth + = 'px';=0A= if (options.setHeight) element.style.height =3D source.offsetHeight = + 'px';=0A= return element;=0A= }=0A= };=0A= =0A= Element.Methods.identify.counter =3D 1;=0A= =0A= Object.extend(Element.Methods, {=0A= getElementsBySelector: Element.Methods.select,=0A= childElements: Element.Methods.immediateDescendants=0A= });=0A= =0A= Element._attributeTranslations =3D {=0A= write: {=0A= names: {=0A= className: 'class',=0A= htmlFor: 'for'=0A= },=0A= values: { }=0A= }=0A= };=0A= =0A= =0A= if (!document.createRange || Prototype.Browser.Opera) {=0A= Element.Methods.insert =3D function(element, insertions) {=0A= element =3D $(element);=0A= =0A= if (Object.isString(insertions) || Object.isNumber(insertions) ||=0A= Object.isElement(insertions) || (insertions && = (insertions.toElement || insertions.toHTML)))=0A= insertions =3D { bottom: insertions };=0A= =0A= var t =3D Element._insertionTranslations, content, position, pos, = tagName;=0A= =0A= for (position in insertions) {=0A= content =3D insertions[position];=0A= position =3D position.toLowerCase();=0A= pos =3D t[position];=0A= =0A= if (content && content.toElement) content =3D content.toElement();=0A= if (Object.isElement(content)) {=0A= pos.insert(element, content);=0A= continue;=0A= }=0A= =0A= content =3D Object.toHTML(content);=0A= tagName =3D ((position =3D=3D 'before' || position =3D=3D 'after')=0A= ? element.parentNode : element).tagName.toUpperCase();=0A= =0A= if (t.tags[tagName]) {=0A= var fragments =3D = Element._getContentFromAnonymousElement(tagName, content.stripScripts());=0A= if (position =3D=3D 'top' || position =3D=3D 'after') = fragments.reverse();=0A= fragments.each(pos.insert.curry(element));=0A= }=0A= else element.insertAdjacentHTML(pos.adjacency, = content.stripScripts());=0A= =0A= content.evalScripts.bind(content).defer();=0A= }=0A= =0A= return element;=0A= };=0A= }=0A= =0A= if (Prototype.Browser.Opera) {=0A= Element.Methods._getStyle =3D Element.Methods.getStyle;=0A= Element.Methods.getStyle =3D function(element, style) {=0A= switch(style) {=0A= case 'left':=0A= case 'top':=0A= case 'right':=0A= case 'bottom':=0A= if (Element._getStyle(element, 'position') =3D=3D 'static') = return null;=0A= default: return Element._getStyle(element, style);=0A= }=0A= };=0A= Element.Methods._readAttribute =3D Element.Methods.readAttribute;=0A= Element.Methods.readAttribute =3D function(element, attribute) {=0A= if (attribute =3D=3D 'title') return element.title;=0A= return Element._readAttribute(element, attribute);=0A= };=0A= }=0A= =0A= else if (Prototype.Browser.IE) {=0A= $w('positionedOffset getOffsetParent = viewportOffset').each(function(method) {=0A= Element.Methods[method] =3D Element.Methods[method].wrap(=0A= function(proceed, element) {=0A= element =3D $(element);=0A= var position =3D element.getStyle('position');=0A= if (position !=3D 'static') return proceed(element);=0A= element.setStyle({ position: 'relative' });=0A= var value =3D proceed(element);=0A= element.setStyle({ position: position });=0A= return value;=0A= }=0A= );=0A= });=0A= =0A= Element.Methods.getStyle =3D function(element, style) {=0A= element =3D $(element);=0A= style =3D (style =3D=3D 'float' || style =3D=3D 'cssFloat') ? = 'styleFloat' : style.camelize();=0A= var value =3D element.style[style];=0A= if (!value && element.currentStyle) value =3D = element.currentStyle[style];=0A= =0A= if (style =3D=3D 'opacity') {=0A= if (value =3D (element.getStyle('filter') || = '').match(/alpha\(opacity=3D(.*)\)/))=0A= if (value[1]) return parseFloat(value[1]) / 100;=0A= return 1.0;=0A= }=0A= =0A= if (value =3D=3D 'auto') {=0A= if ((style =3D=3D 'width' || style =3D=3D 'height') && = (element.getStyle('display') !=3D 'none'))=0A= return element['offset' + style.capitalize()] + 'px';=0A= return null;=0A= }=0A= return value;=0A= };=0A= =0A= Element.Methods.setOpacity =3D function(element, value) {=0A= function stripAlpha(filter){=0A= return filter.replace(/alpha\([^\)]*\)/gi,'');=0A= }=0A= element =3D $(element);=0A= var currentStyle =3D element.currentStyle;=0A= if ((currentStyle && !currentStyle.hasLayout) ||=0A= (!currentStyle && element.style.zoom =3D=3D 'normal'))=0A= element.style.zoom =3D 1;=0A= =0A= var filter =3D element.getStyle('filter'), style =3D element.style;=0A= if (value =3D=3D 1 || value =3D=3D=3D '') {=0A= (filter =3D stripAlpha(filter)) ?=0A= style.filter =3D filter : style.removeAttribute('filter');=0A= return element;=0A= } else if (value < 0.00001) value =3D 0;=0A= style.filter =3D stripAlpha(filter) +=0A= 'alpha(opacity=3D' + (value * 100) + ')';=0A= return element;=0A= };=0A= =0A= Element._attributeTranslations =3D {=0A= read: {=0A= names: {=0A= 'class': 'className',=0A= 'for': 'htmlFor'=0A= },=0A= values: {=0A= _getAttr: function(element, attribute) {=0A= return element.getAttribute(attribute, 2);=0A= },=0A= _getAttrNode: function(element, attribute) {=0A= var node =3D element.getAttributeNode(attribute);=0A= return node ? node.value : "";=0A= },=0A= _getEv: function(element, attribute) {=0A= var attribute =3D element.getAttribute(attribute);=0A= return attribute ? attribute.toString().slice(23, -2) : null;=0A= },=0A= _flag: function(element, attribute) {=0A= return $(element).hasAttribute(attribute) ? attribute : null;=0A= },=0A= style: function(element) {=0A= return element.style.cssText.toLowerCase();=0A= },=0A= title: function(element) {=0A= return element.title;=0A= }=0A= }=0A= }=0A= };=0A= =0A= Element._attributeTranslations.write =3D {=0A= names: Object.clone(Element._attributeTranslations.read.names),=0A= values: {=0A= checked: function(element, value) {=0A= element.checked =3D !!value;=0A= },=0A= =0A= style: function(element, value) {=0A= element.style.cssText =3D value ? value : '';=0A= }=0A= }=0A= };=0A= =0A= Element._attributeTranslations.has =3D {};=0A= =0A= $w('colSpan rowSpan vAlign dateTime accessKey tabIndex ' +=0A= 'encType maxLength readOnly longDesc').each(function(attr) {=0A= Element._attributeTranslations.write.names[attr.toLowerCase()] =3D = attr;=0A= Element._attributeTranslations.has[attr.toLowerCase()] =3D attr;=0A= });=0A= =0A= (function(v) {=0A= Object.extend(v, {=0A= href: v._getAttr,=0A= src: v._getAttr,=0A= type: v._getAttr,=0A= action: v._getAttrNode,=0A= disabled: v._flag,=0A= checked: v._flag,=0A= readonly: v._flag,=0A= multiple: v._flag,=0A= onload: v._getEv,=0A= onunload: v._getEv,=0A= onclick: v._getEv,=0A= ondblclick: v._getEv,=0A= onmousedown: v._getEv,=0A= onmouseup: v._getEv,=0A= onmouseover: v._getEv,=0A= onmousemove: v._getEv,=0A= onmouseout: v._getEv,=0A= onfocus: v._getEv,=0A= onblur: v._getEv,=0A= onkeypress: v._getEv,=0A= onkeydown: v._getEv,=0A= onkeyup: v._getEv,=0A= onsubmit: v._getEv,=0A= onreset: v._getEv,=0A= onselect: v._getEv,=0A= onchange: v._getEv=0A= });=0A= })(Element._attributeTranslations.read.values);=0A= }=0A= =0A= else if (Prototype.Browser.Gecko && = /rv:1\.8\.0/.test(navigator.userAgent)) {=0A= Element.Methods.setOpacity =3D function(element, value) {=0A= element =3D $(element);=0A= element.style.opacity =3D (value =3D=3D 1) ? 0.999999 :=0A= (value =3D=3D=3D '') ? '' : (value < 0.00001) ? 0 : value;=0A= return element;=0A= };=0A= }=0A= =0A= else if (Prototype.Browser.WebKit) {=0A= Element.Methods.setOpacity =3D function(element, value) {=0A= element =3D $(element);=0A= element.style.opacity =3D (value =3D=3D 1 || value =3D=3D=3D '') ? = '' :=0A= (value < 0.00001) ? 0 : value;=0A= =0A= if (value =3D=3D 1)=0A= if(element.tagName =3D=3D 'IMG' && element.width) {=0A= element.width++; element.width--;=0A= } else try {=0A= var n =3D document.createTextNode(' ');=0A= element.appendChild(n);=0A= element.removeChild(n);=0A= } catch (e) { }=0A= =0A= return element;=0A= };=0A= =0A= // Safari returns margins on body which is incorrect if the child is = absolutely=0A= // positioned. For performance reasons, redefine = Position.cumulativeOffset for=0A= // KHTML/WebKit only.=0A= Element.Methods.cumulativeOffset =3D function(element) {=0A= var valueT =3D 0, valueL =3D 0;=0A= do {=0A= valueT +=3D element.offsetTop || 0;=0A= valueL +=3D element.offsetLeft || 0;=0A= if (element.offsetParent =3D=3D document.body)=0A= if (Element.getStyle(element, 'position') =3D=3D 'absolute') = break;=0A= =0A= element =3D element.offsetParent;=0A= } while (element);=0A= =0A= return Element._returnOffset(valueL, valueT);=0A= };=0A= }=0A= =0A= if (Prototype.Browser.IE || Prototype.Browser.Opera) {=0A= // IE and Opera are missing .innerHTML support for TABLE-related and = SELECT elements=0A= Element.Methods.update =3D function(element, content) {=0A= element =3D $(element);=0A= =0A= if (content && content.toElement) content =3D content.toElement();=0A= if (Object.isElement(content)) return = element.update().insert(content);=0A= =0A= content =3D Object.toHTML(content);=0A= var tagName =3D element.tagName.toUpperCase();=0A= =0A= if (tagName in Element._insertionTranslations.tags) {=0A= $A(element.childNodes).each(function(node) { = element.removeChild(node) });=0A= Element._getContentFromAnonymousElement(tagName, = content.stripScripts())=0A= .each(function(node) { element.appendChild(node) });=0A= }=0A= else element.innerHTML =3D content.stripScripts();=0A= =0A= content.evalScripts.bind(content).defer();=0A= return element;=0A= };=0A= }=0A= =0A= if (document.createElement('div').outerHTML) {=0A= Element.Methods.replace =3D function(element, content) {=0A= element =3D $(element);=0A= =0A= if (content && content.toElement) content =3D content.toElement();=0A= if (Object.isElement(content)) {=0A= element.parentNode.replaceChild(content, element);=0A= return element;=0A= }=0A= =0A= content =3D Object.toHTML(content);=0A= var parent =3D element.parentNode, tagName =3D = parent.tagName.toUpperCase();=0A= =0A= if (Element._insertionTranslations.tags[tagName]) {=0A= var nextSibling =3D element.next();=0A= var fragments =3D Element._getContentFromAnonymousElement(tagName, = content.stripScripts());=0A= parent.removeChild(element);=0A= if (nextSibling)=0A= fragments.each(function(node) { parent.insertBefore(node, = nextSibling) });=0A= else=0A= fragments.each(function(node) { parent.appendChild(node) });=0A= }=0A= else element.outerHTML =3D content.stripScripts();=0A= =0A= content.evalScripts.bind(content).defer();=0A= return element;=0A= };=0A= }=0A= =0A= Element._returnOffset =3D function(l, t) {=0A= var result =3D [l, t];=0A= result.left =3D l;=0A= result.top =3D t;=0A= return result;=0A= };=0A= =0A= Element._getContentFromAnonymousElement =3D function(tagName, html) {=0A= var div =3D new Element('div'), t =3D = Element._insertionTranslations.tags[tagName];=0A= div.innerHTML =3D t[0] + html + t[1];=0A= t[2].times(function() { div =3D div.firstChild });=0A= return $A(div.childNodes);=0A= };=0A= =0A= Element._insertionTranslations =3D {=0A= before: {=0A= adjacency: 'beforeBegin',=0A= insert: function(element, node) {=0A= element.parentNode.insertBefore(node, element);=0A= },=0A= initializeRange: function(element, range) {=0A= range.setStartBefore(element);=0A= }=0A= },=0A= top: {=0A= adjacency: 'afterBegin',=0A= insert: function(element, node) {=0A= element.insertBefore(node, element.firstChild);=0A= },=0A= initializeRange: function(element, range) {=0A= range.selectNodeContents(element);=0A= range.collapse(true);=0A= }=0A= },=0A= bottom: {=0A= adjacency: 'beforeEnd',=0A= insert: function(element, node) {=0A= element.appendChild(node);=0A= }=0A= },=0A= after: {=0A= adjacency: 'afterEnd',=0A= insert: function(element, node) {=0A= element.parentNode.insertBefore(node, element.nextSibling);=0A= },=0A= initializeRange: function(element, range) {=0A= range.setStartAfter(element);=0A= }=0A= },=0A= tags: {=0A= TABLE: ['', '
', 1],=0A= TBODY: ['', '
', 2],=0A= TR: ['', '
', 3],=0A= TD: ['
', '
', 4],=0A= SELECT: ['', 1]=0A= }=0A= };=0A= =0A= (function() {=0A= this.bottom.initializeRange =3D this.top.initializeRange;=0A= Object.extend(this.tags, {=0A= THEAD: this.tags.TBODY,=0A= TFOOT: this.tags.TBODY,=0A= TH: this.tags.TD=0A= });=0A= }).call(Element._insertionTranslations);=0A= =0A= Element.Methods.Simulated =3D {=0A= hasAttribute: function(element, attribute) {=0A= attribute =3D Element._attributeTranslations.has[attribute] || = attribute;=0A= var node =3D $(element).getAttributeNode(attribute);=0A= return node && node.specified;=0A= }=0A= };=0A= =0A= Element.Methods.ByTag =3D { };=0A= =0A= Object.extend(Element, Element.Methods);=0A= =0A= if (!Prototype.BrowserFeatures.ElementExtensions &&=0A= document.createElement('div').__proto__) {=0A= window.HTMLElement =3D { };=0A= window.HTMLElement.prototype =3D = document.createElement('div').__proto__;=0A= Prototype.BrowserFeatures.ElementExtensions =3D true;=0A= }=0A= =0A= Element.extend =3D (function() {=0A= if (Prototype.BrowserFeatures.SpecificElementExtensions)=0A= return Prototype.K;=0A= =0A= var Methods =3D { }, ByTag =3D Element.Methods.ByTag;=0A= =0A= var extend =3D Object.extend(function(element) {=0A= if (!element || element._extendedByPrototype ||=0A= element.nodeType !=3D 1 || element =3D=3D window) return element;=0A= =0A= var methods =3D Object.clone(Methods),=0A= tagName =3D element.tagName, property, value;=0A= =0A= // extend methods for specific tags=0A= if (ByTag[tagName]) Object.extend(methods, ByTag[tagName]);=0A= =0A= for (property in methods) {=0A= value =3D methods[property];=0A= if (Object.isFunction(value) && !(property in element))=0A= element[property] =3D value.methodize();=0A= }=0A= =0A= element._extendedByPrototype =3D Prototype.emptyFunction;=0A= return element;=0A= =0A= }, {=0A= refresh: function() {=0A= // extend methods for all tags (Safari doesn't need this)=0A= if (!Prototype.BrowserFeatures.ElementExtensions) {=0A= Object.extend(Methods, Element.Methods);=0A= Object.extend(Methods, Element.Methods.Simulated);=0A= }=0A= }=0A= });=0A= =0A= extend.refresh();=0A= return extend;=0A= })();=0A= =0A= Element.hasAttribute =3D function(element, attribute) {=0A= if (element.hasAttribute) return element.hasAttribute(attribute);=0A= return Element.Methods.Simulated.hasAttribute(element, attribute);=0A= };=0A= =0A= Element.addMethods =3D function(methods) {=0A= var F =3D Prototype.BrowserFeatures, T =3D Element.Methods.ByTag;=0A= =0A= if (!methods) {=0A= Object.extend(Form, Form.Methods);=0A= Object.extend(Form.Element, Form.Element.Methods);=0A= Object.extend(Element.Methods.ByTag, {=0A= "FORM": Object.clone(Form.Methods),=0A= "INPUT": Object.clone(Form.Element.Methods),=0A= "SELECT": Object.clone(Form.Element.Methods),=0A= "TEXTAREA": Object.clone(Form.Element.Methods)=0A= });=0A= }=0A= =0A= if (arguments.length =3D=3D 2) {=0A= var tagName =3D methods;=0A= methods =3D arguments[1];=0A= }=0A= =0A= if (!tagName) Object.extend(Element.Methods, methods || { });=0A= else {=0A= if (Object.isArray(tagName)) tagName.each(extend);=0A= else extend(tagName);=0A= }=0A= =0A= function extend(tagName) {=0A= tagName =3D tagName.toUpperCase();=0A= if (!Element.Methods.ByTag[tagName])=0A= Element.Methods.ByTag[tagName] =3D { };=0A= Object.extend(Element.Methods.ByTag[tagName], methods);=0A= }=0A= =0A= function copy(methods, destination, onlyIfAbsent) {=0A= onlyIfAbsent =3D onlyIfAbsent || false;=0A= for (var property in methods) {=0A= var value =3D methods[property];=0A= if (!Object.isFunction(value)) continue;=0A= if (!onlyIfAbsent || !(property in destination))=0A= destination[property] =3D value.methodize();=0A= }=0A= }=0A= =0A= function findDOMClass(tagName) {=0A= var klass;=0A= var trans =3D {=0A= "OPTGROUP": "OptGroup", "TEXTAREA": "TextArea", "P": "Paragraph",=0A= "FIELDSET": "FieldSet", "UL": "UList", "OL": "OList", "DL": = "DList",=0A= "DIR": "Directory", "H1": "Heading", "H2": "Heading", "H3": = "Heading",=0A= "H4": "Heading", "H5": "Heading", "H6": "Heading", "Q": "Quote",=0A= "INS": "Mod", "DEL": "Mod", "A": "Anchor", "IMG": "Image", = "CAPTION":=0A= "TableCaption", "COL": "TableCol", "COLGROUP": "TableCol", "THEAD":=0A= "TableSection", "TFOOT": "TableSection", "TBODY": "TableSection", = "TR":=0A= "TableRow", "TH": "TableCell", "TD": "TableCell", "FRAMESET":=0A= "FrameSet", "IFRAME": "IFrame"=0A= };=0A= if (trans[tagName]) klass =3D 'HTML' + trans[tagName] + 'Element';=0A= if (window[klass]) return window[klass];=0A= klass =3D 'HTML' + tagName + 'Element';=0A= if (window[klass]) return window[klass];=0A= klass =3D 'HTML' + tagName.capitalize() + 'Element';=0A= if (window[klass]) return window[klass];=0A= =0A= window[klass] =3D { };=0A= window[klass].prototype =3D = document.createElement(tagName).__proto__;=0A= return window[klass];=0A= }=0A= =0A= if (F.ElementExtensions) {=0A= copy(Element.Methods, HTMLElement.prototype);=0A= copy(Element.Methods.Simulated, HTMLElement.prototype, true);=0A= }=0A= =0A= if (F.SpecificElementExtensions) {=0A= for (var tag in Element.Methods.ByTag) {=0A= var klass =3D findDOMClass(tag);=0A= if (Object.isUndefined(klass)) continue;=0A= copy(T[tag], klass.prototype);=0A= }=0A= }=0A= =0A= Object.extend(Element, Element.Methods);=0A= delete Element.ByTag;=0A= =0A= if (Element.extend.refresh) Element.extend.refresh();=0A= Element.cache =3D { };=0A= };=0A= =0A= document.viewport =3D {=0A= getDimensions: function() {=0A= var dimensions =3D { };=0A= $w('width height').each(function(d) {=0A= var D =3D d.capitalize();=0A= dimensions[d] =3D self['inner' + D] ||=0A= (document.documentElement['client' + D] || document.body['client' = + D]);=0A= });=0A= return dimensions;=0A= },=0A= =0A= getWidth: function() {=0A= return this.getDimensions().width;=0A= },=0A= =0A= getHeight: function() {=0A= return this.getDimensions().height;=0A= },=0A= =0A= getScrollOffsets: function() {=0A= return Element._returnOffset(=0A= window.pageXOffset || document.documentElement.scrollLeft || = document.body.scrollLeft,=0A= window.pageYOffset || document.documentElement.scrollTop || = document.body.scrollTop);=0A= }=0A= };=0A= /* Portions of the Selector class are derived from Jack Slocum=E2=80=99s = DomQuery,=0A= * part of YUI-Ext version 0.40, distributed under the terms of an = MIT-style=0A= * license. Please see http://www.yui-ext.com/ for more information. */=0A= =0A= var Selector =3D Class.create({=0A= initialize: function(expression) {=0A= this.expression =3D expression.strip();=0A= this.compileMatcher();=0A= },=0A= =0A= compileMatcher: function() {=0A= // Selectors with namespaced attributes can't use the XPath version=0A= if (Prototype.BrowserFeatures.XPath && = !(/(\[[\w-]*?:|:checked)/).test(this.expression))=0A= return this.compileXPathMatcher();=0A= =0A= var e =3D this.expression, ps =3D Selector.patterns, h =3D = Selector.handlers,=0A= c =3D Selector.criteria, le, p, m;=0A= =0A= if (Selector._cache[e]) {=0A= this.matcher =3D Selector._cache[e];=0A= return;=0A= }=0A= =0A= this.matcher =3D ["this.matcher =3D function(root) {",=0A= "var r =3D root, h =3D Selector.handlers, c =3D = false, n;"];=0A= =0A= while (e && le !=3D e && (/\S/).test(e)) {=0A= le =3D e;=0A= for (var i in ps) {=0A= p =3D ps[i];=0A= if (m =3D e.match(p)) {=0A= this.matcher.push(Object.isFunction(c[i]) ? c[i](m) :=0A= new Template(c[i]).evaluate(m));=0A= e =3D e.replace(m[0], '');=0A= break;=0A= }=0A= }=0A= }=0A= =0A= this.matcher.push("return h.unique(n);\n}");=0A= eval(this.matcher.join('\n'));=0A= Selector._cache[this.expression] =3D this.matcher;=0A= },=0A= =0A= compileXPathMatcher: function() {=0A= var e =3D this.expression, ps =3D Selector.patterns,=0A= x =3D Selector.xpath, le, m;=0A= =0A= if (Selector._cache[e]) {=0A= this.xpath =3D Selector._cache[e]; return;=0A= }=0A= =0A= this.matcher =3D ['.//*'];=0A= while (e && le !=3D e && (/\S/).test(e)) {=0A= le =3D e;=0A= for (var i in ps) {=0A= if (m =3D e.match(ps[i])) {=0A= this.matcher.push(Object.isFunction(x[i]) ? x[i](m) :=0A= new Template(x[i]).evaluate(m));=0A= e =3D e.replace(m[0], '');=0A= break;=0A= }=0A= }=0A= }=0A= =0A= this.xpath =3D this.matcher.join('');=0A= Selector._cache[this.expression] =3D this.xpath;=0A= },=0A= =0A= findElements: function(root) {=0A= root =3D root || document;=0A= if (this.xpath) return document._getElementsByXPath(this.xpath, = root);=0A= return this.matcher(root);=0A= },=0A= =0A= match: function(element) {=0A= this.tokens =3D [];=0A= =0A= var e =3D this.expression, ps =3D Selector.patterns, as =3D = Selector.assertions;=0A= var le, p, m;=0A= =0A= while (e && le !=3D=3D e && (/\S/).test(e)) {=0A= le =3D e;=0A= for (var i in ps) {=0A= p =3D ps[i];=0A= if (m =3D e.match(p)) {=0A= // use the Selector.assertions methods unless the selector=0A= // is too complex.=0A= if (as[i]) {=0A= this.tokens.push([i, Object.clone(m)]);=0A= e =3D e.replace(m[0], '');=0A= } else {=0A= // reluctantly do a document-wide search=0A= // and look for a match in the array=0A= return this.findElements(document).include(element);=0A= }=0A= }=0A= }=0A= }=0A= =0A= var match =3D true, name, matches;=0A= for (var i =3D 0, token; token =3D this.tokens[i]; i++) {=0A= name =3D token[0], matches =3D token[1];=0A= if (!Selector.assertions[name](element, matches)) {=0A= match =3D false; break;=0A= }=0A= }=0A= =0A= return match;=0A= },=0A= =0A= toString: function() {=0A= return this.expression;=0A= },=0A= =0A= inspect: function() {=0A= return "#";=0A= }=0A= });=0A= =0A= Object.extend(Selector, {=0A= _cache: { },=0A= =0A= xpath: {=0A= descendant: "//*",=0A= child: "/*",=0A= adjacent: "/following-sibling::*[1]",=0A= laterSibling: '/following-sibling::*',=0A= tagName: function(m) {=0A= if (m[1] =3D=3D '*') return '';=0A= return "[local-name()=3D'" + m[1].toLowerCase() +=0A= "' or local-name()=3D'" + m[1].toUpperCase() + "']";=0A= },=0A= className: "[contains(concat(' ', @class, ' '), ' #{1} ')]",=0A= id: "[@id=3D'#{1}']",=0A= attrPresence: "[@#{1}]",=0A= attr: function(m) {=0A= m[3] =3D m[5] || m[6];=0A= return new Template(Selector.xpath.operators[m[2]]).evaluate(m);=0A= },=0A= pseudo: function(m) {=0A= var h =3D Selector.xpath.pseudos[m[1]];=0A= if (!h) return '';=0A= if (Object.isFunction(h)) return h(m);=0A= return new Template(Selector.xpath.pseudos[m[1]]).evaluate(m);=0A= },=0A= operators: {=0A= '=3D': "[@#{1}=3D'#{3}']",=0A= '!=3D': "[@#{1}!=3D'#{3}']",=0A= '^=3D': "[starts-with(@#{1}, '#{3}')]",=0A= '$=3D': "[substring(@#{1}, (string-length(@#{1}) - = string-length('#{3}') + 1))=3D'#{3}']",=0A= '*=3D': "[contains(@#{1}, '#{3}')]",=0A= '~=3D': "[contains(concat(' ', @#{1}, ' '), ' #{3} ')]",=0A= '|=3D': "[contains(concat('-', @#{1}, '-'), '-#{3}-')]"=0A= },=0A= pseudos: {=0A= 'first-child': '[not(preceding-sibling::*)]',=0A= 'last-child': '[not(following-sibling::*)]',=0A= 'only-child': '[not(preceding-sibling::* or = following-sibling::*)]',=0A= 'empty': "[count(*) =3D 0 and (count(text()) =3D 0 or = translate(text(), ' \t\r\n', '') =3D '')]",=0A= 'checked': "[@checked]",=0A= 'disabled': "[@disabled]",=0A= 'enabled': "[not(@disabled)]",=0A= 'not': function(m) {=0A= var e =3D m[6], p =3D Selector.patterns,=0A= x =3D Selector.xpath, le, m, v;=0A= =0A= var exclusion =3D [];=0A= while (e && le !=3D e && (/\S/).test(e)) {=0A= le =3D e;=0A= for (var i in p) {=0A= if (m =3D e.match(p[i])) {=0A= v =3D Object.isFunction(x[i]) ? x[i](m) : new = Template(x[i]).evaluate(m);=0A= exclusion.push("(" + v.substring(1, v.length - 1) + ")");=0A= e =3D e.replace(m[0], '');=0A= break;=0A= }=0A= }=0A= }=0A= return "[not(" + exclusion.join(" and ") + ")]";=0A= },=0A= 'nth-child': function(m) {=0A= return = Selector.xpath.pseudos.nth("(count(./preceding-sibling::*) + 1) ", m);=0A= },=0A= 'nth-last-child': function(m) {=0A= return = Selector.xpath.pseudos.nth("(count(./following-sibling::*) + 1) ", m);=0A= },=0A= 'nth-of-type': function(m) {=0A= return Selector.xpath.pseudos.nth("position() ", m);=0A= },=0A= 'nth-last-of-type': function(m) {=0A= return Selector.xpath.pseudos.nth("(last() + 1 - position()) ", = m);=0A= },=0A= 'first-of-type': function(m) {=0A= m[6] =3D "1"; return Selector.xpath.pseudos['nth-of-type'](m);=0A= },=0A= 'last-of-type': function(m) {=0A= m[6] =3D "1"; return = Selector.xpath.pseudos['nth-last-of-type'](m);=0A= },=0A= 'only-of-type': function(m) {=0A= var p =3D Selector.xpath.pseudos; return p['first-of-type'](m) + = p['last-of-type'](m);=0A= },=0A= nth: function(fragment, m) {=0A= var mm, formula =3D m[6], predicate;=0A= if (formula =3D=3D 'even') formula =3D '2n+0';=0A= if (formula =3D=3D 'odd') formula =3D '2n+1';=0A= if (mm =3D formula.match(/^(\d+)$/)) // digit only=0A= return '[' + fragment + "=3D " + mm[1] + ']';=0A= if (mm =3D formula.match(/^(-?\d*)?n(([+-])(\d+))?/)) { // an+b=0A= if (mm[1] =3D=3D "-") mm[1] =3D -1;=0A= var a =3D mm[1] ? Number(mm[1]) : 1;=0A= var b =3D mm[2] ? Number(mm[2]) : 0;=0A= predicate =3D "[((#{fragment} - #{b}) mod #{a} =3D 0) and " +=0A= "((#{fragment} - #{b}) div #{a} >=3D 0)]";=0A= return new Template(predicate).evaluate({=0A= fragment: fragment, a: a, b: b });=0A= }=0A= }=0A= }=0A= },=0A= =0A= criteria: {=0A= tagName: 'n =3D h.tagName(n, r, "#{1}", c); c =3D false;',=0A= className: 'n =3D h.className(n, r, "#{1}", c); c =3D false;',=0A= id: 'n =3D h.id(n, r, "#{1}", c); c =3D false;',=0A= attrPresence: 'n =3D h.attrPresence(n, r, "#{1}"); c =3D false;',=0A= attr: function(m) {=0A= m[3] =3D (m[5] || m[6]);=0A= return new Template('n =3D h.attr(n, r, "#{1}", "#{3}", "#{2}"); c = =3D false;').evaluate(m);=0A= },=0A= pseudo: function(m) {=0A= if (m[6]) m[6] =3D m[6].replace(/"/g, '\\"');=0A= return new Template('n =3D h.pseudo(n, "#{1}", "#{6}", r, c); c = =3D false;').evaluate(m);=0A= },=0A= descendant: 'c =3D "descendant";',=0A= child: 'c =3D "child";',=0A= adjacent: 'c =3D "adjacent";',=0A= laterSibling: 'c =3D "laterSibling";'=0A= },=0A= =0A= patterns: {=0A= // combinators must be listed first=0A= // (and descendant needs to be last combinator)=0A= laterSibling: /^\s*~\s*/,=0A= child: /^\s*>\s*/,=0A= adjacent: /^\s*\+\s*/,=0A= descendant: /^\s/,=0A= =0A= // selectors follow=0A= tagName: /^\s*(\*|[\w\-]+)(\b|$)?/,=0A= id: /^#([\w\-\*]+)(\b|$)/,=0A= className: /^\.([\w\-\*]+)(\b|$)/,=0A= pseudo: = /^:((first|last|nth|nth-last|only)(-child|-of-type)|empty|checked|(en|dis= )abled|not)(\((.*?)\))?(\b|$|(?=3D\s)|(?=3D:))/,=0A= attrPresence: /^\[([\w]+)\]/,=0A= attr: = /\[((?:[\w-]*:)?[\w-]+)\s*(?:([!^$*~|]?=3D)\s*((['"])([^\4]*?)\4|([^'"][^= \]]*?)))?\]/=0A= },=0A= =0A= // for Selector.match and Element#match=0A= assertions: {=0A= tagName: function(element, matches) {=0A= return matches[1].toUpperCase() =3D=3D = element.tagName.toUpperCase();=0A= },=0A= =0A= className: function(element, matches) {=0A= return Element.hasClassName(element, matches[1]);=0A= },=0A= =0A= id: function(element, matches) {=0A= return element.id =3D=3D=3D matches[1];=0A= },=0A= =0A= attrPresence: function(element, matches) {=0A= return Element.hasAttribute(element, matches[1]);=0A= },=0A= =0A= attr: function(element, matches) {=0A= var nodeValue =3D Element.readAttribute(element, matches[1]);=0A= return Selector.operators[matches[2]](nodeValue, matches[3]);=0A= }=0A= },=0A= =0A= handlers: {=0A= // UTILITY FUNCTIONS=0A= // joins two collections=0A= concat: function(a, b) {=0A= for (var i =3D 0, node; node =3D b[i]; i++)=0A= a.push(node);=0A= return a;=0A= },=0A= =0A= // marks an array of nodes for counting=0A= mark: function(nodes) {=0A= for (var i =3D 0, node; node =3D nodes[i]; i++)=0A= node._counted =3D true;=0A= return nodes;=0A= },=0A= =0A= unmark: function(nodes) {=0A= for (var i =3D 0, node; node =3D nodes[i]; i++)=0A= node._counted =3D undefined;=0A= return nodes;=0A= },=0A= =0A= // mark each child node with its position (for nth calls)=0A= // "ofType" flag indicates whether we're indexing for nth-of-type=0A= // rather than nth-child=0A= index: function(parentNode, reverse, ofType) {=0A= parentNode._counted =3D true;=0A= if (reverse) {=0A= for (var nodes =3D parentNode.childNodes, i =3D nodes.length - = 1, j =3D 1; i >=3D 0; i--) {=0A= var node =3D nodes[i];=0A= if (node.nodeType =3D=3D 1 && (!ofType || node._counted)) = node.nodeIndex =3D j++;=0A= }=0A= } else {=0A= for (var i =3D 0, j =3D 1, nodes =3D parentNode.childNodes; node = =3D nodes[i]; i++)=0A= if (node.nodeType =3D=3D 1 && (!ofType || node._counted)) = node.nodeIndex =3D j++;=0A= }=0A= },=0A= =0A= // filters out duplicates and extends all nodes=0A= unique: function(nodes) {=0A= if (nodes.length =3D=3D 0) return nodes;=0A= var results =3D [], n;=0A= for (var i =3D 0, l =3D nodes.length; i < l; i++)=0A= if (!(n =3D nodes[i])._counted) {=0A= n._counted =3D true;=0A= results.push(Element.extend(n));=0A= }=0A= return Selector.handlers.unmark(results);=0A= },=0A= =0A= // COMBINATOR FUNCTIONS=0A= descendant: function(nodes) {=0A= var h =3D Selector.handlers;=0A= for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++)=0A= h.concat(results, node.getElementsByTagName('*'));=0A= return results;=0A= },=0A= =0A= child: function(nodes) {=0A= var h =3D Selector.handlers;=0A= for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++) {=0A= for (var j =3D 0, children =3D [], child; child =3D = node.childNodes[j]; j++)=0A= if (child.nodeType =3D=3D 1 && child.tagName !=3D '!') = results.push(child);=0A= }=0A= return results;=0A= },=0A= =0A= adjacent: function(nodes) {=0A= for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++) {=0A= var next =3D this.nextElementSibling(node);=0A= if (next) results.push(next);=0A= }=0A= return results;=0A= },=0A= =0A= laterSibling: function(nodes) {=0A= var h =3D Selector.handlers;=0A= for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++)=0A= h.concat(results, Element.nextSiblings(node));=0A= return results;=0A= },=0A= =0A= nextElementSibling: function(node) {=0A= while (node =3D node.nextSibling)=0A= if (node.nodeType =3D=3D 1) return node;=0A= return null;=0A= },=0A= =0A= previousElementSibling: function(node) {=0A= while (node =3D node.previousSibling)=0A= if (node.nodeType =3D=3D 1) return node;=0A= return null;=0A= },=0A= =0A= // TOKEN FUNCTIONS=0A= tagName: function(nodes, root, tagName, combinator) {=0A= tagName =3D tagName.toUpperCase();=0A= var results =3D [], h =3D Selector.handlers;=0A= if (nodes) {=0A= if (combinator) {=0A= // fastlane for ordinary descendant combinators=0A= if (combinator =3D=3D "descendant") {=0A= for (var i =3D 0, node; node =3D nodes[i]; i++)=0A= h.concat(results, node.getElementsByTagName(tagName));=0A= return results;=0A= } else nodes =3D this[combinator](nodes);=0A= if (tagName =3D=3D "*") return nodes;=0A= }=0A= for (var i =3D 0, node; node =3D nodes[i]; i++)=0A= if (node.tagName.toUpperCase() =3D=3D tagName) = results.push(node);=0A= return results;=0A= } else return root.getElementsByTagName(tagName);=0A= },=0A= =0A= id: function(nodes, root, id, combinator) {=0A= var targetNode =3D $(id), h =3D Selector.handlers;=0A= if (!targetNode) return [];=0A= if (!nodes && root =3D=3D document) return [targetNode];=0A= if (nodes) {=0A= if (combinator) {=0A= if (combinator =3D=3D 'child') {=0A= for (var i =3D 0, node; node =3D nodes[i]; i++)=0A= if (targetNode.parentNode =3D=3D node) return [targetNode];=0A= } else if (combinator =3D=3D 'descendant') {=0A= for (var i =3D 0, node; node =3D nodes[i]; i++)=0A= if (Element.descendantOf(targetNode, node)) return = [targetNode];=0A= } else if (combinator =3D=3D 'adjacent') {=0A= for (var i =3D 0, node; node =3D nodes[i]; i++)=0A= if (Selector.handlers.previousElementSibling(targetNode) = =3D=3D node)=0A= return [targetNode];=0A= } else nodes =3D h[combinator](nodes);=0A= }=0A= for (var i =3D 0, node; node =3D nodes[i]; i++)=0A= if (node =3D=3D targetNode) return [targetNode];=0A= return [];=0A= }=0A= return (targetNode && Element.descendantOf(targetNode, root)) ? = [targetNode] : [];=0A= },=0A= =0A= className: function(nodes, root, className, combinator) {=0A= if (nodes && combinator) nodes =3D this[combinator](nodes);=0A= return Selector.handlers.byClassName(nodes, root, className);=0A= },=0A= =0A= byClassName: function(nodes, root, className) {=0A= if (!nodes) nodes =3D Selector.handlers.descendant([root]);=0A= var needle =3D ' ' + className + ' ';=0A= for (var i =3D 0, results =3D [], node, nodeClassName; node =3D = nodes[i]; i++) {=0A= nodeClassName =3D node.className;=0A= if (nodeClassName.length =3D=3D 0) continue;=0A= if (nodeClassName =3D=3D className || (' ' + nodeClassName + ' = ').include(needle))=0A= results.push(node);=0A= }=0A= return results;=0A= },=0A= =0A= attrPresence: function(nodes, root, attr) {=0A= if (!nodes) nodes =3D root.getElementsByTagName("*");=0A= var results =3D [];=0A= for (var i =3D 0, node; node =3D nodes[i]; i++)=0A= if (Element.hasAttribute(node, attr)) results.push(node);=0A= return results;=0A= },=0A= =0A= attr: function(nodes, root, attr, value, operator) {=0A= if (!nodes) nodes =3D root.getElementsByTagName("*");=0A= var handler =3D Selector.operators[operator], results =3D [];=0A= for (var i =3D 0, node; node =3D nodes[i]; i++) {=0A= var nodeValue =3D Element.readAttribute(node, attr);=0A= if (nodeValue =3D=3D=3D null) continue;=0A= if (handler(nodeValue, value)) results.push(node);=0A= }=0A= return results;=0A= },=0A= =0A= pseudo: function(nodes, name, value, root, combinator) {=0A= if (nodes && combinator) nodes =3D this[combinator](nodes);=0A= if (!nodes) nodes =3D root.getElementsByTagName("*");=0A= return Selector.pseudos[name](nodes, value, root);=0A= }=0A= },=0A= =0A= pseudos: {=0A= 'first-child': function(nodes, value, root) {=0A= for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++) {=0A= if (Selector.handlers.previousElementSibling(node)) continue;=0A= results.push(node);=0A= }=0A= return results;=0A= },=0A= 'last-child': function(nodes, value, root) {=0A= for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++) {=0A= if (Selector.handlers.nextElementSibling(node)) continue;=0A= results.push(node);=0A= }=0A= return results;=0A= },=0A= 'only-child': function(nodes, value, root) {=0A= var h =3D Selector.handlers;=0A= for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++)=0A= if (!h.previousElementSibling(node) && = !h.nextElementSibling(node))=0A= results.push(node);=0A= return results;=0A= },=0A= 'nth-child': function(nodes, formula, root) {=0A= return Selector.pseudos.nth(nodes, formula, root);=0A= },=0A= 'nth-last-child': function(nodes, formula, root) {=0A= return Selector.pseudos.nth(nodes, formula, root, true);=0A= },=0A= 'nth-of-type': function(nodes, formula, root) {=0A= return Selector.pseudos.nth(nodes, formula, root, false, true);=0A= },=0A= 'nth-last-of-type': function(nodes, formula, root) {=0A= return Selector.pseudos.nth(nodes, formula, root, true, true);=0A= },=0A= 'first-of-type': function(nodes, formula, root) {=0A= return Selector.pseudos.nth(nodes, "1", root, false, true);=0A= },=0A= 'last-of-type': function(nodes, formula, root) {=0A= return Selector.pseudos.nth(nodes, "1", root, true, true);=0A= },=0A= 'only-of-type': function(nodes, formula, root) {=0A= var p =3D Selector.pseudos;=0A= return p['last-of-type'](p['first-of-type'](nodes, formula, root), = formula, root);=0A= },=0A= =0A= // handles the an+b logic=0A= getIndices: function(a, b, total) {=0A= if (a =3D=3D 0) return b > 0 ? [b] : [];=0A= return $R(1, total).inject([], function(memo, i) {=0A= if (0 =3D=3D (i - b) % a && (i - b) / a >=3D 0) memo.push(i);=0A= return memo;=0A= });=0A= },=0A= =0A= // handles nth(-last)-child, nth(-last)-of-type, and = (first|last)-of-type=0A= nth: function(nodes, formula, root, reverse, ofType) {=0A= if (nodes.length =3D=3D 0) return [];=0A= if (formula =3D=3D 'even') formula =3D '2n+0';=0A= if (formula =3D=3D 'odd') formula =3D '2n+1';=0A= var h =3D Selector.handlers, results =3D [], indexed =3D [], m;=0A= h.mark(nodes);=0A= for (var i =3D 0, node; node =3D nodes[i]; i++) {=0A= if (!node.parentNode._counted) {=0A= h.index(node.parentNode, reverse, ofType);=0A= indexed.push(node.parentNode);=0A= }=0A= }=0A= if (formula.match(/^\d+$/)) { // just a number=0A= formula =3D Number(formula);=0A= for (var i =3D 0, node; node =3D nodes[i]; i++)=0A= if (node.nodeIndex =3D=3D formula) results.push(node);=0A= } else if (m =3D formula.match(/^(-?\d*)?n(([+-])(\d+))?/)) { // = an+b=0A= if (m[1] =3D=3D "-") m[1] =3D -1;=0A= var a =3D m[1] ? Number(m[1]) : 1;=0A= var b =3D m[2] ? Number(m[2]) : 0;=0A= var indices =3D Selector.pseudos.getIndices(a, b, nodes.length);=0A= for (var i =3D 0, node, l =3D indices.length; node =3D nodes[i]; = i++) {=0A= for (var j =3D 0; j < l; j++)=0A= if (node.nodeIndex =3D=3D indices[j]) results.push(node);=0A= }=0A= }=0A= h.unmark(nodes);=0A= h.unmark(indexed);=0A= return results;=0A= },=0A= =0A= 'empty': function(nodes, value, root) {=0A= for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++) {=0A= // IE treats comments as element nodes=0A= if (node.tagName =3D=3D '!' || (node.firstChild && = !node.innerHTML.match(/^\s*$/))) continue;=0A= results.push(node);=0A= }=0A= return results;=0A= },=0A= =0A= 'not': function(nodes, selector, root) {=0A= var h =3D Selector.handlers, selectorType, m;=0A= var exclusions =3D new Selector(selector).findElements(root);=0A= h.mark(exclusions);=0A= for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++)=0A= if (!node._counted) results.push(node);=0A= h.unmark(exclusions);=0A= return results;=0A= },=0A= =0A= 'enabled': function(nodes, value, root) {=0A= for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++)=0A= if (!node.disabled) results.push(node);=0A= return results;=0A= },=0A= =0A= 'disabled': function(nodes, value, root) {=0A= for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++)=0A= if (node.disabled) results.push(node);=0A= return results;=0A= },=0A= =0A= 'checked': function(nodes, value, root) {=0A= for (var i =3D 0, results =3D [], node; node =3D nodes[i]; i++)=0A= if (node.checked) results.push(node);=0A= return results;=0A= }=0A= },=0A= =0A= operators: {=0A= '=3D': function(nv, v) { return nv =3D=3D v; },=0A= '!=3D': function(nv, v) { return nv !=3D v; },=0A= '^=3D': function(nv, v) { return nv.startsWith(v); },=0A= '$=3D': function(nv, v) { return nv.endsWith(v); },=0A= '*=3D': function(nv, v) { return nv.include(v); },=0A= '~=3D': function(nv, v) { return (' ' + nv + ' ').include(' ' + v + = ' '); },=0A= '|=3D': function(nv, v) { return ('-' + nv.toUpperCase() + = '-').include('-' + v.toUpperCase() + '-'); }=0A= },=0A= =0A= matchElements: function(elements, expression) {=0A= var matches =3D new Selector(expression).findElements(), h =3D = Selector.handlers;=0A= h.mark(matches);=0A= for (var i =3D 0, results =3D [], element; element =3D elements[i]; = i++)=0A= if (element._counted) results.push(element);=0A= h.unmark(matches);=0A= return results;=0A= },=0A= =0A= findElement: function(elements, expression, index) {=0A= if (Object.isNumber(expression)) {=0A= index =3D expression; expression =3D false;=0A= }=0A= return Selector.matchElements(elements, expression || '*')[index || = 0];=0A= },=0A= =0A= findChildElements: function(element, expressions) {=0A= var exprs =3D expressions.join(','), expressions =3D [];=0A= exprs.scan(/(([\w#:.~>+()\s-]+|\*|\[.*?\])+)\s*(,|$)/, function(m) {=0A= expressions.push(m[1].strip());=0A= });=0A= var results =3D [], h =3D Selector.handlers;=0A= for (var i =3D 0, l =3D expressions.length, selector; i < l; i++) {=0A= selector =3D new Selector(expressions[i].strip());=0A= h.concat(results, selector.findElements(element));=0A= }=0A= return (l > 1) ? h.unique(results) : results;=0A= }=0A= });=0A= =0A= function $$() {=0A= return Selector.findChildElements(document, $A(arguments));=0A= }=0A= var Form =3D {=0A= reset: function(form) {=0A= $(form).reset();=0A= return form;=0A= },=0A= =0A= serializeElements: function(elements, options) {=0A= if (typeof options !=3D 'object') options =3D { hash: !!options };=0A= else if (options.hash =3D=3D=3D undefined) options.hash =3D true;=0A= var key, value, submitted =3D false, submit =3D options.submit;=0A= =0A= var data =3D elements.inject({ }, function(result, element) {=0A= if (!element.disabled && element.name) {=0A= key =3D element.name; value =3D $(element).getValue();=0A= if (value !=3D null && (element.type !=3D 'submit' || = (!submitted &&=0A= submit !=3D=3D false && (!submit || key =3D=3D submit) && = (submitted =3D true)))) {=0A= if (key in result) {=0A= // a key is already present; construct an array of values=0A= if (!Object.isArray(result[key])) result[key] =3D = [result[key]];=0A= result[key].push(value);=0A= }=0A= else result[key] =3D value;=0A= }=0A= }=0A= return result;=0A= });=0A= =0A= return options.hash ? data : Object.toQueryString(data);=0A= }=0A= };=0A= =0A= Form.Methods =3D {=0A= serialize: function(form, options) {=0A= return Form.serializeElements(Form.getElements(form), options);=0A= },=0A= =0A= getElements: function(form) {=0A= return $A($(form).getElementsByTagName('*')).inject([],=0A= function(elements, child) {=0A= if (Form.Element.Serializers[child.tagName.toLowerCase()])=0A= elements.push(Element.extend(child));=0A= return elements;=0A= }=0A= );=0A= },=0A= =0A= getInputs: function(form, typeName, name) {=0A= form =3D $(form);=0A= var inputs =3D form.getElementsByTagName('input');=0A= =0A= if (!typeName && !name) return $A(inputs).map(Element.extend);=0A= =0A= for (var i =3D 0, matchingInputs =3D [], length =3D inputs.length; i = < length; i++) {=0A= var input =3D inputs[i];=0A= if ((typeName && input.type !=3D typeName) || (name && input.name = !=3D name))=0A= continue;=0A= matchingInputs.push(Element.extend(input));=0A= }=0A= =0A= return matchingInputs;=0A= },=0A= =0A= disable: function(form) {=0A= form =3D $(form);=0A= Form.getElements(form).invoke('disable');=0A= return form;=0A= },=0A= =0A= enable: function(form) {=0A= form =3D $(form);=0A= Form.getElements(form).invoke('enable');=0A= return form;=0A= },=0A= =0A= findFirstElement: function(form) {=0A= var elements =3D $(form).getElements().findAll(function(element) {=0A= return 'hidden' !=3D element.type && !element.disabled;=0A= });=0A= var firstByIndex =3D elements.findAll(function(element) {=0A= return element.hasAttribute('tabIndex') && element.tabIndex >=3D 0;=0A= }).sortBy(function(element) { return element.tabIndex }).first();=0A= =0A= return firstByIndex ? firstByIndex : elements.find(function(element) = {=0A= return ['input', 'select', = 'textarea'].include(element.tagName.toLowerCase());=0A= });=0A= },=0A= =0A= focusFirstElement: function(form) {=0A= form =3D $(form);=0A= form.findFirstElement().activate();=0A= return form;=0A= },=0A= =0A= request: function(form, options) {=0A= form =3D $(form), options =3D Object.clone(options || { });=0A= =0A= var params =3D options.parameters, action =3D = form.readAttribute('action') || '';=0A= if (action.blank()) action =3D window.location.href;=0A= options.parameters =3D form.serialize(true);=0A= =0A= if (params) {=0A= if (Object.isString(params)) params =3D params.toQueryParams();=0A= Object.extend(options.parameters, params);=0A= }=0A= =0A= if (form.hasAttribute('method') && !options.method)=0A= options.method =3D form.method;=0A= =0A= return new Ajax.Request(action, options);=0A= }=0A= };=0A= =0A= /*-----------------------------------------------------------------------= ---*/=0A= =0A= Form.Element =3D {=0A= focus: function(element) {=0A= $(element).focus();=0A= return element;=0A= },=0A= =0A= select: function(element) {=0A= $(element).select();=0A= return element;=0A= }=0A= };=0A= =0A= Form.Element.Methods =3D {=0A= serialize: function(element) {=0A= element =3D $(element);=0A= if (!element.disabled && element.name) {=0A= var value =3D element.getValue();=0A= if (value !=3D undefined) {=0A= var pair =3D { };=0A= pair[element.name] =3D value;=0A= return Object.toQueryString(pair);=0A= }=0A= }=0A= return '';=0A= },=0A= =0A= getValue: function(element) {=0A= element =3D $(element);=0A= var method =3D element.tagName.toLowerCase();=0A= return Form.Element.Serializers[method](element);=0A= },=0A= =0A= setValue: function(element, value) {=0A= element =3D $(element);=0A= var method =3D element.tagName.toLowerCase();=0A= Form.Element.Serializers[method](element, value);=0A= return element;=0A= },=0A= =0A= clear: function(element) {=0A= $(element).value =3D '';=0A= return element;=0A= },=0A= =0A= present: function(element) {=0A= return $(element).value !=3D '';=0A= },=0A= =0A= activate: function(element) {=0A= element =3D $(element);=0A= try {=0A= element.focus();=0A= if (element.select && (element.tagName.toLowerCase() !=3D 'input' = ||=0A= !['button', 'reset', 'submit'].include(element.type)))=0A= element.select();=0A= } catch (e) { }=0A= return element;=0A= },=0A= =0A= disable: function(element) {=0A= element =3D $(element);=0A= element.blur();=0A= element.disabled =3D true;=0A= return element;=0A= },=0A= =0A= enable: function(element) {=0A= element =3D $(element);=0A= element.disabled =3D false;=0A= return element;=0A= }=0A= };=0A= =0A= /*-----------------------------------------------------------------------= ---*/=0A= =0A= var Field =3D Form.Element;=0A= var $F =3D Form.Element.Methods.getValue;=0A= =0A= /*-----------------------------------------------------------------------= ---*/=0A= =0A= Form.Element.Serializers =3D {=0A= input: function(element, value) {=0A= switch (element.type.toLowerCase()) {=0A= case 'checkbox':=0A= case 'radio':=0A= return Form.Element.Serializers.inputSelector(element, value);=0A= default:=0A= return Form.Element.Serializers.textarea(element, value);=0A= }=0A= },=0A= =0A= inputSelector: function(element, value) {=0A= if (value =3D=3D=3D undefined) return element.checked ? = element.value : null;=0A= else element.checked =3D !!value;=0A= },=0A= =0A= textarea: function(element, value) {=0A= if (value =3D=3D=3D undefined) return element.value;=0A= else element.value =3D value;=0A= },=0A= =0A= select: function(element, index) {=0A= if (index =3D=3D=3D undefined)=0A= return this[element.type =3D=3D 'select-one' ?=0A= 'selectOne' : 'selectMany'](element);=0A= else {=0A= var opt, value, single =3D !Object.isArray(index);=0A= for (var i =3D 0, length =3D element.length; i < length; i++) {=0A= opt =3D element.options[i];=0A= value =3D this.optionValue(opt);=0A= if (single) {=0A= if (value =3D=3D index) {=0A= opt.selected =3D true;=0A= return;=0A= }=0A= }=0A= else opt.selected =3D index.include(value);=0A= }=0A= }=0A= },=0A= =0A= selectOne: function(element) {=0A= var index =3D element.selectedIndex;=0A= return index >=3D 0 ? this.optionValue(element.options[index]) : = null;=0A= },=0A= =0A= selectMany: function(element) {=0A= var values, length =3D element.length;=0A= if (!length) return null;=0A= =0A= for (var i =3D 0, values =3D []; i < length; i++) {=0A= var opt =3D element.options[i];=0A= if (opt.selected) values.push(this.optionValue(opt));=0A= }=0A= return values;=0A= },=0A= =0A= optionValue: function(opt) {=0A= // extend element because hasAttribute may not be native=0A= return Element.extend(opt).hasAttribute('value') ? opt.value : = opt.text;=0A= }=0A= };=0A= =0A= /*-----------------------------------------------------------------------= ---*/=0A= =0A= Abstract.TimedObserver =3D Class.create(PeriodicalExecuter, {=0A= initialize: function($super, element, frequency, callback) {=0A= $super(callback, frequency);=0A= this.element =3D $(element);=0A= this.lastValue =3D this.getValue();=0A= },=0A= =0A= execute: function() {=0A= var value =3D this.getValue();=0A= if (Object.isString(this.lastValue) && Object.isString(value) ?=0A= this.lastValue !=3D value : String(this.lastValue) !=3D = String(value)) {=0A= this.callback(this.element, value);=0A= this.lastValue =3D value;=0A= }=0A= }=0A= });=0A= =0A= Form.Element.Observer =3D Class.create(Abstract.TimedObserver, {=0A= getValue: function() {=0A= return Form.Element.getValue(this.element);=0A= }=0A= });=0A= =0A= Form.Observer =3D Class.create(Abstract.TimedObserver, {=0A= getValue: function() {=0A= return Form.serialize(this.element);=0A= }=0A= });=0A= =0A= /*-----------------------------------------------------------------------= ---*/=0A= =0A= Abstract.EventObserver =3D Class.create({=0A= initialize: function(element, callback) {=0A= this.element =3D $(element);=0A= this.callback =3D callback;=0A= =0A= this.lastValue =3D this.getValue();=0A= if (this.element.tagName.toLowerCase() =3D=3D 'form')=0A= this.registerFormCallbacks();=0A= else=0A= this.registerCallback(this.element);=0A= },=0A= =0A= onElementEvent: function() {=0A= var value =3D this.getValue();=0A= if (this.lastValue !=3D value) {=0A= this.callback(this.element, value);=0A= this.lastValue =3D value;=0A= }=0A= },=0A= =0A= registerFormCallbacks: function() {=0A= Form.getElements(this.element).each(this.registerCallback, this);=0A= },=0A= =0A= registerCallback: function(element) {=0A= if (element.type) {=0A= switch (element.type.toLowerCase()) {=0A= case 'checkbox':=0A= case 'radio':=0A= Event.observe(element, 'click', = this.onElementEvent.bind(this));=0A= break;=0A= default:=0A= Event.observe(element, 'change', = this.onElementEvent.bind(this));=0A= break;=0A= }=0A= }=0A= }=0A= });=0A= =0A= Form.Element.EventObserver =3D Class.create(Abstract.EventObserver, {=0A= getValue: function() {=0A= return Form.Element.getValue(this.element);=0A= }=0A= });=0A= =0A= Form.EventObserver =3D Class.create(Abstract.EventObserver, {=0A= getValue: function() {=0A= return Form.serialize(this.element);=0A= }=0A= });=0A= if (!window.Event) var Event =3D { };=0A= =0A= Object.extend(Event, {=0A= KEY_BACKSPACE: 8,=0A= KEY_TAB: 9,=0A= KEY_RETURN: 13,=0A= KEY_ESC: 27,=0A= KEY_LEFT: 37,=0A= KEY_UP: 38,=0A= KEY_RIGHT: 39,=0A= KEY_DOWN: 40,=0A= KEY_DELETE: 46,=0A= KEY_HOME: 36,=0A= KEY_END: 35,=0A= KEY_PAGEUP: 33,=0A= KEY_PAGEDOWN: 34,=0A= KEY_INSERT: 45,=0A= =0A= cache: { },=0A= =0A= relatedTarget: function(event) {=0A= var element;=0A= switch(event.type) {=0A= case 'mouseover': element =3D event.fromElement; break;=0A= case 'mouseout': element =3D event.toElement; break;=0A= default: return null;=0A= }=0A= return Element.extend(element);=0A= }=0A= });=0A= =0A= Event.Methods =3D (function() {=0A= var isButton;=0A= =0A= if (Prototype.Browser.IE) {=0A= var buttonMap =3D { 0: 1, 1: 4, 2: 2 };=0A= isButton =3D function(event, code) {=0A= return event.button =3D=3D buttonMap[code];=0A= };=0A= =0A= } else if (Prototype.Browser.WebKit) {=0A= isButton =3D function(event, code) {=0A= switch (code) {=0A= case 0: return event.which =3D=3D 1 && !event.metaKey;=0A= case 1: return event.which =3D=3D 1 && event.metaKey;=0A= default: return false;=0A= }=0A= };=0A= =0A= } else {=0A= isButton =3D function(event, code) {=0A= return event.which ? (event.which =3D=3D=3D code + 1) : = (event.button =3D=3D=3D code);=0A= };=0A= }=0A= =0A= return {=0A= isLeftClick: function(event) { return isButton(event, 0) },=0A= isMiddleClick: function(event) { return isButton(event, 1) },=0A= isRightClick: function(event) { return isButton(event, 2) },=0A= =0A= element: function(event) {=0A= var node =3D Event.extend(event).target;=0A= return Element.extend(node.nodeType =3D=3D Node.TEXT_NODE ? = node.parentNode : node);=0A= },=0A= =0A= findElement: function(event, expression) {=0A= var element =3D Event.element(event);=0A= return element.match(expression) ? element : = element.up(expression);=0A= },=0A= =0A= pointer: function(event) {=0A= return {=0A= x: event.pageX || (event.clientX +=0A= (document.documentElement.scrollLeft || = document.body.scrollLeft)),=0A= y: event.pageY || (event.clientY +=0A= (document.documentElement.scrollTop || = document.body.scrollTop))=0A= };=0A= },=0A= =0A= pointerX: function(event) { return Event.pointer(event).x },=0A= pointerY: function(event) { return Event.pointer(event).y },=0A= =0A= stop: function(event) {=0A= Event.extend(event);=0A= event.preventDefault();=0A= event.stopPropagation();=0A= event.stopped =3D true;=0A= }=0A= };=0A= })();=0A= =0A= Event.extend =3D (function() {=0A= var methods =3D Object.keys(Event.Methods).inject({ }, function(m, = name) {=0A= m[name] =3D Event.Methods[name].methodize();=0A= return m;=0A= });=0A= =0A= if (Prototype.Browser.IE) {=0A= Object.extend(methods, {=0A= stopPropagation: function() { this.cancelBubble =3D true },=0A= preventDefault: function() { this.returnValue =3D false },=0A= inspect: function() { return "[object Event]" }=0A= });=0A= =0A= return function(event) {=0A= if (!event) return false;=0A= if (event._extendedByPrototype) return event;=0A= =0A= event._extendedByPrototype =3D Prototype.emptyFunction;=0A= var pointer =3D Event.pointer(event);=0A= Object.extend(event, {=0A= target: event.srcElement,=0A= relatedTarget: Event.relatedTarget(event),=0A= pageX: pointer.x,=0A= pageY: pointer.y=0A= });=0A= return Object.extend(event, methods);=0A= };=0A= =0A= } else {=0A= Event.prototype =3D Event.prototype || = document.createEvent("HTMLEvents").__proto__;=0A= Object.extend(Event.prototype, methods);=0A= return Prototype.K;=0A= }=0A= })();=0A= =0A= Object.extend(Event, (function() {=0A= var cache =3D Event.cache;=0A= =0A= function getEventID(element) {=0A= if (element._eventID) return element._eventID;=0A= arguments.callee.id =3D arguments.callee.id || 1;=0A= return element._eventID =3D ++arguments.callee.id;=0A= }=0A= =0A= function getDOMEventName(eventName) {=0A= if (eventName && eventName.include(':')) return "dataavailable";=0A= return eventName;=0A= }=0A= =0A= function getCacheForID(id) {=0A= return cache[id] =3D cache[id] || { };=0A= }=0A= =0A= function getWrappersForEventName(id, eventName) {=0A= var c =3D getCacheForID(id);=0A= return c[eventName] =3D c[eventName] || [];=0A= }=0A= =0A= function createWrapper(element, eventName, handler) {=0A= var id =3D getEventID(element);=0A= var c =3D getWrappersForEventName(id, eventName);=0A= if (c.pluck("handler").include(handler)) return false;=0A= =0A= var wrapper =3D function(event) {=0A= if (!Event || !Event.extend ||=0A= (event.eventName && event.eventName !=3D eventName))=0A= return false;=0A= =0A= Event.extend(event);=0A= handler.call(element, event)=0A= };=0A= =0A= wrapper.handler =3D handler;=0A= c.push(wrapper);=0A= return wrapper;=0A= }=0A= =0A= function findWrapper(id, eventName, handler) {=0A= var c =3D getWrappersForEventName(id, eventName);=0A= return c.find(function(wrapper) { return wrapper.handler =3D=3D = handler });=0A= }=0A= =0A= function destroyWrapper(id, eventName, handler) {=0A= var c =3D getCacheForID(id);=0A= if (!c[eventName]) return false;=0A= c[eventName] =3D c[eventName].without(findWrapper(id, eventName, = handler));=0A= }=0A= =0A= function destroyCache() {=0A= for (var id in cache)=0A= for (var eventName in cache[id])=0A= cache[id][eventName] =3D null;=0A= }=0A= =0A= if (window.attachEvent) {=0A= window.attachEvent("onunload", destroyCache);=0A= }=0A= =0A= return {=0A= observe: function(element, eventName, handler) {=0A= element =3D $(element);=0A= var name =3D getDOMEventName(eventName);=0A= =0A= var wrapper =3D createWrapper(element, eventName, handler);=0A= if (!wrapper) return element;=0A= =0A= if (element.addEventListener) {=0A= element.addEventListener(name, wrapper, false);=0A= } else {=0A= element.attachEvent("on" + name, wrapper);=0A= }=0A= =0A= return element;=0A= },=0A= =0A= stopObserving: function(element, eventName, handler) {=0A= element =3D $(element);=0A= var id =3D getEventID(element), name =3D = getDOMEventName(eventName);=0A= =0A= if (!handler && eventName) {=0A= getWrappersForEventName(id, eventName).each(function(wrapper) {=0A= element.stopObserving(eventName, wrapper.handler);=0A= });=0A= return element;=0A= =0A= } else if (!eventName) {=0A= Object.keys(getCacheForID(id)).each(function(eventName) {=0A= element.stopObserving(eventName);=0A= });=0A= return element;=0A= }=0A= =0A= var wrapper =3D findWrapper(id, eventName, handler);=0A= if (!wrapper) return element;=0A= =0A= if (element.removeEventListener) {=0A= element.removeEventListener(name, wrapper, false);=0A= } else {=0A= element.detachEvent("on" + name, wrapper);=0A= }=0A= =0A= destroyWrapper(id, eventName, handler);=0A= =0A= return element;=0A= },=0A= =0A= fire: function(element, eventName, memo) {=0A= element =3D $(element);=0A= if (element =3D=3D document && document.createEvent && = !element.dispatchEvent)=0A= element =3D document.documentElement;=0A= =0A= if (document.createEvent) {=0A= var event =3D document.createEvent("HTMLEvents");=0A= event.initEvent("dataavailable", true, true);=0A= } else {=0A= var event =3D document.createEventObject();=0A= event.eventType =3D "ondataavailable";=0A= }=0A= =0A= event.eventName =3D eventName;=0A= event.memo =3D memo || { };=0A= =0A= if (document.createEvent) {=0A= element.dispatchEvent(event);=0A= } else {=0A= element.fireEvent(event.eventType, event);=0A= }=0A= =0A= return event;=0A= }=0A= };=0A= })());=0A= =0A= Object.extend(Event, Event.Methods);=0A= =0A= Element.addMethods({=0A= fire: Event.fire,=0A= observe: Event.observe,=0A= stopObserving: Event.stopObserving=0A= });=0A= =0A= Object.extend(document, {=0A= fire: Element.Methods.fire.methodize(),=0A= observe: Element.Methods.observe.methodize(),=0A= stopObserving: Element.Methods.stopObserving.methodize()=0A= });=0A= =0A= (function() {=0A= /* Support for the DOMContentLoaded event is based on work by Dan Webb,=0A= Matthias Miller, Dean Edwards and John Resig. */=0A= =0A= var timer, fired =3D false;=0A= =0A= function fireContentLoadedEvent() {=0A= if (fired) return;=0A= if (timer) window.clearInterval(timer);=0A= document.fire("dom:loaded");=0A= fired =3D true;=0A= }=0A= =0A= if (document.addEventListener) {=0A= if (Prototype.Browser.WebKit) {=0A= timer =3D window.setInterval(function() {=0A= if (/loaded|complete/.test(document.readyState))=0A= fireContentLoadedEvent();=0A= }, 0);=0A= =0A= Event.observe(window, "load", fireContentLoadedEvent);=0A= =0A= } else {=0A= document.addEventListener("DOMContentLoaded",=0A= fireContentLoadedEvent, false);=0A= }=0A= =0A= } else {=0A= document.write("=0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A=
=0A= =0A= =0A= =0A= =0A= =0A= =0A=
=0A=
=0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A=
=0A= =0A=
=0A= =0A=
=0A= =0A=
=0A= =0A=
=0A=
=0A= =0A= 3D"Columbus=0A= =0A=
=0A=
=0A= =0A=
=0A= =0A= =0A= =0A= =0A= =0A= =0A=
=0A= =0A=
=0A= =0A= =0A= =0A=
=0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A=
=0A= =0A= =0A=
=0A= =0A=
=0A=
=0A=
=0A= Search=0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A=
=0A=
=0A=
=0A= =0A=
=0A= =0A= =0A= =0A= Logout | Member Center=0A= | Plac= e a Classified Ad=0A= =0A= =0A=
=0A=
=0A= =0A=
=0A= =0A=
=0A=
=0A= =0A=
=0A=
=0A=
=0A= =0A=
=0A= =0A=
=0A=
=0A= =0A= =0A= =0A= =0A=

Unfortunately we are unable to locate the = page you have requested. This could be due to content on our site having = expired, a broken link, an outdated bookmark, or a mistyped address. = Please use the navigation provided on this page, or click = here to visit our home page.

=0A= =0A= =0A= =0A= =0A= =0A= =0A=
=0A=
=0A= =0A=
=0A=
=0A= =0A=
=0A= =0A=
=0A= =0A= =0A= =0A= =0A= =0A=
=0A= =0A= =0A=
=0A= =0A= =0A=
=0A= =0A= =0A= =0A= =0A= =0A=
=0A=
COLUMBUS TOP JOBS
=0A= =0A=
    =0A= =0A= =0A=
    =0A=
    =0A= 3D"Quick=0A=
    =0A= =0A= = =0A= =0A= =0A=
    Enter Keyword(s):
    =0A= =0A=
    Enter a City:
    =0A= =0A=
    Select a State:
    =0A= =0A=
    =0A= =0A=
    Select a Category:
    =0A= =0A= =0A= =0A=
    =0A= =0A=
    =0A=
    =0A=
    =0A=
    =0A=
    =0A=
    =0A= All Top Jobs  »=0A=
    =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A=
    =0A= =0A=
    =0A= =0A= =0A= =0A=
    =0A= =0A= =0A= =0A=
    =0A= =0A= =0A= =0A= =0A= =0A=
    =0A= =0A= =0A= =0A=
    =0A= =0A= =0A=
    =0A= =0A= =0A= =0A=
    =0A= =0A=
    =0A= =0A=
    =0A= =0A= =0A= =0A= =0A= =0A=
    =0A= =0A= =0A=
    =0A= =0A= =0A= =0A= =0A=
    =0A= =0A=
    =0A=
    =0A=
    =0A= View All »=0A= Top Jobs=0A=
    =0A=
    =0A=
    =0A=
      =0A=
      =0A= =0A= =0A=
      =0A=
      =0A=
      Quick Job = Search
      =0A=
      =0A=
      =0A= =0A= =0A= =0A=
      =0A= =0A= =0A=
      =0A=
      =0A= =0A= =0A= =0A= =0A=
      =0A=
      =0A= =0A= =0A=
      =0A=
      =0A= =0A=
      =0A= =0A=
      =0A=
      =0A=
      =0A=
      =0A= =0A=
      =0A=
      =0A=
      =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A= =0A=
      =0A=
      =0A= =0A=
      =0A= =0A= =0A= =0A= =0A= =0A= =0A=
      =0A= =0A= =0A= =0A= =0A= =0A=
      =0A= =0A=
      =0A= =0A= 3D"Visit=0A= =0A= =0A= =0A= =0A=
      =0A= =0A= =0A= =0A=
      =0A= =0A= =0A= =0A= =0A= =0A= =0A= ");B=3Ddocument.getElementById("_yui_eu_dr");}if(B= ){B.onreadystatechange=3Dfunction(){if("complete"=3D=3D=3Dthis.readyState= ){this.parentNode.removeChild(this);YAHOO.util.Event._ready();}};}else{}B= =3Dnull;}else{if(D.webkit){D._drwatch=3DsetInterval(function(){var = F=3Ddocument.readyState;if("loaded"=3D=3DF||"complete"=3D=3DF){clearInter= val(D._drwatch);D._drwatch=3Dnull;D._ready();}},D.POLL_INTERVAL);}else{D.= _simpleAdd(document,"DOMContentLoaded",D._ready);}}D._simpleAdd(window,"l= oad",D._load);D._simpleAdd(window,"unload",D._unload);D._tryPreloadAttach= ();})();}YAHOO.util.EventProvider=3Dfunction(){};YAHOO.util.EventProvider= .prototype=3D{__yui_events:null,__yui_subscribers:null,subscribe:function= (A,C,F,E){this.__yui_events=3Dthis.__yui_events||{};var = D=3Dthis.__yui_events[A];if(D){D.subscribe(C,F,E);}else{this.__yui_subscr= ibers=3Dthis.__yui_subscribers||{};var = B=3Dthis.__yui_subscribers;if(!B[A]){B[A]=3D[];}B[A].push({fn:C,obj:F,ove= rride:E});}},unsubscribe:function(C,E,G){this.__yui_events=3Dthis.__yui_e= vents||{};var A=3Dthis.__yui_events;if(C){var F=3DA[C];if(F){return = F.unsubscribe(E,G);}}else{var B=3Dtrue;for(var D in = A){if(YAHOO.lang.hasOwnProperty(A,D)){B=3DB&&A[D].unsubscribe(E,G);}}retu= rn B;}return false;},unsubscribeAll:function(A){return = this.unsubscribe(A);},createEvent:function(G,D){this.__yui_events=3Dthis.= __yui_events||{};=0A= var A=3DD||{};var I=3Dthis.__yui_events;if(I[G]){}else{var = H=3DA.scope||this;var E=3D(A.silent);var B=3Dnew = YAHOO.util.CustomEvent(G,H,E,YAHOO.util.CustomEvent.FLAT);I[G]=3DB;if(A.o= nSubscribeCallback){B.subscribeEvent.subscribe(A.onSubscribeCallback);}th= is.__yui_subscribers=3Dthis.__yui_subscribers||{};var = F=3Dthis.__yui_subscribers[G];if(F){for(var = C=3D0;CUsage: var myAnim =3D new YAHOO.util.Anim(el, { width: { from: 10, = to: 100 } }, 1, YAHOO.util.Easing.easeOut);

      =0A= * @class Anim=0A= * @namespace YAHOO.util=0A= * @requires YAHOO.util.AnimMgr=0A= * @requires YAHOO.util.Easing=0A= * @requires YAHOO.util.Dom=0A= * @requires YAHOO.util.Event=0A= * @requires YAHOO.util.CustomEvent=0A= * @constructor=0A= * @param {String | HTMLElement} el Reference to the element that will = be animated=0A= * @param {Object} attributes The attribute(s) to be animated. =0A= * Each attribute is an object with at minimum a "to" or "by" member = defined. =0A= * Additional optional members are "from" (defaults to current value), = "units" (defaults to "px"). =0A= * All attribute names use camelCase.=0A= * @param {Number} duration (optional, defaults to 1 second) Length of = animation (frames or seconds), defaults to time-based=0A= * @param {Function} method (optional, defaults to = YAHOO.util.Easing.easeNone) Computes the values that are applied to the = attributes per frame (generally a YAHOO.util.Easing method)=0A= */=0A= =0A= YAHOO.util.Anim =3D function(el, attributes, duration, method) {=0A= if (!el) {=0A= }=0A= this.init(el, attributes, duration, method); =0A= };=0A= =0A= YAHOO.util.Anim.prototype =3D {=0A= /**=0A= * Provides a readable name for the Anim instance.=0A= * @method toString=0A= * @return {String}=0A= */=0A= toString: function() {=0A= var el =3D this.getEl();=0A= var id =3D el.id || el.tagName || el;=0A= return ("Anim " + id);=0A= },=0A= =0A= patterns: { // cached for performance=0A= noNegatives: /width|height|opacity|padding/i, // keep at = zero or above=0A= offsetAttribute: /^((width|height)|(top|left))$/, // use = offsetValue as default=0A= defaultUnit: /width|height|top$|bottom$|left$|right$/i, = // use 'px' by default=0A= offsetUnit: /\d+(em|%|en|ex|pt|in|cm|mm|pc)$/i // IE may = return these, so convert these to offset=0A= },=0A= =0A= /**=0A= * Returns the value computed by the animation's "method".=0A= * @method doMethod=0A= * @param {String} attr The name of the attribute.=0A= * @param {Number} start The value this attribute should start from = for this animation.=0A= * @param {Number} end The value this attribute should end at for = this animation.=0A= * @return {Number} The Value to be applied to the attribute.=0A= */=0A= doMethod: function(attr, start, end) {=0A= return this.method(this.currentFrame, start, end - start, = this.totalFrames);=0A= },=0A= =0A= /**=0A= * Applies a value to an attribute.=0A= * @method setAttribute=0A= * @param {String} attr The name of the attribute.=0A= * @param {Number} val The value to be applied to the attribute.=0A= * @param {String} unit The unit ('px', '%', etc.) of the value.=0A= */=0A= setAttribute: function(attr, val, unit) {=0A= if ( this.patterns.noNegatives.test(attr) ) {=0A= val =3D (val > 0) ? val : 0;=0A= }=0A= =0A= YAHOO.util.Dom.setStyle(this.getEl(), attr, val + unit);=0A= }, =0A= =0A= /**=0A= * Returns current value of the attribute.=0A= * @method getAttribute=0A= * @param {String} attr The name of the attribute.=0A= * @return {Number} val The current value of the attribute.=0A= */=0A= getAttribute: function(attr) {=0A= var el =3D this.getEl();=0A= var val =3D YAHOO.util.Dom.getStyle(el, attr);=0A= =0A= if (val !=3D=3D 'auto' && !this.patterns.offsetUnit.test(val)) {=0A= return parseFloat(val);=0A= }=0A= =0A= var a =3D this.patterns.offsetAttribute.exec(attr) || [];=0A= var pos =3D !!( a[3] ); // top or left=0A= var box =3D !!( a[2] ); // width or height=0A= =0A= // use offsets for width/height and abs pos top/left=0A= if ( box || (YAHOO.util.Dom.getStyle(el, 'position') =3D=3D = 'absolute' && pos) ) {=0A= val =3D el['offset' + a[0].charAt(0).toUpperCase() + = a[0].substr(1)];=0A= } else { // default to zero for other 'auto'=0A= val =3D 0;=0A= }=0A= =0A= return val;=0A= },=0A= =0A= /**=0A= * Returns the unit to use when none is supplied.=0A= * @method getDefaultUnit=0A= * @param {attr} attr The name of the attribute.=0A= * @return {String} The default unit to be used.=0A= */=0A= getDefaultUnit: function(attr) {=0A= if ( this.patterns.defaultUnit.test(attr) ) {=0A= return 'px';=0A= }=0A= =0A= return '';=0A= },=0A= =0A= /**=0A= * Sets the actual values to be used during the animation. Should = only be needed for subclass use.=0A= * @method setRuntimeAttribute=0A= * @param {Object} attr The attribute object=0A= * @private =0A= */=0A= setRuntimeAttribute: function(attr) {=0A= var start;=0A= var end;=0A= var attributes =3D this.attributes;=0A= =0A= this.runtimeAttributes[attr] =3D {};=0A= =0A= var isset =3D function(prop) {=0A= return (typeof prop !=3D=3D 'undefined');=0A= };=0A= =0A= if ( !isset(attributes[attr]['to']) && = !isset(attributes[attr]['by']) ) {=0A= return false; // note return; nothing to animate to=0A= }=0A= =0A= start =3D ( isset(attributes[attr]['from']) ) ? = attributes[attr]['from'] : this.getAttribute(attr);=0A= =0A= // To beats by, per SMIL 2.1 spec=0A= if ( isset(attributes[attr]['to']) ) {=0A= end =3D attributes[attr]['to'];=0A= } else if ( isset(attributes[attr]['by']) ) {=0A= if (start.constructor =3D=3D Array) {=0A= end =3D [];=0A= for (var i =3D 0, len =3D start.length; i < len; ++i) {=0A= end[i] =3D start[i] + attributes[attr]['by'][i] * 1; = // times 1 to cast "by" =0A= }=0A= } else {=0A= end =3D start + attributes[attr]['by'] * 1;=0A= }=0A= }=0A= =0A= this.runtimeAttributes[attr].start =3D start;=0A= this.runtimeAttributes[attr].end =3D end;=0A= =0A= // set units if needed=0A= this.runtimeAttributes[attr].unit =3D ( = isset(attributes[attr].unit) ) ?=0A= attributes[attr]['unit'] : this.getDefaultUnit(attr);=0A= return true;=0A= },=0A= =0A= /**=0A= * Constructor for Anim instance.=0A= * @method init=0A= * @param {String | HTMLElement} el Reference to the element that = will be animated=0A= * @param {Object} attributes The attribute(s) to be animated. =0A= * Each attribute is an object with at minimum a "to" or "by" member = defined. =0A= * Additional optional members are "from" (defaults to current = value), "units" (defaults to "px"). =0A= * All attribute names use camelCase.=0A= * @param {Number} duration (optional, defaults to 1 second) Length = of animation (frames or seconds), defaults to time-based=0A= * @param {Function} method (optional, defaults to = YAHOO.util.Easing.easeNone) Computes the values that are applied to the = attributes per frame (generally a YAHOO.util.Easing method)=0A= */ =0A= init: function(el, attributes, duration, method) {=0A= /**=0A= * Whether or not the animation is running.=0A= * @property isAnimated=0A= * @private=0A= * @type Boolean=0A= */=0A= var isAnimated =3D false;=0A= =0A= /**=0A= * A Date object that is created when the animation begins.=0A= * @property startTime=0A= * @private=0A= * @type Date=0A= */=0A= var startTime =3D null;=0A= =0A= /**=0A= * The number of frames this animation was able to execute.=0A= * @property actualFrames=0A= * @private=0A= * @type Int=0A= */=0A= var actualFrames =3D 0; =0A= =0A= /**=0A= * The element to be animated.=0A= * @property el=0A= * @private=0A= * @type HTMLElement=0A= */=0A= el =3D YAHOO.util.Dom.get(el);=0A= =0A= /**=0A= * The collection of attributes to be animated. =0A= * Each attribute must have at least a "to" or "by" defined in = order to animate. =0A= * If "to" is supplied, the animation will end with the = attribute at that value. =0A= * If "by" is supplied, the animation will end at that value = plus its starting value. =0A= * If both are supplied, "to" is used, and "by" is ignored. =0A= * Optional additional member include "from" (the value the = attribute should start animating from, defaults to current value), and = "unit" (the units to apply to the values).=0A= * @property attributes=0A= * @type Object=0A= */=0A= this.attributes =3D attributes || {};=0A= =0A= /**=0A= * The length of the animation. Defaults to "1" (second).=0A= * @property duration=0A= * @type Number=0A= */=0A= this.duration =3D !YAHOO.lang.isUndefined(duration) ? duration : = 1;=0A= =0A= /**=0A= * The method that will provide values to the attribute(s) = during the animation. =0A= * Defaults to "YAHOO.util.Easing.easeNone".=0A= * @property method=0A= * @type Function=0A= */=0A= this.method =3D method || YAHOO.util.Easing.easeNone;=0A= =0A= /**=0A= * Whether or not the duration should be treated as seconds.=0A= * Defaults to true.=0A= * @property useSeconds=0A= * @type Boolean=0A= */=0A= this.useSeconds =3D true; // default to seconds=0A= =0A= /**=0A= * The location of the current animation on the timeline.=0A= * In time-based animations, this is used by AnimMgr to ensure = the animation finishes on time.=0A= * @property currentFrame=0A= * @type Int=0A= */=0A= this.currentFrame =3D 0;=0A= =0A= /**=0A= * The total number of frames to be executed.=0A= * In time-based animations, this is used by AnimMgr to ensure = the animation finishes on time.=0A= * @property totalFrames=0A= * @type Int=0A= */=0A= this.totalFrames =3D YAHOO.util.AnimMgr.fps;=0A= =0A= /**=0A= * Changes the animated element=0A= * @method setEl=0A= */=0A= this.setEl =3D function(element) {=0A= el =3D YAHOO.util.Dom.get(element);=0A= };=0A= =0A= /**=0A= * Returns a reference to the animated element.=0A= * @method getEl=0A= * @return {HTMLElement}=0A= */=0A= this.getEl =3D function() { return el; };=0A= =0A= /**=0A= * Checks whether the element is currently animated.=0A= * @method isAnimated=0A= * @return {Boolean} current value of isAnimated. =0A= */=0A= this.isAnimated =3D function() {=0A= return isAnimated;=0A= };=0A= =0A= /**=0A= * Returns the animation start time.=0A= * @method getStartTime=0A= * @return {Date} current value of startTime. =0A= */=0A= this.getStartTime =3D function() {=0A= return startTime;=0A= }; =0A= =0A= this.runtimeAttributes =3D {};=0A= =0A= =0A= =0A= /**=0A= * Starts the animation by registering it with the animation = manager. =0A= * @method animate =0A= */=0A= this.animate =3D function() {=0A= if ( this.isAnimated() ) {=0A= return false;=0A= }=0A= =0A= this.currentFrame =3D 0;=0A= =0A= this.totalFrames =3D ( this.useSeconds ) ? = Math.ceil(YAHOO.util.AnimMgr.fps * this.duration) : this.duration;=0A= =0A= if (this.duration =3D=3D=3D 0 && this.useSeconds) {=0A= this.totalFrames =3D 1; // jump to last frame if no = duration=0A= }=0A= YAHOO.util.AnimMgr.registerElement(this);=0A= return true;=0A= };=0A= =0A= /**=0A= * Stops the animation. Normally called by AnimMgr when = animation completes.=0A= * @method stop=0A= * @param {Boolean} finish (optional) If true, animation will = jump to final frame.=0A= */ =0A= this.stop =3D function(finish) {=0A= if (finish) {=0A= this.currentFrame =3D this.totalFrames;=0A= this._onTween.fire();=0A= }=0A= YAHOO.util.AnimMgr.stop(this);=0A= };=0A= =0A= var onStart =3D function() { =0A= this.onStart.fire();=0A= =0A= this.runtimeAttributes =3D {};=0A= for (var attr in this.attributes) {=0A= this.setRuntimeAttribute(attr);=0A= }=0A= =0A= isAnimated =3D true;=0A= actualFrames =3D 0;=0A= startTime =3D new Date(); =0A= };=0A= =0A= /**=0A= * Feeds the starting and ending values for each animated = attribute to doMethod once per frame, then applies the resulting value = to the attribute(s).=0A= * @private=0A= */=0A= =0A= var onTween =3D function() {=0A= var data =3D {=0A= duration: new Date() - this.getStartTime(),=0A= currentFrame: this.currentFrame=0A= };=0A= =0A= data.toString =3D function() {=0A= return (=0A= 'duration: ' + data.duration +=0A= ', currentFrame: ' + data.currentFrame=0A= );=0A= };=0A= =0A= this.onTween.fire(data);=0A= =0A= var runtimeAttributes =3D this.runtimeAttributes;=0A= =0A= for (var attr in runtimeAttributes) {=0A= this.setAttribute(attr, this.doMethod(attr, = runtimeAttributes[attr].start, runtimeAttributes[attr].end), = runtimeAttributes[attr].unit); =0A= }=0A= =0A= actualFrames +=3D 1;=0A= };=0A= =0A= var onComplete =3D function() {=0A= var actual_duration =3D (new Date() - startTime) / 1000 ;=0A= =0A= var data =3D {=0A= duration: actual_duration,=0A= frames: actualFrames,=0A= fps: actualFrames / actual_duration=0A= };=0A= =0A= data.toString =3D function() {=0A= return (=0A= 'duration: ' + data.duration +=0A= ', frames: ' + data.frames +=0A= ', fps: ' + data.fps=0A= );=0A= };=0A= =0A= isAnimated =3D false;=0A= actualFrames =3D 0;=0A= this.onComplete.fire(data);=0A= };=0A= =0A= /**=0A= * Custom event that fires after onStart, useful in subclassing=0A= * @private=0A= */ =0A= this._onStart =3D new YAHOO.util.CustomEvent('_start', this, = true);=0A= =0A= /**=0A= * Custom event that fires when animation begins=0A= * Listen via subscribe method (e.g. = myAnim.onStart.subscribe(someFunction)=0A= * @event onStart=0A= */ =0A= this.onStart =3D new YAHOO.util.CustomEvent('start', this);=0A= =0A= /**=0A= * Custom event that fires between each frame=0A= * Listen via subscribe method (e.g. = myAnim.onTween.subscribe(someFunction)=0A= * @event onTween=0A= */=0A= this.onTween =3D new YAHOO.util.CustomEvent('tween', this);=0A= =0A= /**=0A= * Custom event that fires after onTween=0A= * @private=0A= */=0A= this._onTween =3D new YAHOO.util.CustomEvent('_tween', this, = true);=0A= =0A= /**=0A= * Custom event that fires when animation ends=0A= * Listen via subscribe method (e.g. = myAnim.onComplete.subscribe(someFunction)=0A= * @event onComplete=0A= */=0A= this.onComplete =3D new YAHOO.util.CustomEvent('complete', this);=0A= /**=0A= * Custom event that fires after onComplete=0A= * @private=0A= */=0A= this._onComplete =3D new YAHOO.util.CustomEvent('_complete', = this, true);=0A= =0A= this._onStart.subscribe(onStart);=0A= this._onTween.subscribe(onTween);=0A= this._onComplete.subscribe(onComplete);=0A= }=0A= };=0A= =0A= /**=0A= * Handles animation queueing and threading.=0A= * Used by Anim and subclasses.=0A= * @class AnimMgr=0A= * @namespace YAHOO.util=0A= */=0A= YAHOO.util.AnimMgr =3D new function() {=0A= /** =0A= * Reference to the animation Interval.=0A= * @property thread=0A= * @private=0A= * @type Int=0A= */=0A= var thread =3D null;=0A= =0A= /** =0A= * The current queue of registered animation objects.=0A= * @property queue=0A= * @private=0A= * @type Array=0A= */ =0A= var queue =3D [];=0A= =0A= /** =0A= * The number of active animations.=0A= * @property tweenCount=0A= * @private=0A= * @type Int=0A= */ =0A= var tweenCount =3D 0;=0A= =0A= /** =0A= * Base frame rate (frames per second). =0A= * Arbitrarily high for better x-browser calibration (slower = browsers drop more frames).=0A= * @property fps=0A= * @type Int=0A= * =0A= */=0A= this.fps =3D 1000;=0A= =0A= /** =0A= * Interval delay in milliseconds, defaults to fastest possible.=0A= * @property delay=0A= * @type Int=0A= * =0A= */=0A= this.delay =3D 1;=0A= =0A= /**=0A= * Adds an animation instance to the animation queue.=0A= * All animation instances must be registered in order to animate.=0A= * @method registerElement=0A= * @param {object} tween The Anim instance to be be registered=0A= */=0A= this.registerElement =3D function(tween) {=0A= queue[queue.length] =3D tween;=0A= tweenCount +=3D 1;=0A= tween._onStart.fire();=0A= this.start();=0A= };=0A= =0A= /**=0A= * removes an animation instance from the animation queue.=0A= * All animation instances must be registered in order to animate.=0A= * @method unRegister=0A= * @param {object} tween The Anim instance to be be registered=0A= * @param {Int} index The index of the Anim instance=0A= * @private=0A= */=0A= this.unRegister =3D function(tween, index) {=0A= tween._onComplete.fire();=0A= index =3D index || getIndex(tween);=0A= if (index =3D=3D -1) {=0A= return false;=0A= }=0A= =0A= queue.splice(index, 1);=0A= =0A= tweenCount -=3D 1;=0A= if (tweenCount <=3D 0) {=0A= this.stop();=0A= }=0A= =0A= return true;=0A= };=0A= =0A= /**=0A= * Starts the animation thread.=0A= * Only one thread can run at a time.=0A= * @method start=0A= */ =0A= this.start =3D function() {=0A= if (thread =3D=3D=3D null) {=0A= thread =3D setInterval(this.run, this.delay);=0A= }=0A= };=0A= =0A= /**=0A= * Stops the animation thread or a specific animation instance.=0A= * @method stop=0A= * @param {object} tween A specific Anim instance to stop (optional)=0A= * If no instance given, Manager stops thread and all animations.=0A= */ =0A= this.stop =3D function(tween) {=0A= if (!tween) {=0A= clearInterval(thread);=0A= =0A= for (var i =3D 0, len =3D queue.length; i < len; ++i) {=0A= if ( queue[0].isAnimated() ) {=0A= this.unRegister(queue[0], 0); =0A= }=0A= }=0A= =0A= queue =3D [];=0A= thread =3D null;=0A= tweenCount =3D 0;=0A= }=0A= else {=0A= this.unRegister(tween);=0A= }=0A= };=0A= =0A= /**=0A= * Called per Interval to handle each animation frame.=0A= * @method run=0A= */ =0A= this.run =3D function() {=0A= for (var i =3D 0, len =3D queue.length; i < len; ++i) {=0A= var tween =3D queue[i];=0A= if ( !tween || !tween.isAnimated() ) { continue; }=0A= =0A= if (tween.currentFrame < tween.totalFrames || = tween.totalFrames =3D=3D=3D null)=0A= {=0A= tween.currentFrame +=3D 1;=0A= =0A= if (tween.useSeconds) {=0A= correctFrame(tween);=0A= }=0A= tween._onTween.fire(); =0A= }=0A= else { YAHOO.util.AnimMgr.stop(tween, i); }=0A= }=0A= };=0A= =0A= var getIndex =3D function(anim) {=0A= for (var i =3D 0, len =3D queue.length; i < len; ++i) {=0A= if (queue[i] =3D=3D anim) {=0A= return i; // note return;=0A= }=0A= }=0A= return -1;=0A= };=0A= =0A= /**=0A= * On the fly frame correction to keep animation on time.=0A= * @method correctFrame=0A= * @private=0A= * @param {Object} tween The Anim instance being corrected.=0A= */=0A= var correctFrame =3D function(tween) {=0A= var frames =3D tween.totalFrames;=0A= var frame =3D tween.currentFrame;=0A= var expected =3D (tween.currentFrame * tween.duration * 1000 / = tween.totalFrames);=0A= var elapsed =3D (new Date() - tween.getStartTime());=0A= var tweak =3D 0;=0A= =0A= if (elapsed < tween.duration * 1000) { // check if falling behind=0A= tweak =3D Math.round((elapsed / expected - 1) * = tween.currentFrame);=0A= } else { // went over duration, so jump to end=0A= tweak =3D frames - (frame + 1); =0A= }=0A= if (tweak > 0 && isFinite(tweak)) { // adjust if needed=0A= if (tween.currentFrame + tweak >=3D frames) {// dont go past = last frame=0A= tweak =3D frames - (frame + 1);=0A= }=0A= =0A= tween.currentFrame +=3D tweak; =0A= }=0A= };=0A= };=0A= /**=0A= * Used to calculate Bezier splines for any number of control points.=0A= * @class Bezier=0A= * @namespace YAHOO.util=0A= *=0A= */=0A= YAHOO.util.Bezier =3D new function() {=0A= /**=0A= * Get the current position of the animated element based on t.=0A= * Each point is an array of "x" and "y" values (0 =3D x, 1 =3D y)=0A= * At least 2 points are required (start and end).=0A= * First point is start. Last point is end.=0A= * Additional control points are optional. =0A= * @method getPosition=0A= * @param {Array} points An array containing Bezier points=0A= * @param {Number} t A number between 0 and 1 which is the basis for = determining current position=0A= * @return {Array} An array containing int x and y member data=0A= */=0A= this.getPosition =3D function(points, t) { =0A= var n =3D points.length;=0A= var tmp =3D [];=0A= =0A= for (var i =3D 0; i < n; ++i){=0A= tmp[i] =3D [points[i][0], points[i][1]]; // save input=0A= }=0A= =0A= for (var j =3D 1; j < n; ++j) {=0A= for (i =3D 0; i < n - j; ++i) {=0A= tmp[i][0] =3D (1 - t) * tmp[i][0] + t * tmp[parseInt(i + = 1, 10)][0];=0A= tmp[i][1] =3D (1 - t) * tmp[i][1] + t * tmp[parseInt(i + = 1, 10)][1]; =0A= }=0A= }=0A= =0A= return [ tmp[0][0], tmp[0][1] ]; =0A= =0A= };=0A= };=0A= (function() {=0A= /**=0A= * Anim subclass for color transitions.=0A= *

      Usage: var myAnim =3D new Y.ColorAnim(el, { backgroundColor: = { from: '#FF0000', to: '#FFFFFF' } }, 1, Y.Easing.easeOut); Color = values can be specified with either 112233, #112233, =0A= * [255,255,255], or rgb(255,255,255)

      =0A= * @class ColorAnim=0A= * @namespace YAHOO.util=0A= * @requires YAHOO.util.Anim=0A= * @requires YAHOO.util.AnimMgr=0A= * @requires YAHOO.util.Easing=0A= * @requires YAHOO.util.Bezier=0A= * @requires YAHOO.util.Dom=0A= * @requires YAHOO.util.Event=0A= * @constructor=0A= * @extends YAHOO.util.Anim=0A= * @param {HTMLElement | String} el Reference to the element that will = be animated=0A= * @param {Object} attributes The attribute(s) to be animated.=0A= * Each attribute is an object with at minimum a "to" or "by" member = defined.=0A= * Additional optional members are "from" (defaults to current value), = "units" (defaults to "px").=0A= * All attribute names use camelCase.=0A= * @param {Number} duration (optional, defaults to 1 second) Length of = animation (frames or seconds), defaults to time-based=0A= * @param {Function} method (optional, defaults to = YAHOO.util.Easing.easeNone) Computes the values that are applied to the = attributes per frame (generally a YAHOO.util.Easing method)=0A= */=0A= YAHOO.util.ColorAnim =3D function(el, attributes, duration, method) = {=0A= YAHOO.util.ColorAnim.superclass.constructor.call(this, el, = attributes, duration, method);=0A= };=0A= =0A= YAHOO.extend(YAHOO.util.ColorAnim, YAHOO.util.Anim);=0A= =0A= // shorthand=0A= var Y =3D YAHOO.util;=0A= var superclass =3D Y.ColorAnim.superclass;=0A= var proto =3D Y.ColorAnim.prototype;=0A= =0A= proto.toString =3D function() {=0A= var el =3D this.getEl();=0A= var id =3D el.id || el.tagName;=0A= return ("ColorAnim " + id);=0A= };=0A= =0A= proto.patterns.color =3D /color$/i;=0A= proto.patterns.rgb =3D = /^rgb\(([0-9]+)\s*,\s*([0-9]+)\s*,\s*([0-9]+)\)$/i;=0A= proto.patterns.hex =3D = /^#?([0-9A-F]{2})([0-9A-F]{2})([0-9A-F]{2})$/i;=0A= proto.patterns.hex3 =3D = /^#?([0-9A-F]{1})([0-9A-F]{1})([0-9A-F]{1})$/i;=0A= proto.patterns.transparent =3D /^transparent|rgba\(0, 0, 0, 0\)$/; = // need rgba for safari=0A= =0A= /**=0A= * Attempts to parse the given string and return a 3-tuple.=0A= * @method parseColor=0A= * @param {String} s The string to parse.=0A= * @return {Array} The 3-tuple of rgb values.=0A= */=0A= proto.parseColor =3D function(s) {=0A= if (s.length =3D=3D 3) { return s; }=0A= =0A= var c =3D this.patterns.hex.exec(s);=0A= if (c && c.length =3D=3D 4) {=0A= return [ parseInt(c[1], 16), parseInt(c[2], 16), = parseInt(c[3], 16) ];=0A= }=0A= =0A= c =3D this.patterns.rgb.exec(s);=0A= if (c && c.length =3D=3D 4) {=0A= return [ parseInt(c[1], 10), parseInt(c[2], 10), = parseInt(c[3], 10) ];=0A= }=0A= =0A= c =3D this.patterns.hex3.exec(s);=0A= if (c && c.length =3D=3D 4) {=0A= return [ parseInt(c[1] + c[1], 16), parseInt(c[2] + c[2], = 16), parseInt(c[3] + c[3], 16) ];=0A= }=0A= =0A= return null;=0A= };=0A= =0A= proto.getAttribute =3D function(attr) {=0A= var el =3D this.getEl();=0A= if ( this.patterns.color.test(attr) ) {=0A= var val =3D YAHOO.util.Dom.getStyle(el, attr);=0A= =0A= if (this.patterns.transparent.test(val)) { // bgcolor default=0A= var parent =3D el.parentNode; // try and get from an = ancestor=0A= val =3D Y.Dom.getStyle(parent, attr);=0A= =0A= while (parent && this.patterns.transparent.test(val)) {=0A= parent =3D parent.parentNode;=0A= val =3D Y.Dom.getStyle(parent, attr);=0A= if (parent.tagName.toUpperCase() =3D=3D 'HTML') {=0A= val =3D '#fff';=0A= }=0A= }=0A= }=0A= } else {=0A= val =3D superclass.getAttribute.call(this, attr);=0A= }=0A= =0A= return val;=0A= };=0A= =0A= proto.doMethod =3D function(attr, start, end) {=0A= var val;=0A= =0A= if ( this.patterns.color.test(attr) ) {=0A= val =3D [];=0A= for (var i =3D 0, len =3D start.length; i < len; ++i) {=0A= val[i] =3D superclass.doMethod.call(this, attr, = start[i], end[i]);=0A= }=0A= =0A= val =3D = 'rgb('+Math.floor(val[0])+','+Math.floor(val[1])+','+Math.floor(val[2])+'= )';=0A= }=0A= else {=0A= val =3D superclass.doMethod.call(this, attr, start, end);=0A= }=0A= =0A= return val;=0A= };=0A= =0A= proto.setRuntimeAttribute =3D function(attr) {=0A= superclass.setRuntimeAttribute.call(this, attr);=0A= =0A= if ( this.patterns.color.test(attr) ) {=0A= var attributes =3D this.attributes;=0A= var start =3D = this.parseColor(this.runtimeAttributes[attr].start);=0A= var end =3D = this.parseColor(this.runtimeAttributes[attr].end);=0A= // fix colors if going "by"=0A= if ( typeof attributes[attr]['to'] =3D=3D=3D 'undefined' && = typeof attributes[attr]['by'] !=3D=3D 'undefined' ) {=0A= end =3D this.parseColor(attributes[attr].by);=0A= =0A= for (var i =3D 0, len =3D start.length; i < len; ++i) {=0A= end[i] =3D start[i] + end[i];=0A= }=0A= }=0A= =0A= this.runtimeAttributes[attr].start =3D start;=0A= this.runtimeAttributes[attr].end =3D end;=0A= }=0A= };=0A= })();=0A= /*=0A= TERMS OF USE - EASING EQUATIONS=0A= Open source under the BSD License.=0A= Copyright 2001 Robert Penner All rights reserved.=0A= =0A= Redistribution and use in source and binary forms, with or without = modification, are permitted provided that the following conditions are = met:=0A= =0A= * Redistributions of source code must retain the above copyright = notice, this list of conditions and the following disclaimer.=0A= * Redistributions in binary form must reproduce the above copyright = notice, this list of conditions and the following disclaimer in the = documentation and/or other materials provided with the distribution.=0A= * Neither the name of the author nor the names of contributors may be = used to endorse or promote products derived from this software without = specific prior written permission.=0A= =0A= THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS = IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED = TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A = PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER = OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, = EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, = PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR = PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF = LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING = NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS = SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.=0A= */=0A= =0A= /**=0A= * Singleton that determines how an animation proceeds from start to end.=0A= * @class Easing=0A= * @namespace YAHOO.util=0A= */=0A= =0A= YAHOO.util.Easing =3D {=0A= =0A= /**=0A= * Uniform speed between points.=0A= * @method easeNone=0A= * @param {Number} t Time value used to compute current value=0A= * @param {Number} b Starting value=0A= * @param {Number} c Delta between start and end values=0A= * @param {Number} d Total length of animation=0A= * @return {Number} The computed value for the current animation = frame=0A= */=0A= easeNone: function (t, b, c, d) {=0A= return c*t/d + b;=0A= },=0A= =0A= /**=0A= * Begins slowly and accelerates towards end. (quadratic)=0A= * @method easeIn=0A= * @param {Number} t Time value used to compute current value=0A= * @param {Number} b Starting value=0A= * @param {Number} c Delta between start and end values=0A= * @param {Number} d Total length of animation=0A= * @return {Number} The computed value for the current animation = frame=0A= */=0A= easeIn: function (t, b, c, d) {=0A= return c*(t/=3Dd)*t + b;=0A= },=0A= =0A= /**=0A= * Begins quickly and decelerates towards end. (quadratic)=0A= * @method easeOut=0A= * @param {Number} t Time value used to compute current value=0A= * @param {Number} b Starting value=0A= * @param {Number} c Delta between start and end values=0A= * @param {Number} d Total length of animation=0A= * @return {Number} The computed value for the current animation = frame=0A= */=0A= easeOut: function (t, b, c, d) {=0A= return -c *(t/=3Dd)*(t-2) + b;=0A= },=0A= =0A= /**=0A= * Begins slowly and decelerates towards end. (quadratic)=0A= * @method easeBoth=0A= * @param {Number} t Time value used to compute current value=0A= * @param {Number} b Starting value=0A= * @param {Number} c Delta between start and end values=0A= * @param {Number} d Total length of animation=0A= * @return {Number} The computed value for the current animation = frame=0A= */=0A= easeBoth: function (t, b, c, d) {=0A= if ((t/=3Dd/2) < 1) {=0A= return c/2*t*t + b;=0A= }=0A= =0A= return -c/2 * ((--t)*(t-2) - 1) + b;=0A= },=0A= =0A= /**=0A= * Begins slowly and accelerates towards end. (quartic)=0A= * @method easeInStrong=0A= * @param {Number} t Time value used to compute current value=0A= * @param {Number} b Starting value=0A= * @param {Number} c Delta between start and end values=0A= * @param {Number} d Total length of animation=0A= * @return {Number} The computed value for the current animation = frame=0A= */=0A= easeInStrong: function (t, b, c, d) {=0A= return c*(t/=3Dd)*t*t*t + b;=0A= },=0A= =0A= /**=0A= * Begins quickly and decelerates towards end. (quartic)=0A= * @method easeOutStrong=0A= * @param {Number} t Time value used to compute current value=0A= * @param {Number} b Starting value=0A= * @param {Number} c Delta between start and end values=0A= * @param {Number} d Total length of animation=0A= * @return {Number} The computed value for the current animation = frame=0A= */=0A= easeOutStrong: function (t, b, c, d) {=0A= return -c * ((t=3Dt/d-1)*t*t*t - 1) + b;=0A= },=0A= =0A= /**=0A= * Begins slowly and decelerates towards end. (quartic)=0A= * @method easeBothStrong=0A= * @param {Number} t Time value used to compute current value=0A= * @param {Number} b Starting value=0A= * @param {Number} c Delta between start and end values=0A= * @param {Number} d Total length of animation=0A= * @return {Number} The computed value for the current animation = frame=0A= */=0A= easeBothStrong: function (t, b, c, d) {=0A= if ((t/=3Dd/2) < 1) {=0A= return c/2*t*t*t*t + b;=0A= }=0A= =0A= return -c/2 * ((t-=3D2)*t*t*t - 2) + b;=0A= },=0A= =0A= /**=0A= * Snap in elastic effect.=0A= * @method elasticIn=0A= * @param {Number} t Time value used to compute current value=0A= * @param {Number} b Starting value=0A= * @param {Number} c Delta between start and end values=0A= * @param {Number} d Total length of animation=0A= * @param {Number} a Amplitude (optional)=0A= * @param {Number} p Period (optional)=0A= * @return {Number} The computed value for the current animation = frame=0A= */=0A= =0A= elasticIn: function (t, b, c, d, a, p) {=0A= if (t =3D=3D 0) {=0A= return b;=0A= }=0A= if ( (t /=3D d) =3D=3D 1 ) {=0A= return b+c;=0A= }=0A= if (!p) {=0A= p=3Dd*.3;=0A= }=0A= =0A= if (!a || a < Math.abs(c)) {=0A= a =3D c; =0A= var s =3D p/4;=0A= }=0A= else {=0A= var s =3D p/(2*Math.PI) * Math.asin (c/a);=0A= }=0A= =0A= return -(a*Math.pow(2,10*(t-=3D1)) * Math.sin( = (t*d-s)*(2*Math.PI)/p )) + b;=0A= },=0A= =0A= /**=0A= * Snap out elastic effect.=0A= * @method elasticOut=0A= * @param {Number} t Time value used to compute current value=0A= * @param {Number} b Starting value=0A= * @param {Number} c Delta between start and end values=0A= * @param {Number} d Total length of animation=0A= * @param {Number} a Amplitude (optional)=0A= * @param {Number} p Period (optional)=0A= * @return {Number} The computed value for the current animation = frame=0A= */=0A= elasticOut: function (t, b, c, d, a, p) {=0A= if (t =3D=3D 0) {=0A= return b;=0A= }=0A= if ( (t /=3D d) =3D=3D 1 ) {=0A= return b+c;=0A= }=0A= if (!p) {=0A= p=3Dd*.3;=0A= }=0A= =0A= if (!a || a < Math.abs(c)) {=0A= a =3D c;=0A= var s =3D p / 4;=0A= }=0A= else {=0A= var s =3D p/(2*Math.PI) * Math.asin (c/a);=0A= }=0A= =0A= return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c = + b;=0A= },=0A= =0A= /**=0A= * Snap both elastic effect.=0A= * @method elasticBoth=0A= * @param {Number} t Time value used to compute current value=0A= * @param {Number} b Starting value=0A= * @param {Number} c Delta between start and end values=0A= * @param {Number} d Total length of animation=0A= * @param {Number} a Amplitude (optional)=0A= * @param {Number} p Period (optional)=0A= * @return {Number} The computed value for the current animation = frame=0A= */=0A= elasticBoth: function (t, b, c, d, a, p) {=0A= if (t =3D=3D 0) {=0A= return b;=0A= }=0A= =0A= if ( (t /=3D d/2) =3D=3D 2 ) {=0A= return b+c;=0A= }=0A= =0A= if (!p) {=0A= p =3D d*(.3*1.5);=0A= }=0A= =0A= if ( !a || a < Math.abs(c) ) {=0A= a =3D c; =0A= var s =3D p/4;=0A= }=0A= else {=0A= var s =3D p/(2*Math.PI) * Math.asin (c/a);=0A= }=0A= =0A= if (t < 1) {=0A= return -.5*(a*Math.pow(2,10*(t-=3D1)) * =0A= Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;=0A= }=0A= return a*Math.pow(2,-10*(t-=3D1)) * =0A= Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;=0A= },=0A= =0A= =0A= /**=0A= * Backtracks slightly, then reverses direction and moves to end.=0A= * @method backIn=0A= * @param {Number} t Time value used to compute current value=0A= * @param {Number} b Starting value=0A= * @param {Number} c Delta between start and end values=0A= * @param {Number} d Total length of animation=0A= * @param {Number} s Overshoot (optional)=0A= * @return {Number} The computed value for the current animation = frame=0A= */=0A= backIn: function (t, b, c, d, s) {=0A= if (typeof s =3D=3D 'undefined') {=0A= s =3D 1.70158;=0A= }=0A= return c*(t/=3Dd)*t*((s+1)*t - s) + b;=0A= },=0A= =0A= /**=0A= * Overshoots end, then reverses and comes back to end.=0A= * @method backOut=0A= * @param {Number} t Time value used to compute current value=0A= * @param {Number} b Starting value=0A= * @param {Number} c Delta between start and end values=0A= * @param {Number} d Total length of animation=0A= * @param {Number} s Overshoot (optional)=0A= * @return {Number} The computed value for the current animation = frame=0A= */=0A= backOut: function (t, b, c, d, s) {=0A= if (typeof s =3D=3D 'undefined') {=0A= s =3D 1.70158;=0A= }=0A= return c*((t=3Dt/d-1)*t*((s+1)*t + s) + 1) + b;=0A= },=0A= =0A= /**=0A= * Backtracks slightly, then reverses direction, overshoots end, =0A= * then reverses and comes back to end.=0A= * @method backBoth=0A= * @param {Number} t Time value used to compute current value=0A= * @param {Number} b Starting value=0A= * @param {Number} c Delta between start and end values=0A= * @param {Number} d Total length of animation=0A= * @param {Number} s Overshoot (optional)=0A= * @return {Number} The computed value for the current animation = frame=0A= */=0A= backBoth: function (t, b, c, d, s) {=0A= if (typeof s =3D=3D 'undefined') {=0A= s =3D 1.70158; =0A= }=0A= =0A= if ((t /=3D d/2 ) < 1) {=0A= return c/2*(t*t*(((s*=3D(1.525))+1)*t - s)) + b;=0A= }=0A= return c/2*((t-=3D2)*t*(((s*=3D(1.525))+1)*t + s) + 2) + b;=0A= },=0A= =0A= /**=0A= * Bounce off of start.=0A= * @method bounceIn=0A= * @param {Number} t Time value used to compute current value=0A= * @param {Number} b Starting value=0A= * @param {Number} c Delta between start and end values=0A= * @param {Number} d Total length of animation=0A= * @return {Number} The computed value for the current animation = frame=0A= */=0A= bounceIn: function (t, b, c, d) {=0A= return c - YAHOO.util.Easing.bounceOut(d-t, 0, c, d) + b;=0A= },=0A= =0A= /**=0A= * Bounces off end.=0A= * @method bounceOut=0A= * @param {Number} t Time value used to compute current value=0A= * @param {Number} b Starting value=0A= * @param {Number} c Delta between start and end values=0A= * @param {Number} d Total length of animation=0A= * @return {Number} The computed value for the current animation = frame=0A= */=0A= bounceOut: function (t, b, c, d) {=0A= if ((t/=3Dd) < (1/2.75)) {=0A= return c*(7.5625*t*t) + b;=0A= } else if (t < (2/2.75)) {=0A= return c*(7.5625*(t-=3D(1.5/2.75))*t + .75) + b;=0A= } else if (t < (2.5/2.75)) {=0A= return c*(7.5625*(t-=3D(2.25/2.75))*t + .9375) + b;=0A= }=0A= return c*(7.5625*(t-=3D(2.625/2.75))*t + .984375) + b;=0A= },=0A= =0A= /**=0A= * Bounces off start and end.=0A= * @method bounceBoth=0A= * @param {Number} t Time value used to compute current value=0A= * @param {Number} b Starting value=0A= * @param {Number} c Delta between start and end values=0A= * @param {Number} d Total length of animation=0A= * @return {Number} The computed value for the current animation = frame=0A= */=0A= bounceBoth: function (t, b, c, d) {=0A= if (t < d/2) {=0A= return YAHOO.util.Easing.bounceIn(t*2, 0, c, d) * .5 + b;=0A= }=0A= return YAHOO.util.Easing.bounceOut(t*2-d, 0, c, d) * .5 + c*.5 + b;=0A= }=0A= };=0A= =0A= (function() {=0A= /**=0A= * Anim subclass for moving elements along a path defined by the = "points" =0A= * member of "attributes". All "points" are arrays with x, y = coordinates.=0A= *

      Usage: var myAnim =3D new YAHOO.util.Motion(el, { points: { = to: [800, 800] } }, 1, YAHOO.util.Easing.easeOut);

      =0A= * @class Motion=0A= * @namespace YAHOO.util=0A= * @requires YAHOO.util.Anim=0A= * @requires YAHOO.util.AnimMgr=0A= * @requires YAHOO.util.Easing=0A= * @requires YAHOO.util.Bezier=0A= * @requires YAHOO.util.Dom=0A= * @requires YAHOO.util.Event=0A= * @requires YAHOO.util.CustomEvent =0A= * @constructor=0A= * @extends YAHOO.util.Anim=0A= * @param {String | HTMLElement} el Reference to the element that will = be animated=0A= * @param {Object} attributes The attribute(s) to be animated. =0A= * Each attribute is an object with at minimum a "to" or "by" member = defined. =0A= * Additional optional members are "from" (defaults to current value), = "units" (defaults to "px"). =0A= * All attribute names use camelCase.=0A= * @param {Number} duration (optional, defaults to 1 second) Length of = animation (frames or seconds), defaults to time-based=0A= * @param {Function} method (optional, defaults to = YAHOO.util.Easing.easeNone) Computes the values that are applied to the = attributes per frame (generally a YAHOO.util.Easing method)=0A= */=0A= YAHOO.util.Motion =3D function(el, attributes, duration, method) {=0A= if (el) { // dont break existing subclasses not using = YAHOO.extend=0A= YAHOO.util.Motion.superclass.constructor.call(this, el, = attributes, duration, method);=0A= }=0A= };=0A= =0A= YAHOO.extend(YAHOO.util.Motion, YAHOO.util.ColorAnim);=0A= =0A= // shorthand=0A= var Y =3D YAHOO.util;=0A= var superclass =3D Y.Motion.superclass;=0A= var proto =3D Y.Motion.prototype;=0A= =0A= proto.toString =3D function() {=0A= var el =3D this.getEl();=0A= var id =3D el.id || el.tagName;=0A= return ("Motion " + id);=0A= };=0A= =0A= proto.patterns.points =3D /^points$/i;=0A= =0A= proto.setAttribute =3D function(attr, val, unit) {=0A= if ( this.patterns.points.test(attr) ) {=0A= unit =3D unit || 'px';=0A= superclass.setAttribute.call(this, 'left', val[0], unit);=0A= superclass.setAttribute.call(this, 'top', val[1], unit);=0A= } else {=0A= superclass.setAttribute.call(this, attr, val, unit);=0A= }=0A= };=0A= =0A= proto.getAttribute =3D function(attr) {=0A= if ( this.patterns.points.test(attr) ) {=0A= var val =3D [=0A= superclass.getAttribute.call(this, 'left'),=0A= superclass.getAttribute.call(this, 'top')=0A= ];=0A= } else {=0A= val =3D superclass.getAttribute.call(this, attr);=0A= }=0A= =0A= return val;=0A= };=0A= =0A= proto.doMethod =3D function(attr, start, end) {=0A= var val =3D null;=0A= =0A= if ( this.patterns.points.test(attr) ) {=0A= var t =3D this.method(this.currentFrame, 0, 100, = this.totalFrames) / 100; =0A= val =3D Y.Bezier.getPosition(this.runtimeAttributes[attr], = t);=0A= } else {=0A= val =3D superclass.doMethod.call(this, attr, start, end);=0A= }=0A= return val;=0A= };=0A= =0A= proto.setRuntimeAttribute =3D function(attr) {=0A= if ( this.patterns.points.test(attr) ) {=0A= var el =3D this.getEl();=0A= var attributes =3D this.attributes;=0A= var start;=0A= var control =3D attributes['points']['control'] || [];=0A= var end;=0A= var i, len;=0A= =0A= if (control.length > 0 && !(control[0] instanceof Array) ) { = // could be single point or array of points=0A= control =3D [control];=0A= } else { // break reference to attributes.points.control=0A= var tmp =3D []; =0A= for (i =3D 0, len =3D control.length; i< len; ++i) {=0A= tmp[i] =3D control[i];=0A= }=0A= control =3D tmp;=0A= }=0A= =0A= if (Y.Dom.getStyle(el, 'position') =3D=3D 'static') { // = default to relative=0A= Y.Dom.setStyle(el, 'position', 'relative');=0A= }=0A= =0A= if ( isset(attributes['points']['from']) ) {=0A= Y.Dom.setXY(el, attributes['points']['from']); // set = position to from point=0A= } =0A= else { Y.Dom.setXY( el, Y.Dom.getXY(el) ); } // set it to = current position=0A= =0A= start =3D this.getAttribute('points'); // get actual top & = left=0A= =0A= // TO beats BY, per SMIL 2.1 spec=0A= if ( isset(attributes['points']['to']) ) {=0A= end =3D translateValues.call(this, = attributes['points']['to'], start);=0A= =0A= var pageXY =3D Y.Dom.getXY(this.getEl());=0A= for (i =3D 0, len =3D control.length; i < len; ++i) {=0A= control[i] =3D translateValues.call(this, = control[i], start);=0A= }=0A= =0A= =0A= } else if ( isset(attributes['points']['by']) ) {=0A= end =3D [ start[0] + attributes['points']['by'][0], = start[1] + attributes['points']['by'][1] ];=0A= =0A= for (i =3D 0, len =3D control.length; i < len; ++i) {=0A= control[i] =3D [ start[0] + control[i][0], start[1] = + control[i][1] ];=0A= }=0A= }=0A= =0A= this.runtimeAttributes[attr] =3D [start];=0A= =0A= if (control.length > 0) {=0A= this.runtimeAttributes[attr] =3D = this.runtimeAttributes[attr].concat(control); =0A= }=0A= =0A= = this.runtimeAttributes[attr][this.runtimeAttributes[attr].length] =3D = end;=0A= }=0A= else {=0A= superclass.setRuntimeAttribute.call(this, attr);=0A= }=0A= };=0A= =0A= var translateValues =3D function(val, start) {=0A= var pageXY =3D Y.Dom.getXY(this.getEl());=0A= val =3D [ val[0] - pageXY[0] + start[0], val[1] - pageXY[1] + = start[1] ];=0A= =0A= return val; =0A= };=0A= =0A= var isset =3D function(prop) {=0A= return (typeof prop !=3D=3D 'undefined');=0A= };=0A= })();=0A= (function() {=0A= /**=0A= * Anim subclass for scrolling elements to a position defined by the = "scroll"=0A= * member of "attributes". All "scroll" members are arrays with x, y = scroll positions.=0A= *

      Usage: var myAnim =3D new YAHOO.util.Scroll(el, { scroll: { = to: [0, 800] } }, 1, YAHOO.util.Easing.easeOut);

      =0A= * @class Scroll=0A= * @namespace YAHOO.util=0A= * @requires YAHOO.util.Anim=0A= * @requires YAHOO.util.AnimMgr=0A= * @requires YAHOO.util.Easing=0A= * @requires YAHOO.util.Bezier=0A= * @requires YAHOO.util.Dom=0A= * @requires YAHOO.util.Event=0A= * @requires YAHOO.util.CustomEvent =0A= * @extends YAHOO.util.Anim=0A= * @constructor=0A= * @param {String or HTMLElement} el Reference to the element that will = be animated=0A= * @param {Object} attributes The attribute(s) to be animated. =0A= * Each attribute is an object with at minimum a "to" or "by" member = defined. =0A= * Additional optional members are "from" (defaults to current value), = "units" (defaults to "px"). =0A= * All attribute names use camelCase.=0A= * @param {Number} duration (optional, defaults to 1 second) Length of = animation (frames or seconds), defaults to time-based=0A= * @param {Function} method (optional, defaults to = YAHOO.util.Easing.easeNone) Computes the values that are applied to the = attributes per frame (generally a YAHOO.util.Easing method)=0A= */=0A= YAHOO.util.Scroll =3D function(el, attributes, duration, method) {=0A= if (el) { // dont break existing subclasses not using = YAHOO.extend=0A= YAHOO.util.Scroll.superclass.constructor.call(this, el, = attributes, duration, method);=0A= }=0A= };=0A= =0A= YAHOO.extend(YAHOO.util.Scroll, YAHOO.util.ColorAnim);=0A= =0A= // shorthand=0A= var Y =3D YAHOO.util;=0A= var superclass =3D Y.Scroll.superclass;=0A= var proto =3D Y.Scroll.prototype;=0A= =0A= proto.toString =3D function() {=0A= var el =3D this.getEl();=0A= var id =3D el.id || el.tagName;=0A= return ("Scroll " + id);=0A= };=0A= =0A= proto.doMethod =3D function(attr, start, end) {=0A= var val =3D null;=0A= =0A= if (attr =3D=3D 'scroll') {=0A= val =3D [=0A= this.method(this.currentFrame, start[0], end[0] - = start[0], this.totalFrames),=0A= this.method(this.currentFrame, start[1], end[1] - = start[1], this.totalFrames)=0A= ];=0A= =0A= } else {=0A= val =3D superclass.doMethod.call(this, attr, start, end);=0A= }=0A= return val;=0A= };=0A= =0A= proto.getAttribute =3D function(attr) {=0A= var val =3D null;=0A= var el =3D this.getEl();=0A= =0A= if (attr =3D=3D 'scroll') {=0A= val =3D [ el.scrollLeft, el.scrollTop ];=0A= } else {=0A= val =3D superclass.getAttribute.call(this, attr);=0A= }=0A= =0A= return val;=0A= };=0A= =0A= proto.setAttribute =3D function(attr, val, unit) {=0A= var el =3D this.getEl();=0A= =0A= if (attr =3D=3D 'scroll') {=0A= el.scrollLeft =3D val[0];=0A= el.scrollTop =3D val[1];=0A= } else {=0A= superclass.setAttribute.call(this, attr, val, unit);=0A= }=0A= };=0A= })();=0A= YAHOO.register("animation", YAHOO.util.Anim, {version: "2.3.1", build: = "540"});=0A= ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://media.ledger-enquirer.com/static/js/YUI/container_core.js /*=0A= Copyright (c) 2007, Yahoo! Inc. All rights reserved.=0A= Code licensed under the BSD License:=0A= http://developer.yahoo.net/yui/license.txt=0A= version: 2.3.1=0A= */=0A= (function () {=0A= =0A= /**=0A= * Config is a utility used within an Object to allow the implementer = to=0A= * maintain a list of local configuration properties and listen for = changes =0A= * to those properties dynamically using CustomEvent. The initial = values are =0A= * also maintained so that the configuration can be reset at any = given point =0A= * to its initial state.=0A= * @namespace YAHOO.util=0A= * @class Config=0A= * @constructor=0A= * @param {Object} owner The owner Object to which this Config Object = belongs=0A= */=0A= YAHOO.util.Config =3D function (owner) {=0A= =0A= if (owner) {=0A= =0A= this.init(owner);=0A= =0A= }=0A= =0A= if (!owner) { =0A= =0A= =0A= }=0A= =0A= };=0A= =0A= =0A= var Lang =3D YAHOO.lang,=0A= CustomEvent =3D YAHOO.util.CustomEvent, =0A= Config =3D YAHOO.util.Config;=0A= =0A= =0A= /**=0A= * Constant representing the CustomEvent type for the config changed = event.=0A= * @property YAHOO.util.Config.CONFIG_CHANGED_EVENT=0A= * @private=0A= * @static=0A= * @final=0A= */=0A= Config.CONFIG_CHANGED_EVENT =3D "configChanged";=0A= =0A= /**=0A= * Constant representing the boolean type string=0A= * @property YAHOO.util.Config.BOOLEAN_TYPE=0A= * @private=0A= * @static=0A= * @final=0A= */=0A= Config.BOOLEAN_TYPE =3D "boolean";=0A= =0A= Config.prototype =3D {=0A= =0A= /**=0A= * Object reference to the owner of this Config Object=0A= * @property owner=0A= * @type Object=0A= */=0A= owner: null,=0A= =0A= /**=0A= * Boolean flag that specifies whether a queue is currently =0A= * being executed=0A= * @property queueInProgress=0A= * @type Boolean=0A= */=0A= queueInProgress: false,=0A= =0A= /**=0A= * Maintains the local collection of configuration property = objects and =0A= * their specified values=0A= * @property config=0A= * @private=0A= * @type Object=0A= */ =0A= config: null,=0A= =0A= /**=0A= * Maintains the local collection of configuration property = objects as =0A= * they were initially applied.=0A= * This object is used when resetting a property.=0A= * @property initialConfig=0A= * @private=0A= * @type Object=0A= */ =0A= initialConfig: null,=0A= =0A= /**=0A= * Maintains the local, normalized CustomEvent queue=0A= * @property eventQueue=0A= * @private=0A= * @type Object=0A= */ =0A= eventQueue: null,=0A= =0A= /**=0A= * Custom Event, notifying subscribers when Config properties are = set =0A= * (setProperty is called without the silent flag=0A= * @event configChangedEvent=0A= */=0A= configChangedEvent: null,=0A= =0A= /**=0A= * Initializes the configuration Object and all of its local = members.=0A= * @method init=0A= * @param {Object} owner The owner Object to which this Config =0A= * Object belongs=0A= */=0A= init: function (owner) {=0A= =0A= this.owner =3D owner;=0A= =0A= this.configChangedEvent =3D =0A= this.createEvent(Config.CONFIG_CHANGED_EVENT);=0A= =0A= this.configChangedEvent.signature =3D CustomEvent.LIST;=0A= this.queueInProgress =3D false;=0A= this.config =3D {};=0A= this.initialConfig =3D {};=0A= this.eventQueue =3D [];=0A= =0A= },=0A= =0A= /**=0A= * Validates that the value passed in is a Boolean.=0A= * @method checkBoolean=0A= * @param {Object} val The value to validate=0A= * @return {Boolean} true, if the value is valid=0A= */ =0A= checkBoolean: function (val) {=0A= return (typeof val =3D=3D Config.BOOLEAN_TYPE);=0A= },=0A= =0A= /**=0A= * Validates that the value passed in is a number.=0A= * @method checkNumber=0A= * @param {Object} val The value to validate=0A= * @return {Boolean} true, if the value is valid=0A= */=0A= checkNumber: function (val) {=0A= return (!isNaN(val));=0A= },=0A= =0A= /**=0A= * Fires a configuration property event using the specified = value. =0A= * @method fireEvent=0A= * @private=0A= * @param {String} key The configuration property's name=0A= * @param {value} Object The value of the correct type for the = property=0A= */ =0A= fireEvent: function ( key, value ) {=0A= var property =3D this.config[key];=0A= =0A= if (property && property.event) {=0A= property.event.fire(value);=0A= } =0A= },=0A= =0A= /**=0A= * Adds a property to the Config Object's private config hash.=0A= * @method addProperty=0A= * @param {String} key The configuration property's name=0A= * @param {Object} propertyObject The Object containing all of = this =0A= * property's arguments=0A= */=0A= addProperty: function ( key, propertyObject ) {=0A= key =3D key.toLowerCase();=0A= =0A= this.config[key] =3D propertyObject;=0A= =0A= propertyObject.event =3D this.createEvent(key, { scope: = this.owner });=0A= propertyObject.event.signature =3D CustomEvent.LIST;=0A= =0A= =0A= propertyObject.key =3D key;=0A= =0A= if (propertyObject.handler) {=0A= propertyObject.event.subscribe(propertyObject.handler, =0A= this.owner);=0A= }=0A= =0A= this.setProperty(key, propertyObject.value, true);=0A= =0A= if (! propertyObject.suppressEvent) {=0A= this.queueProperty(key, propertyObject.value);=0A= }=0A= =0A= },=0A= =0A= /**=0A= * Returns a key-value configuration map of the values currently = set in =0A= * the Config Object.=0A= * @method getConfig=0A= * @return {Object} The current config, represented in a = key-value map=0A= */=0A= getConfig: function () {=0A= =0A= var cfg =3D {},=0A= prop,=0A= property;=0A= =0A= for (prop in this.config) {=0A= property =3D this.config[prop];=0A= if (property && property.event) {=0A= cfg[prop] =3D property.value;=0A= }=0A= }=0A= =0A= return cfg;=0A= },=0A= =0A= /**=0A= * Returns the value of specified property.=0A= * @method getProperty=0A= * @param {String} key The name of the property=0A= * @return {Object} The value of the specified property=0A= */=0A= getProperty: function (key) {=0A= var property =3D this.config[key.toLowerCase()];=0A= if (property && property.event) {=0A= return property.value;=0A= } else {=0A= return undefined;=0A= }=0A= },=0A= =0A= /**=0A= * Resets the specified property's value to its initial value.=0A= * @method resetProperty=0A= * @param {String} key The name of the property=0A= * @return {Boolean} True is the property was reset, false if not=0A= */=0A= resetProperty: function (key) {=0A= =0A= key =3D key.toLowerCase();=0A= =0A= var property =3D this.config[key];=0A= =0A= if (property && property.event) {=0A= =0A= if (this.initialConfig[key] && =0A= !Lang.isUndefined(this.initialConfig[key])) {=0A= =0A= this.setProperty(key, this.initialConfig[key]);=0A= =0A= return true;=0A= =0A= }=0A= =0A= } else {=0A= =0A= return false;=0A= }=0A= =0A= },=0A= =0A= /**=0A= * Sets the value of a property. If the silent property is passed = as =0A= * true, the property's event will not be fired.=0A= * @method setProperty=0A= * @param {String} key The name of the property=0A= * @param {String} value The value to set the property to=0A= * @param {Boolean} silent Whether the value should be set = silently, =0A= * without firing the property event.=0A= * @return {Boolean} True, if the set was successful, false if it = failed.=0A= */=0A= setProperty: function (key, value, silent) {=0A= =0A= var property;=0A= =0A= key =3D key.toLowerCase();=0A= =0A= if (this.queueInProgress && ! silent) {=0A= // Currently running through a queue... =0A= this.queueProperty(key,value);=0A= return true;=0A= =0A= } else {=0A= property =3D this.config[key];=0A= if (property && property.event) {=0A= if (property.validator && = !property.validator(value)) {=0A= return false;=0A= } else {=0A= property.value =3D value;=0A= if (! silent) {=0A= this.fireEvent(key, value);=0A= this.configChangedEvent.fire([key, value]);=0A= }=0A= return true;=0A= }=0A= } else {=0A= return false;=0A= }=0A= }=0A= },=0A= =0A= /**=0A= * Sets the value of a property and queues its event to execute. = If the =0A= * event is already scheduled to execute, it is=0A= * moved from its current position to the end of the queue.=0A= * @method queueProperty=0A= * @param {String} key The name of the property=0A= * @param {String} value The value to set the property to=0A= * @return {Boolean} true, if the set was successful, false if =0A= * it failed.=0A= */ =0A= queueProperty: function (key, value) {=0A= =0A= key =3D key.toLowerCase();=0A= =0A= var property =3D this.config[key],=0A= foundDuplicate =3D false,=0A= iLen,=0A= queueItem,=0A= queueItemKey,=0A= queueItemValue,=0A= sLen,=0A= supercedesCheck,=0A= qLen,=0A= queueItemCheck,=0A= queueItemCheckKey,=0A= queueItemCheckValue,=0A= i,=0A= s,=0A= q;=0A= =0A= if (property && property.event) {=0A= =0A= if (!Lang.isUndefined(value) && property.validator && =0A= !property.validator(value)) { // validator=0A= return false;=0A= } else {=0A= =0A= if (!Lang.isUndefined(value)) {=0A= property.value =3D value;=0A= } else {=0A= value =3D property.value;=0A= }=0A= =0A= foundDuplicate =3D false;=0A= iLen =3D this.eventQueue.length;=0A= =0A= for (i =3D 0; i < iLen; i++) {=0A= queueItem =3D this.eventQueue[i];=0A= =0A= if (queueItem) {=0A= queueItemKey =3D queueItem[0];=0A= queueItemValue =3D queueItem[1];=0A= =0A= if (queueItemKey =3D=3D key) {=0A= =0A= /*=0A= found a dupe... push to end of = queue, null =0A= current item, and break=0A= */=0A= =0A= this.eventQueue[i] =3D null;=0A= =0A= this.eventQueue.push(=0A= [key, (!Lang.isUndefined(value) ? =0A= value : queueItemValue)]);=0A= =0A= foundDuplicate =3D true;=0A= break;=0A= }=0A= }=0A= }=0A= =0A= // this is a refire, or a new property in the queue=0A= =0A= if (! foundDuplicate && !Lang.isUndefined(value)) { =0A= this.eventQueue.push([key, value]);=0A= }=0A= }=0A= =0A= if (property.supercedes) {=0A= =0A= sLen =3D property.supercedes.length;=0A= =0A= for (s =3D 0; s < sLen; s++) {=0A= =0A= supercedesCheck =3D property.supercedes[s];=0A= qLen =3D this.eventQueue.length;=0A= =0A= for (q =3D 0; q < qLen; q++) {=0A= queueItemCheck =3D this.eventQueue[q];=0A= =0A= if (queueItemCheck) {=0A= queueItemCheckKey =3D queueItemCheck[0];=0A= queueItemCheckValue =3D = queueItemCheck[1];=0A= =0A= if (queueItemCheckKey =3D=3D =0A= supercedesCheck.toLowerCase() ) {=0A= =0A= = this.eventQueue.push([queueItemCheckKey, =0A= queueItemCheckValue]);=0A= =0A= this.eventQueue[q] =3D null;=0A= break;=0A= =0A= }=0A= }=0A= }=0A= }=0A= }=0A= =0A= =0A= return true;=0A= } else {=0A= return false;=0A= }=0A= },=0A= =0A= /**=0A= * Fires the event for a property using the property's current = value.=0A= * @method refireEvent=0A= * @param {String} key The name of the property=0A= */=0A= refireEvent: function (key) {=0A= =0A= key =3D key.toLowerCase();=0A= =0A= var property =3D this.config[key];=0A= =0A= if (property && property.event && =0A= =0A= !Lang.isUndefined(property.value)) {=0A= =0A= if (this.queueInProgress) {=0A= =0A= this.queueProperty(key);=0A= =0A= } else {=0A= =0A= this.fireEvent(key, property.value);=0A= =0A= }=0A= =0A= }=0A= },=0A= =0A= /**=0A= * Applies a key-value Object literal to the configuration, = replacing =0A= * any existing values, and queueing the property events.=0A= * Although the values will be set, fireQueue() must be called = for their =0A= * associated events to execute.=0A= * @method applyConfig=0A= * @param {Object} userConfig The configuration Object literal=0A= * @param {Boolean} init When set to true, the initialConfig = will =0A= * be set to the userConfig passed in, so that calling a reset = will =0A= * reset the properties to the passed values.=0A= */=0A= applyConfig: function (userConfig, init) {=0A= =0A= var sKey,=0A= oValue,=0A= oConfig;=0A= =0A= if (init) {=0A= =0A= oConfig =3D {};=0A= =0A= for (sKey in userConfig) {=0A= =0A= if (Lang.hasOwnProperty(userConfig, sKey)) {=0A= =0A= oConfig[sKey.toLowerCase()] =3D userConfig[sKey];=0A= =0A= }=0A= =0A= }=0A= =0A= this.initialConfig =3D oConfig;=0A= =0A= }=0A= =0A= for (sKey in userConfig) {=0A= =0A= if (Lang.hasOwnProperty(userConfig, sKey)) {=0A= =0A= this.queueProperty(sKey, userConfig[sKey]);=0A= =0A= }=0A= =0A= }=0A= =0A= },=0A= =0A= /**=0A= * Refires the events for all configuration properties using = their =0A= * current values.=0A= * @method refresh=0A= */=0A= refresh: function () {=0A= =0A= var prop;=0A= =0A= for (prop in this.config) {=0A= this.refireEvent(prop);=0A= }=0A= },=0A= =0A= /**=0A= * Fires the normalized list of queued property change events=0A= * @method fireQueue=0A= */=0A= fireQueue: function () {=0A= =0A= var i, =0A= queueItem,=0A= key,=0A= value,=0A= property;=0A= =0A= this.queueInProgress =3D true;=0A= for (i =3D 0;i < this.eventQueue.length; i++) {=0A= queueItem =3D this.eventQueue[i];=0A= if (queueItem) {=0A= =0A= key =3D queueItem[0];=0A= value =3D queueItem[1];=0A= property =3D this.config[key];=0A= =0A= property.value =3D value;=0A= =0A= this.fireEvent(key,value);=0A= }=0A= }=0A= =0A= this.queueInProgress =3D false;=0A= this.eventQueue =3D [];=0A= },=0A= =0A= /**=0A= * Subscribes an external handler to the change event for any =0A= * given property. =0A= * @method subscribeToConfigEvent=0A= * @param {String} key The property name=0A= * @param {Function} handler The handler function to use = subscribe to =0A= * the property's event=0A= * @param {Object} obj The Object to use for scoping the event = handler =0A= * (see CustomEvent documentation)=0A= * @param {Boolean} override Optional. If true, will override = "this" =0A= * within the handler to map to the scope Object passed into the = method.=0A= * @return {Boolean} True, if the subscription was successful, =0A= * otherwise false.=0A= */ =0A= subscribeToConfigEvent: function (key, handler, obj, override) {=0A= =0A= var property =3D this.config[key.toLowerCase()];=0A= =0A= if (property && property.event) {=0A= =0A= if (!Config.alreadySubscribed(property.event, handler, = obj)) {=0A= =0A= property.event.subscribe(handler, obj, override);=0A= =0A= }=0A= =0A= return true;=0A= =0A= } else {=0A= =0A= return false;=0A= =0A= }=0A= =0A= },=0A= =0A= /**=0A= * Unsubscribes an external handler from the change event for any =0A= * given property. =0A= * @method unsubscribeFromConfigEvent=0A= * @param {String} key The property name=0A= * @param {Function} handler The handler function to use = subscribe to =0A= * the property's event=0A= * @param {Object} obj The Object to use for scoping the event =0A= * handler (see CustomEvent documentation)=0A= * @return {Boolean} True, if the unsubscription was successful, =0A= * otherwise false.=0A= */=0A= unsubscribeFromConfigEvent: function (key, handler, obj) {=0A= var property =3D this.config[key.toLowerCase()];=0A= if (property && property.event) {=0A= return property.event.unsubscribe(handler, obj);=0A= } else {=0A= return false;=0A= }=0A= },=0A= =0A= /**=0A= * Returns a string representation of the Config object=0A= * @method toString=0A= * @return {String} The Config object in string format.=0A= */=0A= toString: function () {=0A= var output =3D "Config";=0A= if (this.owner) {=0A= output +=3D " [" + this.owner.toString() + "]";=0A= }=0A= return output;=0A= },=0A= =0A= /**=0A= * Returns a string representation of the Config object's current =0A= * CustomEvent queue=0A= * @method outputEventQueue=0A= * @return {String} The string list of CustomEvents currently = queued =0A= * for execution=0A= */=0A= outputEventQueue: function () {=0A= =0A= var output =3D "",=0A= queueItem,=0A= q,=0A= nQueue =3D this.eventQueue.length;=0A= =0A= for (q =3D 0; q < nQueue; q++) {=0A= queueItem =3D this.eventQueue[q];=0A= if (queueItem) {=0A= output +=3D queueItem[0] + "=3D" + queueItem[1] + ", = ";=0A= }=0A= }=0A= return output;=0A= },=0A= =0A= /**=0A= * Sets all properties to null, unsubscribes all listeners from = each =0A= * property's change event and all listeners from the = configChangedEvent.=0A= * @method destroy=0A= */=0A= destroy: function () {=0A= =0A= var oConfig =3D this.config,=0A= sProperty,=0A= oProperty;=0A= =0A= =0A= for (sProperty in oConfig) {=0A= =0A= if (Lang.hasOwnProperty(oConfig, sProperty)) {=0A= =0A= oProperty =3D oConfig[sProperty];=0A= =0A= oProperty.event.unsubscribeAll();=0A= oProperty.event =3D null;=0A= =0A= }=0A= =0A= }=0A= =0A= this.configChangedEvent.unsubscribeAll();=0A= =0A= this.configChangedEvent =3D null;=0A= this.owner =3D null;=0A= this.config =3D null;=0A= this.initialConfig =3D null;=0A= this.eventQueue =3D null;=0A= =0A= }=0A= =0A= };=0A= =0A= =0A= =0A= /**=0A= * Checks to determine if a particular function/Object pair are = already =0A= * subscribed to the specified CustomEvent=0A= * @method YAHOO.util.Config.alreadySubscribed=0A= * @static=0A= * @param {YAHOO.util.CustomEvent} evt The CustomEvent for which to = check =0A= * the subscriptions=0A= * @param {Function} fn The function to look for in the subscribers = list=0A= * @param {Object} obj The execution scope Object for the subscription=0A= * @return {Boolean} true, if the function/Object pair is already = subscribed =0A= * to the CustomEvent passed in=0A= */=0A= Config.alreadySubscribed =3D function (evt, fn, obj) {=0A= =0A= var nSubscribers =3D evt.subscribers.length,=0A= subsc,=0A= i;=0A= =0A= if (nSubscribers > 0) {=0A= =0A= i =3D nSubscribers - 1;=0A= =0A= do {=0A= =0A= subsc =3D evt.subscribers[i];=0A= =0A= if (subsc && subsc.obj =3D=3D obj && subsc.fn =3D=3D fn) = {=0A= =0A= return true;=0A= =0A= } =0A= =0A= }=0A= while (i--);=0A= =0A= }=0A= =0A= return false;=0A= =0A= };=0A= =0A= YAHOO.lang.augmentProto(Config, YAHOO.util.EventProvider);=0A= =0A= }());=0A= =0A= (function () {=0A= =0A= /**=0A= * The Container family of components is designed to enable = developers to =0A= * create different kinds of content-containing modules on the web. = Module =0A= * and Overlay are the most basic containers, and they can be used = directly =0A= * or extended to build custom containers. Also part of the Container = family =0A= * are four UI controls that extend Module and Overlay: Tooltip, = Panel, =0A= * Dialog, and SimpleDialog.=0A= * @module container=0A= * @title Container=0A= * @requires yahoo, dom, event =0A= * @optional dragdrop, animation, button=0A= */=0A= =0A= /**=0A= * Module is a JavaScript representation of the Standard Module = Format. =0A= * Standard Module Format is a simple standard for markup containers = where =0A= * child nodes representing the header, body, and footer of the = content are =0A= * denoted using the CSS classes "hd", "bd", and "ft" respectively. =0A= * Module is the base class for all other classes in the YUI =0A= * Container package.=0A= * @namespace YAHOO.widget=0A= * @class Module=0A= * @constructor=0A= * @param {String} el The element ID representing the Module = OR=0A= * @param {HTMLElement} el The element representing the Module=0A= * @param {Object} userConfig The configuration Object literal = containing =0A= * the configuration that should be set for this module. See = configuration =0A= * documentation for more details.=0A= */=0A= YAHOO.widget.Module =3D function (el, userConfig) {=0A= if (el) {=0A= this.init(el, userConfig);=0A= } else {=0A= }=0A= };=0A= =0A= var Dom =3D YAHOO.util.Dom,=0A= Config =3D YAHOO.util.Config,=0A= Event =3D YAHOO.util.Event,=0A= CustomEvent =3D YAHOO.util.CustomEvent,=0A= Module =3D YAHOO.widget.Module,=0A= =0A= m_oModuleTemplate,=0A= m_oHeaderTemplate,=0A= m_oBodyTemplate,=0A= m_oFooterTemplate,=0A= =0A= /**=0A= * Constant representing the name of the Module's events=0A= * @property EVENT_TYPES=0A= * @private=0A= * @final=0A= * @type Object=0A= */=0A= EVENT_TYPES =3D {=0A= =0A= "BEFORE_INIT": "beforeInit",=0A= "INIT": "init",=0A= "APPEND": "append",=0A= "BEFORE_RENDER": "beforeRender",=0A= "RENDER": "render",=0A= "CHANGE_HEADER": "changeHeader",=0A= "CHANGE_BODY": "changeBody",=0A= "CHANGE_FOOTER": "changeFooter",=0A= "CHANGE_CONTENT": "changeContent",=0A= "DESTORY": "destroy",=0A= "BEFORE_SHOW": "beforeShow",=0A= "SHOW": "show",=0A= "BEFORE_HIDE": "beforeHide",=0A= "HIDE": "hide"=0A= =0A= },=0A= =0A= /**=0A= * Constant representing the Module's configuration properties=0A= * @property DEFAULT_CONFIG=0A= * @private=0A= * @final=0A= * @type Object=0A= */=0A= DEFAULT_CONFIG =3D {=0A= =0A= "VISIBLE": { =0A= key: "visible", =0A= value: true, =0A= validator: YAHOO.lang.isBoolean =0A= },=0A= =0A= "EFFECT": { =0A= key: "effect", =0A= suppressEvent: true, =0A= supercedes: ["visible"] =0A= },=0A= =0A= "MONITOR_RESIZE": { =0A= key: "monitorresize", =0A= value: true =0A= },=0A= =0A= "APPEND_TO_DOCUMENT_BODY": { =0A= key: "appendtodocumentbody", =0A= value: false=0A= }=0A= };=0A= =0A= /**=0A= * Constant representing the prefix path to use for non-secure images=0A= * @property YAHOO.widget.Module.IMG_ROOT=0A= * @static=0A= * @final=0A= * @type String=0A= */=0A= Module.IMG_ROOT =3D null;=0A= =0A= /**=0A= * Constant representing the prefix path to use for securely served = images=0A= * @property YAHOO.widget.Module.IMG_ROOT_SSL=0A= * @static=0A= * @final=0A= * @type String=0A= */=0A= Module.IMG_ROOT_SSL =3D null;=0A= =0A= /**=0A= * Constant for the default CSS class name that represents a Module=0A= * @property YAHOO.widget.Module.CSS_MODULE=0A= * @static=0A= * @final=0A= * @type String=0A= */=0A= Module.CSS_MODULE =3D "yui-module";=0A= =0A= /**=0A= * Constant representing the module header=0A= * @property YAHOO.widget.Module.CSS_HEADER=0A= * @static=0A= * @final=0A= * @type String=0A= */=0A= Module.CSS_HEADER =3D "hd";=0A= =0A= /**=0A= * Constant representing the module body=0A= * @property YAHOO.widget.Module.CSS_BODY=0A= * @static=0A= * @final=0A= * @type String=0A= */=0A= Module.CSS_BODY =3D "bd";=0A= =0A= /**=0A= * Constant representing the module footer=0A= * @property YAHOO.widget.Module.CSS_FOOTER=0A= * @static=0A= * @final=0A= * @type String=0A= */=0A= Module.CSS_FOOTER =3D "ft";=0A= =0A= /**=0A= * Constant representing the url for the "src" attribute of the = iframe =0A= * used to monitor changes to the browser's base font size=0A= * @property YAHOO.widget.Module.RESIZE_MONITOR_SECURE_URL=0A= * @static=0A= * @final=0A= * @type String=0A= */=0A= Module.RESIZE_MONITOR_SECURE_URL =3D "javascript:false;";=0A= =0A= /**=0A= * Singleton CustomEvent fired when the font size is changed in the = browser.=0A= * Opera's "zoom" functionality currently does not support text =0A= * size detection.=0A= * @event YAHOO.widget.Module.textResizeEvent=0A= */=0A= Module.textResizeEvent =3D new CustomEvent("textResize");=0A= =0A= function createModuleTemplate() {=0A= =0A= if (!m_oModuleTemplate) {=0A= m_oModuleTemplate =3D document.createElement("div");=0A= =0A= m_oModuleTemplate.innerHTML =3D ("
      " + "
      ");=0A= =0A= m_oHeaderTemplate =3D m_oModuleTemplate.firstChild;=0A= m_oBodyTemplate =3D m_oHeaderTemplate.nextSibling;=0A= m_oFooterTemplate =3D m_oBodyTemplate.nextSibling;=0A= }=0A= =0A= return m_oModuleTemplate;=0A= }=0A= =0A= function createHeader() {=0A= if (!m_oHeaderTemplate) {=0A= createModuleTemplate();=0A= }=0A= return (m_oHeaderTemplate.cloneNode(false));=0A= }=0A= =0A= function createBody() {=0A= if (!m_oBodyTemplate) {=0A= createModuleTemplate();=0A= }=0A= return (m_oBodyTemplate.cloneNode(false));=0A= }=0A= =0A= function createFooter() {=0A= if (!m_oFooterTemplate) {=0A= createModuleTemplate();=0A= }=0A= return (m_oFooterTemplate.cloneNode(false));=0A= }=0A= =0A= Module.prototype =3D {=0A= =0A= /**=0A= * The class's constructor function=0A= * @property contructor=0A= * @type Function=0A= */=0A= constructor: Module,=0A= =0A= /**=0A= * The main module element that contains the header, body, and = footer=0A= * @property element=0A= * @type HTMLElement=0A= */=0A= element: null,=0A= =0A= /**=0A= * The header element, denoted with CSS class "hd"=0A= * @property header=0A= * @type HTMLElement=0A= */=0A= header: null,=0A= =0A= /**=0A= * The body element, denoted with CSS class "bd"=0A= * @property body=0A= * @type HTMLElement=0A= */=0A= body: null,=0A= =0A= /**=0A= * The footer element, denoted with CSS class "ft"=0A= * @property footer=0A= * @type HTMLElement=0A= */=0A= footer: null,=0A= =0A= /**=0A= * The id of the element=0A= * @property id=0A= * @type String=0A= */=0A= id: null,=0A= =0A= /**=0A= * A string representing the root path for all images created by=0A= * a Module instance.=0A= * @deprecated It is recommend that any images for a Module be = applied=0A= * via CSS using the "background-image" property.=0A= * @property imageRoot=0A= * @type String=0A= */=0A= imageRoot: Module.IMG_ROOT,=0A= =0A= /**=0A= * Initializes the custom events for Module which are fired =0A= * automatically at appropriate times by the Module class.=0A= * @method initEvents=0A= */=0A= initEvents: function () {=0A= =0A= var SIGNATURE =3D CustomEvent.LIST;=0A= =0A= /**=0A= * CustomEvent fired prior to class initalization.=0A= * @event beforeInitEvent=0A= * @param {class} classRef class reference of the = initializing =0A= * class, such as this.beforeInitEvent.fire(Module)=0A= */=0A= this.beforeInitEvent =3D = this.createEvent(EVENT_TYPES.BEFORE_INIT);=0A= this.beforeInitEvent.signature =3D SIGNATURE;=0A= =0A= /**=0A= * CustomEvent fired after class initalization.=0A= * @event initEvent=0A= * @param {class} classRef class reference of the = initializing =0A= * class, such as this.beforeInitEvent.fire(Module)=0A= */ =0A= this.initEvent =3D this.createEvent(EVENT_TYPES.INIT);=0A= this.initEvent.signature =3D SIGNATURE;=0A= =0A= /**=0A= * CustomEvent fired when the Module is appended to the DOM=0A= * @event appendEvent=0A= */=0A= this.appendEvent =3D this.createEvent(EVENT_TYPES.APPEND);=0A= this.appendEvent.signature =3D SIGNATURE;=0A= =0A= /**=0A= * CustomEvent fired before the Module is rendered=0A= * @event beforeRenderEvent=0A= */=0A= this.beforeRenderEvent =3D = this.createEvent(EVENT_TYPES.BEFORE_RENDER);=0A= this.beforeRenderEvent.signature =3D SIGNATURE;=0A= =0A= /**=0A= * CustomEvent fired after the Module is rendered=0A= * @event renderEvent=0A= */=0A= this.renderEvent =3D this.createEvent(EVENT_TYPES.RENDER);=0A= this.renderEvent.signature =3D SIGNATURE;=0A= =0A= /**=0A= * CustomEvent fired when the header content of the Module =0A= * is modified=0A= * @event changeHeaderEvent=0A= * @param {String/HTMLElement} content String/element = representing =0A= * the new header content=0A= */=0A= this.changeHeaderEvent =3D = this.createEvent(EVENT_TYPES.CHANGE_HEADER);=0A= this.changeHeaderEvent.signature =3D SIGNATURE;=0A= =0A= /**=0A= * CustomEvent fired when the body content of the Module is = modified=0A= * @event changeBodyEvent=0A= * @param {String/HTMLElement} content String/element = representing =0A= * the new body content=0A= */ =0A= this.changeBodyEvent =3D = this.createEvent(EVENT_TYPES.CHANGE_BODY);=0A= this.changeBodyEvent.signature =3D SIGNATURE;=0A= =0A= /**=0A= * CustomEvent fired when the footer content of the Module =0A= * is modified=0A= * @event changeFooterEvent=0A= * @param {String/HTMLElement} content String/element = representing =0A= * the new footer content=0A= */=0A= this.changeFooterEvent =3D = this.createEvent(EVENT_TYPES.CHANGE_FOOTER);=0A= this.changeFooterEvent.signature =3D SIGNATURE;=0A= =0A= /**=0A= * CustomEvent fired when the content of the Module is = modified=0A= * @event changeContentEvent=0A= */=0A= this.changeContentEvent =3D = this.createEvent(EVENT_TYPES.CHANGE_CONTENT);=0A= this.changeContentEvent.signature =3D SIGNATURE;=0A= =0A= /**=0A= * CustomEvent fired when the Module is destroyed=0A= * @event destroyEvent=0A= */=0A= this.destroyEvent =3D this.createEvent(EVENT_TYPES.DESTORY);=0A= this.destroyEvent.signature =3D SIGNATURE;=0A= =0A= /**=0A= * CustomEvent fired before the Module is shown=0A= * @event beforeShowEvent=0A= */=0A= this.beforeShowEvent =3D = this.createEvent(EVENT_TYPES.BEFORE_SHOW);=0A= this.beforeShowEvent.signature =3D SIGNATURE;=0A= =0A= /**=0A= * CustomEvent fired after the Module is shown=0A= * @event showEvent=0A= */=0A= this.showEvent =3D this.createEvent(EVENT_TYPES.SHOW);=0A= this.showEvent.signature =3D SIGNATURE;=0A= =0A= /**=0A= * CustomEvent fired before the Module is hidden=0A= * @event beforeHideEvent=0A= */=0A= this.beforeHideEvent =3D = this.createEvent(EVENT_TYPES.BEFORE_HIDE);=0A= this.beforeHideEvent.signature =3D SIGNATURE;=0A= =0A= /**=0A= * CustomEvent fired after the Module is hidden=0A= * @event hideEvent=0A= */=0A= this.hideEvent =3D this.createEvent(EVENT_TYPES.HIDE);=0A= this.hideEvent.signature =3D SIGNATURE;=0A= }, =0A= =0A= /**=0A= * String representing the current user-agent platform=0A= * @property platform=0A= * @type String=0A= */=0A= platform: function () {=0A= var ua =3D navigator.userAgent.toLowerCase();=0A= =0A= if (ua.indexOf("windows") !=3D -1 || ua.indexOf("win32") = !=3D -1) {=0A= return "windows";=0A= } else if (ua.indexOf("macintosh") !=3D -1) {=0A= return "mac";=0A= } else {=0A= return false;=0A= }=0A= }(),=0A= =0A= /**=0A= * String representing the user-agent of the browser=0A= * @deprecated Use YAHOO.env.ua=0A= * @property browser=0A= * @type String=0A= */=0A= browser: function () {=0A= var ua =3D navigator.userAgent.toLowerCase();=0A= /*=0A= Check Opera first in case of spoof and check Safari = before=0A= Gecko since Safari's user agent string includes "like = Gecko"=0A= */=0A= if (ua.indexOf('opera') !=3D -1) { =0A= return 'opera';=0A= } else if (ua.indexOf('msie 7') !=3D -1) {=0A= return 'ie7';=0A= } else if (ua.indexOf('msie') !=3D -1) {=0A= return 'ie';=0A= } else if (ua.indexOf('safari') !=3D -1) { =0A= return 'safari';=0A= } else if (ua.indexOf('gecko') !=3D -1) {=0A= return 'gecko';=0A= } else {=0A= return false;=0A= }=0A= }(),=0A= =0A= /**=0A= * Boolean representing whether or not the current browsing = context is =0A= * secure (https)=0A= * @property isSecure=0A= * @type Boolean=0A= */=0A= isSecure: function () {=0A= if (window.location.href.toLowerCase().indexOf("https") = =3D=3D=3D 0) {=0A= return true;=0A= } else {=0A= return false;=0A= }=0A= }(),=0A= =0A= /**=0A= * Initializes the custom events for Module which are fired =0A= * automatically at appropriate times by the Module class.=0A= */=0A= initDefaultConfig: function () {=0A= // Add properties //=0A= /**=0A= * Specifies whether the Module is visible on the page.=0A= * @config visible=0A= * @type Boolean=0A= * @default true=0A= */=0A= this.cfg.addProperty(DEFAULT_CONFIG.VISIBLE.key, {=0A= handler: this.configVisible, =0A= value: DEFAULT_CONFIG.VISIBLE.value, =0A= validator: DEFAULT_CONFIG.VISIBLE.validator=0A= });=0A= =0A= /**=0A= * Object or array of objects representing the = ContainerEffect =0A= * classes that are active for animating the container.=0A= * @config effect=0A= * @type Object=0A= * @default null=0A= */=0A= this.cfg.addProperty(DEFAULT_CONFIG.EFFECT.key, {=0A= suppressEvent: DEFAULT_CONFIG.EFFECT.suppressEvent, =0A= supercedes: DEFAULT_CONFIG.EFFECT.supercedes=0A= });=0A= =0A= /**=0A= * Specifies whether to create a special proxy iframe to = monitor =0A= * for user font resizing in the document=0A= * @config monitorresize=0A= * @type Boolean=0A= * @default true=0A= */=0A= this.cfg.addProperty(DEFAULT_CONFIG.MONITOR_RESIZE.key, {=0A= handler: this.configMonitorResize,=0A= value: DEFAULT_CONFIG.MONITOR_RESIZE.value=0A= });=0A= =0A= /**=0A= * Specifies if the module should be rendered as the first = child =0A= * of document.body or appended as the last child when render = is called=0A= * with document.body as the "appendToNode".=0A= *

      =0A= * Appending to the body while the DOM is still being = constructed can =0A= * lead to Operation Aborted errors in IE hence this flag is = set to =0A= * false by default.=0A= *

      =0A= * =0A= * @config appendtodocumentbody=0A= * @type Boolean=0A= * @default false=0A= */=0A= = this.cfg.addProperty(DEFAULT_CONFIG.APPEND_TO_DOCUMENT_BODY.key, {=0A= value: DEFAULT_CONFIG.APPEND_TO_DOCUMENT_BODY.value=0A= });=0A= },=0A= =0A= /**=0A= * The Module class's initialization method, which is executed for=0A= * Module and all of its subclasses. This method is automatically =0A= * called by the constructor, and sets up all DOM references for =0A= * pre-existing markup, and creates required markup if it is not =0A= * already present.=0A= * @method init=0A= * @param {String} el The element ID representing the Module = OR=0A= * @param {HTMLElement} el The element representing the Module=0A= * @param {Object} userConfig The configuration Object literal =0A= * containing the configuration that should be set for this = module. =0A= * See configuration documentation for more details.=0A= */=0A= init: function (el, userConfig) {=0A= =0A= var elId, i, child;=0A= =0A= this.initEvents();=0A= this.beforeInitEvent.fire(Module);=0A= =0A= /**=0A= * The Module's Config object used for monitoring =0A= * configuration properties.=0A= * @property cfg=0A= * @type YAHOO.util.Config=0A= */=0A= this.cfg =3D new Config(this);=0A= =0A= if (this.isSecure) {=0A= this.imageRoot =3D Module.IMG_ROOT_SSL;=0A= }=0A= =0A= if (typeof el =3D=3D "string") {=0A= elId =3D el;=0A= el =3D document.getElementById(el);=0A= if (! el) {=0A= el =3D (createModuleTemplate()).cloneNode(false);=0A= el.id =3D elId;=0A= }=0A= }=0A= =0A= this.element =3D el;=0A= =0A= if (el.id) {=0A= this.id =3D el.id;=0A= }=0A= =0A= child =3D this.element.firstChild;=0A= =0A= if (child) {=0A= var fndHd =3D false, fndBd =3D false, fndFt =3D false;=0A= do {=0A= // We're looking for elements=0A= if (1 =3D=3D child.nodeType) {=0A= if (!fndHd && Dom.hasClass(child, = Module.CSS_HEADER)) {=0A= this.header =3D child;=0A= fndHd =3D true;=0A= } else if (!fndBd && Dom.hasClass(child, = Module.CSS_BODY)) {=0A= this.body =3D child;=0A= fndBd =3D true;=0A= } else if (!fndFt && Dom.hasClass(child, = Module.CSS_FOOTER)){=0A= this.footer =3D child;=0A= fndFt =3D true;=0A= }=0A= }=0A= } while ((child =3D child.nextSibling));=0A= }=0A= =0A= this.initDefaultConfig();=0A= =0A= Dom.addClass(this.element, Module.CSS_MODULE);=0A= =0A= if (userConfig) {=0A= this.cfg.applyConfig(userConfig, true);=0A= }=0A= =0A= /*=0A= Subscribe to the fireQueue() method of Config so that = any =0A= queued configuration changes are excecuted upon render = of =0A= the Module=0A= */ =0A= =0A= if (!Config.alreadySubscribed(this.renderEvent, = this.cfg.fireQueue, this.cfg)) {=0A= this.renderEvent.subscribe(this.cfg.fireQueue, this.cfg, = true);=0A= }=0A= =0A= this.initEvent.fire(Module);=0A= },=0A= =0A= /**=0A= * Initialized an empty IFRAME that is placed out of the visible = area =0A= * that can be used to detect text resize.=0A= * @method initResizeMonitor=0A= */=0A= initResizeMonitor: function () {=0A= =0A= var oDoc, =0A= oIFrame, =0A= sHTML;=0A= =0A= function fireTextResize() {=0A= Module.textResizeEvent.fire();=0A= }=0A= =0A= if (!YAHOO.env.ua.opera) {=0A= oIFrame =3D Dom.get("_yuiResizeMonitor");=0A= =0A= if (!oIFrame) {=0A= oIFrame =3D document.createElement("iframe");=0A= =0A= if (this.isSecure && = Module.RESIZE_MONITOR_SECURE_URL && YAHOO.env.ua.ie) {=0A= oIFrame.src =3D Module.RESIZE_MONITOR_SECURE_URL;=0A= }=0A= =0A= /*=0A= Need to set "src" attribute of the iframe to =0A= prevent the browser from reporting duplicate =0A= cookies. (See SourceForge bug #1721755)=0A= */=0A= if (YAHOO.env.ua.gecko) {=0A= sHTML =3D "" + =0A= "";=0A= =0A= oIFrame.src =3D = "data:text/html;charset=3Dutf-8," + =0A= encodeURIComponent(sHTML);=0A= }=0A= =0A= oIFrame.id =3D "_yuiResizeMonitor";=0A= /*=0A= Need to set "position" property before inserting = the =0A= iframe into the document or Safari's status bar = will =0A= forever indicate the iframe is loading =0A= (See SourceForge bug #1723064)=0A= */=0A= oIFrame.style.position =3D "absolute";=0A= oIFrame.style.visibility =3D "hidden";=0A= =0A= var fc =3D document.body.firstChild;=0A= if (fc) {=0A= document.body.insertBefore(oIFrame, fc);=0A= } else {=0A= document.body.appendChild(oIFrame);=0A= }=0A= =0A= oIFrame.style.width =3D "10em";=0A= oIFrame.style.height =3D "10em";=0A= oIFrame.style.top =3D (-1 * oIFrame.offsetHeight) + = "px";=0A= oIFrame.style.left =3D (-1 * oIFrame.offsetWidth) + = "px";=0A= oIFrame.style.borderWidth =3D "0";=0A= oIFrame.style.visibility =3D "visible";=0A= =0A= if (YAHOO.env.ua.webkit) {=0A= oDoc =3D oIFrame.contentWindow.document;=0A= oDoc.open();=0A= oDoc.close();=0A= }=0A= }=0A= =0A= if (oIFrame && oIFrame.contentWindow) {=0A= Module.textResizeEvent.subscribe(this.onDomResize, = this, true);=0A= =0A= if (!Module.textResizeInitialized) {=0A= if (!Event.on(oIFrame.contentWindow, "resize", = fireTextResize)) {=0A= /*=0A= This will fail in IE if document.domain = has =0A= changed, so we must change the listener = to =0A= use the oIFrame element instead=0A= */=0A= Event.on(oIFrame, "resize", fireTextResize);=0A= }=0A= Module.textResizeInitialized =3D true;=0A= }=0A= this.resizeMonitor =3D oIFrame;=0A= }=0A= }=0A= },=0A= =0A= /**=0A= * Event handler fired when the resize monitor element is resized.=0A= * @method onDomResize=0A= * @param {DOMEvent} e The DOM resize event=0A= * @param {Object} obj The scope object passed to the handler=0A= */=0A= onDomResize: function (e, obj) {=0A= =0A= var nLeft =3D -1 * this.resizeMonitor.offsetWidth,=0A= nTop =3D -1 * this.resizeMonitor.offsetHeight;=0A= =0A= this.resizeMonitor.style.top =3D nTop + "px";=0A= this.resizeMonitor.style.left =3D nLeft + "px";=0A= =0A= },=0A= =0A= /**=0A= * Sets the Module's header content to the HTML specified, or = appends =0A= * the passed element to the header. If no header is present, one = will =0A= * be automatically created.=0A= * @method setHeader=0A= * @param {String} headerContent The HTML used to set the header =0A= * OR=0A= * @param {HTMLElement} headerContent The HTMLElement to append = to =0A= * the header=0A= */=0A= setHeader: function (headerContent) {=0A= =0A= var oHeader =3D this.header || (this.header =3D = createHeader());=0A= =0A= if (typeof headerContent =3D=3D "string") {=0A= =0A= oHeader.innerHTML =3D headerContent;=0A= =0A= } else {=0A= =0A= oHeader.innerHTML =3D "";=0A= oHeader.appendChild(headerContent);=0A= =0A= }=0A= =0A= this.changeHeaderEvent.fire(headerContent);=0A= this.changeContentEvent.fire();=0A= =0A= },=0A= =0A= /**=0A= * Appends the passed element to the header. If no header is = present, =0A= * one will be automatically created.=0A= * @method appendToHeader=0A= * @param {HTMLElement} element The element to append to the = header=0A= */=0A= appendToHeader: function (element) {=0A= =0A= var oHeader =3D this.header || (this.header =3D = createHeader());=0A= =0A= oHeader.appendChild(element);=0A= =0A= this.changeHeaderEvent.fire(element);=0A= this.changeContentEvent.fire();=0A= =0A= },=0A= =0A= /**=0A= * Sets the Module's body content to the HTML specified, or = appends the=0A= * passed element to the body. If no body is present, one will be =0A= * automatically created.=0A= * @method setBody=0A= * @param {String} bodyContent The HTML used to set the body = OR=0A= * @param {HTMLElement} bodyContent The HTMLElement to append to = the body=0A= */=0A= setBody: function (bodyContent) {=0A= =0A= var oBody =3D this.body || (this.body =3D createBody());=0A= =0A= if (typeof bodyContent =3D=3D "string") {=0A= =0A= oBody.innerHTML =3D bodyContent;=0A= =0A= } else {=0A= =0A= oBody.innerHTML =3D "";=0A= oBody.appendChild(bodyContent);=0A= =0A= }=0A= =0A= this.changeBodyEvent.fire(bodyContent);=0A= this.changeContentEvent.fire();=0A= =0A= },=0A= =0A= /**=0A= * Appends the passed element to the body. If no body is present, = one =0A= * will be automatically created.=0A= * @method appendToBody=0A= * @param {HTMLElement} element The element to append to the body=0A= */=0A= appendToBody: function (element) {=0A= =0A= var oBody =3D this.body || (this.body =3D createBody());=0A= =0A= oBody.appendChild(element);=0A= =0A= this.changeBodyEvent.fire(element);=0A= this.changeContentEvent.fire();=0A= =0A= },=0A= =0A= /**=0A= * Sets the Module's footer content to the HTML specified, or = appends =0A= * the passed element to the footer. If no footer is present, one = will =0A= * be automatically created.=0A= * @method setFooter=0A= * @param {String} footerContent The HTML used to set the footer =0A= * OR=0A= * @param {HTMLElement} footerContent The HTMLElement to append = to =0A= * the footer=0A= */=0A= setFooter: function (footerContent) {=0A= =0A= var oFooter =3D this.footer || (this.footer =3D = createFooter());=0A= =0A= if (typeof footerContent =3D=3D "string") {=0A= =0A= oFooter.innerHTML =3D footerContent;=0A= =0A= } else {=0A= =0A= oFooter.innerHTML =3D "";=0A= oFooter.appendChild(footerContent);=0A= =0A= }=0A= =0A= this.changeFooterEvent.fire(footerContent);=0A= this.changeContentEvent.fire();=0A= =0A= },=0A= =0A= /**=0A= * Appends the passed element to the footer. If no footer is = present, =0A= * one will be automatically created.=0A= * @method appendToFooter=0A= * @param {HTMLElement} element The element to append to the = footer=0A= */=0A= appendToFooter: function (element) {=0A= =0A= var oFooter =3D this.footer || (this.footer =3D = createFooter());=0A= =0A= oFooter.appendChild(element);=0A= =0A= this.changeFooterEvent.fire(element);=0A= this.changeContentEvent.fire();=0A= =0A= },=0A= =0A= /**=0A= * Renders the Module by inserting the elements that are not = already =0A= * in the main Module into their correct places. Optionally = appends =0A= * the Module to the specified node prior to the render's = execution. =0A= *

      =0A= * For Modules without existing markup, the appendToNode argument =0A= * is REQUIRED. If this argument is ommitted and the current = element is =0A= * not present in the document, the function will return false, =0A= * indicating that the render was a failure.=0A= *

      =0A= *

      =0A= * NOTE: As of 2.3.1, if the appendToNode is the document's body = element=0A= * then the module is rendered as the first child of the body = element, =0A= * and not appended to it, to avoid Operation Aborted errors in = IE when =0A= * rendering the module before window's load event is fired. You = can =0A= * use the appendtodocumentbody configuration property to change = this =0A= * to append to document.body if required.=0A= *

      =0A= * @method render=0A= * @param {String} appendToNode The element id to which the = Module =0A= * should be appended to prior to rendering OR=0A= * @param {HTMLElement} appendToNode The element to which the = Module =0A= * should be appended to prior to rendering=0A= * @param {HTMLElement} moduleElement OPTIONAL. The element that =0A= * represents the actual Standard Module container.=0A= * @return {Boolean} Success or failure of the render=0A= */=0A= render: function (appendToNode, moduleElement) {=0A= =0A= var me =3D this,=0A= firstChild;=0A= =0A= function appendTo(parentNode) {=0A= if (typeof parentNode =3D=3D "string") {=0A= parentNode =3D document.getElementById(parentNode);=0A= }=0A= =0A= if (parentNode) {=0A= me._addToParent(parentNode, me.element);=0A= me.appendEvent.fire();=0A= }=0A= }=0A= =0A= this.beforeRenderEvent.fire();=0A= =0A= if (! moduleElement) {=0A= moduleElement =3D this.element;=0A= }=0A= =0A= if (appendToNode) {=0A= appendTo(appendToNode);=0A= } else { =0A= // No node was passed in. If the element is not already = in the Dom, this fails=0A= if (! Dom.inDocument(this.element)) {=0A= return false;=0A= }=0A= }=0A= =0A= // Need to get everything into the DOM if it isn't already=0A= if (this.header && ! Dom.inDocument(this.header)) {=0A= // There is a header, but it's not in the DOM yet. Need = to add it.=0A= firstChild =3D moduleElement.firstChild;=0A= if (firstChild) {=0A= moduleElement.insertBefore(this.header, firstChild);=0A= } else {=0A= moduleElement.appendChild(this.header);=0A= }=0A= }=0A= =0A= if (this.body && ! Dom.inDocument(this.body)) {=0A= // There is a body, but it's not in the DOM yet. Need to = add it. =0A= if (this.footer && Dom.isAncestor(this.moduleElement, = this.footer)) {=0A= moduleElement.insertBefore(this.body, this.footer);=0A= } else {=0A= moduleElement.appendChild(this.body);=0A= }=0A= }=0A= =0A= if (this.footer && ! Dom.inDocument(this.footer)) {=0A= // There is a footer, but it's not in the DOM yet. Need = to add it.=0A= moduleElement.appendChild(this.footer);=0A= }=0A= =0A= this.renderEvent.fire();=0A= return true;=0A= },=0A= =0A= /**=0A= * Removes the Module element from the DOM and sets all child = elements =0A= * to null.=0A= * @method destroy=0A= */=0A= destroy: function () {=0A= =0A= var parent,=0A= e;=0A= =0A= if (this.element) {=0A= Event.purgeElement(this.element, true);=0A= parent =3D this.element.parentNode;=0A= }=0A= =0A= if (parent) {=0A= parent.removeChild(this.element);=0A= }=0A= =0A= this.element =3D null;=0A= this.header =3D null;=0A= this.body =3D null;=0A= this.footer =3D null;=0A= =0A= Module.textResizeEvent.unsubscribe(this.onDomResize, this);=0A= =0A= this.cfg.destroy();=0A= this.cfg =3D null;=0A= =0A= this.destroyEvent.fire();=0A= =0A= for (e in this) {=0A= if (e instanceof CustomEvent) {=0A= e.unsubscribeAll();=0A= }=0A= }=0A= =0A= },=0A= =0A= /**=0A= * Shows the Module element by setting the visible configuration =0A= * property to true. Also fires two events: beforeShowEvent prior = to =0A= * the visibility change, and showEvent after.=0A= * @method show=0A= */=0A= show: function () {=0A= this.cfg.setProperty("visible", true);=0A= },=0A= =0A= /**=0A= * Hides the Module element by setting the visible configuration =0A= * property to false. Also fires two events: beforeHideEvent = prior to =0A= * the visibility change, and hideEvent after.=0A= * @method hide=0A= */=0A= hide: function () {=0A= this.cfg.setProperty("visible", false);=0A= },=0A= =0A= // BUILT-IN EVENT HANDLERS FOR MODULE //=0A= /**=0A= * Default event handler for changing the visibility property of = a =0A= * Module. By default, this is achieved by switching the = "display" style =0A= * between "block" and "none".=0A= * This method is responsible for firing showEvent and hideEvent.=0A= * @param {String} type The CustomEvent type (usually the = property name)=0A= * @param {Object[]} args The CustomEvent arguments. For = configuration =0A= * handlers, args[0] will equal the newly applied value for the = property.=0A= * @param {Object} obj The scope object. For configuration = handlers, =0A= * this will usually equal the owner.=0A= * @method configVisible=0A= */=0A= configVisible: function (type, args, obj) {=0A= var visible =3D args[0];=0A= if (visible) {=0A= this.beforeShowEvent.fire();=0A= Dom.setStyle(this.element, "display", "block");=0A= this.showEvent.fire();=0A= } else {=0A= this.beforeHideEvent.fire();=0A= Dom.setStyle(this.element, "display", "none");=0A= this.hideEvent.fire();=0A= }=0A= },=0A= =0A= /**=0A= * Default event handler for the "monitorresize" configuration = property=0A= * @param {String} type The CustomEvent type (usually the = property name)=0A= * @param {Object[]} args The CustomEvent arguments. For = configuration =0A= * handlers, args[0] will equal the newly applied value for the = property.=0A= * @param {Object} obj The scope object. For configuration = handlers, =0A= * this will usually equal the owner.=0A= * @method configMonitorResize=0A= */=0A= configMonitorResize: function (type, args, obj) {=0A= var monitor =3D args[0];=0A= if (monitor) {=0A= this.initResizeMonitor();=0A= } else {=0A= Module.textResizeEvent.unsubscribe(this.onDomResize, = this, true);=0A= this.resizeMonitor =3D null;=0A= }=0A= },=0A= =0A= /**=0A= * This method is a private helper, used when constructing the = DOM structure for the module =0A= * to account for situations which may cause Operation Aborted = errors in IE. It should not =0A= * be used for general DOM construction.=0A= *

      =0A= * If the parentNode is not document.body, the element is = appended as the last element.=0A= *

      =0A= *

      =0A= * If the parentNode is document.body the element is added as = the first child to help=0A= * prevent Operation Aborted errors in IE.=0A= *

      =0A= *=0A= * @param {parentNode} The HTML element to which the element = will be added=0A= * @param {element} The HTML element to be added to parentNode's = children=0A= * @method _addToParent=0A= * @protected=0A= */=0A= _addToParent: function(parentNode, element) {=0A= if (!this.cfg.getProperty("appendtodocumentbody") && = parentNode =3D=3D=3D document.body && parentNode.firstChild) {=0A= parentNode.insertBefore(element, parentNode.firstChild);=0A= } else {=0A= parentNode.appendChild(element);=0A= }=0A= },=0A= =0A= /**=0A= * Returns a String representation of the Object.=0A= * @method toString=0A= * @return {String} The string representation of the Module=0A= */=0A= toString: function () {=0A= return "Module " + this.id;=0A= }=0A= };=0A= =0A= YAHOO.lang.augmentProto(Module, YAHOO.util.EventProvider);=0A= =0A= }());=0A= =0A= (function () {=0A= =0A= /**=0A= * Overlay is a Module that is absolutely positioned above the page = flow. It =0A= * has convenience methods for positioning and sizing, as well as = options for =0A= * controlling zIndex and constraining the Overlay's position to the = current =0A= * visible viewport. Overlay also contains a dynamicly generated = IFRAME which =0A= * is placed beneath it for Internet Explorer 6 and 5.x so that it = will be =0A= * properly rendered above SELECT elements.=0A= * @namespace YAHOO.widget=0A= * @class Overlay=0A= * @extends YAHOO.widget.Module=0A= * @param {String} el The element ID representing the Overlay = OR=0A= * @param {HTMLElement} el The element representing the Overlay=0A= * @param {Object} userConfig The configuration object literal = containing =0A= * the configuration that should be set for this Overlay. See = configuration =0A= * documentation for more details.=0A= * @constructor=0A= */=0A= YAHOO.widget.Overlay =3D function (el, userConfig) {=0A= YAHOO.widget.Overlay.superclass.constructor.call(this, el, = userConfig);=0A= };=0A= =0A= var Lang =3D YAHOO.lang,=0A= CustomEvent =3D YAHOO.util.CustomEvent,=0A= Module =3D YAHOO.widget.Module,=0A= Event =3D YAHOO.util.Event,=0A= Dom =3D YAHOO.util.Dom,=0A= Config =3D YAHOO.util.Config,=0A= Overlay =3D YAHOO.widget.Overlay,=0A= =0A= m_oIFrameTemplate,=0A= =0A= /**=0A= * Constant representing the name of the Overlay's events=0A= * @property EVENT_TYPES=0A= * @private=0A= * @final=0A= * @type Object=0A= */=0A= EVENT_TYPES =3D {=0A= =0A= "BEFORE_MOVE": "beforeMove",=0A= "MOVE": "move"=0A= =0A= },=0A= =0A= /**=0A= * Constant representing the Overlay's configuration properties=0A= * @property DEFAULT_CONFIG=0A= * @private=0A= * @final=0A= * @type Object=0A= */=0A= DEFAULT_CONFIG =3D {=0A= =0A= "X": { =0A= key: "x", =0A= validator: Lang.isNumber, =0A= suppressEvent: true, =0A= supercedes: ["iframe"] =0A= },=0A= =0A= "Y": { =0A= key: "y", =0A= validator: Lang.isNumber, =0A= suppressEvent: true, =0A= supercedes: ["iframe"] =0A= },=0A= =0A= "XY": { =0A= key: "xy", =0A= suppressEvent: true, =0A= supercedes: ["iframe"] =0A= },=0A= =0A= "CONTEXT": { =0A= key: "context", =0A= suppressEvent: true, =0A= supercedes: ["iframe"] =0A= },=0A= =0A= "FIXED_CENTER": { =0A= key: "fixedcenter", =0A= value: false, =0A= validator: Lang.isBoolean, =0A= supercedes: ["iframe", "visible"] =0A= },=0A= =0A= "WIDTH": { =0A= key: "width", =0A= suppressEvent: true, =0A= supercedes: ["context", "fixedcenter", "iframe"] =0A= }, =0A= =0A= "HEIGHT": { =0A= key: "height", =0A= suppressEvent: true, =0A= supercedes: ["context", "fixedcenter", "iframe"] =0A= }, =0A= =0A= "ZINDEX": { =0A= key: "zindex", =0A= value: null =0A= }, =0A= =0A= "CONSTRAIN_TO_VIEWPORT": { =0A= key: "constraintoviewport", =0A= value: false, =0A= validator: Lang.isBoolean, =0A= supercedes: ["iframe", "x", "y", "xy"] =0A= }, =0A= =0A= "IFRAME": { =0A= key: "iframe", =0A= value: (YAHOO.env.ua.ie =3D=3D 6 ? true : false), =0A= validator: Lang.isBoolean, =0A= supercedes: ["zindex"] =0A= }=0A= };=0A= =0A= /**=0A= * The URL that will be placed in the iframe=0A= * @property YAHOO.widget.Overlay.IFRAME_SRC=0A= * @static=0A= * @final=0A= * @type String=0A= */=0A= Overlay.IFRAME_SRC =3D "javascript:false;";=0A= =0A= /**=0A= * Number representing how much the iframe shim should be offset from = each =0A= * side of an Overlay instance.=0A= * @property YAHOO.widget.Overlay.IFRAME_SRC=0A= * @default 3=0A= * @static=0A= * @final=0A= * @type Number=0A= */=0A= Overlay.IFRAME_OFFSET =3D 3;=0A= =0A= /**=0A= * Constant representing the top left corner of an element, used for =0A= * configuring the context element alignment=0A= * @property YAHOO.widget.Overlay.TOP_LEFT=0A= * @static=0A= * @final=0A= * @type String=0A= */=0A= Overlay.TOP_LEFT =3D "tl";=0A= =0A= /**=0A= * Constant representing the top right corner of an element, used for =0A= * configuring the context element alignment=0A= * @property YAHOO.widget.Overlay.TOP_RIGHT=0A= * @static=0A= * @final=0A= * @type String=0A= */=0A= Overlay.TOP_RIGHT =3D "tr";=0A= =0A= /**=0A= * Constant representing the top bottom left corner of an element, = used for =0A= * configuring the context element alignment=0A= * @property YAHOO.widget.Overlay.BOTTOM_LEFT=0A= * @static=0A= * @final=0A= * @type String=0A= */=0A= Overlay.BOTTOM_LEFT =3D "bl";=0A= =0A= /**=0A= * Constant representing the bottom right corner of an element, used = for =0A= * configuring the context element alignment=0A= * @property YAHOO.widget.Overlay.BOTTOM_RIGHT=0A= * @static=0A= * @final=0A= * @type String=0A= */=0A= Overlay.BOTTOM_RIGHT =3D "br";=0A= =0A= /**=0A= * Constant representing the default CSS class used for an Overlay=0A= * @property YAHOO.widget.Overlay.CSS_OVERLAY=0A= * @static=0A= * @final=0A= * @type String=0A= */=0A= Overlay.CSS_OVERLAY =3D "yui-overlay";=0A= =0A= =0A= /**=0A= * A singleton CustomEvent used for reacting to the DOM event for =0A= * window scroll=0A= * @event YAHOO.widget.Overlay.windowScrollEvent=0A= */=0A= Overlay.windowScrollEvent =3D new CustomEvent("windowScroll");=0A= =0A= /**=0A= * A singleton CustomEvent used for reacting to the DOM event for=0A= * window resize=0A= * @event YAHOO.widget.Overlay.windowResizeEvent=0A= */=0A= Overlay.windowResizeEvent =3D new CustomEvent("windowResize");=0A= =0A= /**=0A= * The DOM event handler used to fire the CustomEvent for window = scroll=0A= * @method YAHOO.widget.Overlay.windowScrollHandler=0A= * @static=0A= * @param {DOMEvent} e The DOM scroll event=0A= */=0A= Overlay.windowScrollHandler =3D function (e) {=0A= =0A= if (YAHOO.env.ua.ie) {=0A= =0A= if (! window.scrollEnd) {=0A= window.scrollEnd =3D -1;=0A= }=0A= =0A= clearTimeout(window.scrollEnd);=0A= =0A= window.scrollEnd =3D setTimeout(function () { =0A= Overlay.windowScrollEvent.fire(); =0A= }, 1);=0A= =0A= } else {=0A= Overlay.windowScrollEvent.fire();=0A= }=0A= };=0A= =0A= /**=0A= * The DOM event handler used to fire the CustomEvent for window = resize=0A= * @method YAHOO.widget.Overlay.windowResizeHandler=0A= * @static=0A= * @param {DOMEvent} e The DOM resize event=0A= */=0A= Overlay.windowResizeHandler =3D function (e) {=0A= =0A= if (YAHOO.env.ua.ie) {=0A= if (! window.resizeEnd) {=0A= window.resizeEnd =3D -1;=0A= }=0A= =0A= clearTimeout(window.resizeEnd);=0A= =0A= window.resizeEnd =3D setTimeout(function () {=0A= Overlay.windowResizeEvent.fire(); =0A= }, 100);=0A= } else {=0A= Overlay.windowResizeEvent.fire();=0A= }=0A= };=0A= =0A= /**=0A= * A boolean that indicated whether the window resize and scroll = events have =0A= * already been subscribed to.=0A= * @property YAHOO.widget.Overlay._initialized=0A= * @private=0A= * @type Boolean=0A= */=0A= Overlay._initialized =3D null;=0A= =0A= if (Overlay._initialized =3D=3D=3D null) {=0A= Event.on(window, "scroll", Overlay.windowScrollHandler);=0A= Event.on(window, "resize", Overlay.windowResizeHandler);=0A= =0A= Overlay._initialized =3D true;=0A= }=0A= =0A= YAHOO.extend(Overlay, Module, {=0A= =0A= /**=0A= * The Overlay initialization method, which is executed for = Overlay and =0A= * all of its subclasses. This method is automatically called by = the =0A= * constructor, and sets up all DOM references for pre-existing = markup, =0A= * and creates required markup if it is not already present.=0A= * @method init=0A= * @param {String} el The element ID representing the Overlay = OR=0A= * @param {HTMLElement} el The element representing the Overlay=0A= * @param {Object} userConfig The configuration object literal =0A= * containing the configuration that should be set for this = Overlay. =0A= * See configuration documentation for more details.=0A= */=0A= init: function (el, userConfig) {=0A= =0A= /*=0A= Note that we don't pass the user config in here yet = because we=0A= only want it executed once, at the lowest subclass level=0A= */=0A= =0A= Overlay.superclass.init.call(this, el/*, userConfig*/); =0A= =0A= this.beforeInitEvent.fire(Overlay);=0A= =0A= Dom.addClass(this.element, Overlay.CSS_OVERLAY);=0A= =0A= if (userConfig) {=0A= this.cfg.applyConfig(userConfig, true);=0A= }=0A= =0A= if (this.platform =3D=3D "mac" && YAHOO.env.ua.gecko) {=0A= =0A= if (! Config.alreadySubscribed(this.showEvent,=0A= this.showMacGeckoScrollbars, this)) {=0A= =0A= = this.showEvent.subscribe(this.showMacGeckoScrollbars, =0A= this, true);=0A= =0A= }=0A= =0A= if (! Config.alreadySubscribed(this.hideEvent, =0A= this.hideMacGeckoScrollbars, this)) {=0A= =0A= = this.hideEvent.subscribe(this.hideMacGeckoScrollbars, =0A= this, true);=0A= =0A= }=0A= }=0A= =0A= this.initEvent.fire(Overlay);=0A= },=0A= =0A= /**=0A= * Initializes the custom events for Overlay which are fired =0A= * automatically at appropriate times by the Overlay class.=0A= * @method initEvents=0A= */=0A= initEvents: function () {=0A= =0A= Overlay.superclass.initEvents.call(this);=0A= =0A= var SIGNATURE =3D CustomEvent.LIST;=0A= =0A= /**=0A= * CustomEvent fired before the Overlay is moved.=0A= * @event beforeMoveEvent=0A= * @param {Number} x x coordinate=0A= * @param {Number} y y coordinate=0A= */=0A= this.beforeMoveEvent =3D = this.createEvent(EVENT_TYPES.BEFORE_MOVE);=0A= this.beforeMoveEvent.signature =3D SIGNATURE;=0A= =0A= /**=0A= * CustomEvent fired after the Overlay is moved.=0A= * @event moveEvent=0A= * @param {Number} x x coordinate=0A= * @param {Number} y y coordinate=0A= */=0A= this.moveEvent =3D this.createEvent(EVENT_TYPES.MOVE);=0A= this.moveEvent.signature =3D SIGNATURE;=0A= =0A= },=0A= =0A= /**=0A= * Initializes the class's configurable properties which can be = changed =0A= * using the Overlay's Config object (cfg).=0A= * @method initDefaultConfig=0A= */=0A= initDefaultConfig: function () {=0A= =0A= Overlay.superclass.initDefaultConfig.call(this);=0A= =0A= =0A= // Add overlay config properties //=0A= =0A= /**=0A= * The absolute x-coordinate position of the Overlay=0A= * @config x=0A= * @type Number=0A= * @default null=0A= */=0A= this.cfg.addProperty(DEFAULT_CONFIG.X.key, { =0A= =0A= handler: this.configX, =0A= validator: DEFAULT_CONFIG.X.validator, =0A= suppressEvent: DEFAULT_CONFIG.X.suppressEvent, =0A= supercedes: DEFAULT_CONFIG.X.supercedes=0A= =0A= });=0A= =0A= /**=0A= * The absolute y-coordinate position of the Overlay=0A= * @config y=0A= * @type Number=0A= * @default null=0A= */=0A= this.cfg.addProperty(DEFAULT_CONFIG.Y.key, {=0A= =0A= handler: this.configY, =0A= validator: DEFAULT_CONFIG.Y.validator, =0A= suppressEvent: DEFAULT_CONFIG.Y.suppressEvent, =0A= supercedes: DEFAULT_CONFIG.Y.supercedes=0A= =0A= });=0A= =0A= /**=0A= * An array with the absolute x and y positions of the Overlay=0A= * @config xy=0A= * @type Number[]=0A= * @default null=0A= */=0A= this.cfg.addProperty(DEFAULT_CONFIG.XY.key, {=0A= =0A= handler: this.configXY, =0A= suppressEvent: DEFAULT_CONFIG.XY.suppressEvent, =0A= supercedes: DEFAULT_CONFIG.XY.supercedes=0A= =0A= });=0A= =0A= /**=0A= * The array of context arguments for context-sensitive = positioning. =0A= * The format is: [id or element, element corner, context = corner]. =0A= * For example, setting this property to ["img1", "tl", "bl"] = would =0A= * align the Overlay's top left corner to the context = element's =0A= * bottom left corner.=0A= * @config context=0A= * @type Array=0A= * @default null=0A= */=0A= this.cfg.addProperty(DEFAULT_CONFIG.CONTEXT.key, {=0A= =0A= handler: this.configContext, =0A= suppressEvent: DEFAULT_CONFIG.CONTEXT.suppressEvent, =0A= supercedes: DEFAULT_CONFIG.CONTEXT.supercedes=0A= =0A= });=0A= =0A= /**=0A= * True if the Overlay should be anchored to the center of =0A= * the viewport.=0A= * @config fixedcenter=0A= * @type Boolean=0A= * @default false=0A= */=0A= this.cfg.addProperty(DEFAULT_CONFIG.FIXED_CENTER.key, {=0A= =0A= handler: this.configFixedCenter,=0A= value: DEFAULT_CONFIG.FIXED_CENTER.value, =0A= validator: DEFAULT_CONFIG.FIXED_CENTER.validator, =0A= supercedes: DEFAULT_CONFIG.FIXED_CENTER.supercedes=0A= =0A= });=0A= =0A= /**=0A= * CSS width of the Overlay.=0A= * @config width=0A= * @type String=0A= * @default null=0A= */=0A= this.cfg.addProperty(DEFAULT_CONFIG.WIDTH.key, {=0A= =0A= handler: this.configWidth, =0A= suppressEvent: DEFAULT_CONFIG.WIDTH.suppressEvent, =0A= supercedes: DEFAULT_CONFIG.WIDTH.supercedes=0A= =0A= });=0A= =0A= /**=0A= * CSS height of the Overlay.=0A= * @config height=0A= * @type String=0A= * @default null=0A= */=0A= this.cfg.addProperty(DEFAULT_CONFIG.HEIGHT.key, {=0A= =0A= handler: this.configHeight, =0A= suppressEvent: DEFAULT_CONFIG.HEIGHT.suppressEvent, =0A= supercedes: DEFAULT_CONFIG.HEIGHT.supercedes=0A= =0A= });=0A= =0A= /**=0A= * CSS z-index of the Overlay.=0A= * @config zIndex=0A= * @type Number=0A= * @default null=0A= */=0A= this.cfg.addProperty(DEFAULT_CONFIG.ZINDEX.key, {=0A= =0A= handler: this.configzIndex,=0A= value: DEFAULT_CONFIG.ZINDEX.value=0A= =0A= });=0A= =0A= /**=0A= * True if the Overlay should be prevented from being = positioned =0A= * out of the viewport.=0A= * @config constraintoviewport=0A= * @type Boolean=0A= * @default false=0A= */=0A= = this.cfg.addProperty(DEFAULT_CONFIG.CONSTRAIN_TO_VIEWPORT.key, {=0A= =0A= handler: this.configConstrainToViewport, =0A= value: DEFAULT_CONFIG.CONSTRAIN_TO_VIEWPORT.value, =0A= validator: = DEFAULT_CONFIG.CONSTRAIN_TO_VIEWPORT.validator, =0A= supercedes: = DEFAULT_CONFIG.CONSTRAIN_TO_VIEWPORT.supercedes=0A= =0A= });=0A= =0A= /**=0A= * @config iframe=0A= * @description Boolean indicating whether or not the Overlay = should =0A= * have an IFRAME shim; used to prevent SELECT elements from =0A= * poking through an Overlay instance in IE6. When set to = "true", =0A= * the iframe shim is created when the Overlay instance is = intially=0A= * made visible.=0A= * @type Boolean=0A= * @default true for IE6 and below, false for all other = browsers.=0A= */=0A= this.cfg.addProperty(DEFAULT_CONFIG.IFRAME.key, {=0A= =0A= handler: this.configIframe, =0A= value: DEFAULT_CONFIG.IFRAME.value, =0A= validator: DEFAULT_CONFIG.IFRAME.validator, =0A= supercedes: DEFAULT_CONFIG.IFRAME.supercedes=0A= =0A= });=0A= },=0A= =0A= /**=0A= * Moves the Overlay to the specified position. This function is =0A= * identical to calling this.cfg.setProperty("xy", [x,y]);=0A= * @method moveTo=0A= * @param {Number} x The Overlay's new x position=0A= * @param {Number} y The Overlay's new y position=0A= */=0A= moveTo: function (x, y) {=0A= =0A= this.cfg.setProperty("xy", [x, y]);=0A= =0A= },=0A= =0A= /**=0A= * Adds a CSS class ("hide-scrollbars") and removes a CSS class =0A= * ("show-scrollbars") to the Overlay to fix a bug in Gecko on = Mac OS X =0A= * (https://bugzilla.mozilla.org/show_bug.cgi?id=3D187435)=0A= * @method hideMacGeckoScrollbars=0A= */=0A= hideMacGeckoScrollbars: function () {=0A= =0A= Dom.removeClass(this.element, "show-scrollbars");=0A= Dom.addClass(this.element, "hide-scrollbars");=0A= =0A= },=0A= =0A= /**=0A= * Adds a CSS class ("show-scrollbars") and removes a CSS class =0A= * ("hide-scrollbars") to the Overlay to fix a bug in Gecko on = Mac OS X =0A= * (https://bugzilla.mozilla.org/show_bug.cgi?id=3D187435)=0A= * @method showMacGeckoScrollbars=0A= */=0A= showMacGeckoScrollbars: function () {=0A= =0A= Dom.removeClass(this.element, "hide-scrollbars");=0A= Dom.addClass(this.element, "show-scrollbars");=0A= =0A= },=0A= =0A= // BEGIN BUILT-IN PROPERTY EVENT HANDLERS //=0A= /**=0A= * The default event handler fired when the "visible" property is =0A= * changed. This method is responsible for firing showEvent=0A= * and hideEvent.=0A= * @method configVisible=0A= * @param {String} type The CustomEvent type (usually the = property name)=0A= * @param {Object[]} args The CustomEvent arguments. For = configuration=0A= * handlers, args[0] will equal the newly applied value for the = property.=0A= * @param {Object} obj The scope object. For configuration = handlers, =0A= * this will usually equal the owner.=0A= */=0A= configVisible: function (type, args, obj) {=0A= =0A= var visible =3D args[0],=0A= currentVis =3D Dom.getStyle(this.element, "visibility"),=0A= effect =3D this.cfg.getProperty("effect"),=0A= effectInstances =3D [],=0A= isMacGecko =3D (this.platform =3D=3D "mac" && = YAHOO.env.ua.gecko),=0A= alreadySubscribed =3D Config.alreadySubscribed,=0A= eff, ei, e, i, j, k, h,=0A= nEffects,=0A= nEffectInstances;=0A= =0A= if (currentVis =3D=3D "inherit") {=0A= e =3D this.element.parentNode;=0A= =0A= while (e.nodeType !=3D 9 && e.nodeType !=3D 11) {=0A= currentVis =3D Dom.getStyle(e, "visibility");=0A= =0A= if (currentVis !=3D "inherit") { =0A= break; =0A= }=0A= =0A= e =3D e.parentNode;=0A= }=0A= =0A= if (currentVis =3D=3D "inherit") {=0A= currentVis =3D "visible";=0A= }=0A= }=0A= =0A= if (effect) {=0A= if (effect instanceof Array) {=0A= nEffects =3D effect.length;=0A= =0A= for (i =3D 0; i < nEffects; i++) {=0A= eff =3D effect[i];=0A= effectInstances[effectInstances.length] =3D =0A= eff.effect(this, eff.duration);=0A= =0A= }=0A= } else {=0A= effectInstances[effectInstances.length] =3D =0A= effect.effect(this, effect.duration);=0A= }=0A= }=0A= =0A= =0A= if (visible) { // Show=0A= if (isMacGecko) {=0A= this.showMacGeckoScrollbars();=0A= }=0A= =0A= if (effect) { // Animate in=0A= if (visible) { // Animate in if not showing=0A= if (currentVis !=3D "visible" || currentVis = =3D=3D=3D "") {=0A= this.beforeShowEvent.fire();=0A= nEffectInstances =3D effectInstances.length;=0A= =0A= for (j =3D 0; j < nEffectInstances; j++) {=0A= ei =3D effectInstances[j];=0A= if (j =3D=3D=3D 0 && !alreadySubscribed(=0A= ei.animateInCompleteEvent, =0A= this.showEvent.fire, = this.showEvent)) {=0A= =0A= /*=0A= Delegate showEvent until end =0A= of animateInComplete=0A= */=0A= =0A= ei.animateInCompleteEvent.subscribe(=0A= this.showEvent.fire, = this.showEvent, true);=0A= }=0A= ei.animateIn();=0A= }=0A= }=0A= }=0A= } else { // Show=0A= if (currentVis !=3D "visible" || currentVis = =3D=3D=3D "") {=0A= this.beforeShowEvent.fire();=0A= =0A= Dom.setStyle(this.element, "visibility", = "visible");=0A= =0A= this.cfg.refireEvent("iframe");=0A= this.showEvent.fire();=0A= }=0A= }=0A= } else { // Hide=0A= =0A= if (isMacGecko) {=0A= this.hideMacGeckoScrollbars();=0A= }=0A= =0A= if (effect) { // Animate out if showing=0A= if (currentVis =3D=3D "visible") {=0A= this.beforeHideEvent.fire();=0A= =0A= nEffectInstances =3D effectInstances.length;=0A= for (k =3D 0; k < nEffectInstances; k++) {=0A= h =3D effectInstances[k];=0A= =0A= if (k =3D=3D=3D 0 && !alreadySubscribed(=0A= h.animateOutCompleteEvent, = this.hideEvent.fire, =0A= this.hideEvent)) {=0A= =0A= /*=0A= Delegate hideEvent until end =0A= of animateOutComplete=0A= */=0A= =0A= h.animateOutCompleteEvent.subscribe(=0A= this.hideEvent.fire, this.hideEvent, = true);=0A= =0A= }=0A= h.animateOut();=0A= }=0A= =0A= } else if (currentVis =3D=3D=3D "") {=0A= Dom.setStyle(this.element, "visibility", = "hidden");=0A= }=0A= =0A= } else { // Simple hide=0A= =0A= if (currentVis =3D=3D "visible" || currentVis = =3D=3D=3D "") {=0A= this.beforeHideEvent.fire();=0A= Dom.setStyle(this.element, "visibility", = "hidden");=0A= this.hideEvent.fire();=0A= }=0A= }=0A= }=0A= },=0A= =0A= /**=0A= * Center event handler used for centering on scroll/resize, but = only if =0A= * the Overlay is visible=0A= * @method doCenterOnDOMEvent=0A= */=0A= doCenterOnDOMEvent: function () {=0A= if (this.cfg.getProperty("visible")) {=0A= this.center();=0A= }=0A= },=0A= =0A= /**=0A= * The default event handler fired when the "fixedcenter" = property =0A= * is changed.=0A= * @method configFixedCenter=0A= * @param {String} type The CustomEvent type (usually the = property name)=0A= * @param {Object[]} args The CustomEvent arguments. For = configuration =0A= * handlers, args[0] will equal the newly applied value for the = property.=0A= * @param {Object} obj The scope object. For configuration = handlers, =0A= * this will usually equal the owner.=0A= */=0A= configFixedCenter: function (type, args, obj) {=0A= =0A= var val =3D args[0],=0A= alreadySubscribed =3D Config.alreadySubscribed,=0A= windowResizeEvent =3D Overlay.windowResizeEvent,=0A= windowScrollEvent =3D Overlay.windowScrollEvent;=0A= =0A= if (val) {=0A= this.center();=0A= =0A= if (!alreadySubscribed(this.beforeShowEvent, = this.center, this)) {=0A= this.beforeShowEvent.subscribe(this.center);=0A= }=0A= =0A= if (!alreadySubscribed(windowResizeEvent, = this.doCenterOnDOMEvent, this)) {=0A= windowResizeEvent.subscribe(this.doCenterOnDOMEvent, = this, true);=0A= }=0A= =0A= if (!alreadySubscribed(windowScrollEvent, = this.doCenterOnDOMEvent, this)) {=0A= windowScrollEvent.subscribe(this.doCenterOnDOMEvent, = this, true);=0A= }=0A= =0A= } else {=0A= this.beforeShowEvent.unsubscribe(this.center);=0A= =0A= windowResizeEvent.unsubscribe(this.doCenterOnDOMEvent, = this);=0A= windowScrollEvent.unsubscribe(this.doCenterOnDOMEvent, = this);=0A= }=0A= },=0A= =0A= /**=0A= * The default event handler fired when the "height" property is = changed.=0A= * @method configHeight=0A= * @param {String} type The CustomEvent type (usually the = property name)=0A= * @param {Object[]} args The CustomEvent arguments. For = configuration =0A= * handlers, args[0] will equal the newly applied value for the = property.=0A= * @param {Object} obj The scope object. For configuration = handlers, =0A= * this will usually equal the owner.=0A= */=0A= configHeight: function (type, args, obj) {=0A= =0A= var height =3D args[0],=0A= el =3D this.element;=0A= =0A= Dom.setStyle(el, "height", height);=0A= this.cfg.refireEvent("iframe");=0A= },=0A= =0A= /**=0A= * The default event handler fired when the "width" property is = changed.=0A= * @method configWidth=0A= * @param {String} type The CustomEvent type (usually the = property name)=0A= * @param {Object[]} args The CustomEvent arguments. For = configuration =0A= * handlers, args[0] will equal the newly applied value for the = property.=0A= * @param {Object} obj The scope object. For configuration = handlers, =0A= * this will usually equal the owner.=0A= */=0A= configWidth: function (type, args, obj) {=0A= =0A= var width =3D args[0],=0A= el =3D this.element;=0A= =0A= Dom.setStyle(el, "width", width);=0A= this.cfg.refireEvent("iframe");=0A= },=0A= =0A= /**=0A= * The default event handler fired when the "zIndex" property is = changed.=0A= * @method configzIndex=0A= * @param {String} type The CustomEvent type (usually the = property name)=0A= * @param {Object[]} args The CustomEvent arguments. For = configuration =0A= * handlers, args[0] will equal the newly applied value for the = property.=0A= * @param {Object} obj The scope object. For configuration = handlers, =0A= * this will usually equal the owner.=0A= */=0A= configzIndex: function (type, args, obj) {=0A= =0A= var zIndex =3D args[0],=0A= el =3D this.element;=0A= =0A= if (! zIndex) {=0A= zIndex =3D Dom.getStyle(el, "zIndex");=0A= if (! zIndex || isNaN(zIndex)) {=0A= zIndex =3D 0;=0A= }=0A= }=0A= =0A= if (this.iframe || this.cfg.getProperty("iframe") =3D=3D=3D = true) {=0A= if (zIndex <=3D 0) {=0A= zIndex =3D 1;=0A= }=0A= }=0A= =0A= Dom.setStyle(el, "zIndex", zIndex);=0A= this.cfg.setProperty("zIndex", zIndex, true);=0A= =0A= if (this.iframe) {=0A= this.stackIframe();=0A= }=0A= },=0A= =0A= /**=0A= * The default event handler fired when the "xy" property is = changed.=0A= * @method configXY=0A= * @param {String} type The CustomEvent type (usually the = property name)=0A= * @param {Object[]} args The CustomEvent arguments. For = configuration =0A= * handlers, args[0] will equal the newly applied value for the = property.=0A= * @param {Object} obj The scope object. For configuration = handlers, =0A= * this will usually equal the owner.=0A= */=0A= configXY: function (type, args, obj) {=0A= =0A= var pos =3D args[0],=0A= x =3D pos[0],=0A= y =3D pos[1];=0A= =0A= this.cfg.setProperty("x", x);=0A= this.cfg.setProperty("y", y);=0A= =0A= this.beforeMoveEvent.fire([x, y]);=0A= =0A= x =3D this.cfg.getProperty("x");=0A= y =3D this.cfg.getProperty("y");=0A= =0A= =0A= this.cfg.refireEvent("iframe");=0A= this.moveEvent.fire([x, y]);=0A= },=0A= =0A= /**=0A= * The default event handler fired when the "x" property is = changed.=0A= * @method configX=0A= * @param {String} type The CustomEvent type (usually the = property name)=0A= * @param {Object[]} args The CustomEvent arguments. For = configuration =0A= * handlers, args[0] will equal the newly applied value for the = property.=0A= * @param {Object} obj The scope object. For configuration = handlers, =0A= * this will usually equal the owner.=0A= */=0A= configX: function (type, args, obj) {=0A= =0A= var x =3D args[0],=0A= y =3D this.cfg.getProperty("y");=0A= =0A= this.cfg.setProperty("x", x, true);=0A= this.cfg.setProperty("y", y, true);=0A= =0A= this.beforeMoveEvent.fire([x, y]);=0A= =0A= x =3D this.cfg.getProperty("x");=0A= y =3D this.cfg.getProperty("y");=0A= =0A= Dom.setX(this.element, x, true);=0A= =0A= this.cfg.setProperty("xy", [x, y], true);=0A= =0A= this.cfg.refireEvent("iframe");=0A= this.moveEvent.fire([x, y]);=0A= },=0A= =0A= /**=0A= * The default event handler fired when the "y" property is = changed.=0A= * @method configY=0A= * @param {String} type The CustomEvent type (usually the = property name)=0A= * @param {Object[]} args The CustomEvent arguments. For = configuration =0A= * handlers, args[0] will equal the newly applied value for the = property.=0A= * @param {Object} obj The scope object. For configuration = handlers, =0A= * this will usually equal the owner.=0A= */=0A= configY: function (type, args, obj) {=0A= =0A= var x =3D this.cfg.getProperty("x"),=0A= y =3D args[0];=0A= =0A= this.cfg.setProperty("x", x, true);=0A= this.cfg.setProperty("y", y, true);=0A= =0A= this.beforeMoveEvent.fire([x, y]);=0A= =0A= x =3D this.cfg.getProperty("x");=0A= y =3D this.cfg.getProperty("y");=0A= =0A= Dom.setY(this.element, y, true);=0A= =0A= this.cfg.setProperty("xy", [x, y], true);=0A= =0A= this.cfg.refireEvent("iframe");=0A= this.moveEvent.fire([x, y]);=0A= },=0A= =0A= /**=0A= * Shows the iframe shim, if it has been enabled.=0A= * @method showIframe=0A= */=0A= showIframe: function () {=0A= =0A= var oIFrame =3D this.iframe,=0A= oParentNode;=0A= =0A= if (oIFrame) {=0A= oParentNode =3D this.element.parentNode;=0A= =0A= if (oParentNode !=3D oIFrame.parentNode) {=0A= this._addToParent(oParentNode, oIFrame);=0A= }=0A= oIFrame.style.display =3D "block";=0A= }=0A= },=0A= =0A= /**=0A= * Hides the iframe shim, if it has been enabled.=0A= * @method hideIframe=0A= */=0A= hideIframe: function () {=0A= if (this.iframe) {=0A= this.iframe.style.display =3D "none";=0A= }=0A= },=0A= =0A= /**=0A= * Syncronizes the size and position of iframe shim to that of = its =0A= * corresponding Overlay instance.=0A= * @method syncIframe=0A= */=0A= syncIframe: function () {=0A= =0A= var oIFrame =3D this.iframe,=0A= oElement =3D this.element,=0A= nOffset =3D Overlay.IFRAME_OFFSET,=0A= nDimensionOffset =3D (nOffset * 2),=0A= aXY;=0A= =0A= if (oIFrame) {=0A= // Size
      ");=0A= $("#TB_overlay").click(tb_remove);=0A= }=0A= }else{//all others=0A= if(document.getElementById("TB_overlay") =3D=3D=3D null){=0A= $("body").append("
      ");=0A= $("#TB_overlay").click(tb_remove);=0A= }=0A= }=0A= =0A= if(tb_detectMacXFF()){=0A= $("#TB_overlay").addClass("TB_overlayMacFFBGHack");//use png overlay = so hide flash=0A= }else{=0A= $("#TB_overlay").addClass("TB_overlayBG");//use background and opacity=0A= }=0A= =0A= if(caption=3D=3D=3Dnull){caption=3D"";}=0A= $("body").append("
      ");//add loader to the page=0A= $('#TB_load').show();//show loader=0A= =0A= var baseURL;=0A= if(url.indexOf("?")!=3D=3D-1){ //ff there is a query string involved=0A= baseURL =3D url.substr(0, url.indexOf("?"));=0A= }else{ =0A= baseURL =3D url;=0A= }=0A= =0A= var urlString =3D /\.jpg$|\.jpeg$|\.png$|\.gif$|\.bmp$/;=0A= var urlType =3D baseURL.toLowerCase().match(urlString);=0A= =0A= if(urlType =3D=3D '.jpg' || urlType =3D=3D '.jpeg' || urlType =3D=3D = '.png' || urlType =3D=3D '.gif' || urlType =3D=3D '.bmp'){//code to show = images=0A= =0A= TB_PrevCaption =3D "";=0A= TB_PrevURL =3D "";=0A= TB_PrevHTML =3D "";=0A= TB_NextCaption =3D "";=0A= TB_NextURL =3D "";=0A= TB_NextHTML =3D "";=0A= TB_imageCount =3D "";=0A= TB_FoundURL =3D false;=0A= if(imageGroup){=0A= TB_TempArray =3D $("a[@rel=3D"+imageGroup+"]").get();=0A= for (TB_Counter =3D 0; ((TB_Counter < TB_TempArray.length) && = (TB_NextHTML =3D=3D=3D "")); TB_Counter++) {=0A= var urlTypeTemp =3D = TB_TempArray[TB_Counter].href.toLowerCase().match(urlString);=0A= if (!(TB_TempArray[TB_Counter].href =3D=3D url)) { =0A= if (TB_FoundURL) {=0A= TB_NextCaption =3D TB_TempArray[TB_Counter].title;=0A= TB_NextURL =3D TB_TempArray[TB_Counter].href;=0A= TB_NextHTML =3D "  Next >";=0A= } else {=0A= TB_PrevCaption =3D TB_TempArray[TB_Counter].title;=0A= TB_PrevURL =3D TB_TempArray[TB_Counter].href;=0A= TB_PrevHTML =3D "  < Prev";=0A= }=0A= } else {=0A= TB_FoundURL =3D true;=0A= TB_imageCount =3D "Image " + (TB_Counter + 1) +" of "+ = (TB_TempArray.length); =0A= }=0A= }=0A= }=0A= =0A= imgPreloader =3D new Image();=0A= imgPreloader.onload =3D function(){ =0A= imgPreloader.onload =3D null;=0A= =0A= // Resizing large images - orginal by Christian Montoya edited by me.=0A= var pagesize =3D tb_getPageSize();=0A= var x =3D pagesize[0] - 150;=0A= var y =3D pagesize[1] - 150;=0A= var imageWidth =3D imgPreloader.width;=0A= var imageHeight =3D imgPreloader.height;=0A= if (imageWidth > x) {=0A= imageHeight =3D imageHeight * (x / imageWidth); =0A= imageWidth =3D x; =0A= if (imageHeight > y) { =0A= imageWidth =3D imageWidth * (y / imageHeight); =0A= imageHeight =3D y; =0A= }=0A= } else if (imageHeight > y) { =0A= imageWidth =3D imageWidth * (y / imageHeight); =0A= imageHeight =3D y; =0A= if (imageWidth > x) { =0A= imageHeight =3D imageHeight * (x / imageWidth); =0A= imageWidth =3D x;=0A= }=0A= }=0A= // End Resizing=0A= =0A= TB_WIDTH =3D imageWidth + 30;=0A= TB_HEIGHT =3D imageHeight + 60;=0A= $("#TB_window").append("3D'"+caption+"'/" + "
      "+caption+"
      " + TB_imageCount + TB_PrevHTML + TB_NextHTML + = "
      close or Esc = Key
      "); =0A= =0A= $("#TB_closeWindowButton").click(tb_remove);=0A= =0A= if (!(TB_PrevHTML =3D=3D=3D "")) {=0A= function goPrev(){=0A= = if($(document).unbind("click",goPrev)){$(document).unbind("click",goPrev)= ;}=0A= $("#TB_window").remove();=0A= $("body").append("
      ");=0A= tb_show(TB_PrevCaption, TB_PrevURL, imageGroup);=0A= return false; =0A= }=0A= $("#TB_prev").click(goPrev);=0A= }=0A= =0A= if (!(TB_NextHTML =3D=3D=3D "")) { =0A= function goNext(){=0A= $("#TB_window").remove();=0A= $("body").append("
      ");=0A= tb_show(TB_NextCaption, TB_NextURL, imageGroup); =0A= return false; =0A= }=0A= $("#TB_next").click(goNext);=0A= =0A= }=0A= =0A= document.onkeydown =3D function(e){ =0A= if (e =3D=3D null) { // ie=0A= keycode =3D event.keyCode;=0A= } else { // mozilla=0A= keycode =3D e.which;=0A= }=0A= if(keycode =3D=3D 27){ // close=0A= tb_remove();=0A= } else if(keycode =3D=3D 190){ // display previous image=0A= if(!(TB_NextHTML =3D=3D "")){=0A= document.onkeydown =3D "";=0A= goNext();=0A= }=0A= } else if(keycode =3D=3D 188){ // display next image=0A= if(!(TB_PrevHTML =3D=3D "")){=0A= document.onkeydown =3D "";=0A= goPrev();=0A= }=0A= } =0A= };=0A= =0A= tb_position();=0A= $("#TB_load").remove();=0A= $("#TB_ImageOff").click(tb_remove);=0A= $("#TB_window").css({display:"block"}); //for safari using css = instead of show=0A= };=0A= =0A= imgPreloader.src =3D url;=0A= }else{//code to show html=0A= =0A= var queryString =3D url.replace(/^[^\?]+\??/,'');=0A= var params =3D tb_parseQuery( queryString );=0A= =0A= TB_WIDTH =3D (params['width']*1) + 30 || 630; //defaults to 630 if no = paramaters were added to URL=0A= TB_HEIGHT =3D (params['height']*1) + 40 || 440; //defaults to 440 if = no paramaters were added to URL=0A= ajaxContentW =3D TB_WIDTH - 30;=0A= ajaxContentH =3D TB_HEIGHT - 45;=0A= =0A= if(url.indexOf('TB_iframe') !=3D -1){// either iframe or ajax window =0A= urlNoQuery =3D url.split('TB_');=0A= $("#TB_iframeContent").remove();=0A= if(params['modal'] !=3D "true"){//iframe no modal=0A= $("#TB_window").append("
      "+caption+"
      close or Esc Key
      ");=0A= }else{//iframe modal=0A= $("#TB_overlay").unbind();=0A= $("#TB_window").append("");=0A= }=0A= }else{// not an iframe, ajax=0A= if($("#TB_window").css("display") !=3D "block"){=0A= if(params['modal'] !=3D "true"){//ajax no modal=0A= $("#TB_window").append("
      "+caption+"
      close or Esc Key
      ");=0A= }else{//ajax modal=0A= $("#TB_overlay").unbind();=0A= $("#TB_window").append("
      "); =0A= }=0A= }else{//this means the window is already up, we are just loading = new content via ajax=0A= $("#TB_ajaxContent")[0].style.width =3D ajaxContentW +"px";=0A= $("#TB_ajaxContent")[0].style.height =3D ajaxContentH +"px";=0A= $("#TB_ajaxContent")[0].scrollTop =3D 0;=0A= $("#TB_ajaxWindowTitle").html(caption);=0A= }=0A= }=0A= =0A= $("#TB_closeWindowButton").click(tb_remove);=0A= =0A= if(url.indexOf('TB_inline') !=3D -1){ =0A= $("#TB_ajaxContent").append($('#' + params['inlineId']).children());=0A= $("#TB_window").unload(function () {=0A= $('#' + params['inlineId']).append( = $("#TB_ajaxContent").children() ); // move elements back when you're = finished=0A= });=0A= tb_position();=0A= $("#TB_load").remove();=0A= $("#TB_window").css({display:"block"}); =0A= }else if(url.indexOf('TB_iframe') !=3D -1){=0A= tb_position();=0A= if($.browser.safari){//safari needs help because it will not fire = iframe onload=0A= $("#TB_load").remove();=0A= $("#TB_window").css({display:"block"});=0A= }=0A= }else{=0A= $("#TB_ajaxContent").load(url +=3D "&random=3D" + (new = Date().getTime()),function(){//to do a post change this load method=0A= tb_position();=0A= $("#TB_load").remove();=0A= tb_init("#TB_ajaxContent a.thickbox");=0A= $("#TB_window").css({display:"block"});=0A= });=0A= }=0A= =0A= }=0A= =0A= if(!params['modal']){=0A= document.onkeyup =3D function(e){ =0A= if (e =3D=3D null) { // ie=0A= keycode =3D event.keyCode;=0A= } else { // mozilla=0A= keycode =3D e.which;=0A= }=0A= if(keycode =3D=3D 27){ // close=0A= tb_remove();=0A= } =0A= };=0A= }=0A= =0A= } catch(e) {=0A= //nothing here=0A= }=0A= }=0A= =0A= //helper functions below=0A= function tb_showIframe(){=0A= $("#TB_load").remove();=0A= $("#TB_window").css({display:"block"});=0A= }=0A= =0A= function tb_remove() {=0A= $("#TB_imageOff").unbind("click");=0A= $("#TB_closeWindowButton").unbind("click");=0A= = $("#TB_window").fadeOut("fast",function(){$('#TB_window,#TB_overlay,#TB_H= ideSelect').trigger("unload").unbind().remove();});=0A= $("#TB_load").remove();=0A= if (typeof document.body.style.maxHeight =3D=3D "undefined") {//if IE 6=0A= $("body","html").css({height: "auto", width: "auto"});=0A= $("html").css("overflow","");=0A= }=0A= document.onkeydown =3D "";=0A= document.onkeyup =3D "";=0A= return false;=0A= }=0A= =0A= function tb_position() {=0A= $("#TB_window").css({marginLeft: '-' + parseInt((TB_WIDTH / 2),10) + = 'px', width: TB_WIDTH + 'px'});=0A= if ( !(jQuery.browser.msie && jQuery.browser.version < 7)) { // take = away IE6=0A= $("#TB_window").css({marginTop: '-' + parseInt((TB_HEIGHT / 2),10) + = 'px'});=0A= }=0A= }=0A= =0A= function tb_parseQuery ( query ) {=0A= var Params =3D {};=0A= if ( ! query ) {return Params;}// return empty object=0A= var Pairs =3D query.split(/[;&]/);=0A= for ( var i =3D 0; i < Pairs.length; i++ ) {=0A= var KeyVal =3D Pairs[i].split('=3D');=0A= if ( ! KeyVal || KeyVal.length !=3D 2 ) {continue;}=0A= var key =3D unescape( KeyVal[0] );=0A= var val =3D unescape( KeyVal[1] );=0A= val =3D val.replace(/\+/g, ' ');=0A= Params[key] =3D val;=0A= }=0A= return Params;=0A= }=0A= =0A= function tb_getPageSize(){=0A= var de =3D document.documentElement;=0A= var w =3D window.innerWidth || self.innerWidth || (de&&de.clientWidth) = || document.body.clientWidth;=0A= var h =3D window.innerHeight || self.innerHeight || = (de&&de.clientHeight) || document.body.clientHeight;=0A= arrayPageSize =3D [w,h];=0A= return arrayPageSize;=0A= }=0A= =0A= function tb_detectMacXFF() {=0A= var userAgent =3D navigator.userAgent.toLowerCase();=0A= if (userAgent.indexOf('mac') !=3D -1 && = userAgent.indexOf('firefox')!=3D-1) {=0A= return true;=0A= }=0A= }=0A= =0A= =0A= ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.ledger-enquirer.com/static/insite/insite_conf.js var rs =3D ''; //this is blank, so its relative referencing for you=0A= var login_url =3D '/static/insite/login.html';=0A= var acb =3D true;=0A= var aa =3D false;=0A= ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.ledger-enquirer.com/reg_js/verify_access.js var login_url;if(! login_url){alert('login_url not defined!')};=0A= var known_but_denied_url; if(! = known_but_denied_url){known_but_denied_url =3D login_url};=0A= var known_but_denied =3D false;=0A= var js_cookie_url;if(! js_cookie_url){js_cookie_url =3D login_url};var = permitted =3D false;;=0A= var aa;=0A= function cc(n,v,ds){if (ds){var d =3D new = Date();d.setTime(d.getTime()+(ds*24*60*60*1000));var xp =3D "; = expires=3D"+d.toGMTString();}else{var xp =3D "";}document.cookie =3D = n+"=3D"+v+xp+"; path=3D/";}function rc(n){var neq =3D n + "=3D";var ca = =3D document.cookie.split(';');for(var i=3D0;i < ca.length;i++){var c = =3D ca[i];while (c.charAt(0)=3D=3D' ') c =3D c.substring(1,c.length);if = (c.indexOf(neq) =3D=3D 0) return = c.substring(neq.length,c.length);}return null;}function = ec(n){cc(n,"",-1);}=0A= =0A= if (! aa)=0A= {=0A= var acb; var ibc; cc('ct', 1);if(rc('ct')){ec('ct');}else{if (!acb) = {document.location =3D js_cookie_url;}else{ibc=3Dtrue;}} =0A= var th; if (!th){th=3D0} var dc =3D false;=0A= if (th > 0)=0A= {=0A= var tm =3D rc('rtc');=0A= var dt =3D new Date();=0A= var delta =3D parseInt((dt.getTime() - tm) / 1000); // in = minutes.=0A= if (delta > th)=0A= {=0A= dc =3D true;=0A= }=0A= // document.write('delta: ' +delta + '
      ');=0A= }=0A= //document.write('throttled_verify_access
      ');=0A= var dc; =0A= //document.write("throttle: " + th + ' minutes
      ');=0A= var lc_ua =3D navigator.userAgent.toLowerCase();=0A= var lc_browser =3D navigator.appVersion.toLowerCase();=0A= =0A= if (!ibc && (! th || th && dc) )=0A= {=0A= // document.write('verifying
      ');=0A= var dt =3D new Date();=0A= var rtc =3D dt.getTime();=0A= var r =3D escape(document.location);=0A= //Break off the domain/path of the URL.=0A= =0A= var referer =3D document.referrer;=0A= var auto_user_url_fragment =3D '';=0A= if (referer)=0A= {=0A= var url =3D referer.split("?")[0];=0A= var fqdn =3D url.split("/")[2];=0A= var fqdnParts =3D fqdn.split(".").reverse();=0A= var tld =3D fqdnParts[0];=0A= var domain =3D fqdnParts[1];=0A= var key =3D domain + '.' + tld;=0A= // document.write('
      domain: ' + key + '
      '); =0A= =0A= var aud;=0A= if (!aud) { aud =3D new Array(); }=0A= if (aud[key])=0A= { =0A= // document.write('
      setting au! ') =0A= auto_user_url_fragment =3D ';au=3D' + aud[key];=0A= } =0A= }=0A= =0A= document.write('');=0A= document.write('');=0A= if (th && dc){cc('rtc', rtc)}=0A= }=0A= else=0A= {=0A= // document.write('throttled
      ');=0A= }=0A= }=0A= ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://media.ledger-enquirer.com/static/accuweather/widget.js document.write('');=0A= document.write('Columbus, = GA');=0A= document.write('');=0A= document.write('
      ');=0A= document.write('');=0A= document.write('Clear = 80°F
      ');=0A= document.write('');=0A= document.write('Hi/Low: = 87°/69°');=0A= document.write('');=0A= document.write('Weather = Alert');=0A= ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://s7.addthis.com/js/addthis_widget.php?v=12 if (typeof addthis_widget=3D=3D"undefined"){var = addthis_widget=3D'addthis'; var at12O=3D'http://s7.addthis.com/'; var = at12o=3D'http://s7.addthis.com/services/'; var = at12Y=3D'http://s7.addthis.com/select/'; function at12y( = ){addthis_url=3DencodeURIComponent(addthis_url); = addthis_title=3DencodeURIComponent(addthis_title); = addthis_title=3Daddthis_title.replace(/'/g,'\\\''); var at12I=3D''; = at12I+=3D'3D""'; document.write(at12I); }function at12A(at12a){return = document.getElementById(at12a); }function addthis_clearclosewin( ){if = (typeof at12E!=3D"undefined")clearTimeout(at12E); }function = addthis_onmouseover(at12e,at12U,at12u,at12Z,at12z){addthis_clearclosewin(= ); addthis_url=3Dat12u; addthis_title=3Dat12Z; addthis_pub=3Dat12z; = at12X=3Dat12A('addthis_favorites'); at12X.src=3Dat12o+'favorites.png'; = at12X=3Dat12A('addthis_delicious'); at12X.src=3Dat12o+'delicious.png'; = at12X=3Dat12A('addthis_digg'); at12X.src=3Dat12o+'digg.png'; = at12X=3Dat12A('addthis_reddit'); at12X.src=3Dat12o+'reddit.gif'; = at12X=3Dat12A('addthis_google'); at12X.src=3Dat12o+'goog.png'; = at12X=3Dat12A('addthis_furl'); at12X.src=3Dat12o+'furl.gif'; = at12X=3Dat12A('addthis_su'); at12X.src=3Dat12o+'su.png'; = at12X=3Dat12A('addthis_live'); at12X.src=3Dat12o+'live.gif'; = at12X=3Dat12A('addthis_myweb'); at12X.src=3Dat12o+'yahoo-myweb.png'; = at12X=3Dat12A('addthis_facebook'); at12X.src=3Dat12o+'facebook.gif'; = at12X=3Dat12A('addthis_myspace'); at12X.src=3Dat12o+'myspace.png'; = at12X=3Dat12A('addthis_more'); at12X.src=3Dat12o+'plus-16x16-light.gif'; = var at12x=3Dat12e.getElementsByTagName('img'); if = (at12x)at12e=3Dat12x[0]; var at12W=3Dat12A('addthis_dropdown'); = at12W.style.display=3D'block'; var at12w=3Dat12V(at12e); = at12v=3Dat12w[0]; at12T=3Dat12w[1]; var at12t=3Dat12S( ); var = at12s=3Dat12R( ); if = (at12v-at12s[0]+at12W.clientWidth+024>at12t[0])at12v=3Dat12v-0157; if = (at12T-at12s[1]+at12W.clientHeight+at12e.clientHeight+024>at12t[1])at12T=3D= at12T-0235; at12W.style.left=3Dat12v+'px'; = at12W.style.top=3D(at12T+at12e.clientHeight)+'px'; return false; = }function addthis_onmouseout( ){addthis_closewinwait( ); }function = addthis_closewinwait( = ){at12E=3DsetTimeout("addthis_closewin()",0764);}function = addthis_closewin( ){var at12W=3Dat12A('addthis_dropdown'); = at12W.style.display=3D'none'; return false; }function = addthis_to(at12r){addthis_closewin( ); if = (at12r=3D=3D'favorites'){addthis_url=3DdecodeURIComponent(addthis_url); = addthis_title=3DdecodeURIComponent(addthis_title); if = (document.all)window.external.AddFavorite(addthis_url,addthis_title); = else window.sidebar.addPanel(addthis_title,addthis_url,''); return = false; = }window.open(at12i(at12r),'addthis','scrollbars=3Dyes,menubar=3Dno,width=3D= 620,height=3D400,resizable=3Dyes,toolbar=3Dno,location=3Dno,status=3Dno')= ; return false; }function at12i(at12r){return = 'http://www.addthis.com/bookmark.php?v=3D12&winname=3Daddthis&pub=3D'+add= this_pub+'&s=3D'+at12r+'&url=3D'+addthis_url+'&title=3D'+addthis_title; = }function at12V(at12Q){var at12q=3D0,at12P=3D0; do = {at12q+=3Dat12Q.offsetTop || 0; at12P+=3Dat12Q.offsetLeft || 0; = at12Q=3Dat12Q.offsetParent; }while (at12Q); return [at12P,at12q]; = }function at12S( ){var at12p=3D0; var at12N=3D0; if = (typeof(window.innerWidth)=3D=3D'number'){at12p=3Dwindow.innerWidth; = at12N=3Dwindow.innerHeight; }else if (document.documentElement && = (document.documentElement.clientWidth || = document.documentElement.clientHeight)){at12p=3Ddocument.documentElement.= clientWidth; at12N=3Ddocument.documentElement.clientHeight; }else if = (document.body && (document.body.clientWidth || = document.body.clientHeight)){at12p=3Ddocument.body.clientWidth; = at12N=3Ddocument.body.clientHeight; }return [at12p,at12N]; }function = at12R( ){var at12n=3D0; var at12M=3D0; if = (typeof(window.pageYOffset)=3D=3D'number'){at12M=3Dwindow.pageYOffset; = at12n=3Dwindow.pageXOffset; }else if (document.body && = (document.body.scrollLeft || = document.body.scrollTop)){at12M=3Ddocument.body.scrollTop; = at12n=3Ddocument.body.scrollLeft; }else if (document.documentElement && = (document.documentElement.scrollLeft || = document.documentElement.scrollTop)){at12M=3Ddocument.documentElement.scr= ollTop; at12n=3Ddocument.documentElement.scrollLeft; }return = [at12n,at12M]; }function at12m( = ){at12L=3Ddocument.createElement('link'); at12L.rel=3D'stylesheet'; = at12L.type=3D'text/css'; at12L.href=3Dat12O+'css/addthis_widget.css'; = at12L.media=3D'all'; document.lastChild.firstChild.appendChild(at12L); = }function at12l( ){at12m( ); var at12K=3D'
      '; at12K+=3D''; at12K+=3D''; = at12K+=3D'
      Bookmark & Share© Add This
      '; at12K+=3D''; at12K+=3D''; at12K+=3D'\x3ctd = width=3D\"50%\">\x3ca href=3D\"/\" onclick=3D\"return = addthis_to(\'favorites\')\">\x3cimg id=3D\"addthis_favorites\" = alt=3D\"\" width=3D\"16\" height=3D\"16\" />  = Favorites\x3c/a>\x3c/td>'; at12K+=3D'\x3ctd width=3D\"50%\">\x3ca = href=3D\"/\" onclick=3D\"return addthis_to(\'delicious\')\">\x3cimg = id=3D\"addthis_delicious\" alt=3D\"\" width=3D\"16\" height=3D\"16\" = />  Del.icio.us\x3c/a>\x3c/td>'; at12K+=3D''; = at12K+=3D'\x3ctd>\x3ca href=3D\"/\" onclick=3D\"return = addthis_to(\'digg\');\">\x3cimg id=3D\"addthis_digg\" alt=3D\"\" = width=3D\"16\" height=3D\"16\" />  Digg\x3c/a>\x3c/td>'; = at12K+=3D'\x3ctd>\x3ca href=3D\"/\" onclick=3D\"return = addthis_to(\'google\')\">\x3cimg id=3D\"addthis_google\" alt=3D\"\" = width=3D\"16\" height=3D\"16\" />  Google\x3c/a>\x3c/td>'; = at12K+=3D''; at12K+=3D'\x3ctd>\x3ca href=3D\"/\" = onclick=3D\"return addthis_to(\'myspace\');\">\x3cimg = id=3D\"addthis_myspace\" alt=3D\"\" width=3D\"16\" height=3D\"16\" = />  MySpace\x3c/a>\x3c/td>'; at12K+=3D'\x3ctd>\x3ca href=3D\"/\" = onclick=3D\"return addthis_to(\'facebook\');\">\x3cimg = id=3D\"addthis_facebook\" alt=3D\"\" width=3D\"16\" height=3D\"16\" = />  Facebook\x3c/a>\x3c/td>'; at12K+=3D''; = at12K+=3D'\x3ctd>\x3ca href=3D\"/\" onclick=3D\"return = addthis_to(\'reddit\');\">\x3cimg id=3D\"addthis_reddit\" alt=3D\"\" = width=3D\"16\" height=3D\"16\" />  Reddit\x3c/a>\x3c/td>'; = at12K+=3D'\x3ctd>\x3ca href=3D\"/\" onclick=3D\"return = addthis_to(\'live\');\">\x3cimg id=3D\"addthis_live\" alt=3D\"\" = width=3D\"16\" height=3D\"16\" />  Live\x3c/a>\x3c/td>'; = at12K+=3D''; at12K+=3D'\x3ctd>\x3ca href=3D\"/\" = onclick=3D\"return addthis_to(\'furl\');\">\x3cimg id=3D\"addthis_furl\" = alt=3D\"\" width=3D\"16\" height=3D\"16\" />  = Furl\x3c/a>\x3c/td>'; at12K+=3D'\x3ctd>\x3ca href=3D\"/\" = onclick=3D\"return addthis_to(\'myweb\');\">\x3cimg = id=3D\"addthis_myweb\" alt=3D\"\" width=3D\"16\" height=3D\"16\" = />  Yahoo MyWeb\x3c/a>\x3c/td>'; at12K+=3D''; = at12K+=3D'\x3ctd>\x3ca href=3D\"/\" onclick=3D\"return = addthis_to(\'su\');\">\x3cimg id=3D\"addthis_su\" alt=3D\"\" = width=3D\"16\" height=3D\"16\" />  StumbleUpon\x3c/a>\x3c/td>'; = at12K+=3D''; at12K+=3D''; at12K+=3D'
      3D""  = More...
      '; = at12K+=3D''; at12K+=3D''; = at12K+=3D'
      '; at12K+=3D'
      '; = at12k=3Ddocument.createElement('div'); at12k.innerHTML=3Dat12K; = document.body.insertBefore(at12k,document.body.firstChild); = at12k.style.zIndex=3D03641100; }at12l( ); }at12y( );=0A= ------=_NextPart_000_0000_01C8B2E7.FC64C0B0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.ledger-enquirer.com/static/scripts/mi/prospero_active_content.js /***** Start of Active Content JavaScript (V 3.0) For JsEnhanced ******=0A= * PT_AC_ prefixing on variables and functions to minimize namespace = conflicts=0A= * Note that function PT_AC_Write auto-appends fmt=3DJsEnhanced=0A= */=0A= // the following variable can be set to control the AC behavior for = older or rarer browsers=0A= var PT_AC_OldBrowserSupport =3D 1; // For browsers that don't support = innerHTML=0A= // 0=3Donly show defaultHTML, 1=3DShow AC except during = maintenance windows=0A= // 2=3Dalways show AC=0A= =0A= // the remaining code should be left as-is=0A= var PT_AC_SupportLevel =3D -1; // -1 none (default), 0 document.write, 1 = innerHTML, 2 getElementById.innerHtml =0A= var PT_AC_SrcArray =3D new Array();=0A= var PT_AC_Total =3D 0;=0A= =0A= if (document.getElementsByTagName) {=0A= if (document.getElementsByTagName("HEAD")[0].innerHTML) {=0A= if (document.getElementById)=0A= PT_AC_SupportLevel =3D 2;=0A= else=0A= PT_AC_SupportLevel =3D 1;=0A= }=0A= }=0A= else if (document.all) {=0A= if (document.all[0].innerHTML) {=0A= if (document.getElementById)=0A= PT_AC_SupportLevel =3D 2;=0A= else=0A= PT_AC_SupportLevel =3D 1;=0A= }=0A= }=0A= =0A= function PT_AC_CheckMaintWindow() { =0A= PT_AC_SupportLevel =3D 0;=0A= if (PT_AC_OldBrowserSupport =3D=3D 1) {=0A= var PT_AC_Now =3D new Date();=0A= PT_AC_Now.setHours(PT_AC_Now.getHours() + = (PT_AC_Now.getTimezoneOffset()/60) - 5);=0A= var PT_AC_Day =3D PT_AC_Now.getDay();=0A= var PT_AC_Month =3D PT_AC_Now.getMonth();=0A= var PT_AC_Date =3D PT_AC_Now.getDate();=0A= if (PT_AC_Day =3D=3D 3 || PT_AC_Day =3D=3D 6) {=0A= if ((PT_AC_Month > 4 || (PT_AC_Month =3D=3D 4 && ((PT_AC_Day =3D=3D 3 = && PT_AC_Date > 3) || (PT_AC_Day =3D=3D 6 && PT_AC_Date > 6)))) &&=0A= (PT_AC_Month < 10 || (PT_AC_Month =3D=3D 10 && ((PT_AC_Day =3D=3D 3 = && PT_AC_Date < 28) || (PT_AC_Day =3D=3D 6 && PT_AC_Date < 31)))))=0A= PT_AC_Now.setHours(PT_AC_Now.getHours() + 1);=0A= if (PT_AC_Now.getHours() >=3D 5 && PT_AC_Now.getHours() <=3D 6)=0A= PT_AC_SupportLevel =3D -1;=0A= }=0A= }=0A= }=0A= =0A= function PT_AC_Write(PT_AC_Src, PT_AC_DefaultHTML) {=0A= PT_AC_Total++;=0A= PT_AC_SrcArray[PT_AC_Total] =3D PT_AC_Src + = '&fmt=3DJsEnhanced&DivId=3D' + PT_AC_Total;=0A= if (PT_AC_SupportLevel > 0)=0A= document.write ('
      '+PT_AC_DefaultHTML+'<\/div>');=0A= else if (PT_AC_SupportLevel =3D=3D 0)=0A= document.write ('