From: Subject: =?Windows-1252?Q?South_Africa_Tourism_-_News_-_South_Africa=92s_Braille_T?= =?Windows-1252?Q?rails=2C_Touch_and_Feel_Tourism?= Date: Thu, 27 Aug 2009 14:41:58 +0200 MIME-Version: 1.0 Content-Type: multipart/related; type="multipart/alternative"; boundary="----=_NextPart_000_0000_01CA2724.87B3E4A0" X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.5579 This is a multi-part message in MIME format. ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/png Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/search_icon.png iVBORw0KGgoAAAANSUhEUgAAABUAAAAVCAMAAACeyVWkAAAAA3NCSVQICAjb4U/gAAAAQlBMVEX/ //8AAAAAAAAAAAAAAABFRUWNjY2pqanV1dXm5ubv7+/////39/fv7+/m5ubg4ODV1dXMzMzIyMi9 vb20tLQAAABL+IZjAAAAFnRSTlMAESIzRFV3mczd7v//////////////s8KXUAAAAAlwSFlzAAAu IwAALiMBeKU/dgAAABZ0RVh0Q3JlYXRpb24gVGltZQAwNC8yMi8wOUOH4DwAAAAYdEVYdFNvZnR3 YXJlAEFkb2JlIEZpcmV3b3Jrc0+zH04AAACoSURBVBiVdZFXEsUgCABji0SNNd7/qg9QJ69lfxhX RinbthBCbF+gklJ+XqBSSmutlLy9EMpYcN6BNWpplDuk0q5WEuxLozzKNSgHapbSQG6LDEYKTrWR zn3oaNWwkGqtvfdKJCArpHa5IKgpZKfxCbQ+M6gp+GldIlBy5Fx693yTJ8zfbIhIj0yYNWC94VyE WS/3FhartzEHz87fc/g/s4f5PuziZ28vD7kL3FNd2AEAAAAASUVORK5CYII= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/dot_clear.gif R0lGODlhAQABAIAAAP///////yH5BAEHAAEALAAAAAABAAEAAAICTAEAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/main_nav_coloured_caps.gif R0lGODlh3QMGAMQAAAAAAJu7jtQNFj57JemChgApZ////3t7e/+nAP+vGP/RexgYGHuQsFCHOhg9 ddghKdosNCEhIVeMQSFFe/+yIf8A/wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEH ABUALAAAAADdAwYAAAX/oCGOZGmeaKqubOu+cKxWdCXfeK7vvFvbvaBwSOz9isikcmk4Mp/QqK8m rVqvgqx2y+16v+CweEwum8/oL4TQtAUkg7h8Tq/b7/i8fs/v+/+AcxIBbQYHEQCJiouMjY6PkJGS k5SVlpeYixEHhQoUCKChoqOkpaanqKmqq6ytrq+iFAqFDBMFt7i5uru8vb6/wMHCw8TFxrkTDIUE EGnOz9DR0tPU1dbX2NlibAYBgd/g4eLj5H2Ehpnp6uvs7e6VnAYKsPT19vf4+ayzBgzH/wADChxI cJgyAwS0KVzIsKHDhxAjhnkgokG5ixgzarzYQMSCdyBDihwJcoGIBPpSZ6pcyTJlAhEOCsqcSbOm TAciHkjcyROizp5Ag2oTsbGo0aNI5YggybSp06eKRLScSrWq1VAibGrdyrUrLhFCw4odS7asQ6JJ 06pd+2cp1Ldw416SerWu3buusnrdy7dvMbBmAwvWEgIAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/sub_nav_active_arrow_15.gif R0lGODlhCwAFAJEAAMwAAP///////wAAACH5BAUUAAIALAAAAAALAAUAAAILlI8poAffnkyymgIA Ow== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/sub_nav_active_arrow_42.gif R0lGODlhCwAFAJEAAD17Jf///////wAAACH5BAEHAAIALAAAAAALAAUAAAILlI8poAffnkyymgIA Ow== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/sub_nav_active_arrow_100.gif R0lGODlhCwAFAJEAAP///////////wAAACH5BAUUAAIALAAAAAALAAUAAAILlI8poAffnkyymgIA Ow== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/sub_nav_active_arrow_101.gif R0lGODlhCwAFAJEAAP+ZAP///////wAAACH5BAUUAAIALAAAAAALAAUAAAILlI8poAffnkyymgIA Ow== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/sub_nav_active_arrow_103.gif R0lGODlhCwAFAJEAAAAzZv///////wAAACH5BAUUAAIALAAAAAALAAUAAAILlI8poAffnkyymgIA Ow== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/png Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates//images/tripplanner/flag_shadow.png iVBORw0KGgoAAAANSUhEUgAAABYAAAAPCAYAAAGXag/+AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ bWFnZVJlYWR5ccllPAAAAehJREFUeNpiYIAARhDBAuVUAbEhQAAxIMswAbEaEEeAOAABxAhVmgTE gkAsDcQtQPyKkQETaAGxLkAAIZvFiMxxBmJNIJYC4h9A3MQMJB4AsR4QcwHxbyDmxmIsw1SAAAJp Z4a6gBOItYGYB4hZoeJngfgGEP9nQLJUBIi9obQAEAsDMQcQswHxOSCeAsS/0K0C2c8PxcxQx64E 4p1AbMpAJABpZAAIIPQAQuf/R5fkgVoPslIB6k6QBz8C8X4g/gJTzAL1kDM0NECYD4pBGv5A3fsP 5pYvUJNloAEtCFUMYqsD8X1QhMIUg9z1GhpssDC+BcRXoIo1gPgUNAoZkJ3EB3UWJ9SgBCA+DMRt IL8wIykGuesn1IQ/UBtvQhOeODQ2iQ9ngAClkzEKwkAURHeNaFSsTCFYBTyENxDvKxZ2FlbqCSxT hICFiGBl1vnwFhJJpQuPhcDOHybzfUe+CTZSrPmvTta07YmTukvdI7AguQliltpUDAkn0ud+ias4 i4JBbeEQgvPem1DOUmQ87vHjUwaNGoMS8ioI9iKdh3TaFUPcHswRz3EcRce4NbE3Q+P3uziKg6hi NF1djlWd4XCAQxO8QcDAmp117OlWnKza3v1+bOBSbMQKI6XYif0/ws0BGQVwbEX1ASl0VSg2AkWo AAAAAElFTkSuQmCC ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/png Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates//images/tripplanner/flag.png iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAFo9M/3AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ bWFnZVJlYWR5ccllPAAAA2xJREFUeNpi/P//PwMIMIGIrjMt/wACiBEmwtJzvea/7toDDAABBBbZ 9GjNf042LgaFE8cZWEDS0y50MLrMf8pwS5T/GUAAwfXAAPMprsf3JJU4Jxz9drFha7Lrepa4UE/F F38eMrw6++svAyPjdZZ5h6Ywcj5mY8hk/v3/AiPjb4AAApvh1trBwK60iuHfRy51exX7Gz8E/jG4 /jFjODwpdznYVlmJC5/FNU155LhVGFT59Bgevn3JIHlzP8Ofvwy5YAW3/t2ffevuRwaWe3fPWKj+ WCa9cuqZXYLCxkxMTG/BCjjZOIsY2P4x2Fx4wMB27hbDf24+4/cfvjiC5AACCMMf6IDRIr2dQcR2 AwMjw18G5o+cz2OcsyUWb5vwL++vEINTyVZmll8MjCKpNiWvgSoY+Nj4Gb7++8jgxaDM9OjpTUg4 S/H/T/ry7z3D2fcHGT7+ec/w4/83Blmefwxfv/34B1bwRlIo+tnPBwyqAroMbz6/Ztj7/P57aXZ+ hm9fP7eD44Xr654lm65dkvz/godBRFm0yG7bR+n/+tJPfv36MxOsgIGJuZuLlYfhLxc3g/6mKwwf n//J4DCVAwY743+IAijg+fmDgfMtA8NfVparuw6ce8jExPgMJA4QoFCyd0kgDuP41zvzvDPPFM00 BcleIFsihIoaClpqjoj+gQhqC2pqbWiLhojW2kKchKaGhqihN3t3KKJIsyv1zpe7310/jKymnvHh eb4Pz+f7rXLom16GPQhwoRhdKQFyPbTLCMOy8qJNzC2YPAwkja903T4fB6VMRFPlpEb01YXth9j3 BZ7+s64RtQcGAbFk4YyeiKPhiUAk3F8deDdeIZ0+D/cKPJK7m97Ts9s92v4SKFkcHd76xMjE4ExT Mn+IOhMHPx+CnfNAKmeRp/jSZRn8UQyKrxmp+zQ03Vir5Vl0i/PjQ5Pu18oTiE5gNllgNfNwcG46 wFAPCfAkoNUXhvJ+j0pJOaeQ1Boks3N/7ConmhscAhrZECoKQfxuJ/9WyMQHW+auXEzgRd5amre0 W9suHj9QKquzVCD3Q7kgNRykLsC4CgCFb6QFqKoNHp8dzMYKteZhqq270+/y+aHcpKHrxiPLmvDH pt+lcixcKYKBxDVkG4eiVYj6vU5bVsqhIBfj1MJMLa3/xfm/+gRMVmAHqXOJHwAAAABJRU5ErkJg gg== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/png Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/tripplanner/flag.png iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAFo9M/3AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJ bWFnZVJlYWR5ccllPAAAA2xJREFUeNpi/P//PwMIMIGIrjMt/wACiBEmwtJzvea/7toDDAABBBbZ 9GjNf042LgaFE8cZWEDS0y50MLrMf8pwS5T/GUAAwfXAAPMprsf3JJU4Jxz9drFha7Lrepa4UE/F F38eMrw6++svAyPjdZZ5h6Ywcj5mY8hk/v3/AiPjb4AAApvh1trBwK60iuHfRy51exX7Gz8E/jG4 /jFjODwpdznYVlmJC5/FNU155LhVGFT59Bgevn3JIHlzP8Ofvwy5YAW3/t2ffevuRwaWe3fPWKj+ WCa9cuqZXYLCxkxMTG/BCjjZOIsY2P4x2Fx4wMB27hbDf24+4/cfvjiC5AACCMMf6IDRIr2dQcR2 AwMjw18G5o+cz2OcsyUWb5vwL++vEINTyVZmll8MjCKpNiWvgSoY+Nj4Gb7++8jgxaDM9OjpTUg4 S/H/T/ry7z3D2fcHGT7+ec/w4/83Blmefwxfv/34B1bwRlIo+tnPBwyqAroMbz6/Ztj7/P57aXZ+ hm9fP7eD44Xr654lm65dkvz/godBRFm0yG7bR+n/+tJPfv36MxOsgIGJuZuLlYfhLxc3g/6mKwwf n//J4DCVAwY743+IAijg+fmDgfMtA8NfVparuw6ce8jExPgMJA4QoFCyd0kgDuP41zvzvDPPFM00 BcleIFsihIoaClpqjoj+gQhqC2pqbWiLhojW2kKchKaGhqihN3t3KKJIsyv1zpe7310/jKymnvHh eb4Pz+f7rXLom16GPQhwoRhdKQFyPbTLCMOy8qJNzC2YPAwkja903T4fB6VMRFPlpEb01YXth9j3 BZ7+s64RtQcGAbFk4YyeiKPhiUAk3F8deDdeIZ0+D/cKPJK7m97Ts9s92v4SKFkcHd76xMjE4ExT Mn+IOhMHPx+CnfNAKmeRp/jSZRn8UQyKrxmp+zQ03Vir5Vl0i/PjQ5Pu18oTiE5gNllgNfNwcG46 wFAPCfAkoNUXhvJ+j0pJOaeQ1Boks3N/7ConmhscAhrZECoKQfxuJ/9WyMQHW+auXEzgRd5amre0 W9suHj9QKquzVCD3Q7kgNRykLsC4CgCFb6QFqKoNHp8dzMYKteZhqq270+/y+aHcpKHrxiPLmvDH pt+lcixcKYKBxDVkG4eiVYj6vU5bVsqhIBfj1MJMLa3/xfm/+gRMVmAHqXOJHwAAAABJRU5ErkJg gg== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/icon_print.gif R0lGODlhGwAcALMAAGZmZvf399fX17S0tJ2dnY+Pj+bm5sXFxf///62treDg4O/v78zMzL29vWxs bJSUlCH5BAAHAP8ALAAAAAAbABwAAAT1EMlJq704682750GwjGP4IaIhMEfLCMYSdKJwJMRTPERy CLJNwMDADYCIhWDQYxhmGFExIVAwGoMGQyFIJBjBi9JLHJjPA6cXaRkeCAJBowGo1+dxwuHZ7g4M LQcAgYMtBgNUUBQLDHA2LYWCgXlgFgsHD0oMDHadm0APBwuWBwUIcQIAqHGqcQgFoqSZCrSqdqlx CguhoxWMcAu0DrTEw7oCBJUVAX5DBg7Q0Q4GT4gCihNucCIk3SPIe9gTYwlPIefnBmu9bYxrKOjM XmDiFENFBEejSkxffBo1buTY0eNHGCELVLBwAeMgDW4kTJyYSLFixQgAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/icon_email.gif R0lGODlhGwAcALMAAP////f39+/v7+fn59/f39fX18rKysbGxr6+vrKysq6urp6enpaWlo6Ojmlp aWVlZSH5BAAHAP8ALAAAAAAbABwAAAT4EMhJq704682750EgjGP4AeJQGEdrFIMQdGJxKAvTMIty FLJNYGDAJYAAQSHRMwxmGFFRUSAYEAmEgVBQKAzBi9JLTJjPCacXaRkeFoUCYk6nxxeHZ7ubGLQe gIEPLQMJVFAUAgZwNgeALY6DPwULYBYCBwxKBgYPnZ+eLwIMBwKXBw0AcQUPBQwPDKyrAA2lp5oE ubCrr3EEo7YVinACuQ7HyA65SpWmFQF8QwPT1NUBhgWIE25wIiTfI5R52hNjCk8h6ekDa85timso 6tBeYOQUQ0ULR6ZKTF96NNS4kWNHjx9hhAhQwcIFjIQ0vJEwcaKixYsXIwAAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/icon_divider.gif R0lGODlhAQAcAKIAAHt7e+3t7aKioszMzP///4eHh62trYmJiSH5BAAHAP8ALAAAAAABABwAAAMN SEFDRocASaclhQimEgA7 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/corners_213x118_white_on_white.gif R0lGODlh1QB2AMQAAJmZmZ+fn////8HBwff3952dnfT09KSkpKOjo7u7u76+vvHx8aCgoKGhoaam pqenp8PDw6urq/Pz88XFxaqqqvn5+QAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEA AAAALAAAAADVAHYAAAXroEBAQGmeaKqubOu+cCzPdG3TUyUsd+//wKBw+DMkiMikcskkDprQqHRK rVqv2Kx2y+16v+CweEwum8/otHrNbrvf8Lh8Tq/b7/i8fs/v+/+AgYKDhIWGh4iJiouMjY6PkJGS k5SVlpeYmZqbnJ2en6ChoqOkpaanqKmqq6ytrq+wsbKztLW2t7i5uru8vb6/wMHCw8TFxsfIycrL zM3Oz9DR0tPU1dbX2Nna29zd3t/g4eLj5OXm5+jp6uvs7e7v8PHy8/T19vf4+fr7/P3+/wADChxI sKDBgwgTYjryb4AEgAQEGFDAb0DEEAA7 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/button_more_black.gif R0lGODlhMwAVAMQAACIiIvf398zMzLS0tJmZmYWFhWZmZubm5llZWb29vd7e3v///62trXp6eo+P j/Dw8NfX18XFxaamppSUlG9vbwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAAAzABUAAAX/4CKOZGmeaBA8LKuicCyL6wEJUS5AxxPMwFnAFmEQJo4JgRHh/YLQ0lBg TEAeiwcksRQcnlHolMGAKASJQUKgUJC94PBMSz4IBvj8wEu+0kZgNk82EIMQhwdSBxEEhwmPkJCH BBFfCxIjmAsDFAUGEZudCKCcBQUJUhAMCQeRAJGPrWU/BaABCAsHFD8KBpsDCxEFvygPAo0QOREA zMo5ChAEAlgNBAsJDRADmgvZeJvWAwVqJg8RE1oC6gLMAOs7DxMRDwoDDQsOad8iBdoICA1+iCNX wpyDBYcSQminEN+8CHgS9JPAZQSFA3gUUBCxr9w5em3atAvZJt48NbpYfhUIYADCpmHfYgI7YazR gZAjSdqQ9sCBS2sLfEWggKCAAmLd6v1DMBOQqgRDDkgFILXqlwSz5AhZ1GhFi68solWKo7WYKgZf wLo40AdLWRljyixQQTfAWThvt1IhYAWLFi4M8ObdmswIEiVMnAwOUuOGsh09yC6G67XFixIhAAA7 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/quote_marks_grey.gif R0lGODlhFAASAMQAAH2Vr8vU5Y+jvPb3/MXM1uXo7a++0YGVsNzg6czW4IebtqOvycHN29/j7n2U tLvH1YOTte7x+P///97g7Nfb5MXO3+nw9oqbtZSlveXp9LK9zwAAAAAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAAAUABIAAAV4oCSOxTOeY2aO0XIc6Gi5sJgoTh5LyZU7osDPoYglIL9iBJcjxCy+pkgD AQAqO8PPKRlAvoLd4BcWUX6M3TmXFhFeh8SOAQ+MKsPfCZ93MPpAI399g3kndHBogHuAhUOHjYuC kX2QfQSSInR9EQienwgnEROkpRMhADs= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/dots_horizontal_divider.gif R0lGODlhnQIBAMQAAAAAANPT01xcXCAgIKWlpf///4aGhhEREUBAQO7u7mpqarq6upmZmTMzMwcH B+bm5ri4uHt7exkZGfj4+N7e3ktLSykpKcXFxWZmZqqqqomJiXV1dQAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAACdAgEAAAVtYFKIT0EVQXEVS5EVTKEVUaEUQlEVSNH4hUGwICkcjEhHQQkoNJ/OKHQq rVKv1ix2q+1yv94weCwuk8/mNHqtbrPf7jh8Lq/T7/Y8V8lfIo9FQhZAPTs5GAUbBQYwBQQFECoo JgUlIiITBZqbIQA7 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://s7.addthis.com/static/btn/lg-share-en.gif R0lGODlhfQAQAMQfAF+25dvZ12SsPeexZ5KSkh0g/7DP4/zIBOaymvrLUviSEba1tairpurq6sPG yBqS0+BKCqDGX/DHnsbVqPz8/PPz8/9pOvb29vr6+u/v7+zs7Ojo6MDAwAAAAP///////yH5BAEA AB8ALAAAAAB9ABAAAAX/4PdxZGmeaKqubOu+cMyJY+DdeK7vfO//wKBwOAzMODaicslsOolGDs5C rVKf2OZluy14vb4FY7zgBRCSCpF0s7ot2fiQ2/0WdIu8p3zj5wIQgQMbQ2weVm1VQB2MOB2Ojo03 jJIelI9MdBd2dzgEOGM3AQR+NwgQCgoIERECAkCGiIeKPpiWk5C3uLq6tlp0nDmfHhsEAQEOycNT qQoTrK6wUrM7V7U7tpjZu71YmsGeHg0cBBfJDsU5FwsGDhLPrQzSFBTWOVT0+fr0lPmXHfwuBWTk j+C+gwgp/Duxj4BDEhkqaBijz8ADAAACvHsWIGE+EhgwyLISsqTJkx1C2qZUybJlypUtT8qcqfLS CZkEQnLIkCEAg5MALmZMQDQBTZMktoysoklTBy5PL0SVumVq1KtQm2rdKtWmCU0cGHC4sHNBgAWa HqgFIIHogQFcuZCoUOGNFbp489KlhLdD371/K/gFLJiv3sOIF5rQK4VDhbJn9ToIYMBAggMHFKRB nBciT7sWeIoeTbq06dOoU59WXIK0QwIZXjtEHWCAbdIdMuTOzZNEANUaggsfTry48ePIkytfzrw5 cSM1NkifTr269evYs2vfzr27d+/QRcgYT768+fMsRIQAADs= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/button_plus.gif R0lGODlhFQAVALMAADk5Oe/v797e3szMzMbGxra2tv////f39+bm5tXV1b29vQAAAAAAAAAAAAAA AAAAACH5BAAHAP8ALAAAAAAVABUAAAS30Mgpj7U0UxuQ+AgSHNp0BEJCEIoyJMJIZp06xAY6EImY HYjBTTBQFFwfIQJjOCUGwYJ0WoC+RhIUIdXqemHbQPaJ8JpbwYQYuBWs3oDd+0NYHtyBp1AY318V AhYCCgYJhgkAiYmHCQaAggQoH5MAk5MBWxYIYZYClZYedRxPQCGmp0tXF26BAa6vsKwYTlAnsK5A qiZBNxUXd0pMWQg2ODo8PhonKSsKKzBLJRWuHiC40hu/MxoRADs= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/shared/templates/images/loaders/throbber.gif R0lGODlhIAAgAPYAAP///wAAAPr6+tbW1tra2vz8/Lq6uoCAgIqKisDAwPb29ujo6IiIiH5+fqCg oObm5nBwcFJSUoKCguTk5PLy8nx8fKKioq6urjY2Njo6OkBAQGpqatzc3PT09Hp6eqampvj4+MjI yDw8PGxsbOrq6p6ennh4eL6+vtLS0jQ0NDg4OKysrMbGxszMzO7u7tTU1DAwMLS0tLy8vKioqPDw 8G5ubpKSktjY2OLi4oaGhhISEhAQECQkJA4ODi4uLpqamuDg4N7e3uzs7LCwsJycnJaWlmJiYo6O jpSUlEZGRkxMTFBQUEREREpKSpCQkM7OzkhISEJCQtDQ0MLCwk5OTpiYmBoaGigoKDIyMhYWFhQU FLi4uFpaWlRUVKSkpHJyclhYWF5eXmRkZFxcXFZWViIiIiAgIB4eHioqKsrKysTExGhoaLa2tmZm ZiwsLKqqqhgYGGBgYBwcHHR0dHZ2drKysiYmJoSEhD4+PoyMjAwMDAAAAAAAAAAAAAAAAAAAACH/ C05FVFNDQVBFMi4wAwEAAAAh/hpDcmVhdGVkIHdpdGggYWpheGxvYWQuaW5mbwAh+QQJBQAAACwA AAAAIAAgAAAH/4AAgoOEhYaHiImKi4yNjo+QkZKECzk2NJOCDxchgwU1OjsSmQoQGCIWghQiOz01 npALERkYGQ4AFBqtP4ILN0ACjgISGhkpGDIANjw+KABCKNEujxMbGiowowAEHIIT0SgUkBwjGiIz hkIvKDiSJCsxwYYdmI8KFB0FjfqLAgYMEiSUEJeoAJABBAgiGnCgQQUPJlgoIgGuWyICCBhoRNBC EbRoFhEVSODAwocTIBQVwEEgiMJEChSkzNTPRQdEFF46KsABxYtphUisAxLpW7QJgkDMxAFO5yIC 0V5gEjrg5kcUQB098ElCEFQURAH4CiLvEQUFg25ECwKLpiCmKBC6ui0kYILcuXjz6t3Ld1IgACH5 BAkFAAAALAAAAAAgACAAAAf/gACCg4SFhoeIiYqLjI2Ohw8Tj44XKlhbk4sKEVZZXAWZgwsxLYMd TJ1RCqEAIA1JSjOCFKhaUSCCoI8kRkpMULIKVFZaXaALN0C6jAVHS01RTFMAVVc8XgBCKNsujwsm S1AaCIJSpQAT2ygUk0AeS0oXhkIvKDihQjEyy4QdNJMgOqxqxC9RCyJFkKwYiKgAkAEE2CWi4CCh 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 2rVwB+PKnUtXbiAAOwAAAAAAAAAAAA== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/button_close.gif R0lGODlhKwAOAKIAAJmZmf///9fX18zMzO/v79/f3/f39+np6SH5BAAHAP8ALAAAAAArAA4AAANq GLrc/oqcSSu8mInCuy+DkY3OkAmEMqwqCZkYGsBz7ZYnQS/wSvs8Fm8BIC5Qu9bPVlu2jMWjDucU znxOo2baMGVtyaeiGFXIlt4heigul2XXnsoKnO/CDfhthN/uSSExKX8ZB1iHKwUBCQA7 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/button_back.gif R0lGODlhIgAJAMQAAP////f39+vr69/f39fX18rKysLCwra2tqqqqqKiopqamo6OjoKCgnl5eW1t bWFhYVlZWSAgIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAAAiAAkAAAWWICCOZEAQQkkCAyEOASCkY7QCCKQj41KIgYYuAYAQAg4aIMJcIRiAxAII UYgY1kDMqOCJmDbng+FwAQ65gACiLB4cteYN4Xg2RMnFgQBZQR4PMV9yJE8AAUYDD3YDbCQQCXUk YE5QjQIKDgwMEAMODVouRgaBk3M6EAYADwMiDQkFDzpWRgCSNyQCJykBrSIzhygiZsAhADs= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/heading_related_articles.gif R0lGODlhcAAOAMQAANQNFvrh4uRnbe+kp9w6Qf////TCxemGitcbJN9JUNkqMuyVmfzw8PKztvfR 0+FYXud2ewAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAABwAA4AAAX/oHGMR8MUaKqiQLK+cKwGACTf8XHKCYC/B4BQiBjgWjiG4/cCHJiyJcrg vPWgqaABtQAgjq4bEst6klVBlZTnI2tTV3FYNiZXz9k2NI59oxRfKAcIQgk7Yw0EQgpbDj0ICWEN CotrC5QID3cqBj1eRiiREEIClJEGDgpmBZeFRnyTiw0oDZpIfgMAAiijCQsCY2MKBCNeBQFBqgsF uQq/CAgnowgQEJSrcKoDhAEsXgcQBz0jAVRmo7oQCE9xDQCq6gjdCAQD1QVBBAmm3TQEKZq6IUoB LEUdaDtGDfC3o8CmFA52+BGyJs2UKgxXxKHUjRWABVSW5dEH4B+XFiR6/2ypU8DAAj5jqKgaAexA F1BlYjh4CWCLwzn49JgLOkujDxozD9R0UNJn0C0qBZWMRHXJmEFeKBkMI5NqpAF+cq4YQOldTxZA LbasEmQNHB9dvRpBx+jpsXcngohcgSQXgiVqY+oCAqCoWIhCZk1MK5TtWaNrH8QIEI+BnyA23Jnk 60JvAQaatqKgEYjTYBQMHgbdVUCTT5ZBOg7NxVpFHCENXwAT8ZgBpS2UHgxYoA8ts09lF5wA1MCI pnoDHgRSpMAeIWx3nSjSJZDxAQfl7ihKMCD6rDijnDUoOEBAgwAPFNil9a6Ag+3fjBd4dCCAoi1B CPGZLaSg5okqNbyAjj8ADNT00wyE9DTUZ54I8Yoe6BRy3BCG3eCAAU69EMAODHRknwENlYPiCh8m YaJbKzBggIksgpjbDDZysmIBIQAAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/icon_more_black.gif R0lGODlhDAAMAMQAAA8PD+bm5sTExKSkpJaWll5eXv///97e3k9PT/j4+La2tkNDQ8zMzO/v73Nz cysrK62trZmZmWtra729vdfX1wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAAAMAAwAAAVgoCE2B8McjageUORG0JGIwSAEwXEIw2EkiklgMlEodopEINIQQCQmQSOS IyRMDweFkSDoCAYdA9AzeKcNZQHRSDMTzvAiIIIIZg0FJGVoQBR8fQwDBAQDDIEiCQ04aSohADs= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/heading_related_video.gif R0lGODlhZAAOAMQAANQNFvrh4uRnbfKzttw6QeyVmf///9cbJOmGit9JUPTCxdkqMvzw8PfR0+FY Xu+kp+d2ewAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAABkAA4AAAX/oIKMyMAYaKqiQLK+cKwGACS/yPkqAHLLCIBQeHj8Wj9G4wfrMVEN5076 VAUVqALgcHTdkNUUlbmE8Xzh1DWVAHTfacM4njrTDWvUgotCHIQJOmADBEILWA1tBwleAwuGZQYF jwcOcwKBKQMJCg0LaHiUhaAQfwAOOgylhgN4AFgGDwACKBAtBQJgYAsEI1sGAUGfBbEAC7gHBye2 BxAQj6BZAEYoBMp2BswIz1K5CQ+WXoWflq9BBAmPCQHAAAQpluyDKbliXgbJOrYPNAQ6ctEMMHCH ggYtO1HuIQRjoBADWbSguDvX5p20BCTaYGFoQEGBNvZQ8Pg0IhcCLdRY/wQ0EE8SgCV2grQS6SSI g4yvWqYY9cqAxj7uGAldAsbPlkchOxoTyuhBHpUvBgAgxoumj6cxgzJN5EZFmzU0FpwIQuwFElkH lgRJyiOiFQAzob44QCAKtaywlF6d9gKk1x49XdmQanEFErICLSWlwUdF2xQDVxrI5UCZVQNS3dqR 5eDFvhQ0MAZm8AjLIwcPCqBj4QLtg0dTT+wZYMQSgQfg+Ix7sEpylFl1pDy6LeCPDwZ/HAxQTSvA HwEDjIoIjNmYgQaFiKABowhBgEJYgghJPAS4wDbGgtiAUTo4GuyGTEKBvaWspyEH4t5ooCDviwCp sAOFAv8E0N8/A5LhHw0MDUSyAn8LXtdfCiEAADs= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/action/media/downloadFile?media_fileid=3848 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 FFFABRRRQAUUUUAFFFFABRRRQB//2Q== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/jpeg Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/banner_trip_planner.jpg /9j/4AAQSkZJRgABAgAAZABkAAD/7AARRHVja3kAAQAEAAAAUAAA/+4ADkFkb2JlAGTAAAAAAf/b AIQAAgICAgICAgICAgMCAgIDBAMCAgMEBQQEBAQEBQYFBQUFBQUGBgcHCAcHBgkJCgoJCQwMDAwM DAwMDAwMDAwMDAEDAwMFBAUJBgYJDQsJCw0PDg4ODg8PDAwMDAwPDwwMDAwMDA8MDAwMDAwMDAwM DAwMDAwMDAwMDAwMDAwMDAwM/8AAEQgAhAEyAwERAAIRAQMRAf/EAaIAAAAHAQEBAQEAAAAAAAAA AAQFAwIGAQAHCAkKCwEAAgIDAQEBAQEAAAAAAAAAAQACAwQFBgcICQoLEAACAQMDAgQCBgcDBAIG AnMBAgMRBAAFIRIxQVEGE2EicYEUMpGhBxWxQiPBUtHhMxZi8CRygvElQzRTkqKyY3PCNUQnk6Oz NhdUZHTD0uIIJoMJChgZhJRFRqS0VtNVKBry4/PE1OT0ZXWFlaW1xdXl9WZ2hpamtsbW5vY3R1dn d4eXp7fH1+f3OEhYaHiImKi4yNjo+Ck5SVlpeYmZqbnJ2en5KjpKWmp6ipqqusra6voRAAICAQID BQUEBQYECAMDbQEAAhEDBCESMUEFURNhIgZxgZEyobHwFMHR4SNCFVJicvEzJDRDghaSUyWiY7LC B3PSNeJEgxdUkwgJChgZJjZFGidkdFU38qOzwygp0+PzhJSktMTU5PRldYWVpbXF1eX1RlZmdoaW prbG1ub2R1dnd4eXp7fH1+f3OEhYaHiImKi4yNjo+DlJWWl5iZmpucnZ6fkqOkpaanqKmqq6ytrq +v/aAAwDAQACEQMRAD8A+n3nnz1f3t/qrNquqWemWWqXGkWtrpE8FrL61rDbTyySTT290KEXSBVE fY1OKvN/8SH/AKmDzx/3G9O/7wuKu/xIf+pg88f9xvTv+8Lirf8AiU/9X/zx/wBxvTv+8Lirv8Sn /q/ed/8AuN6d/wB4XFXf4lP/AFf/ADv/ANxvTv8AvC4q3/iY/wDV+87/APca07/vC4q3/iY/9X7z t/3GtO/7wuKu/wATn/q++dv+41p3/eFxVo+Ziaf7nvO608Nb07/vC4qt/wASH/qYPPH/AHG9O/7w uKtjzKQf+O/53Pz1vTv+8LirZ8zE0/3Ped1p4a3p3/eFxVb/AIkP/UweeP8AuN6d/wB4XFXHzKR/ 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 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/gadget_box_top_border.gif R0lGODlhFQEDALMAANXiz528kZq6jZm5jJe4ipS2homueYasdnulamiYVV+SS1mORD57JQAAAAAA AAAAACH5BAAHAP8ALAAAAAAVAQMAAAQvEJh1Rrg46827/2AojmRpnmiqriJBIEsBHApr33iu73zP JweGwEcsGo/IpG7AiAAAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/gadget_common_questions_closed.gif R0lGODlhGgEiAPcAAP///////v3++fz9+Pb38vj29/L28Pbx9e/x8O3w7u7w7+3v7urr7eXs4ubo 5+Xn5eXn5uTm5OPg5uLg5eDg4t/f4djj0+Dg3tfi093b3Nza29nc1dvZ2tjX1tjY1tfX1dbW1NXV 09PU0crYxNDVz9TU0s/UztPT0c3MzczMzMLCwr7Dv8PBwsLAwa/Fpr68vbm9vL68vrW1t6G+jqK9 lJ29lJy+jJ24kZu3jJq2jKivp6uupaqtpKeupqatpZezi5a0iamso5G0gpKxh42zf5WvipSvjJSv hpSthoyufY+rhYOscYCtb4ulgn6qaoqkfYakeZScj4Kkc5ObjpKajYiffXqkaIade3ihZnSkYHeh aHifZnuea4KZd4CadX+ZdH+Zdn6XeYGWdXScZIGVeX2Tc3uTc22aWmmaVXqSbnOUY2OZS2KYSmaW UmySWnOLa16TR2iPWWeMVVqTQWKOTmOOUVqOQ1qMSmuCZXJ+am+Aa3CAZW6Aam2AaW1+a2uAX3F+ aVKKO2t9Y2l+XWd+ZFWGQGp8YleCQ1mBSFGDPE2CNmJ0Wk19OFJ7P0d9MV5yWWFxVl5xVmFwWU95 PV1xVmBvWGBwVV5xVUB8JkZ6MT97JUB7Jj56JD57JFtqVD14JFtqU1tqUlxqVFpqUkF1KkNzLztz IjxxJldlTFVkUVhjUkBtLlJkSj9sLTlrIztrJjNpHjtmKEpZQjRkIDFeHixaGEJLOj1LOjZBMTNB MjU/Njg+MjY/LCkxJCoxKR8nGCEmIB8lGxwnGR8kIBEbEhYYFRYZEg0PCg0MCgkNDgkOCAsLCQAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAHAP8ALAAAAAAaASIA AAj/AGkIrEGwoMGDCBMqXMiwocOHECNKnEixosWLGDMWFMiRoxAnZ9jMmQMHjZUkHVOqXMmypcuX MGPKnEmzps2bOGlo3MmQY0EiWeZkOuVqltFTpAKdSdIzp9OnUKNKnQqVp9WGS9aQMsq166xThbSk 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 nk71qu8cJgEBADs= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/common_questions_box_top_border.gif R0lGODlhGwEDAKIAAKK+lv////T38tHfy/f59tPgzQAAAAAAACH5BAAHAP8ALAAAAAAbAQMAAAMl CCPR/jDKSau9OOvNu/9gKAZCARRjqq5s675wOxBxbd94rrdEAgA7 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/icon_info_small.gif R0lGODlhEQAVAOYAAAEbTpKiwzBPff///1x4p9ja2RUxYK291Flxl4qbtQMlU+bq89HT0jxgkqKy wgApYwAjWytHbHSIo3R/k9/m7lNjfMzMzAcqYL7K1gUnVff395SguiBAaSJHfNbd43OHqAAhSk9n i8DExzdYi3iQrJStvUxmh9nX2hU8dwkuYg4vWr3E1GR0jQAhY+Ti43KCmZ2uwpmmtt7e3jpUeSNC cM/P1wghUgAzZu3x9ChHc+Tl53SLqkRhiSA7aBEzYQEcU2F9rCtOhAAiUgAoWwApa9bW1pWjvZ+v 0AgqWlBskXmJqydEbjJTho+hud7W3t7e1lxznejt8zNLbXOCl8PM1YGQr5ytvWN0knqGnEJjlAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5 BAAHAP8ALAAAAAARABUAAAfpgAOCA1FHQCMdTFABFIOOBw0pGUKUQhcCMI4DMCiVAJ+VKSSDB52V PSFLlUJITQMLDas/VgMrELe3NB4wKasADgMYGcMZtzEEQ6tCHEk5uLgSTELPEBc+KRBD2tomNMpC SgNGuNsRQdRCOwMb2dtDM0lD1B/ruA/3VwkX1Orj9/9YPORwN6TKJgj/Hhigsi5FQh4lECRUMEGQ BglI/kH48eOfggo4HCXgMCThPR8vQmqqMWWGgQwqpLAQoUmTiyIWirjQUFODDhkyCggtUuSEURk6 eA7w+bNAEQZQGRQAmtSRhqtYsyodEAgAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/icon_health_small.gif R0lGODlhEQAVAOYAAK0AAMzMzMFaW8AqLPvt7dyQkOTj4cAAANN5efC/wsdESbwPEc60s60OE84N Ers9Pvr18vLQ0c9oabsKEq4KEb4QGtjY2t+pqduLjP/7/+uztuPf4MIJD8hLT7UOGM9hZOvq6LwZ HMsCCMw1PrUAENPR0s4RGOews70uMLQDC+Wop8oJDuvt7L0ICNnb2sQNEdna1fTX2c5MVMqAfc5T VrUWGs4WHvz2+L0ZIdaOkdJDSctDQ95hZa0ACOLW1skwM+fDxdJ0dcYOFs1SVLcOE84IGcw7QtMO GMUpMeTm5cgAA/C+v+aytvPk4fPd39PS0MVAQcIZHuGbmdt8gNza29lcYNeChf///64KFff397YJ D9XW2N7e4NYQEL0LF/DHxbUZIdM6P//++r4pL/TMzbUICM1bW6kJC+Ssrc4ICMUACMI1O+m4u8UI CNZKUuWJjunr6v708skWHPbw8r8fIduKkdYIGfjm5gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5 BAAHAP8ALAAAAAARABUAAAf/gFeCVwRoQTsoa2YYMRmOGYMJNDUNFJYUHigFcYNXJ2MNDWeXlzUS EIJfY6Q9AACWRLEIYhBmlZY9Vmx1HlpaRBMhX2w1pABLV2Q1vlpeXhdToQ0pKQBMV0sL1AvcBUO9 NQoyCl9XETQyMlEvLx1QRCkod52dRhwcIR3wSE6P/jdh2jgYECRWhRFGfiRIpmNEGDkOhARRUaHi vQMariQQImLFiiJCcsxRsIDdCzVsrnyxscKBywVArqAJYfJFlTc8TLh08EIApysYvJgUoUTEkaMv HjTpJOWHkKdHj7D70ESMmE4+Zuyg02IBCjMMstDrBAJGgC0bxI6Fw4WKW7dbHWDI5ZJE7RUWBri4 cFGib4m9G0DYFZSlsOHDjwIBADs= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/icon_personal_small.gif R0lGODlhEQAVAOYAAM2EAerSosSgYvr4+9GRI+Dh4/LFcuWVAO/Un87GufnrzuamK+axUd6NAPOY AdnX2tCMD9G5i/b38szMzNfX1frowN6oPruPROiZANOHAOa6Yd/EjfDeuveqHOfMn9upUuvp3cyZ M/Ps5O2vQPiiAOSZCvz479+eIPS0ON+TANCLAOPi4NeSEOjEetmRAPzanfjx3+G+hPns2drc29vX 1ue2V/759uHRsP+mAP///+2iE/HQjeuXAMuoZN+gLu/OlN+UB9WmTOe8bdGTGNaVH9WMAPTw5daa Ku/Ie9CKCPf39/npxdCFBeu2UOfn5/3++fvqzPTZpN61WuyrLf/w4NafOOyzSt6tSu+cAOOXBdWN Bdnb2PWeAN3f3vzlxee2UNaMEOudBdSUGf7u1OXGjdvZ3O3AbebUrv/3/9CXLPfFc+3XptHR0+u9 ZejPpt2vWezs7ubm3uLf1syrZtugKvDKf/3uzQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5 BAAHAP8ALAAAAAARABUAAAf/gDmCOTZLO0IMNS1rMIOOY0h0ECqUKmJXATaOS19JAJ+fGaJEMZo5 YzVMoERSFkWvRUMbOU91EACjS4QMWi6+aTBQPkyiGQyDUQ3KDUBnCCywRScygm0NB9gHZC1a3b0N C2ZWKSlZWRgYHxqwvi4LTSMlJegYWGJCLuTkOya0XlM8AnKpQgaIPgOOclTQ4aBhDA4nsilImAOF Ay5hbph4cw6DgQpUQtp50YELDgggcnA4gqWlSy4wTaYQYMqDGCwxY+LAAeSCEUduLJTAQmIniTAs 5oigKCdCEAIQIITokWAARas5nGxhQ2GFhCdgweYYAKfAjBk0KKilcHaGEwmCGciu6FKGApu7bLZs KfDW0YABSgILDvzXaiAAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/icon_help_small.gif R0lGODlhEQAVAOYAACthE5/DlVR8QPPy8IGcc9rZ1TVxG9PR0mqWW8HQu5S1hjpyJzdlJObm5v37 /EV5MZmrkzJlILLGqmCFT3WbaMzMzNff0DpsJa+7pzp4I4mlfd7p2e7w7VmBQ0t+OTFoFK7IozRq HszZyHCPY0ByKc7dyjpzItXm1vf393CeXYGua1mNQt3n3DZtHIytfl+SR7rMtMTXuzBjGD9uKt/f 352/jPD17k99PPz9+EJzIdfX13ylaT97I0hyM+nu58rawOPl4P///zlsIfn++tbW3jNqGUJ7KfLy 9D17JmGNUNrc2VqIR4y1e0NrL16FTJa1iSljGff3797e1p25k7jNrnidZ7W9pbLCqHaYZnScYIep d8nbwVaFPQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5 BAAHAP8ALAAAAAARABUAAAf/gEGCQycBOy8rKQo/KIKOQRw1XBcRlRFCDzsnjz4qCzKgMpaXSyWC UUwzoauWQksbQVsPozNYGk4huSEXWiggDJYXMCcWOC65QkI9CVoMDLkXCDMzLBbJ1xpJEbq5ADc2 EiHXQkkP3LkeFhYeLSbuJgIk4uMxPh5FF+8mExPjRR5ApnzQ546AgnFCSFRB0E4fgyslSBCkUsLA Ox4mRgxAgYCgiycGMojM0ESEoBNL9BkwwKMlj4ePTmTRh6SmkA4wHgk6goHCjRYtHiSBAETnowE0 DhxQwkGQg6eCBgChoUSJjqtYldDg8NTBkQY0aOhQqlSH1gZcHTh1gKKtW7dQA4MEAgA7 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/common_questions_box_bottom_border.gif R0lGODlhGwEDAJEAAKK+lv////b59dXhzyH5BAAHAP8ALAAAAAAbAQMAAAIjVI6py+0Po5y02ouz 3lyJ0YXiSJbmiZYDMBjpC8fyTHcfUAAAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/did_you_find_your_answer_box_top_border.gif R0lGODlhGwECAJEAAKC8k7XOra3FoqG9lCH5BAAHAP8ALAAAAAAbAQIAAAIahIKpy+0Po5y02ouz 3rwnMRzeSJbmiaaqKRQAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/icon_tick.gif R0lGODlhCQAHAJEAAD97Jf///////wAAACH5BAEHAAIALAAAAAAJAAcAAAINlC+AB53smpKQIrsU KgA7 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/icon_cross.gif R0lGODlhBwAHAJEAANQMFv///////wAAACH5BAEHAAIALAAAAAAHAAcAAAINFIQHa7yP2klPORdP AQA7 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/did_you_find_your_answer_box_bottom_border.gif R0lGODlhGwECAKIAAJ+7krPJqavEn7XOravGoQAAAAAAAAAAACH5BAAHAP8ALAAAAAAbAQIAAAMd SLPc/jDKSau9OOvNu/+gIwBCEJ5oqq5s657BmAAAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/gadget_ask_an_expert_closed.gif R0lGODlhGgEoAPcAAP///////v3++fz9+Pj8+/b38vj29+/27vbx9er06+/x8O3w7uzx6u7w7+3v 7uLw4+ju5eXw4urr7ebo5+Xn5uXn5d7p2d/o2+Tm5OPg5uDg4uLg5eDg3tPlz9/f4dXg0N3b3Nza 29nc1dvZ2tDdycnev9jX1tjY1tfX1dbW1NXV09PU0dTU0tDVz9PT0c/UzsnWw8TWvMzMzM3MzbzU ssLSt7rPrrnOr6/LpcLCwsPBwrHJpb7Dv8LAwbPHq6zIoqrGnb68vr68vbm9vKjEm7W1t6K9lKK+ jp29lJy8jZ24kZq2jKivp6uupaeupqqtpKmso5ezi6atpY2zfZKxh5WvipSthoqvfI+rhY6ng4Kr cH2qa4qkfYameXyoapScj4KkdZObjpKajYiffXWkYIade4CadXuca3+Zdn+WeXScYoGWdWudVW2a WXuTc3qSbmOZS2qWVWaWUmKYSmuSW3mKanSMal6TR2iMWGaMV1qTQWOOUVqOQ12LSWuCZV+JTXCA ZW2AaW6Aam+Aa3J+am1+a3F+aVKKO1mFRlWIP2p8YlCDPFqASE2CNmJ0WlJ6QE19OEd9MV5xVl5x W2BwVmBwVV5xVUV7LkB8Jkl3NEB7Jj97JUN4LD57JD56JFtqUz14JFtqVFtqUlxqVEF1KlpqUkRx MFRnUTtzIldnSjxxJlRlUlhkUFNlS1djTUBtLTlrIzxpKTtmKDNpHkpaSjRkIEpYQTBeHixaGEFM PkJKOzhAMzNBMioyJSoxKR4oIB8nHCEkGxcZFhMZDxYZEg0NDQoODQ8OCgkOCA0MCgsLCQAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAHAP8ALAAAAAAaASgA AAj/AI0QEUgQiJEfSHAYUWgDSQ0kMYyUOPLBSAcjFow8OAIBSQIjBZAUSGLASMkBSAgcGWCEJUoA RmDKRCIzZkyaNmfW1Jnz5k6fPQHg3Dk0Z1GeRH8KVXoUaNKgTZdCZQoTpcuUJkWCTHLAaFUkVwlk LbC1KwMkEYxcOJKxAxK3JJDAMBKRxpEbSXwY2WHEoEEiSAYSAWyksOHDh5EoXsy4sePHkCNLnky5 suXLmDNr3lwZsefCkRFT/ky6tOnTpZMYyYy6tevXsGPLnk279uckSGjjlmz7s2PfmF1zHk68uPHj yJNPFn65NOTTyqNLn069unXrvRMvzs69u/fv4MOL/x8/e4oXNnP06LnDxsuU0OTjy59Pv7590lPI 6LmkClat/6qQckgbVyh234EIJqigeM+BxhhpWsBByn8UVliLKol4Qd6DC3bo4Yf1LbaFHv5ZaCIs kajxmG0rgujiizB61qBnSSShBYkmUjjLjjxeckaN3HEY45BEgqjEEktUoWQVSyiB3xwlVsjjlDzC AkkX4W1X5JZczqdEFFiMgYYbZKLBBRZROIkYGRNKSeWUsMQJyx5HNJZdjap1qeee3S1BxRhv+OFI JaVY4gggb4xhxRKHTaFHjpn8cUYXeyAyi5xykoIleMjwwuenoMa2BBZoAELIEyw0EIADL0gRSCBm LP9amBJeXGLhGTAAoOuuESyRCaaw0GFnaacsMwlqyewCn23FLuPsMshcN2OoQyphBRqKhIECAhJo gAIKIVCQghiKxOpkEmyoQuErJOzq7q4H0IEpItAtRgwywByhr76PJcNLdZQss8Zo3bmizG/UEhnF GICEQUEBFGwggggyyNADCxWI4QcXURR2Byw8+vDuyAAckAkqKJuSG2p2LOPKMmjgCSRiynhqmGan KSIwcC3eVuNkvBSTsJ5KYPFGISgY0EDEIaBQcQ9CyJCCIW9g4eQhUx5A8shnoIxKLcN+lksvSSBD y2GKAONsLoUlqxgXNTtmy7OuLJasIsMsQ4wi++7/i4TOaDTWCzFU6BuwHUb4q4uzypxy2CnKONtK YWgsc8rcu0T+bBX7Dh3jEgw7MYDSFGTQ9NNCFKEBFBsvgcQhIO/4wdbv9uF1La41joQuxOxLBTK2 IFGFJYoZs4sRVBDDC7+LudILF0fMPTASygjjS2HAIFOFY4DnWRgXxgSPBDG6KJbMMr3QQosvLium SzGK/N24EWbozQoSdiDBy8Fhew7iEmhwBAsGgIClaQIETtOEDlInAxc4Ag1LSAIfMPWHAtBOV0rw Gipe0b/HKYMK+FtG/P62DMQdplNG8IUvDHQYLuSpcpQojDKAYZhJiJB7z1qbYiBXhVUQA08zZMww /4ZhhDW4zDC8O0LlbFaYzPmNhf4DURXcIIkGEHABnciiCTbBxSAUQQgLsIQbQCiH/sgJEbkiGQS6 oEFUPGJlpvkFE4mxixpVQRm9CJxhapYLYEiGC7ZY3CkU06nFGLFujQHcY4KRuREiwRhMNMLcqPAy LjRvGVWoHCKRcAReGCOKRZriKAQggAJiwBOoRCXUilAEAIhijEhgE7BggQgrWAAAELiBEdTQRlTM Ag8dLEwacuisYlShMIo4HzCmV4xiiJA0aCCGsxY3OSPETTGVu18iBaalwlhiGb9gjDKUdUkqzI2Y y6BC5apZmP2BkkhT/IQCCLg0D6RSBjxI3RAa8P9KEF6hEbOEhSouAANOtBEUCAXFLTZlGlrwD5vt W8wkfkEMGfLCF8WwpGNmCMJ1to2cSNCkZwD3GWBEzpGFXIwtlCHJdDpGk3VSDC+Q8c4hZdIRKqAn BTQwgk6grggyaMEDo6CYOKhCFW2MAy81mFCEzoIRrUFGLhoTDGJsEw3WVNYvhlEFmYU0oi1zXFYX k00cBq4xrRAYMCpamGOAdHz/0ln8EJPNw+RCaMGs6YGWwAU/MEGnGgjBCiqWT9U9YWNERcIVFtHL xjYVFbIAw8xIk9b8MaZYduCCIgrDO/MtjwvE6AVifrcLJf7iiIkDaeUG2ZiXrWE1i+FCMSY3TPH/ 4WtgVPAFMbhQmMG91ginIF79XNE3VpQQtlDUa4JG9YZBnIB0gWVBxXIQNRQUompKyK4SzmDQxnqt qaDABR0mSxpgCMMzVfDXGpDhrOcVj5wtWyFjFBG5XtRBbamgXh1rVFfEvIyYivhFMAyziuMawxjP 2gVvkZjgzYrUMFXohbOOqdwFLWZhgvjCBJYW3emygAJhKATHlMAYNZDCuyhLKCpwkYfsEGc8j6mZ 9yoMSiVkUhFfeK4EOMACcFEABWFQBBqokF3EqOFkqABvU2chC2FNizTUQc1wihFJGTWHxh86EhbW 4IdBNEEFCgBAA1jwhEIAAg1Wy65juvAHObVx+ha3YAQYdLMbab34hP968s06g2UFLcEKXAiUIywx ilE4wg9v4AKR97xmOjziFbe4RSwegYcuEIzRyjGNZTAtmXFOp88L+lKYxlSmM6VJNIuRWRKQxGok aZfEPQO1rGuMpCUxSU2IwZOSsMBrLnBhDMAOdhaGbQUrvFq7s062sg2ThChkIdhmiDaZpr2Gapeh DFlIU5GXze3vdNM7xklSFXiNBV8HW9jDzgKT7Mzudrv73Xp2kWO022pWH/vY3c43i+DN7377+98A D7jAB07wghu84NxRDWv0Deo6x9vCQtLOlaV88IpbvDrM2XSWYl2vi3v84+yGcnJLExAAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/ask_an_expert_box_top_border.gif R0lGODlhEwECAKIAAKG/lf////X489LgzNbezgAAAAAAAAAAACH5BAAHAP8ALAAAAAATAQIAAAMc CCPR/jDKSau9OOvNu/9guAmDIp5oqq5s67ZDAgA7 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/heading_24_hour_call_centre.gif R0lGODlhggAMAMQAAD97JczbxXyla6nDnVCHOLrPsY6xf2KTTWuZV0eBLpe3icPVu7HJp4WrdVmN QqC9k3SfYQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAACCAAwAAAX/YCAOwyKe54CKhaGucCzPdPA0IoPXfO+fCoAQ8IBBALAGYPdr+oSiA9LJ a1FPhQTgoD2sglOUknktr6ABqXmGLjMUgYGQkRomARCDoYBSNBpFAQUNL358DQqDBjAtiCYFN4gn aGowCwYNe1h/LwM4CpoBSkufDQyYdAE6DXyCCBBfAAknDAlaYSejQ4sBDkN4cUtRACq/BF+3sja/ AiKUuDnJAAUFUkNFukKLv0jWQgUMvkMqBnMovs0BCwQJDG25AA4DAvEB5QQKA1oMcjtSxQAEkECx QAuCAXrUKWDwAM0zGAQAIHjgJw0eSPWUyKPnIBgxFVIcPFARUUALYAUc/3g5US6BiQXo5BBbMUZE RIs76BESZhGgiRVyZhGEkIzPQxQyfzoL+CeiDp5alp6QAkeVkD+jlNLSEqgcN2g1LfYUobPfsGIr gW5ZccQB0ZlH63RE8ZVY2Ept/o2oq1WELwQpsI4iI4qnGgQAePlyEc+EL7Qx5BzDAmDy4wDPtLpz SXemGMNT8np2N43Rz1EqD6SbBK2wPyQNEzSQkqCATJVCIMeIeGD2gYJ46CXGDACOFMK+HDRAcOwI AQhHDoG2iQcCA71+KwtgvheAia9ppdKcHkC4rKriZMENj4JBRCEEFuiSAqtkAMSA26cnUGCBNyKu DSOCAbcMgJ0q78lCBysYrawRwwIDtVcCP33JwM8LI5hQgiCpLJAKDBeiYNuGNUDYIIgRipBPACEA ADs= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/icon_cellphone.gif R0lGODlhCQAOAJEAAGuZV8zbxa7Gou/07SH5BAAHAP8ALAAAAAAJAA4AAAIgjG+ACO0Phpyj1Xer 2NGCLXSikx2TV6UWJaFdxl6QUwAAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/icon_envelope.gif R0lGODlhDQAKAJEAAGuZV8zbxa7Gou/07SH5BAAHAP8ALAAAAAANAAoAAAIoDI4JNjsPQZMtwPZO tDhToQjeAHKDIR6lwIooErTsYxzBjedGrSRBAQA7 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/arrow_green.gif R0lGODlhBQAHAIAAAD97Jf///yH5BAEHAAEALAAAAAAFAAcAAAIKDIKgaJurTmQHFQA7 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/icon_speech_bubble.gif R0lGODlhDgAIANUAAD17Jc7cxY2yf+Do22SWT7LLpFKLPPj49oSrdKHBmMjYvt/n2Ory50iBMHeg ZFqORP///7fQsu7w65G2g2OUSj95JKrEn4ysenikZc/ey/f8+MzZxbrPrpa3jL3QtD96Ju7x6lKM Qu/376bAm1qMSgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAHAP8ALAAAAAAOAAgAAAZKwI3w QqgYK45OYBkYNQQbiBRSuDw4G87Dc+h6uwnDZoIAmc9nhoHDMVgW8Di8I944FZl8voN5RIQbBAgG H4UfSYAjDwAOf4CPG0EAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/heading_contact_an_sa_expert.gif R0lGODlh7gAOAMQAAD97Jefu5IesdsPWu1aLQKvFn////26cW5+9ktvm1kqDMnqkafP38ZO0hGKT TbfNrc/eyAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAADuAA4AAAX/oCEyEJSIaKqubOu+sBqUKnPGeK4bQbD/wGCCEUw1AEgAAZh4AAOFIitw SDpSAgBRyjUwoiwFwNctFx+ABfcIUCwUgh8EcAAizSKEskGIj8RgeD93LAsEW4KJMAkKgU9ICIgi AQiVZA8FX5kiWQQITgEPlRApoggnaACVNQOVD1sIEJQDYQCkKqlXLaKborQGrQ8QCAMFn7ifsA+U BamrpauUCQmxK8O3DM+mTjzHBsM+lgibKKJfkSLDCGQG1AUCApTeUJYimAz3KAgLUAC6KYySAKBV RSApgXX0JHHCwIHAAgUJoQggUJfANiuqOGAnwqGYGykKiEFyJQGSaW2o/13UhWCkPxEIIwJQUfBb myR1Ugx4aQCNGodJ4szJqedgkiUpZM4gkESBjwUCCaSqEzAJwZtISFFUpadBxjSUlBioIgDCkTgF /JngMSBB2it6FDwY0MBG1ls6pzE9gaQABIe/UFRF105JWj+C2wwIAJWWHgdinOg5ACHtwDkKFlcx 2sCESVt4RXy2mXnAXhWnoT5AIxeCmBJ08tgygGQBjaR0IAxgAChsA4oKhtH5ErsKPz1LyJpNI8JQ WAQrTsIcs5kHxqGC3yQxwNQR7ZksEDDN+l1EWug1oMY2kOV3G0mPK2VRMxaJHz3ooSI44kA+gDjv oSCRCndgZ8AR6OnzH/9wBkDl1YGqGFjUd5KgUMUvmFUS1051zLEEdtIZ8FF1DAxowGTRgSeiLdWV Z2B9DmQxU4gCqliKEgIwZVQ6qrSw02xiCNASANzIdlFOlt2AnwgIyoREHetN10KB6y2ZAnB6xHEh kxFWOZuJFqo4x0UzkcWUVyCq+FqLJn4Ghm7f+fAZA2zO5CGP9N3hUJFSrsCUD1nQQsgcCY6wxWap VJTCYyt81kY4PRrgUCVRCpjTdCClQCVRkaagHgAntNcRAH4pQQRUO7JQBQqYVagQWDZBOUZhWtQ5 wg0FEVCFU1n0x1Qdtq7YAD/2qaeSAg0IEJykaQiQqUMOiPRfeTYVyl7/s2JVAUaJoE5EEgIxesEU Ar1mowS4SMxQGx/oVQrVAc4SaKeX1gKDBFKYNVBQAJ/FSB6YIqyKAlME6LsEtwccUA12vYpX3GzU RubFp8PRaQURwb56bRvjQrhQTyOFNsBIVSwxaKecNLVYuihAhRjIVjQYW0P/vdoGNw+4lOelwIQs b6yy1cttIJbd3NxRX9qIG0DjPbqiQOrWYTFJGEN8x9ATlcBRAmvFQAIZJKSzxQwQSNK1CrK0wxEM JVQYQwmZroDfbSiQkPYLZ0vhEEd2S8I1AzO4jQPXeA0gAOCvNZp3CxC8osjjkBdhZeQxNCDGg5S3 EIAYCojxT+aghy7ID+SiZ6Rw6StkQ3ADcRcRAgA7 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/button_search_green.gif R0lGODlhLAAHAMQAADMzM9jY2oqLj1VXXbGxtD97Jf///29xdjs9RMzMzJmZmeXl5khKUGZmZnx+ gqSlqPLy876+wQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAAAsAAcAAAWn4HIghyE0qGCYqhEwwECsScM4RjMHTbD+hsLPwXiobArFzIBA0ACKAcAQ ATSSBqghAUgAgwWh4QBYNgYJLxVQ3gIgjikRCHAkHt0vWLho1HNsU2MHBw1ubA9MLSuBbGpfYWIK XSg/C1Z+C1wEAIkMA3QKbo8/kQYEAmQ8DEkEk0kAAlwmCAsCdVEQWlykeysPn6InKQ4tCgc8BhBX pwMDD8s7PXpiBiEAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/ask_an_expert_box_bottom_border.gif R0lGODlhEwEDAKIAAJ+9kv///+vx6MTXvPH28M3dx/f69gAAACH5BAAHAP8ALAAAAAATAQMAAAMj aLHc/jDKSau9OOvNu/8dUYBkaZ5oqq7qAAwCK890bd+k4CYAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/gadget_ask_the_editor.gif R0lGODlhGAEjAPcAAAAAAJy8jVKKO6jEm0BLOzU/Mfz9+IKLfyAmHdza209oT4iIiEBtLXqSbqK8 j8zMzDNpHnWKbJmZmbm9vOrr7QsNCmp8YkBlQL7DvzRkIKWlpUVsRYqvfGOOUTVoKJezi529lCsy J3igaHJ+atTU0uLg5XCcXSxaGFJ6QEtYRRUZFLzUsoiffWZmZvb38jtzIp24kbW1t5SuibHJpTNm MzlrKHt7e3yoakV7LlqOQ4+rhYCWdj97JdPgzmJ0Wt7p2WuCZWudVZq2jDptOjBeHoaie83cxjhs IjNjKY6ng+Xw4oKkdV6TR2iMWERxMPbx9VqASKrGnZSthur063uTc/j8+1VkTjpyLJObjqqtpIad e2p3at7v3uDg4sHDwsLAwY2zfWqWVU19OICadWOMSoSEhKK9lHWkYNPlz8TWvIGtb/j297jMr26A apmZmazIouvx6VCDPGaZZmOZS////9zb2eTm4dDVz1tqU9fX1XCAZUF1Kzt0L0pnSmaWUlWIP0d9 MW2aWYylfztmKD14JN3d3e/v70J7KeXn5r68vV1nXbrPrqqqqnScYlqTQWuSW5S1e32qa6eupu/2 7m1+a8PDw9nc1WCXSYKrcN7m3snev4SUe2aMV8LSt+nu597v5sW9xU2CNq/LpVaCRAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAHAP8ALAAAAAAYASMA AAj/AAeYESgwipk3IESZUbgIRCcQacxoctDDARozP8woceAJxBQzLkC4CLDGTEkDIKo4MGCGJUo6 DuiYkUkHBEyaM23GnJnzJs+aPmnqxAl0p9CgPY0mJTr0Z9OjSosyRSrVKdWnPX9mRekypUmRDkZO stoSRNcqX12EDTAWDgglGB1kRAOCrhEQRhxEXOFgUQA2ZmaYMWhwAAiCAs0oXsxYMYjHkCNLnky5 suXLmDNr3sy5s+fPoCk7GE26tAPMplNbTq06cuPXsGPLXhzAjOfZuHPr3s27t+/fwIPDDgAiOPHQ lHFLho28ufPn0KNLn05dNOvSnWNX3869u/fv4MMX/xe+2DX58+jTq1/Pvr3794vB3AhyyZEjJkFE gLEMv7///wAGKOBuYJzhCA5XXIHEglfsIUAgHJg34IQUVmghfJWVNxljmMyxx4IghujBC3+IsBhp F6ao4oosogdZJI7UEOKMINYASCPJtajjjjz+l2FjAQSghiMe0IhEBh4kqaQHOIgQZI9QRiklejAI IYQMWH7wAQxcdgkCGHPISKMiLfSB5JJHiMHBlGy26SZsMHygQxFjjEEFFWMUocOWXcJwxoczKuAF HXQYEkMLSdagaA0dnCZhbIJEkFsEAEjKGwBWCBfBppzKABulkspg6ZukkieEFEU0AIQPeLTqAxAN FP8hQ5dgEBliBoqsQeiuVVxQ5IJH7LEmbwgAIAhuoPaGqXAANOvsqIwla0WlpVb726ljADFCFiQY UugdWVBCyQ46cHkDDksmScKu7C5wpgdHHPHIcrLtAIAKmc6WbL0IjLpscP/qS+0OVnhqhg8qWKuw bDBIMYYFWOTRxQOJxDDBA13kgYUFWsgQQBB7vOvBEF2wu2slEKA5Cm8phJBCwgJD+9q+ZgT8m82x 0bzYtAv33NgHReiBBSIPxGD00TE8gAgWehQBAhPxpvuAyYRqkHKSL7zgxHi5qeCDvdDuQEAIBUi6 rwUh7MCYFcUikHbNVojtssGKRTA2ATIrhvNidpP/TcDAbxegAgAhhLCYDwWQ7cPhIchgxds+6wiD Dg2MkAcJiWSuueYk5EFJAzAIEO/oR9CQANV0SHD1iC9kQO+nAHiKAAGLCUK4FSmonewOFeR7+N8E WHEsAAhUkMLfhiuWQgXBhwCABa/tbca0IeBeAbXSOm9FvsBbUQAAtE9PeAHCR66jEEFLgsgX7H/B wxcYwI8BBohkAYQQopMebyWot0B61hnYDQHCZ4UK7Cx20aqUDJgHO3+pwGApMJYZKKU2xQgueioo XOHqFrBk7YtnipkW9EIIgMVNKwXm49EHxuCDOxTiATDkgQxhSMMEkMAHH8iB/uIlAaq5YAj/ewED /17XmAVaYVMWKKFifACACnLQArPLGbX05rtkvWx723Ne9KqHRcUQwIB8w94UQWgGBBSgMQycFt1S yCIZUAEPhsgDDR8gQx7MMQ+GwIMM/PCCHW7ABSZjhP76iAKuyYaJzmrWGZUHgLJxsHiyoVkHqRWC CmhQg9Hz3WI2GEazjREAi8HZBsnIxjY2AA90yIMqV1lHErhyXXr80w6PsIAq7KoQQCQdISDQBCIy hmyMYeKxFCMIEU4QU72Tor+qSMnkzWZvnOSgJy1FRgCgkDFuE18pdeRGOHbBEgkIZx3DGc4u5FEG HAjFLI9Qgl2VYYcvIMIScmO7ESpGBqI0HKiSuP+4mU0Rbp00QwTXCJu9TWuYx5wmCRdzwdoti5Tb TNEKfUACCpTgonXsgkY1SoEbfgAEYciaSLNmA1sS6gF8IIRKVQoBKOhmea+5YASOJQgGSqsCTlyM vVDoqUlKqqYIoGncMvkaoB5rB85TqPgs4ClKFeBYEUAAAjwF0YhaCH1AyMITEMFVRPCgq11dg/2E AAIOxEGkV7DB1EzWBQ1sYQ+EeMEglvCk2TCwMUyMwPea1biEWrACCF1Msajl07oNjq+B1Vsi/7WD wzJPjJaqabMUY4HDEs5gVbUqhSZXuTy4wBCgDa1o89AG0HFJBHt4wQEogLpdcWEJLzjBI+oqG1H/ JdYMtjXDDiLgRFEZLLczq+BMF+PbaA33U5zaVGA3hdsIeKq49zyuYnYb2Ehp9kKQ+QALhIaINazh CeAN7xqWBoQiHAcEJthDINjQWjoswgSx5cR150tfGMhgBxDLgwH2y18DaMwCO5ACbRsBiBc0wgxG gIMB4GAEMzRil4OY14/oS+GeCUEHY9ADJSTRLQMYggSSGIEexqADskpmCWSoQbxG+gIIEAEK86yw jCN6KhY0QA+schWsZGViynDgEShgABGIMAgUNGEJmZmxkqsVpznZ6U552lOfIhOkKlvpylaaco6W zOU3VelKWeJTn7qEJR0I4syCKIKa14xmLI2ZSUtdjnMpA/CBJKy5Tk++ExV2wGctaCEJYpazoIED Gfc0J04y0IGZ07xmNaNZ0VoSj6QnTelKb5lFkukTlrP85i4N+tO5sbRmAgIAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/got_a_question_box_bottom_border.gif R0lGODlhLAEEAMQAAD57JafCm5m5jOXt4Xulal+SS8/eyZe4ilmORP///3CdXbjOrp28kYetd9Xi z2iYVWOUT0B8J5q6jQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAAAsAQQAAAVbICAwZGmeaKqubOu+cCzPdG3feG5LEfTowKBwSCwaj8hWQeEgIAiHQ3JK rVqv2KKggXgMEgnCQrFgGMzoszrNXrvb8Lc8Tp/b6/i7Ps/f+/uAf4KBhIMGBAFgIQA7 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/subscribe_for_great_deals_open.gif R0lGODlhLAEcAMQAAD57JX6mbczcxUuENPH28KXBmXGeX5i5i2WVUdjl07LKqP///4asdliNQuHr 3r/Ttpm5jIuwfKnEnmmZVtXiz+nw5k6GN+bv3rTMqrDJpQAAAAAAAAAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAAAsARwAAAX/IMUAZGmeaKqubOu+cCzPdG3feG4z1aj/wKBwSCwaj64HcslsOp9QKCRK rVqvWOc0y+16v2DANkwum8+4cdUQIR4aNsPBgC69ZxG6kV23qYMHBAsXBywHAkAPSgALejOBc32M jjAChUaHkjR/PwUJcAgBhog/AaKTNRdtXBGLLI0zlkeZmjKcOgunLrRCsDS+WbwrwJWXRcK1Lrc5 uScRBSURpIcGCgIKAyQDBQIPCCQN3LIIAgPWAM8kuYcCugPsqyXkCwmkAQ/X3yQCCIf60QIsHShU IEIAAW3CddPzLuCqAxcICIB2gl0BXwofMIRXQhaAex5NtLKUDUBBkMYA/yCwho+UvHLcFPzLSOcA RQAD7RRCGWUZjgIEKPEysIBEoHYBEiTYpzEAnAAL5gQoRBRhTVKD5hxoNiBBU0ImBhCNBDTPRX30 5pQk4clUvW8CvBpogICA1qAmC7BptjKBgX8klAYwcJFO3bt0CuiN0AyALAME8ugicc/UBYoCLmjc ugrqnAj1ThBNkCfBBRKH5QSNQKBExBIEEECW3LPIxQt6hhbFuVQbAVHEwJog6ohWY97IKbc+AQvB gn8KFkVN8Zvy7oAlHtws4GrfJWQ4L6yFpb0E9xMeZYFHQatbiegk7NpxSYKovgbPAZRn+2BAfnIX fBPAaes14VMO2zSjm/9R9MlSgCrZOLdWfbsxqI4jRDl2QUBxVVgCLAf0RuGFKSywSgSnOWYMPRxu iNoBD8iHE3373IQKiwG5qBKMMsrSAAEypdDAAQroGFImRK2FTIYf0oFjZog4SCQ0igHwY5C1ucAh djHAt+CMJngkTWxMDuehcRgWdY0BbLKJAoj0MUmMeQQoFpl3H87R5jcKkGZAAt/RqKIJsETV5l8A 9FnaJR6FA6QzdlVDypGIlAmmmYQ6qSeb32RyQQNJARAgOEApkCUmiIRYAlQWapOfeQLgRwkAlqJp nhIKmPoKHQEQoGRvc5LQykBw4EmCKidIaCx43GQqajyoLVBSein5R0n/dZdSCoC184nmISzIJpsL Iv4NeAK3TxxYw5BwQCaKc3RAtlsgojQQ2gDfDPCAqZ7QIRatZ2KlABxbGTbdR5ORCIBXcLCmR7DK omdMIP5GgIBznS5AUSATWjndOyDiNYDFGOOkMZ4IZENUsfFRRUBv2ib6Ca2hYdokTiJbfCxpJDyQ AEUpA8yygUM08MACg8QTyAIPMMZgAgsAGeEFSGNjFNXy1SqwIAno8ifSGr3JkAJId33zuVQjzXQ2 IYUX9cAmRW3Tx1B3R3PUhV39NhwX2XVRIQ4ifUHCrC2gAGNKxLwN1/h466zbQBZLdklbnXLRIAkz oW4yV3S1yo8pcS66auajhyEMoKWnjsTmqjvh8LaBDN367DqwTvsSSxPwgOy3976J78AHX7rtwhdv /BXEH6/88ktAYAHz0EcPRQYSSG/99URYIAgGE1zs/ffghy/++OSXb/756Kev/vrst+/++/DHL7/7 ATiwQAgAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/subscribe_for_great_deals_closed.gif R0lGODlhLAEcAMQAAD57JX6mbczcxUuENPH28KXBmXGeX5i5i2WVUdjl07LKqP///4asdliNQuHr 3r/Ttpm5jIuwfKnEntXiz2mZVunw5k6GN+bv3rTMqrDJpQAAAAAAAAAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAAAsARwAAAX/4MQAZGmeaKqubOu+cCzPdG3feG4z1aj/wKBwSCwaj64HcslsOp9QKCRK rVqvWOc0y+16v2DANkwum8+4cdUQIR4aNsPBgC69ZxG6kV23qYMHBAsXBywHAkAPSgALejOBc32M jjAChUaHkjR/PwUJcAgBhog/AaKTNRdtXBGLLI0zlkeZmjKcOgunLrRCsDS+WbwrwJWXRcK1Lrc5 uScRBSURpIcGCgIKAyQDBQIPCCQN3LIIAgPWAM8kuYcCugPsqyXkCwmkAQ/X3yQCCIf60QIsHShU IEIAAW3CddPzLuCqAxcICIB2gl0BXwofMIRXQhaAex5NtLKUDUBBkMYA/yCwho+UvHLcFPzLSOcA RQAD7RRCGWUZjgIEKPEysIBEoHYBEiTYpzEAnAAL5gQoRBRhTVKD5hxoNiBBU0ImBhCNBDTPRX30 5pQk4clUvW8CvBpogICA1qAmC7BptjKBgX8klAYwcJFO3bt0CuiN0AyALAME8ugicc/UBYoCLmjc ugrqnAj1ThBNkCfBBRKH5QSNQKBExBIEEECW3DOGSxcXL+gZWhTnUm0ERBEDa4KoI1qNfSun3PoE LAQL/ilYFDVFcMq9A5Z4cLOAq32XkOG8sBYW9xLeT3iUJR4FrW4lppOwa+c2AKL6GkQHcJ7tgwH7 kXPBNwGc1l4TPqFgX/8L2zTDm1G3yVKAKtlAtxYJRJmAnCMZZhZQXL2ZAMsBv2HYGzElLLBKBKc5 Zgw9H15ASj8P0IfTghOJSAeMAcmI2gE1XiJLAwTIlEIDByjgo4v13bfAWshkmOKO9fSIiIRJQqMY AEQaWZsLH2oXg3wP3miCR9LEJmVxIZqJiomOKWDAnHOiMOJtUqLIFgGKRQZeinPQ+Y0CpBmQQHg4 pgRLVHT+BQChpQl5SThFOmNXNaSElMmabpbA6aKBzvlNJhc0kBQAA4IDlAJfvrDgLoiQWAJUEJYA IGDc6EeJkxpi5Uh6CrD6Ch0BEADlb3qi88BAcPxJgionWOiseNzoiGr/PKg96WxIAABIyXVuaoqI t02yaS200eYybi4t2prsEQmq9wKScEAmCnR0QNZbIKI0ENoA3wzwAKue0CEWr+UuoAAcWxlW3UeT qaOHV3Cwpoee0qpnTCAGR4AAdKMuQFEgF3JZ3Tsj4jWAxyDjJPKfCGRDVLPzUUXAb+KSQGi9oZk7 JU4qe/wsaSQ8kABFMTtJM4JDNPDAAoPEE8gCDzAGYQILFFnhBVBjYxTX9HGKnAKCJKCLoVBrZCdD CkBt9s8nDMA11FRnwy1EWS9sUtY2nYz1d/dhzacveBcJx0V2XVSIhFBfEDFrCjOmRM7dAkUPPqK1 STjYej+qrcunXDRIecRMxJvMFV2tQmRKp7deuuthCHMo7LQjYXrtTljcbSBL4+67Drf/vsTUBDzQ u/DIb5L88szDHnzz0Ed/xfPSV2/9EhBYcP323EORgQTdhy8+ERYIggEFH6ev/vrst+/++/DHL//8 9Ndv//3456///vz3n38ADlhACAAAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/gadget_subscribe.gif R0lGODlhkwAVANUAADdCM5q3jXB/asjIyFFgSoiifeXl5T5JOaitpmJ0Wj57JYGZd0tZReDg4Pf3 94+qhJ+9kr29vVlqUniPb9XV1Wp+YZSwiLS0tJObj0RRPu/w732Uc4WeeszMzP///22CZF5wVoeh fJKthpazioymgHGHaAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAHAP8ALAAAAACTABUAAAb/QIhw SCwaj8ikcslsOp/NwMhCtQQC0Kx2y+16iaNHYbEpLwqPEfbLbrvfx4AoNPkkQBJJ4jMJidZwgYKD S3ILHwIIFBoeGhQIAh8Lf4SVloMiCxUYFA0dERcRHQ0UGBWTgJeqq1kjIR8YBh0XtLUXHQYYHyEj QgETJBAiwcLBHMdDIsBDARvBIsccQsMQ0b7RHGsk2NnVIkbE1RDbx9vaQiTfZVjdQtjk3NjQ0SLz 0kQPEwIUFBH+///4CZjwIAAHAAQOkKhAQAhDCAAYADhQDeGBPyAAZACw8MDGhg8jTjSIkAABYgkI ZDhgsgQDjyeJKBQCAIJKkwkylKjGQIhO/5UMQEC8B5EBTpMRTRKQaHJCUgITKhw4AECorwIfEBj4 p0ABQH8GEHwoECDlkIcQQnJwyiHPWQBEHzpN2xDuwQkHkaDNIAELAQlEItK0WWGI2QQAhgHYwHEI XMdEaRLNK/ksyJpCRixIwG+A564KPIsmlWDBiBIHJjhsSBciCI8BUKu2CdiyiAQUQ77OQLJChW9E HopYLIRxYAYJINok4HscgAAbS5TIAOGABOCPaYKoMHvoEMquK0hjKAIEdSEWNoBw1KF9B9DuOywC scFC2gMMAqDVnXADBNz5MRccAAT6p5sEGWxwkEnhrFYRMcY5JsIBxt3E2gFSuURAciRIpP9adkVt CNl3mIWoWgUEzoTeBhJ4wM+LFIAGowcS1DdNBr6xphYEeKDzU22rHTReXdKAQAB4RTwUAACz4RYY BKjVJOAQGV1HYDhSeVdZYJOVCCJDjIWT3noNlFkmaGaWqQF9VvzBQAVhBoDcUCIEVQ90JaA4QWwL NZSTfkQGQAAISAbHGgMMbJOBVYNBIIGUhQ3BmGovuQMlRSCCuGVFIzooQU+ZbbaImWim6UhppxGY wTcEqPoNgQjdRmB++lHFAAdKHpBASLNCA6umaJU3UQKpYBYARa0SyNpzEEwg1JIT7fQrirBGCiJ4 0wqH4VVZOWDAtwYoAC64DohFVjFEBNByYBH1pLvuG5QkAZwRwMnxHSsQ5LOPAxr06++/FAxUEL4E F3yEK7AYwO+//XqrCy8GRyxxJptQ4IEDGGdcyinxSuwxK4YgoggjjkAiSccfp3yJHHTYgYcefPiR iso0VxLGGGVscEYaM9fs8yBSVGFFz0EAADs= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/gadget_box_bottom_border.gif R0lGODlhFQEEALMAAD57JZy7j6nEnnOfYf///2WVUZS2hleMQUiCMLTMqmmZVnqkaZ28kZe4ik6G NwAAACH5BAAHAP8ALAAAAAAVAQQAAARFELBJq7046827/2AojmRpnqYBOAvqvnAsz3RNH4eADE1g /8CgcEhENQoIASGhKDif0Kh0Sq1ar9isdsvter/gsNirSBAiADs= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/heading_your_concierge.gif R0lGODlhcAASAMQAAAApZ+/y9W+GqS9Qg7/J2Y+hvE9rlg82cM/X4p+uxv///9/k7H+Usz9ejV95 oB9Dea+8zwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAABwABIAAAX/IFMoJBkwSamubOu+cFwmiGy/DUCoDJDewKDQdDAMgwRAo7QAPI7QaGsR kNpyO4VDZ+16v6zksrlULAyAdKOmSByyCgGAlHgUHgDG6nRIG3YBW2kDbAsDDAJ9DxAlgX1FCwoD ZQp3amwNDXJzgYMMBk9xfUpVJFhbOwt9DQwDAAdVPXA5JD0ABgJwpq8CDgcQAa52OQdsrw+Iryau BwJoNUq1Tgm+oWnNDpUADgWurFpKBWiUYtHgP9oCCrIltOu3LQnbpdLqJBDwCk6lqOks0QEOHCjR Lw0jEg8GkGiSDYE5SQAikUADgM2BUCaisdslTVcJNBLbzVHxYKA+PSQK/3DJQa9EtCSHGHwCMAKA QpdGFATY9o6VTCxMeJJ4OHTJRgXujqpwp+IAJY4nSyTZkalFNJWTMmWC9hQPDTk7emTVymYoSn1P 0WpDl5QLC6YlBpiMazKP1JVzVUSTZ28F0SRpzPVAZ/Wsq5Dy9CTJphNPxxZyRqjoR2Kx2bs7KOtd 4hDj5skDCBAoKy+nC7v3eBHYAsvMKwYQXI1UyqSPAQgF1jjctlqgsbMqd+x2gLuMuRwNEiQwYJyS wz+iswTAc7ubaZ1E3QQmNCNwA1ePWyDAc60GAfJO2Dg8uxHCqFdcTeQIjJLopsAPIo0PfEByDNFl MTHaEAiItgKAQkT3wjYCorW0QgMPEBDAAlucVaBHYGSooQvywIEPYRuGKCIL8vwQm2cjppgiM48c pOKLI0IgEzAxhAAAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/blue_box_top_border.gif R0lGODlhLAEDAKIAALK+0dPa5f///7nE1dXc5gAAAAAAAAAAACH5BAAHAP8ALAAAAAAsAQMAAAMk KDHQ/jDKSau9OOvNu/9gKHqBMp5oqq5s674YwcB0bd94fg8JADs= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/blue_box_bottom_border.gif R0lGODlhLAEDAKIAALK+0brF1v///9bd57jD1QAAAAAAAAAAACH5BAAHAP8ALAAAAAAsAQMAAAMl SLDc/jDKSau9OOvNu//gRwxhaZ5oqq5saw3CoLh0bd947gZwAgA7 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/heading_small_accommodation.gif R0lGODlhZAAMAMQAAAAAAN/f34+Pj19fXzMzM7+/v////w8PD39/f5+fn09PT8zMzO/v7x8fHz8/ P6+vr29vbwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAABkAAwAAAX/oCEay2ieaKqurBogRWuWMpo0da7vYgEgq0JghADQdg5AjMdsmnzAlG9J gjB4AQBgMEMgBFeSNxFmCGC9hxkReJFF7MKXkUA8TC/28/sz5PUGA1txXiNrSwV3dUcQAAoHYQla BI4GkgANWwaNB5lACAedAAcAlAcio6GjpZoMCpikMQtJpH2kmQdDlAQOC0UAIpyZCQagDbhDBgcD DwDEWQ0lAQzQQ9M+CldJDEUlRQIGzXelVw25Bo/FfQwHBAbDBgJ9DyVQBlNEwM3ZBg6Q3fGcWQJw 54CCgRBMyAOX785AOcDuKUEFpE8/B3CAbRMhKMtBiUAYQHCQBAi+jOqWz8iDKGJBnyQFCiR5QdBE ESrqIikp0mOigT4WSaJ04I6jEov2/CkoYtKnuqciVvKkmEWLVQHNuIyQlzAfDUEsJS4BGkXoU38j MrnsCsXez6YMnwJEZ2Tq20ZUOrE7AAMCmFACCkB4kIVAAAGdoJ4kK8IsT0kDAjTiMowmApcEFrzC yI5AAW/APPpKbPdH4hGCFiwQpIVLAdaaLo0C3XNsxbIYocImcGW1Fk90RyXJWAqq7GhQ37ZgIARP cxHMcTpxfkREmxMBlhzJHsZEdBYhAAA7 ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/heading_attractions_and_activities.gif R0lGODlhkQAMAMQAAAAAAN/f34+Pj09PTzMzM7+/v////x8fH39/f6+vrw8PD29vb+/v78zMzJ+f nz8/P19fXwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAACRAAwAAAX/oCEazWieaKqqAbO+bxHAdNquM1ubznE6pkBht2IAR4oHkYZQAADKJYoh MCkGLABElMgZIABv7QEYihAAEwAhRZFNiERbxVBsC/L56D2KryBDBWUjBVtEAU+GAWQIbA5QCEAO QAJsBY1HIpeRDAUHa2yNZgaXAi4GCAwBCFVckWKkAHkOhiibmaSYnZ+NqAgFlzmrmzJgEAhCvSJU fgYMCa8iCwADCi4Nnw9K0wcPCwYPBwd2CU9OUWgAnxAO50pPbA0EAPPWBvQKTlton1gnBwSAEQgI q5w6atKezFvQDsq7NYgMCQDQAJ48eg8apEvoZM2Xg98MkANwBI0aNiLI/2QSMGMAAAYVCcy4wUeE RzKBAHxDyICAAnDWApQ4AeaJUZQmWBpwSYLeTBc177GpJqKbTUuDzqR59I3BAB/qDASY8UjOFa0n 9/wkNCBcGTS4wKUZ4ZHeCKsePxqYFhBFxQcCCdpq++kSyRNRPZZzIOiIR0GjTIJZ0MhlATIDcuC8 HAbV3Kt7oohVtwAnmlEpP0u9F9IAXpQmUTlpNWJiHm02SJumiFh13m4QfICG3CcNGcqNkDFoosAB IqNPqqDxgjClaDAzTk+knTptEhGI3sH+3MDJKa1mwqWAoCB7me290xqYqADpY1nF9x62RTqrSB/l LCADUAkMgZsIk/VAUrgA+QhQwAJybNeACx6BwZJLQORlUiUJ5HNeUwF5QlIeIyT4iXMAKOAghPMB 4CCFKDHwxHkeITJAASWYJAgBDiQAyF4CTDSOcAjyRoZiHS0iGjZPPPBdAS4lItYnh3nUk1GGaJhG lCqigACV+TxxApNQnAUlllM+kSFSENSymn5QeMbFkYfNkyKJKjQwSiewEFICTCMIIQaOKejZ5wmd vNDADHymQCig4A3oZwoMfHiCEJaCN5SmIoQAADs= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/top10_rollover_top_border.gif R0lGODlhqwAKAMQAAP+nAP/03v/XjP+8PP/tzP+tEf/jrf/////gpP/CTv+vGP/ltf/HXf/y2P/2 5P/erf+9P//ZkQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEH AAcALAAAAACrAAoAAAV64CGOZGmSxoCcbOu+cCzPdG3XiwIoxu3/wKBw+FoUAMhCj8hsOp9AI3Kq hFqvWGhuyq1mv+AwbMvtLsXotK1BaLvfcELkWC4XBPG8fs/v+/+AgYJ/ASIOA3WJiouMjY6PkJGS k5SNEA4JlZqbnJ2en5EMoKOkpaamBSEAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/top10_rollover_bottom_border.gif R0lGODlhqwAEALMAAP+nAP/MZv/ak//03v+zJP/ovf////+rDP+6Nv/tzP+sD//elP/25AAAAAAA AAAAACH5BAEHAAYALAAAAACrAAQAAAQyEMhJq7046827/2AYKoRonmiqrilSHGwsz3QtKYkxCEHv /8CgcEgsGo/IpHLJPAoYhggAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/heading_special_offers.gif R0lGODlhYwATAMQAANQNFvzw8ORnbfTCxdw6QeyVmdcbJOmGivfR0////++kp+FYXtkqMt9JUPKz tvrh4ud2ewAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAH AP8ALAAAAABjABMAAAX/YCKOZGmeaKquJUK67PoczeEEcS4eeDoAB53IwQA0Eg4CwCA0PQyAIgDS XCGAql9QFzAOHAkD4VslCQCKREAxKKseK61QAYA5AG23KCDW+0dyOgcAI4N5el0MJggMAgsAS1tq j0tUIg+UBgIPjFsKUgwwgSVEkAZbEEUNq0UEDW2lUTAQBgpQAwOURwkNAAtwgKYQB1BpAUoCBUpB fFEHjwmBRgWDitFYJXQAArRTCQq9B+K9AgcPdwwFtAY4vVMCCQwMCgULIoyRPT8LPVdHBdi6EEhw pkCJQId6iRi1xwCDHgGKwBlUCI+IIj0goOEFwGCCK5JGBCC2BA5DJRzL/4krEsYaCYYDDrC8FhJJ RxIA01DcYfEKA3EHzgRReGlJGhMBHlFhqLDXqqdHjJgI1M0AlIXYKh6imWBnV4s/GEBtkIaoCG0G wJR4EIXrCAKKegEjIfUgFoAG4BBlmCAnCTo6CfFs8wOeCbOXSD4I0CMBW3ijChO8WULJXKxDN0YU zNcfCblftapZcgLxCIC45g1QoIRwlAIOzuT9uETAgFQG72i6fUQOHQMFoHQMwDfBIwIKPnkLPVjE GQIFFEDjOAKBgBsC2D2QAsnSD+GyRtiCFCXPeEiK5ATodeoYnuJJyS9n/jVPfPL2qA+R7/Ejrrla EAfDQQMMCEiBKCy2xyhlCeLSWAwPOKgCAgMwOFVWf2SooR7Fbejhhz5gCOKIJO5RYYko+hECADs= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/action/media/downloadFile?media_fileid=4812&a=1364&s=90x75 /9j/4AAQSkZJRgABAgAAAQABAAD/2wBDAAgGBgcGBQgHBwcJCQgKDBQNDAsLDBkSEw8UHRofHh0a HBwgJC4nICIsIxwcKDcpLDAxNDQ0Hyc5PTgyPC4zNDL/2wBDAQkJCQwLDBgNDRgyIRwhMjIyMjIy MjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjL/wAARCABLAFoDASIA AhEBAxEB/8QAHwAAAQUBAQEBAQEAAAAAAAAAAAECAwQFBgcICQoL/8QAtRAAAgEDAwIEAwUFBAQA AAF9AQIDAAQRBRIhMUEGE1FhByJxFDKBkaEII0KxwRVS0fAkM2JyggkKFhcYGRolJicoKSo0NTY3 ODk6Q0RFRkdISUpTVFVWV1hZWmNkZWZnaGlqc3R1dnd4eXqDhIWGh4iJipKTlJWWl5iZmqKjpKWm p6ipqrKztLW2t7i5usLDxMXGx8jJytLT1NXW19jZ2uHi4+Tl5ufo6erx8vP09fb3+Pn6/8QAHwEA AwEBAQEBAQEBAQAAAAAAAAECAwQFBgcICQoL/8QAtREAAgECBAQDBAcFBAQAAQJ3AAECAxEEBSEx BhJBUQdhcRMiMoEIFEKRobHBCSMzUvAVYnLRChYkNOEl8RcYGRomJygpKjU2Nzg5OkNERUZHSElK U1RVVldYWVpjZGVmZ2hpanN0dXZ3eHl6goOEhYaHiImKkpOUlZaXmJmaoqOkpaanqKmqsrO0tba3 uLm6wsPExcbHyMnK0tPU1dbX2Nna4uPk5ebn6Onq8vP09fb3+Pn6/9oADAMBAAIRAxEAPwDfd3l+ Xztu0qrnaxK/kT6H061sWskQeFlTAU/OX5Jz25569hXnsmu2USszTGUv1UPjtgnjtwP6VkXPisNJ 9m0+JRtGXk7L9B6+9ZQpyRHJ3PRvEHiuK3vMKqzzFdpQuFUDnBLE4B9uT7c1nNqcl9pk0P2Nw0ji ZGjkVlSTzN+cdfQcAdO+a8mvLqeaRmMjNIeck5rUsNejt7UriXzHQKQH4yPX9a3QcqPR7+5j8yT7 BJIVVJgVlGMoVU4/PcQO+Md6q3R+y3WhGGRWdFV3wMElwqc/TJP41zVj4za3IRrKIxg5KgfePvmr r69HdJ5jWgZRwoB+Zec9euKjlQ+TsdNbtAk08glUEquVAJbOTxx7ZNTz+ZLHp0oO1ftxMa5BbhZC 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 Vje0SRlA6sVyT+dbpkcMQHb8656j99nRT+BH/9k= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/icon_more_red.gif R0lGODlhFQAVAMQAAP////f39+/v7+bm5t7e3tbW1szMzMTExL29vba2tq2trbsLE7YLE6sLEqYK EaAKEf///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAEH ABAALAAAAAAVABUAAAWhICSOZGmeaEoeieImhyqySCEAQoHA6V4Qhh3CQCgkECcWMMFsJoi8UqKg Q1ivVmqidEAMDuDDIxweIGKjaSHsaJMPxe1IkTPYDY383WBTkBQAVIIFeQ2DAH5zAgSMjAyPjYwC iSJTi4wLmZEEOXIzCAEDogMLo6MBZ1IFAQKtrq9GJkqsr60BBFElPgABvb5GSCg0Njg6uSksLgrH Ms3OKSEAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/footer_top_border.gif R0lGODlh5wMFAKIAACIiIv///7a2tnJycunp6ZmZmQAAAAAAACH5BAAHAP8ALAAAAADnAwUAAANg SLHc/jDKSau9OOvNu/9gKI5kaZ5oqq5s675wLM90DRGCre987//AoHBILBqPyKRyJRgsn9CodEqt Wq/YrHYbGgAK3LB4TC6bz+i0eu0oAN4DgYJNr9vv+Lx+zw/ivAAJADs= ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: base64 Content-Location: http://devgundersen.112.2o7.net/b/ss/devgundersen/1/H.17--NS/0 R0lGODlhAgACAIAAAP///wAAACH5BAEAAAAALAAAAAACAAIAAAIChFEAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: image/gif Content-Transfer-Encoding: base64 Content-Location: http://www.southafrica.net/sat/applications/sat/templates/images/your_concierge_button_search.gif R0lGODlhOwAVANUAAD5CSa66zJiboXB4hNXV1VthawApZ0xRWaKtvuXl5oeQnr29vWRrdff396i0 xsjIyJeisqutseDg4HqCj6u3yfDw8GdueYyVpEVKUbK+0czMzP///3+IlVRZYmlxfLS0tKy4ynp/ iZWfr5ynuIyUnG51gXuMlHN7jAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAHAP8ALAAAAAA7ABUAAAb/wIxw SCwaj0hkIOBoNkGgpHRKNTIRENFle4EgHIGqeDwEYRWTkoVhKU0U3ih5njSLJqEIobKpECIhEyII cnSGQgEIIiECBBIaCx8LGhIEAiGDS4eGDhATAgkaH6OkHxoJAhMQDkIICiMZiiKzQhQitbMiFEMU F7AIsLHBiK4hBAQLycrKxyEKCAEKAAUYCBMYBdlCCh1CIgAdABgUFB4Y4SMTBULqRCCeEQnKBgbL yQkRqiAMA0PtROgyfIsF4E5Bf+sy/BPiQESJYw8i0jMQsWKlEiIcDMCggN2BCROEjJjW7xsFaQi0 +fuoLiHDCxb8aJipYSJNDXssXGA1YBqF5WsqPTBQcEAggKMcMhQI6Q9bgQMuMzi4wGDDsasEJmLd wGCnyANoXFLAMOECgAsmySqN+m+hVJgVJMiVO3Gu3Ao6HSAgd4DDQgVkJ3TwMFBaOgAKKHBIl9Bt w4dx6dKzK8EPRgcejnb4eVSzh21nAQjJ9hMDgAN3Gkd9NyFCgwSwExiIHbtBPghRECBolWvWbirD kiRSYKxBhePIkxNwBm0TnU6fEhhPfvx1qlXO6SRa1GhDg+/gLWGCFiY7GTt49PDxA0gQIfOGzEBA o4aNGzjv4Ru6koVLly/l6XfIEk48UcgQQQAAOw== ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/applications/sat/templates/css/main_nav.css #topLevelMenu UL { LIST-STYLE-TYPE: none; MARGIN: 0px; LIST-STYLE-IMAGE: none } #topLevelMenu LI { PADDING-BOTTOM: 8px; FLOAT: left; HEIGHT: 22px; COLOR: white; = FONT-SIZE: 12px; CURSOR: pointer; MARGIN-RIGHT: 1px } LI#topnav_15 { MARGIN-RIGHT: 0px } LI#topnav_172 { MARGIN-RIGHT: 0px } #topLevelMenu .bestOf { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/main_nav_bg_active_firs= t.gif) no-repeat } #topLevelMenu .whereToGo { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/main_nav_bg_active.gif)= no-repeat } #topLevelMenu .whatToDo { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/main_nav_bg_active.gif)= no-repeat } #topLevelMenu .planTrip { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/main_nav_bg_active.gif)= no-repeat } #topLevelMenu .aboutSA { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/main_nav_bg_active.gif)= no-repeat } #topLevelMenu .contact { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/main_nav_bg_active.gif)= no-repeat } .bestOfActive { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/main_nav_bg_active_firs= t.gif) no-repeat; COLOR: white } .whereToGoActive { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/main_nav_bg_active.gif)= no-repeat; COLOR: white } .whatToDoActive { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/main_nav_bg_active.gif)= no-repeat; COLOR: white } .planTripActive { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/main_nav_bg_active.gif)= no-repeat; COLOR: white } .aboutSAActive { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/main_nav_bg_active.gif)= no-repeat; COLOR: white } .contactActive { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/main_nav_bg_active.gif)= no-repeat; COLOR: white } .galleryActive { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/main_nav_bg_active.gif)= no-repeat; COLOR: white } ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/applications/sat/templates/css/sub_nav.css #sub_nav_area { MARGIN: 5px 0px 0px } #sub_nav_area2 { MARGIN-BOTTOM: 4px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_bg.gif) = no-repeat; HEIGHT: 28px } #sub_nav { POSITION: relative; HEIGHT: 23px; COLOR: white; MARGIN-LEFT: -1px; = FONT-SIZE: 11px } .hide_block { Z-INDEX: 1000; POSITION: absolute } #sub_nav UL { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; PADDING-TOP: 0px } #sub_nav A { DISPLAY: block } #sub_nav LI { LIST-STYLE: none none outside; FLOAT: left } #sub_nav LI:hover UL { DISPLAY: block } #sub_nav LI.sfhover UL { DISPLAY: block } .active_arrow { MARGIN-LEFT: 15px } LI.sub_nav_parent0 DIV { BEHAVIOR: url(/sat/applications/sat/templates/css/IEFixes.htc) } LI.sub_nav_parent0 DIV.sub_nav_item { PADDING-BOTTOM: 5px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; = PADDING-TOP: 3px } TD.sub_nav_child0 { POSITION: relative; PADDING-BOTTOM: 0px; PADDING-LEFT: 19px; = PADDING-RIGHT: 19px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_divider.gif) = no-repeat 100% 0px; COLOR: white; PADDING-TOP: 0px } LI.sub_nav_parent0 { POSITION: relative; PADDING-BOTTOM: 0px; PADDING-LEFT: 19px; = PADDING-RIGHT: 19px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_divider.gif) = no-repeat 100% 0px; COLOR: white; PADDING-TOP: 0px } TD.sub_nav_child0_active { POSITION: relative; PADDING-BOTTOM: 0px; PADDING-LEFT: 19px; = PADDING-RIGHT: 19px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_divider.gif) = no-repeat 100% 0px; COLOR: white; PADDING-TOP: 0px } LI.sub_nav_parent0_active { POSITION: relative; PADDING-BOTTOM: 0px; PADDING-LEFT: 19px; = PADDING-RIGHT: 19px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_divider.gif) = no-repeat 100% 0px; COLOR: white; PADDING-TOP: 0px } TD.sub_nav_child0 { PADDING-BOTTOM: 5px; PADDING-LEFT: 19px; PADDING-RIGHT: 19px; = PADDING-TOP: 3px } TD.sub_nav_child0 A { COLOR: white; FONT-WEIGHT: normal; TEXT-DECORATION: none } TD.sub_nav_child0 A:visited { COLOR: white; FONT-WEIGHT: normal; TEXT-DECORATION: none } LI.sub_nav_parent0 A { COLOR: white; FONT-WEIGHT: normal; TEXT-DECORATION: none } LI.sub_nav_parent0 A:visited { COLOR: white; FONT-WEIGHT: normal; TEXT-DECORATION: none } TD.sub_nav_child0 A:hover { COLOR: white; TEXT-DECORATION: none } LI.sub_nav_parent0 A:hover { COLOR: white; TEXT-DECORATION: none } UL.sub_nav_parent0_active { Z-INDEX: 100; POSITION: absolute; OVERFLOW-X: visible; DISPLAY: none; = WHITE-SPACE: nowrap; TOP: 23px; LEFT: -1px } UL.sub_nav_parent0 { Z-INDEX: 100; POSITION: absolute; OVERFLOW-X: visible; DISPLAY: none; = WHITE-SPACE: nowrap; TOP: 23px; LEFT: -1px } TD.sub_nav_child0_active { PADDING-BOTTOM: 4px; PADDING-LEFT: 19px; PADDING-RIGHT: 19px; = BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_bg_active.gif) = repeat-x 100% 0px; COLOR: white; PADDING-TOP: 4px } LI.sub_nav_parent0_active { PADDING-BOTTOM: 4px; PADDING-LEFT: 19px; PADDING-RIGHT: 19px; = BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_bg_active.gif) = repeat-x 100% 0px; COLOR: white; PADDING-TOP: 4px } TD.sub_nav_child0_active A { COLOR: white; TEXT-DECORATION: none } TD.sub_nav_child0_active A:visited { COLOR: white; TEXT-DECORATION: none } LI.sub_nav_parent0_active A { COLOR: white; TEXT-DECORATION: none } LI.sub_nav_parent0_active A:visited { COLOR: white; TEXT-DECORATION: none } TD.sub_nav_child0_active A:hover { COLOR: white; TEXT-DECORATION: none } LI.sub_nav_parent0_active A:hover { COLOR: white; TEXT-DECORATION: none } LI.sub_nav_parent0 A:hover { COLOR: white; TEXT-DECORATION: none } TD.sub_nav_child1 { BORDER-LEFT: #323230 1px solid; WIDTH: 100%; CLEAR: left; FONT-WEIGHT: = normal; BORDER-RIGHT: #323230 1px solid } TD.sub_nav_child1_active { BORDER-LEFT: #323230 1px solid; WIDTH: 100%; CLEAR: left; FONT-WEIGHT: = normal; BORDER-RIGHT: #323230 1px solid } .sub_nav_child1_last.td { BORDER-LEFT: #323230 1px solid; WIDTH: 100%; CLEAR: left; FONT-WEIGHT: = normal; BORDER-RIGHT: #323230 1px solid } TD.sub_nav_child1 A { PADDING-BOTTOM: 5px; PADDING-LEFT: 19px; PADDING-RIGHT: 19px; = BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= .gif) #3d7b25 repeat-x 0px 100%; HEIGHT: 16px; COLOR: white; = TEXT-DECORATION: none; PADDING-TOP: 4px } TD.sub_nav_child1 A:visited { PADDING-BOTTOM: 5px; PADDING-LEFT: 19px; PADDING-RIGHT: 19px; = BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= .gif) #3d7b25 repeat-x 0px 100%; HEIGHT: 16px; COLOR: white; = TEXT-DECORATION: none; PADDING-TOP: 4px } TD.sub_nav_child1_active A { PADDING-BOTTOM: 5px; PADDING-LEFT: 19px; PADDING-RIGHT: 19px; = BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= .gif) #3d7b25 repeat-x 0px 100%; HEIGHT: 16px; COLOR: white; = TEXT-DECORATION: none; PADDING-TOP: 4px } TD.sub_nav_child1_active A:visited { PADDING-BOTTOM: 5px; PADDING-LEFT: 19px; PADDING-RIGHT: 19px; = BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= .gif) #3d7b25 repeat-x 0px 100%; HEIGHT: 16px; COLOR: white; = TEXT-DECORATION: none; PADDING-TOP: 4px } TD.sub_nav_child1 A:hover { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= .gif) #000 repeat-x 0px 100%; COLOR: white } TD.sub_nav_child1_active A:hover { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= .gif) #000 repeat-x 0px 100%; COLOR: white } TD.sub_nav_child1_last { BORDER-BOTTOM: #323230 1px solid; BORDER-LEFT: #323230 1px solid; = WIDTH: 100%; BORDER-RIGHT: #323230 1px solid } TD.sub_nav_child1_last_active { BORDER-BOTTOM: #323230 1px solid; BORDER-LEFT: #323230 1px solid; = WIDTH: 100%; BORDER-RIGHT: #323230 1px solid } TD.sub_nav_child1_last A { PADDING-BOTTOM: 5px; PADDING-LEFT: 19px; PADDING-RIGHT: 19px; = BACKGROUND: #3d7b25; HEIGHT: 16px; COLOR: white; TEXT-DECORATION: none; = PADDING-TOP: 4px } TD.sub_nav_child1_last A:visited { PADDING-BOTTOM: 5px; PADDING-LEFT: 19px; PADDING-RIGHT: 19px; = BACKGROUND: #3d7b25; HEIGHT: 16px; COLOR: white; TEXT-DECORATION: none; = PADDING-TOP: 4px } TD.sub_nav_child1_last_active A { PADDING-BOTTOM: 5px; PADDING-LEFT: 19px; PADDING-RIGHT: 19px; = BACKGROUND: #3d7b25; HEIGHT: 16px; COLOR: white; TEXT-DECORATION: none; = PADDING-TOP: 4px } TD.sub_nav_child1_last_active A:visited { PADDING-BOTTOM: 5px; PADDING-LEFT: 19px; PADDING-RIGHT: 19px; = BACKGROUND: #3d7b25; HEIGHT: 16px; COLOR: white; TEXT-DECORATION: none; = PADDING-TOP: 4px } TD.sub_nav_child1_last A:hover { BACKGROUND: #000; COLOR: white } TD.sub_nav_child1_last_active A:hover { BACKGROUND: #000; COLOR: white } LI.sub_nav_parent1 { BORDER-LEFT: #323230 1px solid; WIDTH: 100%; CLEAR: left; FONT-WEIGHT: = normal; BORDER-RIGHT: #323230 1px solid } LI.sub_nav_parent1_active { BORDER-LEFT: #323230 1px solid; WIDTH: 100%; CLEAR: left; FONT-WEIGHT: = normal; BORDER-RIGHT: #323230 1px solid } .sub_nav_parent1_last.li { BORDER-LEFT: #323230 1px solid; WIDTH: 100%; CLEAR: left; FONT-WEIGHT: = normal; BORDER-RIGHT: #323230 1px solid } LI.sub_nav_parent1 A { PADDING-BOTTOM: 5px; PADDING-LEFT: 19px; PADDING-RIGHT: 19px; = BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= .gif) #d9d9d9 repeat-x 0px 100%; HEIGHT: 16px; COLOR: black; = TEXT-DECORATION: none; PADDING-TOP: 4px } LI.sub_nav_parent1 A:visited { PADDING-BOTTOM: 5px; PADDING-LEFT: 19px; PADDING-RIGHT: 19px; = BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= .gif) #d9d9d9 repeat-x 0px 100%; HEIGHT: 16px; COLOR: black; = TEXT-DECORATION: none; PADDING-TOP: 4px } LI.sub_nav_parent1 A { PADDING-BOTTOM: 5px; PADDING-LEFT: 19px; PADDING-RIGHT: 19px; = BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= .gif) #d9d9d9 repeat-x 0px 100%; HEIGHT: 16px; COLOR: black; = TEXT-DECORATION: none; PADDING-TOP: 4px } LI.sub_nav_parent1 A:visited { PADDING-BOTTOM: 5px; PADDING-LEFT: 19px; PADDING-RIGHT: 19px; = BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= .gif) #d9d9d9 repeat-x 0px 100%; HEIGHT: 16px; COLOR: black; = TEXT-DECORATION: none; PADDING-TOP: 4px } LI.sub_nav_parent1 A:hover { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= .gif) #b7b7b7 repeat-x 0px 100%; COLOR: black } LI.sub_nav_parent1 A:hover { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= .gif) #b7b7b7 repeat-x 0px 100%; COLOR: black } TD.sub_nav_child2 { DISPLAY: none } TD.sub_nav_child2_last { DISPLAY: none } #sub_nav_parent_div_index_1 { POSITION: absolute; TOP: -5px; LEFT: 0px } #sub_nav_parent_div_index_2 { POSITION: absolute; TOP: -5px; LEFT: 0px } #sub_nav_parent_div_index_3 { POSITION: absolute; TOP: -5px; LEFT: 0px } #sub_nav_parent_div_index_4 { POSITION: absolute; TOP: -5px; LEFT: 0px } #sub_nav_parent_div_index_5 { POSITION: absolute; TOP: -5px; LEFT: 0px } #sub_nav_parent_div_index_6 { POSITION: absolute; TOP: -5px; LEFT: 0px } UL#sub_nav_parent_index_1 { LEFT: 5px } #subnav_15 TD.sub_nav_child1 A { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _red.gif) #d40d16 repeat-x 0px 100% } #subnav_15 TD.sub_nav_child1 A:visited { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _red.gif) #d40d16 repeat-x 0px 100% } #subnav_15 TD.sub_nav_child1_active A { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _red.gif) #d40d16 repeat-x 0px 100% } #subnav_15 TD.sub_nav_child1_active A:visited { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _red.gif) #d40d16 repeat-x 0px 100% } #subnav_15 TD.sub_nav_child1 A:hover { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _red.gif) #000 repeat-x 0px 100% } #subnav_15 TD.sub_nav_child1_active A:hover { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _red.gif) #000 repeat-x 0px 100% } #subnav_15 TD.sub_nav_child1_last A { BACKGROUND: #d40d16 } #subnav_15 TD.sub_nav_child1_last A:visited { BACKGROUND: #d40d16 } #subnav_15 TD.sub_nav_child1_last A:hover { BACKGROUND: #000 } #subnav_42 TD.sub_nav_child1 A { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _green.gif) #3d7b25 repeat-x 0px 100% } #subnav_42 TD.sub_nav_child1 A:visited { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _green.gif) #3d7b25 repeat-x 0px 100% } #subnav_42 TD.sub_nav_child1_active A { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _green.gif) #3d7b25 repeat-x 0px 100% } #subnav_42 TD.sub_nav_child1_active A:visited { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _green.gif) #3d7b25 repeat-x 0px 100% } #subnav_42 TD.sub_nav_child1 A:hover { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _green.gif) #000 repeat-x 0px 100% } #subnav_42 TD.sub_nav_child1_active A:hover { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _green.gif) #000 repeat-x 0px 100% } #subnav_42 TD.sub_nav_child1_last A { BACKGROUND: #3d7b25 } #subnav_42 TD.sub_nav_child1_last A:visited { BACKGROUND: #3d7b25 } #subnav_42 TD.sub_nav_child1_last A:hover { BACKGROUND: #000 } #subnav_100 TD.sub_nav_child1 A { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _black.gif) black repeat-x 0px 100% } #subnav_100 TD.sub_nav_child1 A:visited { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _black.gif) black repeat-x 0px 100% } #subnav_100 TD.sub_nav_child1_active A { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _black.gif) black repeat-x 0px 100% } #subnav_100 TD.sub_nav_child1_active A:visited { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _black.gif) black repeat-x 0px 100% } #subnav_100 TD.sub_nav_child1 A:hover { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _black.gif) white repeat-x 0px 100%; COLOR: black } #subnav_100 TD.sub_nav_child1_active A:hover { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _black.gif) white repeat-x 0px 100%; COLOR: black } #subnav_100 TD.sub_nav_child1_last A { BACKGROUND: black } #subnav_100 TD.sub_nav_child1_last A:visited { BACKGROUND: black } #subnav_100 TD.sub_nav_child1_last A:hover { BACKGROUND: white; COLOR: black } #subnav_101 TD.sub_nav_child1 A { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _yellow.gif) #ffa700 repeat-x 0px 100% } #subnav_101 TD.sub_nav_child1 A:visited { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _yellow.gif) #ffa700 repeat-x 0px 100% } #subnav_101 TD.sub_nav_child1_active A { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _yellow.gif) #ffa700 repeat-x 0px 100% } #subnav_101 TD.sub_nav_child1_active A:visited { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _yellow.gif) #ffa700 repeat-x 0px 100% } #subnav_101 TD.sub_nav_child1 A:hover { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _yellow.gif) #000 repeat-x 0px 100% } #subnav_101 TD.sub_nav_child1_active A:hover { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _yellow.gif) #000 repeat-x 0px 100% } #subnav_101 TD.sub_nav_child1_last A { BACKGROUND: #ffa700 } #subnav_101 TD.sub_nav_child1_last A:visited { BACKGROUND: #ffa700 } #subnav_101 TD.sub_nav_child1_last A:hover { BACKGROUND: #000 } #subnav_103 TD.sub_nav_child1 A { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _blue.gif) #002967 repeat-x 0px 100% } #subnav_103 TD.sub_nav_child1 A:visited { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _blue.gif) #002967 repeat-x 0px 100% } #subnav_103 TD.sub_nav_child1_active A { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _blue.gif) #002967 repeat-x 0px 100% } #subnav_103 TD.sub_nav_child1_active A:visited { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _blue.gif) #002967 repeat-x 0px 100% } #subnav_103 TD.sub_nav_child1 A:hover { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _blue.gif) #000 repeat-x 0px 100% } #subnav_103 TD.sub_nav_child1_active A:hover { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _blue.gif) #000 repeat-x 0px 100% } #subnav_103 TD.sub_nav_child1_last A { BACKGROUND: #002967 } #subnav_103 TD.sub_nav_child1_last A:visited { BACKGROUND: #002967 } #subnav_103 TD.sub_nav_child1_last A:hover { BACKGROUND: #000 } #subnav_172 TD.sub_nav_child1 A { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _red.gif) #d40d16 repeat-x 0px 100% } #subnav_172 TD.sub_nav_child1 A:visited { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _red.gif) #d40d16 repeat-x 0px 100% } #subnav_172 TD.sub_nav_child1_active A { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _red.gif) #d40d16 repeat-x 0px 100% } #subnav_172 TD.sub_nav_child1_active A:visited { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _red.gif) #d40d16 repeat-x 0px 100% } #subnav_172 TD.sub_nav_child1 A:hover { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _red.gif) #000 repeat-x 0px 100% } #subnav_172 TD.sub_nav_child1_active A:hover { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/sub_nav_dots_horizontal= _red.gif) #000 repeat-x 0px 100% } #subnav_172 TD.sub_nav_child1_last A { BACKGROUND: #d40d16 } #subnav_172 TD.sub_nav_child1_last A:visited { BACKGROUND: #d40d16 } #subnav_172 TD.sub_nav_child1_last A:hover { BACKGROUND: #000 } ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/applications/sat/templates/css/popup.css #popup_detail { MARGIN: 20px } #popup_detail H1 { MARGIN-BOTTOM: 5px } #popup_detail .instruction_copy { FONT-STYLE: italic; MARGIN: 0px 0px 18px; COLOR: #999; FONT-SIZE: 13px } #popup_detail .tab_instruction_copy { MARGIN: 0px 0px 10px 7px; COLOR: #999; FONT-SIZE: 11px } #popup_detail .ccs_dropdown { COLOR: #424242 } #popup_detail .border { BORDER-BOTTOM: #b3bed2 1px solid; BORDER-LEFT: #b3bed2 1px solid; = WIDTH: 100%; BORDER-TOP: #b3bed2 1px solid; BORDER-RIGHT: #b3bed2 1px = solid } #popup_detail .privacy_policy { COLOR: #999; FONT-SIZE: 10px } #popup_detail TABLE .embedded_table { MARGIN: 0px 0px 0px 5px } #popup_detail TABLE .embedded_table TD { HEIGHT: 10px } .mandatory_key { TEXT-ALIGN: center; WIDTH: 92px; MARGIN-BOTTOM: 10px; BACKGROUND: = url(../images/popup_imagery/mandatory_key.gif); HEIGHT: 18px; COLOR: = #000; FONT-SIZE: 11px } .popup_table { BORDER-COLLAPSE: collapse; MARGIN-BOTTOM: 20px } .popup_table .ccs_textfield { PADDING-BOTTOM: 0px; MARGIN: 2px; PADDING-LEFT: 3px; PADDING-RIGHT: = 0px; PADDING-TOP: 3px } .popup_table SELECT { PADDING-BOTTOM: 0px; MARGIN: 1px 2px 3px 0px; PADDING-LEFT: 1px; WIDTH: = 200px; PADDING-RIGHT: 0px; PADDING-TOP: 0px } .popup_table .message_box_text { MARGIN: 3px 3px 0px 0px; FLOAT: left } .popup_table .message_box { FLOAT: left } .popup_table .message_box .ccs_textarea { PADDING-LEFT: 4px; WIDTH: 400px; HEIGHT: 55px; COLOR: #666 } .popup_button_table { PADDING-BOTTOM: 0px; PADDING-LEFT: 7px; WIDTH: 100%; PADDING-RIGHT: = 0px; BORDER-COLLAPSE: collapse; PADDING-TOP: 3px } .popup_button { TEXT-ALIGN: right } .popup_subhead { MARGIN-BOTTOM: 8px; BACKGROUND: = url(../images/popup_imagery/popup_subhead_tile.gif); HEIGHT: 25px } .popup_subhead .left { WIDTH: 2px; BACKGROUND: = url(../images/popup_imagery/popup_subhead_left.gif); FLOAT: left; = HEIGHT: 25px } .popup_subhead .text { PADDING-BOTTOM: 0px; PADDING-LEFT: 7px; PADDING-RIGHT: 0px; FLOAT: = left; COLOR: #000; FONT-SIZE: 14px; FONT-WEIGHT: bold; PADDING-TOP: 3px } .popup_subhead .right { WIDTH: 2px; BACKGROUND: = url(../images/popup_imagery/popup_subhead_right.gif); FLOAT: right; = HEIGHT: 25px } .mandatory_field_left { WIDTH: 12px; BACKGROUND: = url(../images/popup_imagery/mandatory_left.gif) no-repeat 0px 0px; = HEIGHT: 27px } .mandatory_field_left_textarea { BACKGROUND: url(../images/popup_imagery/mandatory_left_textarea.gif) = no-repeat 0px 0px; HEIGHT: 112px } .mandatory_field_text { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; WIDTH: 200px; PADDING-RIGHT: = 15px; BACKGROUND: url(../images/popup_imagery/mandatory_tile.gif) = repeat-x; HEIGHT: 27px; PADDING-TOP: 0px } .mandatory_field_textfield { BACKGROUND: url(../images/popup_imagery/mandatory_tile.gif) repeat-x; = HEIGHT: 27px } .mandatory_field_textarea { BACKGROUND: url(../images/popup_imagery/mandatory_tile_textarea.gif) = repeat-x } .mandatory_field_textarea P { MARGIN-TOP: 5px; FONT-SIZE: 11px } .mandatory_field_textarea P.ccs_textarea { MARGIN-TOP: 0px } .mandatory_field_right { WIDTH: 2px; BACKGROUND: = url(../images/popup_imagery/mandatory_right.gif) no-repeat 100% 0px; = HEIGHT: 27px } .mandatory_field_right_textarea { BACKGROUND: url(../images/popup_imagery/mandatory_right_textarea.gif) = no-repeat 100% 0px } .section_box { BORDER-BOTTOM: #bbc6d6 1px solid; BORDER-LEFT: #bbc6d6 1px solid; = WIDTH: 100%; BORDER-TOP: #bbc6d6 1px solid; BORDER-RIGHT: #bbc6d6 1px = solid } TD.table_data { PADDING-BOTTOM: 2px; PADDING-LEFT: 2px; PADDING-RIGHT: 2px; = PADDING-TOP: 2px } TD.table_heading { PADDING-BOTTOM: 2px; BACKGROUND-COLOR: #ccc; PADDING-LEFT: 2px; WIDTH: = 200px; PADDING-RIGHT: 2px; PADDING-TOP: 2px } TD.table_heading_article { PADDING-BOTTOM: 2px; BACKGROUND-COLOR: #ccc; PADDING-LEFT: 2px; WIDTH: = 300px; PADDING-RIGHT: 2px; PADDING-TOP: 2px } .spacer_cell_left { WIDTH: 2px; HEIGHT: 22px } .spacer_cell_right { WIDTH: 2px; HEIGHT: 22px } TD { =09 } TD.popup_ccs_text { PADDING-BOTTOM: 0px; MARGIN: 2px; PADDING-LEFT: 0px; WIDTH: 200px; = PADDING-RIGHT: 15px; HEIGHT: 22px; PADDING-TOP: 4px } TD.popup_ccs_textfields { PADDING-BOTTOM: 0px; MARGIN: 2px; PADDING-LEFT: 3px; WIDTH: 460px; = PADDING-RIGHT: 15px; PADDING-TOP: 4px } ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/applications/sat/templates/css/global.css @import url( /sat/applications/sat/templates/css/main_nav.css ); @import url( /sat/applications/sat/templates/css/sub_nav.css ); @import url( /sat/applications/sat/templates/css/popup.css ); * { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FONT-FAMILY: Trebuchet MS, Tahoma, Arial, Helvetica, sans-serif; = PADDING-TOP: 0px } BODY { TEXT-ALIGN: center; LINE-HEIGHT: 1.4; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/body_bg.jpg) #2a2d36 = repeat-x; COLOR: #424242; FONT-SIZE: 11px } H1 { MARGIN-BOTTOM: 10px; COLOR: black; FONT-SIZE: 23px; FONT-WEIGHT: normal } H1 A { COLOR: black } H1 A:visited { COLOR: black } H1 A:hover { COLOR: black } H1.title_no_margin { MARGIN-BOTTOM: 0px; COLOR: black } H2 { MARGIN-BOTTOM: 10px; COLOR: black; FONT-SIZE: 14px; FONT-WEIGHT: bold } H2.red { COLOR: #d40d16; FONT-SIZE: 18px; FONT-WEIGHT: normal } H2.blue { COLOR: #002967; FONT-SIZE: 18px; FONT-WEIGHT: normal } H2.green { COLOR: #3e7b25; FONT-SIZE: 18px; FONT-WEIGHT: normal } H2.blog { COLOR: #fff; FONT-SIZE: 18px; FONT-WEIGHT: normal } H2.top10 { PADDING-BOTTOM: 6px; LINE-HEIGHT: 0.8; MARGIN-BOTTOM: 0px; COLOR: #f90; = FONT-SIZE: 30px; FONT-WEIGHT: normal } H3 { COLOR: black; FONT-SIZE: 14px } H3.top10 { MARGIN-BOTTOM: 12px; COLOR: #666; FONT-SIZE: 12px; FONT-WEIGHT: bold } H3.top3 { MARGIN-BOTTOM: 10px; COLOR: #f90; FONT-SIZE: 18px; FONT-WEIGHT: normal } H4 { COLOR: #bbac73; FONT-SIZE: 11px } H5 { PADDING-LEFT: 10px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/li_arrow_grey.gif) = no-repeat 2px 5px; COLOR: #000; FONT-SIZE: 11px } IMG { BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; BORDER-TOP: 0px; BORDER-RIGHT: = 0px } P { MARGIN: 0px 0px 10px; FONT-SIZE: 12px } UL { MARGIN-BOTTOM: 10px; MARGIN-LEFT: 25px } OL { PADDING-LEFT: 25px; MARGIN-BOTTOM: 10px } IMG { BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; BORDER-TOP: 0px; BORDER-RIGHT: = 0px } A { COLOR: #c00; TEXT-DECORATION: none } A:visited { COLOR: #c00; TEXT-DECORATION: none } A:hover { COLOR: #3e7b25; TEXT-DECORATION: underline } TABLE { FONT-SIZE: 11px } SELECT { BORDER-BOTTOM: #dcdada 1px solid; BORDER-LEFT: #dcdada 1px solid; = COLOR: #424242; FONT-SIZE: 11px; BORDER-TOP: #dcdada 1px solid; = BORDER-RIGHT: #dcdada 1px solid } TEXTAREA { BORDER-BOTTOM: #dcdada 1px solid; BORDER-LEFT: #dcdada 1px solid; = COLOR: #424242; FONT-SIZE: 11px; BORDER-TOP: #dcdada 1px solid; = BORDER-RIGHT: #dcdada 1px solid } INPUT { BORDER-BOTTOM: #dcdada 1px solid; BORDER-LEFT: #dcdada 1px solid; = COLOR: #424242; FONT-SIZE: 11px; BORDER-TOP: #dcdada 1px solid; = BORDER-RIGHT: #dcdada 1px solid } OPTION { PADDING-BOTTOM: 0px; PADDING-LEFT: 5px; PADDING-RIGHT: 5px; = PADDING-TOP: 0px } #outside_container { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/homepage/background.jpg= ) no-repeat 50% 0px } #inside_container { POSITION: relative; TEXT-ALIGN: left; MIN-HEIGHT: 780px; WIDTH: 999px; = BACKGROUND: white; MARGIN-LEFT: 1px; OVERFLOW: hidden; LEFT: 0px } #header { POSITION: relative; MARGIN-BOTTOM: 1px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/homepage/header.jpg) = no-repeat; HEIGHT: 130px; CLEAR: both } #navigation_tier1 { Z-INDEX: 0; POSITION: relative; WIDTH: 989px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/main_nav_bg.jpg) = no-repeat; HEIGHT: 30px } #topLevelMenu A { COLOR: white; TEXT-DECORATION: none } #topLevelMenu A:visited { COLOR: white; TEXT-DECORATION: none } #topLevelMenu A:hover { COLOR: white; TEXT-DECORATION: none } #quicklinks { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 9px; FLOAT: = right; PADDING-TOP: 0px } #quicklinks_label { MARGIN: 3px 6px 0px 0px; FLOAT: left } #header_spacer { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/header_spacer.jpg) = no-repeat; HEIGHT: 16px; COLOR: #000; CLEAR: both; FONT-SIZE: 11px } #search { WIDTH: 190px; FLOAT: right } .search_box { BORDER-BOTTOM: white 1px solid; BORDER-LEFT: white 1px solid; = PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; = FLOAT: left; BORDER-TOP: white 1px solid; BORDER-RIGHT: white 1px solid; = PADDING-TOP: 0px } #search INPUT.box { BORDER-BOTTOM: #005479 1px solid; BORDER-LEFT: #005479 1px solid; = BACKGROUND: #5e92aa; COLOR: white; BORDER-TOP: #005479 1px solid; = BORDER-RIGHT: #005479 1px solid } #search INPUT.button { BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; BORDER-TOP: = medium none; BORDER-RIGHT: medium none } .mTD { TEXT-TRANSFORM: none } .SUBmTD { TEXT-TRANSFORM: none } DIV.SUBmTD { BACKGROUND: white } .image_border { BORDER-BOTTOM: #bbbcbe 1px solid; BORDER-LEFT: #bbbcbe 1px solid; = PADDING-BOTTOM: 2px; PADDING-LEFT: 2px; PADDING-RIGHT: 2px; BORDER-TOP: = #bbbcbe 1px solid; BORDER-RIGHT: #bbbcbe 1px solid; PADDING-TOP: 2px } .float_left { FLOAT: left } .dots_horizontal_grey { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_horizontal.gif) = #666 repeat-x; HEIGHT: 1px } .dots_horizontal_blue { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_horizontal.gif) = #002967 repeat-x; HEIGHT: 1px } .dots_horizontal_red { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_horizontal.gif) = #d40d16 repeat-x; HEIGHT: 1px } .dots_horizontal_green { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_horizontal.gif) = #4c6f35 repeat-x; HEIGHT: 1px } .dots_horizontal_yellow { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_horizontal.gif) = #ffa700 repeat-x; HEIGHT: 1px } .dots_vertical { WIDTH: 1px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_vertical_divider.g= if) no-repeat 0px 100% } .dots_horizontal_divider { PADDING-BOTTOM: 9px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; CLEAR: = both; PADDING-TOP: 9px } .separator_blue { MARGIN-BOTTOM: 1px; BACKGROUND: #002967; HEIGHT: 4px } .separator_red { MARGIN-BOTTOM: 1px; BACKGROUND: #d40d16; HEIGHT: 4px } .separator_green { MARGIN-BOTTOM: 1px; BACKGROUND: #4c6f35; HEIGHT: 4px } .separator_yellow { MARGIN-BOTTOM: 1px; BACKGROUND: #ffa700; HEIGHT: 4px } .box_grey_header { WIDTH: 100%; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/corner_grey_top_right.g= if) no-repeat 100% 0px; HEIGHT: 2px; OVERFLOW: hidden } .box_grey_sides { BORDER-BOTTOM: #b2b2b2 0px solid; BORDER-LEFT: #b2b2b2 1px solid; = PADDING-BOTTOM: 1px; PADDING-LEFT: 3px; PADDING-RIGHT: 3px; BORDER-TOP: = #b2b2b2 0px solid; BORDER-RIGHT: #b2b2b2 1px solid; PADDING-TOP: 2px } .box_grey_footer { WIDTH: 100%; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/corner_grey_bottom_righ= t.gif) no-repeat 100% 0px; HEIGHT: 4px; OVERFLOW: hidden } #gadgets { MARGIN: 4px 0px 12px; WIDTH: 300px } .gadget_box_sides { BORDER-BOTTOM: #3e7b25 0px solid; BORDER-LEFT: #3e7b25 1px solid; = PADDING-BOTTOM: 6px; PADDING-LEFT: 8px; PADDING-RIGHT: 7px; BACKGROUND: = #9fbd92; COLOR: #1c3b10; BORDER-TOP: #3e7b25 0px solid; BORDER-RIGHT: = #3e7b25 1px solid; PADDING-TOP: 8px } .gadget_subscribe { BORDER-BOTTOM: #3e7b25 1px solid; BORDER-LEFT: #3e7b25 1px solid; = MARGIN: 0px 0px 0px 5px; WIDTH: 193px; COLOR: #1c3b10; BORDER-TOP: = #3e7b25 1px solid; BORDER-RIGHT: #3e7b25 1px solid } .change_settings { TEXT-ALIGN: right } .change_settings A { COLOR: #356533; FONT-SIZE: 10px } .change_settings A:visited { COLOR: #356533; FONT-SIZE: 10px } .common_questions_box { PADDING-BOTTOM: 0px; PADDING-LEFT: 11px; WIDTH: 267px; PADDING-RIGHT: = 5px; BACKGROUND: #fff; HEIGHT: 179px; OVERFLOW: auto; PADDING-TOP: 7px } .topic { COLOR: black; FONT-WEIGHT: bold } .topic SPAN { PADDING-LEFT: 10px } .common_questions_box UL { LIST-STYLE-TYPE: none; MARGIN-LEFT: 30px; FONT-SIZE: 12px; = LIST-STYLE-IMAGE: none } .common_questions_box A { COLOR: #333 } .common_questions_box A:visited { COLOR: #333 } #practical_info LI { PADDING-LEFT: 11px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/li_arrow_blue.gif) = no-repeat 0px 4px } #health_and_safety LI { PADDING-LEFT: 11px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/li_arrow_red.gif) = no-repeat 0px 4px } #personal_requirements LI { PADDING-LEFT: 11px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/li_arrow_yellow.gif) = no-repeat 0px 4px } #assistance LI { PADDING-LEFT: 11px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/li_arrow_green.gif) = no-repeat 0px 4px } .did_you_find_your_answer_box { PADDING-BOTTOM: 8px; PADDING-LEFT: 9px; PADDING-RIGHT: 9px; BACKGROUND: = #b8cead; FONT-SIZE: 12px; PADDING-TOP: 8px } .did_you_find_your_answer_box A { COLOR: #000100 } .did_you_find_your_answer_box A:visited { COLOR: #000100 } #gaq_open_expert { WIDTH: 275px; MARGIN-LEFT: 2px } .ask_an_expert_box { PADDING-BOTTOM: 1px; PADDING-LEFT: 1px; PADDING-RIGHT: 1px; BACKGROUND: = white; PADDING-TOP: 1px } #call_centre { PADDING-BOTTOM: 6px; MARGIN: -1px 0px 1px; PADDING-LEFT: 8px; = PADDING-RIGHT: 8px; BACKGROUND: #ccdbc5; PADDING-TOP: 6px } #call_centre A { COLOR: #1c3b10 } #call_centre A:visited { COLOR: #1c3b10 } #fundi { PADDING-BOTTOM: 6px; PADDING-LEFT: 8px; PADDING-RIGHT: 8px; BORDER-TOP: = #9fbd92 1px solid; PADDING-TOP: 6px } #fundi SELECT { BORDER-BOTTOM: #a1bb94 1px solid; BORDER-LEFT: #a1bb94 1px solid; = MARGIN: 0px 26px 0px 0px; WIDTH: 184px; BACKGROUND: #ccdbc5; COLOR: = #424242; FONT-SIZE: 11px; BORDER-TOP: #a1bb94 1px solid; BORDER-RIGHT: = #a1bb94 1px solid } #icons_print_email { WIDTH: 27px; FLOAT: right } A.red_dots { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/red_dots_underline.gif)= repeat-x 0px 15px } A.red_dots:visited { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/red_dots_underline.gif)= repeat-x 0px 15px } A.red_dots:hover { BACKGROUND: none transparent scroll repeat 0% 0% } .related_image { MARGIN: 0px 15px 10px 0px; WIDTH: 213px; FLOAT: left } #top_tabs { WIDTH: 999px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/homepage/top_tabs.jpg) = no-repeat } #top_tabs A { COLOR: white; TEXT-DECORATION: none } #top_tabs A:visited { COLOR: white; TEXT-DECORATION: none } #top_tabs A:hover { TEXT-DECORATION: underline } #top_tab_traveller_active { TEXT-ALIGN: center; PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; WIDTH: = 82px; PADDING-RIGHT: 0px; FLOAT: left; HEIGHT: 28px; COLOR: black; = FONT-SIZE: 12px; PADDING-TOP: 12px } #top_tab_traveller_active_product { DISPLAY: none } #top_tab_trade_inactive { TEXT-ALIGN: center; PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; WIDTH: = 176px; PADDING-RIGHT: 0px; FLOAT: left; HEIGHT: 28px; COLOR: white; = FONT-SIZE: 12px; PADDING-TOP: 12px } #top_tab_media_inactive { TEXT-ALIGN: center; PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; WIDTH: = 159px; PADDING-RIGHT: 0px; FLOAT: left; HEIGHT: 28px; COLOR: white; = FONT-SIZE: 12px; PADDING-TOP: 12px } #top_tab_research_inactive { TEXT-ALIGN: center; PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; WIDTH: = 82px; PADDING-RIGHT: 0px; FLOAT: left; HEIGHT: 28px; COLOR: white; = FONT-SIZE: 12px; PADDING-TOP: 12px } #top_border { TEXT-ALIGN: right; PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; WIDTH: = 490px; PADDING-RIGHT: 10px; FLOAT: left; HEIGHT: 34px; COLOR: white; = FONT-SIZE: 11px; PADDING-TOP: 6px } #main_content { PADDING-LEFT: 10px; WIDTH: 989px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_vertical_divider.g= if) no-repeat 683px 100% } #main_column { POSITION: relative; PADDING-BOTTOM: 5px; PADDING-LEFT: 0px; WIDTH: = 669px; PADDING-RIGHT: 0px; FLOAT: left; PADDING-TOP: 5px } #main_column1 { PADDING-BOTTOM: 5px; PADDING-LEFT: 0px; WIDTH: 669px; PADDING-RIGHT: = 0px; FLOAT: left; PADDING-TOP: 5px } #main_column2 { PADDING-LEFT: 10px; WIDTH: 300px; FLOAT: left } #main_column3 { WIDTH: 128px; FLOAT: left } #main_column1a_1b { MARGIN-TOP: 13px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_vertical_divider.g= if) no-repeat 345px 100% } #main_column1a { PADDING-BOTTOM: 0px; MARGIN: 0px 4px 10px 0px; PADDING-LEFT: 0px; = WIDTH: 339px; PADDING-RIGHT: 10px; FLOAT: left; PADDING-TOP: 0px } #main_column1b { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: 313px; = PADDING-RIGHT: 0px; FLOAT: left; PADDING-TOP: 0px } #breadcrumb_trail { PADDING-BOTTOM: 0px; MARGIN: 0px 0px 20px -4px; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; COLOR: #7f7f7f; FONT-SIZE: 10px; PADDING-TOP: 4px } #breadcrumb_trail A { PADDING-BOTTOM: 0px; PADDING-LEFT: 6px; PADDING-RIGHT: 6px; COLOR: = black; FONT-SIZE: 10px; FONT-WEIGHT: normal; TEXT-DECORATION: none; = PADDING-TOP: 0px } #breadcrumb_trail A:visited { PADDING-BOTTOM: 0px; PADDING-LEFT: 6px; PADDING-RIGHT: 6px; COLOR: = black; FONT-SIZE: 10px; FONT-WEIGHT: normal; TEXT-DECORATION: none; = PADDING-TOP: 0px } #breadcrumb_trail A:hover { COLOR: #ed1d24 } .breadcrumb_separator { MARGIN: 3px 0px 0px; WIDTH: 1px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/breadcrumb_trail_separa= tor.gif) no-repeat; FLOAT: left; HEIGHT: 20px } #my_trip_planner { POSITION: relative; LEFT: -3px } #my_trip_planner_ie6 { POSITION: relative; LEFT: -3px } #special_offers .image { WIDTH: 90px; FLOAT: left } #special_offers .text { LINE-HEIGHT: 1.2; WIDTH: 188px; FLOAT: left; MARGIN-LEFT: 10px } #special_offers H2 { MARGIN: 0px; WIDTH: 156px; COLOR: #5e5e5e; FONT-SIZE: 14px } #special_offers H2 A { COLOR: #5e5e5e } #special_offers H2 A:visited { COLOR: #5e5e5e } #special_offers P { MARGIN: 0px; CLEAR: both } #special_offers .price { COLOR: #d40d16; FONT-SIZE: 14px; FONT-WEIGHT: bold } #special_offers .more_button { MARGIN: -14px 0px 0px; FLOAT: right } #my_south_african_story { MARGIN: 0px 0px 10px } #my_sa_story { PADDING-BOTTOM: 0px; PADDING-LEFT: 10px; PADDING-RIGHT: 6px; = BACKGROUND: #ccd4e1; COLOR: #031023; FONT-SIZE: 11px; PADDING-TOP: 7px } #my_sa_story .image { POSITION: relative; WIDTH: 90px; FLOAT: left } #my_sa_story .text { POSITION: relative; WIDTH: 166px; FLOAT: left; LETTER-SPACING: -0.5px; = MARGIN-LEFT: 20px } #my_sa_story .quote_marks { POSITION: absolute; FLOAT: left; TOP: 8px; LEFT: -11px } #my_sa_story P { MARGIN: 7px 0px 0px } #my_sa_story .name { FONT-STYLE: italic; COLOR: #5e6d84 } #blog { PADDING-BOTTOM: 0px; PADDING-LEFT: 10px; PADDING-RIGHT: 6px; = BACKGROUND: #3e7b25; COLOR: #031023; FONT-SIZE: 11px; PADDING-TOP: 10px } #blog .image { WIDTH: 90px; FLOAT: left } #blog .text { WIDTH: 185px; FLOAT: left; MARGIN-LEFT: 10px } #blog H1 { MARGIN-BOTTOM: 5px; COLOR: white; FONT-SIZE: 11px; FONT-WEIGHT: bold } #blog A { COLOR: white } #blog A:visited { COLOR: white } #blog P { MARGIN-BOTTOM: 0px; LETTER-SPACING: -0.5px; COLOR: #a4c298 } .name { FONT-STYLE: italic; COLOR: white } .blue_box_body { TEXT-ALIGN: right; PADDING-BOTTOM: 6px; PADDING-LEFT: 12px; = PADDING-RIGHT: 12px; BACKGROUND: #b2bed1; PADDING-TOP: 0px } .blue_box_body SELECT { BORDER-BOTTOM: #002967 1px solid; BORDER-LEFT: #002967 1px solid; = WIDTH: 272px; MARGIN-BOTTOM: 12px; COLOR: #090e14; BORDER-TOP: #002967 = 1px solid; BORDER-RIGHT: #002967 1px solid } .tab_blue { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/tab_blue_right.gif) = #ccd4e1 no-repeat 100% 0px; FLOAT: left; FONT-SIZE: 10px; MARGIN-RIGHT: = 4px } .tab_blue A { PADDING-BOTTOM: 3px; PADDING-LEFT: 8px; PADDING-RIGHT: 17px; DISPLAY: = block; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/tab_blue_left.gif) = no-repeat 0px 0px; COLOR: #036; TEXT-DECORATION: none; PADDING-TOP: 5px } .tab_blue A:visited { PADDING-BOTTOM: 3px; PADDING-LEFT: 8px; PADDING-RIGHT: 17px; DISPLAY: = block; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/tab_blue_left.gif) = no-repeat 0px 0px; COLOR: #036; TEXT-DECORATION: none; PADDING-TOP: 5px } .tab_blue A:hover { COLOR: #036; TEXT-DECORATION: none } .tab_grey { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/tab_grey_right.gif) = #e5e9f0 no-repeat 100% 0px; FLOAT: left; FONT-SIZE: 10px } .tab_grey A { PADDING-BOTTOM: 3px; PADDING-LEFT: 8px; PADDING-RIGHT: 17px; DISPLAY: = block; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/tab_grey_left.gif) = no-repeat 0px 0px; COLOR: #666; TEXT-DECORATION: none; PADDING-TOP: 5px } .tab_grey A:visited { PADDING-BOTTOM: 3px; PADDING-LEFT: 8px; PADDING-RIGHT: 17px; DISPLAY: = block; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/tab_grey_left.gif) = no-repeat 0px 0px; COLOR: #666; TEXT-DECORATION: none; PADDING-TOP: 5px } .tab_grey A:hover { COLOR: #666; TEXT-DECORATION: underline } #product_list_brief { MARGIN: 0px 0px 10px 8px } #product_list_brief UL { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 8px 0px 0px 2px; = PADDING-LEFT: 0px; WIDTH: 280px; PADDING-RIGHT: 0px; LIST-STYLE-IMAGE: = none; PADDING-TOP: 0px } #product_list_brief LI { PADDING-LEFT: 15px; MARGIN-BOTTOM: 0px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/li_arrow_blue.gif) = no-repeat 0px 4px; FONT-SIZE: 12px } #product_list_brief LI A { COLOR: #5e5e5e } #product_list LI A:visited { COLOR: #5e5e5e } #product_list_brief LI A:hover { TEXT-DECORATION: underline } #product_list .image { WIDTH: 150px; FLOAT: left; MARGIN-RIGHT: 10px } #product_list .text { WIDTH: 500px; FLOAT: left; COLOR: #666 } #product_list H2 { MARGIN-BOTTOM: 6px; COLOR: black; FONT-SIZE: 14px; FONT-WEIGHT: bold } #product_search_results { MARGIN: 18px 0px 16px } #product_column1 { WIDTH: 436px; FLOAT: left; MARGIN-RIGHT: 16px } #product_column1 TD.label { WIDTH: 107px } #product_column1 H3 { MARGIN-TOP: 10px } #product_column1 P { FONT-SIZE: 11px } #product_column2 { WIDTH: 213px; FLOAT: left } .product_image { MARGIN-BOTTOM: 8px } #product_flags { PADDING-BOTTOM: 1px; MARGIN: 15px 0px; PADDING-LEFT: 5px; = PADDING-RIGHT: 5px; BACKGROUND: #f0f0f0; PADDING-TOP: 5px } UL#red_arrow { MARGIN-LEFT: 0px } UL#red_arrow LI { POSITION: relative; LIST-STYLE-TYPE: none; PADDING-LEFT: 14px; = MARGIN-BOTTOM: 5px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/li_arrow_red.gif) = no-repeat 1px 5px; FONT-SIZE: 12px; LIST-STYLE-IMAGE: none } UL#red_arrow LI A { COLOR: black } UL#red_arrow LI A:visited { COLOR: black } UL#red_arrow LI A:hover { TEXT-DECORATION: underline } INPUT.button { BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; BORDER-TOP: = medium none; BORDER-RIGHT: medium none } .product_correction { PADDING-BOTTOM: 10px; PADDING-LEFT: 10px; PADDING-RIGHT: 10px; = BACKGROUND: #3e7b25; COLOR: white; PADDING-TOP: 10px } .product_correction A { COLOR: white; TEXT-DECORATION: underline } .product_correction A:hover { TEXT-DECORATION: none } .logo { WIDTH: 213px } .logo .sides { BORDER-LEFT: #ccc 1px solid; PADDING-BOTTOM: 3px; PADDING-LEFT: 6px; = PADDING-RIGHT: 6px; BORDER-RIGHT: #ccc 1px solid; PADDING-TOP: 3px } .product_image .sides { BORDER-LEFT: #ccc 1px solid; PADDING-BOTTOM: 3px; PADDING-LEFT: 6px; = PADDING-RIGHT: 6px; BORDER-RIGHT: #ccc 1px solid; PADDING-TOP: 3px } .product_image { WIDTH: 213px; FLOAT: left; MARGIN-RIGHT: 5px } .image_corners { Z-INDEX: 1; POSITION: absolute; TOP: 0px; LEFT: 0px } .pin_to_map { POSITION: absolute; TOP: 5px; RIGHT: 56px } .pin_to_map A { COLOR: #3e7b25 } .pin_to_map A:visited { COLOR: #3e7b25 } .pin_to_map_flag { WIDTH: 20px; FLOAT: left } .pin_to_map_popup_detail { POSITION: absolute; TOP: 5px; RIGHT: 0px } #article_list H1 { MARGIN: 0px 0px 4px; COLOR: black; FONT-SIZE: 12px; FONT-WEIGHT: bold } #article_list P { PADDING-BOTTOM: 5px; PADDING-LEFT: 0px; PADDING-RIGHT: 15px; = MARGIN-BOTTOM: 0px; COLOR: black; FONT-SIZE: 11px; PADDING-TOP: 5px } .article_list_image { POSITION: relative; WIDTH: 126px; FLOAT: left; MARGIN-RIGHT: 9px } .article_text { WIDTH: 204px; FLOAT: left } #featured_article_list { MARGIN-BOTTOM: 17px } #featured_article { PADDING-BOTTOM: 1px; PADDING-LEFT: 4px; PADDING-RIGHT: 10px; = BACKGROUND: #d8dfe9; PADDING-TOP: 0px } #featured_article H1 { MARGIN: 0px 0px 4px; COLOR: black; FONT-SIZE: 12px; FONT-WEIGHT: bold } #featured_article P { PADDING-BOTTOM: 5px; PADDING-LEFT: 0px; PADDING-RIGHT: 15px; = MARGIN-BOTTOM: 0px; COLOR: #051d41; FONT-SIZE: 11px; PADDING-TOP: 5px } .featured_article_text { WIDTH: 190px; FLOAT: left } #article_list_no_image { POSITION: relative; PADDING-RIGHT: 8px } #article_list_no_image H1 { MARGIN: 0px 0px 4px; COLOR: black; FONT-SIZE: 12px; FONT-WEIGHT: bold } #article_list_no_image P { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 10px; = MARGIN-BOTTOM: 0px; COLOR: black; FONT-SIZE: 11px; PADDING-TOP: 0px } #article_list_brief .thumbnail { MARGIN: 0px 10px 0px 0px; WIDTH: 150px; FLOAT: left; HEIGHT: 113px } #article_list_brief .text { WIDTH: 500px; FLOAT: left } #article_list_brief H2 { COLOR: black; FONT-SIZE: 14px; FONT-WEIGHT: bold } #article_list_brief H2 A { COLOR: black } #article_list_brief H2 A:visited { COLOR: black } #article_list_brief P { MARGIN: 5px 0px; COLOR: #656565 } #article_search_results { COLOR: #666 } #article_search_results H2 { MARGIN-BOTTOM: 5px; COLOR: black; FONT-SIZE: 12px; FONT-WEIGHT: bold } #article_search_results P { MARGIN-BOTTOM: 0px } #article_search_results .thumbnail { MARGIN: 0px 10px 0px 0px; WIDTH: 90px; FLOAT: left; HEIGHT: 75px } #article_search_results .text { WIDTH: 558px; FLOAT: left } .article_strap { MARGIN-TOP: 10px; COLOR: #d40d16; FONT-SIZE: 14px; FONT-WEIGHT: bold } .article_summary { PADDING-BOTTOM: 10px; FONT-STYLE: italic; PADDING-LEFT: 0px; = PADDING-RIGHT: 0px; COLOR: #5e5e5e; FONT-SIZE: 13px; PADDING-TOP: 0px } .article_image { WIDTH: 227px } #article_column1 { WIDTH: 213px; FLOAT: left; MARGIN-RIGHT: 17px } #article_column2 { WIDTH: 428px; FLOAT: left } #article_bottom { MARGIN-TOP: 10px; WIDTH: 669px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_vertical_divider.g= if) no-repeat 443px 100% } #article_column3 { WIDTH: 444px; FLOAT: left; MARGIN-RIGHT: 6px } #article_column4 { WIDTH: 214px; FLOAT: left } #article_did_you_know { MARGIN: 0px 0px 5px 10px; WIDTH: 176px; FLOAT: right } #article_did_you_know P { MARGIN: 0px } .did_you_know_body { BORDER-LEFT: #ffa700 2px solid; PADDING-BOTTOM: 9px; PADDING-LEFT: = 12px; WIDTH: 148px; PADDING-RIGHT: 12px; BACKGROUND: #ffe7ba; = BORDER-RIGHT: #ffa700 2px solid; PADDING-TOP: 9px } P.image_caption { MARGIN: 6px 0px 0px 8px; COLOR: #d40d16; FONT-SIZE: 11px } .copyright { FONT-STYLE: italic; MARGIN: 0px; COLOR: #7a7a7a; FONT-SIZE: 10px } .date { FONT-STYLE: italic; COLOR: #666; FONT-SIZE: 12px } .place { FONT-STYLE: italic; MARGIN: 0px 0px 5px; COLOR: #999; FONT-SIZE: 10px } .keyword { COLOR: #3e7b25 } .article_related_tips { PADDING-BOTTOM: 9px; PADDING-LEFT: 9px; PADDING-RIGHT: 10px; = BACKGROUND: #e5e9f0; PADDING-TOP: 9px } .article_related_tips P { PADDING-LEFT: 10px } #related_articles { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_vertical_divider.g= if) no-repeat 100% 100% } .related_articles { PADDING-BOTTOM: 20px; PADDING-LEFT: 0px; WIDTH: 213px; PADDING-RIGHT: = 9px; FLOAT: left; PADDING-TOP: 0px } .related_articles H1 { MIN-HEIGHT: 34px; WIDTH: 185px; MARGIN-BOTTOM: 5px; FLOAT: left; = HEIGHT: auto !important; COLOR: black; FONT-SIZE: 12px; FONT-WEIGHT: = bold } .related_articles H1 A { COLOR: black } .related_articles H1 A:visited { COLOR: black } .related_articles P { PADDING-BOTTOM: 0px; MIN-HEIGHT: 118px; PADDING-LEFT: 8px; = PADDING-RIGHT: 8px; HEIGHT: auto !important; COLOR: black; PADDING-TOP: = 8px } #comments { MARGIN-BOTTOM: 20px } #comments_close { MARGIN-TOP: 20px; COLOR: #c00; CURSOR: pointer } #comments_table { MARGIN-TOP: -10px } DIV.transOFF { BACKGROUND-COLOR: silver; WIDTH: 100% } DIV.transON { FILTER: alpha(opacity=3D50); BACKGROUND-COLOR: white; WIDTH: 100%; = opacity: .50; -moz-opacity: 0.5 } .pin { FLOAT: left; MARGIN-RIGHT: 4px } .celcius TD { PADDING-BOTTOM: 2px; WIDTH: 20px; COLOR: black; FONT-SIZE: 12px } .fahrenheit TD { PADDING-BOTTOM: 2px; COLOR: #999; FONT-SIZE: 12px } #popup_detail { MARGIN: 13px 0px } #popup_detail #pin_to_map { RIGHT: 7px } #popup_detail .header { BORDER-BOTTOM: #d6d6d6 1px solid; PADDING-BOTTOM: 0px; PADDING-LEFT: = 11px; PADDING-RIGHT: 11px; MARGIN-BOTTOM: 18px; PADDING-TOP: 0px } #popup_detail .header H2 { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; BACKGROUND: = none transparent scroll repeat 0% 0%; COLOR: black; FONT-SIZE: 20px; = FONT-WEIGHT: normal; PADDING-TOP: 0px } #popup_detail .content { PADDING-BOTTOM: 0px; PADDING-LEFT: 11px; PADDING-RIGHT: 11px; = PADDING-TOP: 0px } #popup_detail .content .image { WIDTH: 235px; FLOAT: left } #popup_detail H2 { PADDING-LEFT: 10px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/li_arrow_grey.gif) = no-repeat 2px 7px } #popup_detail TABLE { MARGIN: 0px 0px 10px 5px } #popup_detail TH { TEXT-ALIGN: left; FONT-STYLE: italic; PADDING-RIGHT: 16px; FONT-SIZE: = 12px; FONT-WEIGHT: normal } #popup_detail .contact A { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/red_dots_underline.gif)= repeat-x 0px 15px } #popup_detail .contact A:visited { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/red_dots_underline.gif)= repeat-x 0px 15px } #popup_detail #links_list { MARGIN: 5px 0px 0px 10px } .ccs_textfield_code { WIDTH: 50px } .select_date { FONT-SIZE: 10px } .select_date .label { WIDTH: 40px; FLOAT: left } .select_date .data { FLOAT: left } #popup_detail .select_date TABLE { MARGIN-BOTTOM: 5px } .receive_newsletters .label { FLOAT: left } .receive_newsletters .data { FLOAT: left; PADDING-TOP: 1px } #gps_degree .ccs_textfield { WIDTH: 25px } .subscribe_to_newsletter { MARGIN: 10px 0px 0px 20px } #featured_event P STRONG { FONT-SIZE: 14px } #featured_event .italic { FONT-STYLE: italic; FONT-SIZE: 14px } #news_lead_items { PADDING-BOTTOM: 0px; PADDING-LEFT: 4px; WIDTH: 659px; PADDING-RIGHT: = 4px; MARGIN-BOTTOM: 21px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/news_lead_items_bg.gif)= no-repeat; HEIGHT: 224px; PADDING-TOP: 3px } #news_lead_items .thumbnail { WIDTH: 303px; FLOAT: left; HEIGHT: 220px } #news_lead_items .text_inactive { POSITION: relative; PADDING-BOTTOM: 0px; PADDING-LEFT: 12px; WIDTH: = 340px; PADDING-RIGHT: 4px; FLOAT: left; PADDING-TOP: 9px } #news_lead_items .text_active { POSITION: relative; PADDING-BOTTOM: 0px; PADDING-LEFT: 12px; WIDTH: = 340px; PADDING-RIGHT: 4px; FLOAT: left; PADDING-TOP: 9px } #news_lead_items .text_active { BACKGROUND-COLOR: #bbc6d6 } #news_lead_items H2 { MARGIN-BOTTOM: 1px; COLOR: black; FONT-SIZE: 18px; FONT-WEIGHT: bold } #news_lead_items H2 A { COLOR: black } #news_lead_items H2 A:visited { COLOR: black } #news_lead_items .text_inactive H2 { COLOR: #666 } #news_lead_items .text_inactive H2 A { COLOR: #666 } #news_lead_items .text_inactive H2 A:visited { COLOR: #666 } #news_lead_items P { MARGIN: 0px; PADDING-RIGHT: 8px; COLOR: #333; FONT-SIZE: 13px } #news_lead_items .text_inactive P { COLOR: #666 } .icon_read_more { WIDTH: 18px; HEIGHT: 18px } .text_inactive .icon_read_more { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/icon_more_red_on_blue.g= if) no-repeat } .text_active .icon_read_more { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/icon_more_red_on_purple= .gif) no-repeat } #news_lead_item_2 { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_horizontal_grey.gi= f) repeat-x } #news_item_arrow_1 { POSITION: absolute; TOP: 10px; LEFT: -10px } #news_item_arrow_2 { POSITION: absolute; TOP: 10px; LEFT: -10px } #news_list { BORDER-BOTTOM: white 1px solid; BORDER-LEFT: white 1px solid; = BORDER-TOP: white 1px solid; BORDER-RIGHT: white 1px solid } #news_list .thumbnail { MARGIN: 0px 10px 0px 0px; WIDTH: 150px; FLOAT: left; HEIGHT: 113px } #news_list .text { WIDTH: 462px; MARGIN-BOTTOM: -10px; FLOAT: left } #news_list H2 { MARGIN-BOTTOM: 2px; COLOR: black; FONT-SIZE: 14px; FONT-WEIGHT: bold } #news_list H2 A { COLOR: black } #news_list H2 A:visited { COLOR: black } #news_list P { MARGIN: 4px 0px; COLOR: #666 } #news .date { FONT-STYLE: normal; MARGIN-BOTTOM: 8px; COLOR: #858585; FONT-SIZE: = 12px; FONT-WEIGHT: bold } .quote { POSITION: relative; MARGIN: 0px 10px 10px 20px; WIDTH: 160px; FLOAT: = right; COLOR: #002967; FONT-SIZE: 13px; FONT-WEIGHT: bold } .quote_marks { POSITION: absolute; FLOAT: left; TOP: -5px; LEFT: -7px } #news_search_results { BORDER-BOTTOM: white 1px solid; BORDER-LEFT: white 1px solid; MARGIN: = 10px 0px 15px; BORDER-TOP: white 1px solid; BORDER-RIGHT: white 1px = solid } #news_search_results .thumbnail { MARGIN: 0px 10px 0px 0px; WIDTH: 90px; FLOAT: left; HEIGHT: 75px } #news_search_results .text { WIDTH: 557px; FLOAT: left } #news_search_results H2 { MARGIN-BOTTOM: 5px; COLOR: black; FONT-SIZE: 12px; FONT-WEIGHT: bold } #news_search_results H2 A { COLOR: black } #news_search_results H2 A:visited { COLOR: black } #news_search_results P { MARGIN: 0px; COLOR: #666 } #video_list { MARGIN: 17px 0px 0px } #video_list H2 { MARGIN: 0px; COLOR: black; FONT-SIZE: 12px; FONT-WEIGHT: bold } #video_list .image { PADDING-BOTTOM: 0px; PADDING-LEFT: 1px; WIDTH: 121px; PADDING-RIGHT: = 0px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/video_thumb_bg.gif) = no-repeat; FLOAT: left; HEIGHT: 109px; PADDING-TOP: 1px } #video_list .text { WIDTH: 140px; FLOAT: left; MARGIN-LEFT: 10px } #video_list P { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 5px; = MARGIN-BOTTOM: 0px; COLOR: #3c4b45; FONT-SIZE: 12px; PADDING-TOP: 0px } #related_video { MARGIN: 0px } #related_video H2 { MARGIN: 0px; COLOR: black; FONT-SIZE: 12px; FONT-WEIGHT: bold } #related_video .image { PADDING-BOTTOM: 0px; PADDING-LEFT: 1px; WIDTH: 121px; PADDING-RIGHT: = 0px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/video_thumb_bg.gif) = no-repeat; HEIGHT: 109px; PADDING-TOP: 1px } #video_search_results { PADDING-BOTTOM: 8px; PADDING-LEFT: 8px; PADDING-RIGHT: 8px; BACKGROUND: = #ccc; COLOR: black; FONT-SIZE: 10px; PADDING-TOP: 8px } .video { WIDTH: 136px; FLOAT: left } #video_search_results .image { PADDING-BOTTOM: 0px; PADDING-LEFT: 1px; WIDTH: 121px; PADDING-RIGHT: = 0px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/video_thumb_bg.gif) = no-repeat; HEIGHT: 109px; PADDING-TOP: 1px } .video_separator { WIDTH: 12px; FLOAT: left } OL.top10 { LIST-STYLE-TYPE: none; PADDING-LEFT: 5px; MARGIN-BOTTOM: 5px; = LIST-STYLE-IMAGE: none } OL.top10 LI { PADDING-LEFT: 22px; MARGIN-BOTTOM: 5px } OL.top10 LI A { COLOR: #5e5e5e } OL.top10 LI A:visited { COLOR: #5e5e5e } OL.top10 LI A:hover { TEXT-DECORATION: underline } LI.one { BACKGROUND: url(/sat/applications/sat/templates/css/../images/li1.gif) = no-repeat 0px 2px } LI.two { BACKGROUND: url(/sat/applications/sat/templates/css/../images/li2.gif) = no-repeat } LI.three { BACKGROUND: url(/sat/applications/sat/templates/css/../images/li3.gif) = no-repeat } LI.four { BACKGROUND: url(/sat/applications/sat/templates/css/../images/li4.gif) = no-repeat } LI.five { BACKGROUND: url(/sat/applications/sat/templates/css/../images/li5.gif) = no-repeat } LI.six { BACKGROUND: url(/sat/applications/sat/templates/css/../images/li6.gif) = no-repeat } LI.seven { BACKGROUND: url(/sat/applications/sat/templates/css/../images/li7.gif) = no-repeat } LI.eight { BACKGROUND: url(/sat/applications/sat/templates/css/../images/li8.gif) = no-repeat } LI.nine { BACKGROUND: url(/sat/applications/sat/templates/css/../images/li9.gif) = no-repeat } LI.ten { BACKGROUND: url(/sat/applications/sat/templates/css/../images/li10.gif) = no-repeat } .top10_rollover { Z-INDEX: 1000; POSITION: absolute; WIDTH: 171px; TOP: 17px; LEFT: 80px } OL.top10 P { PADDING-BOTTOM: 10px; MARGIN: 0px; PADDING-LEFT: 10px; PADDING-RIGHT: = 10px; BACKGROUND: #ffa700; COLOR: #333; PADDING-TOP: 10px } #top10_search_results { MARGIN-BOTTOM: 15px; COLOR: #666 } #top10_search_results .thumbnail { MARGIN: 0px 10px 0px 0px; WIDTH: 90px; FLOAT: left; HEIGHT: 75px } #top10_search_results .text { WIDTH: 558px; FLOAT: left } #top10_search_results H2 { MARGIN-BOTTOM: 5px; COLOR: black; FONT-SIZE: 12px; FONT-WEIGHT: bold } #top10_search_results P { MARGIN-BOTTOM: 0px } #top10_search_results A { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/red_dots_underline.gif)= repeat-x 0px 15px } #top10_search_results A:visited { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/red_dots_underline.gif)= repeat-x 0px 15px } #top10_checklist_container { MARGIN-TOP: 15px; WIDTH: 669px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_vertical_divider.g= if) no-repeat 334px 100% } #top10_checklist_odd { WIDTH: 326px; PADDING-RIGHT: 17px; MARGIN-BOTTOM: 22px; FLOAT: left } #top10_checklist_even { WIDTH: 326px; MARGIN-BOTTOM: 22px; FLOAT: left } UL.top10 { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 13px 0px 0px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; LIST-STYLE-IMAGE: none; = PADDING-TOP: 0px } UL.top10 LI { POSITION: relative; PADDING-LEFT: 14px; MARGIN-BOTTOM: 5px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/li_arrow_yellow.gif) = no-repeat 1px 5px; COLOR: #5e5e5e; FONT-SIZE: 14px } UL.top10 LI A { COLOR: black } OL.top10 LI A:visited { COLOR: black } UL.top10 LI A:hover { TEXT-DECORATION: underline } .top10_image { WIDTH: 213px; FLOAT: right } .top10_image .more_button { DISPLAY: none } .top10_number { WIDTH: 43px; FLOAT: left } .top10_detail { WIDTH: 620px; FLOAT: left } .top10_detail P { MARGIN-BOTTOM: 0px; FONT-SIZE: 11px } #itinerary_list { BORDER-BOTTOM: white 1px solid; BORDER-LEFT: white 1px solid; = MARGIN-TOP: 10px; BORDER-TOP: white 1px solid; BORDER-RIGHT: white 1px = solid } #itinerary_list .thumbnail { MARGIN: 0px 10px 0px 0px; WIDTH: 150px; FLOAT: left; HEIGHT: 113px } #itinerary_list .text { WIDTH: 462px; MARGIN-BOTTOM: -10px; FLOAT: left } #itinerary_list H2 { MARGIN-BOTTOM: 2px; COLOR: black; FONT-SIZE: 14px; FONT-WEIGHT: bold } #itinerary_list H2 A { COLOR: black } #itinerary_list H2 A:visited { COLOR: black } #itinerary_list P { MARGIN: 4px 0px; COLOR: #666 } #itinerary_list .region { FONT-STYLE: italic; COLOR: #666; CLEAR: both; FONT-SIZE: 12px } #itinerary { MARGIN-TOP: 10px } #itinerary H2 { MARGIN-BOTTOM: 15px; CLEAR: both } #itinerary .related_image { MARGIN: 0px 15px 10px 0px; WIDTH: 150px; FLOAT: left } #itinerary .text { WIDTH: 500px; FLOAT: left } #itinerary_search_results { BORDER-BOTTOM: white 1px solid; BORDER-LEFT: white 1px solid; = MARGIN-TOP: 10px; BORDER-TOP: white 1px solid; BORDER-RIGHT: white 1px = solid } #itinerary_search_results .thumbnail { MARGIN: 0px 10px 0px 0px; WIDTH: 90px; FLOAT: left; HEIGHT: 75px } #itinerary_search_results .text { WIDTH: 557px; FLOAT: left } #itinerary_search_results H2 { MARGIN-BOTTOM: 5px; COLOR: black; FONT-SIZE: 12px; FONT-WEIGHT: bold } #itinerary_search_results H2 A { COLOR: black } #itinerary_search_results H2 A:visited { COLOR: black } #itinerary_search_results P { MARGIN: 0px; COLOR: #666 } #itinerary_search_results .region { FONT-STYLE: italic; COLOR: #666; FONT-SIZE: 12px } #gallery_small { WIDTH: 313px; MARGIN-BOTTOM: 12px; BACKGROUND: #c0c5c3 } .gallery_detail { BORDER-BOTTOM: #76817c 1px solid; PADDING-BOTTOM: 0px; PADDING-LEFT: = 5px; WIDTH: 308px; PADDING-RIGHT: 0px; HEIGHT: 259px; PADDING-TOP: 0px } .gallery_detail_large_image { BORDER-BOTTOM: white 1px solid; POSITION: relative; BORDER-LEFT: white = 1px solid; MARGIN: 0px 0px 5px; WIDTH: 303px; HEIGHT: 220px; BORDER-TOP: = white 1px solid; BORDER-RIGHT: white 1px solid } .gallery_detail_caption_area { PADDING-BOTTOM: 0px; PADDING-LEFT: 9px; PADDING-RIGHT: 0px; COLOR: = #000100; FONT-SIZE: 11px; PADDING-TOP: 0px } .gallery_detail_caption_area A { COLOR: white; TEXT-DECORATION: none } .gallery_detail_caption_area A:visited { COLOR: white; TEXT-DECORATION: none } .gallery_detail_caption_area A:hover { TEXT-DECORATION: underline } #gallery_small_scroll_left { FLOAT: left; CURSOR: pointer } #gallery_small_scroll_right { FLOAT: left; CURSOR: pointer } #gallery_thumbnails_container { WIDTH: 284px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/gallery_small_thumbnail= s_bg.jpg) repeat-x; FLOAT: left; HEIGHT: 94px; OVERFLOW: hidden } #gallery_small_thumbnails { WIDTH: auto; HEIGHT: 94px } .gallery_detail_thumbnail { PADDING-BOTTOM: 0px; PADDING-LEFT: 4px; WIDTH: 90px; PADDING-RIGHT: = 4px; HEIGHT: 75px; PADDING-TOP: 9px } #gallery_large { WIDTH: 969px; MARGIN-BOTTOM: 15px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/gallery_large_bg.gif) = repeat-y } #gallery_large_thumbnails_column { WIDTH: 312px; FLOAT: left } #thumbnails_group_scroll_left { FLOAT: left } #thumbnails_group_scroll_right { FLOAT: right } #gallery_large_thumbnails_container { WIDTH: 312px; CLEAR: both; OVERFLOW: hidden } #gallery_thumbnails_table { HEIGHT: 482px } #gallery_thumbnails_group { HEIGHT: 482px } .gallery_large_detail { PADDING-BOTTOM: 0px; PADDING-LEFT: 5px; WIDTH: 636px; PADDING-RIGHT: = 0px; FLOAT: left; MARGIN-RIGHT: 10px; PADDING-TOP: 0px } .gallery_large_detail_large_image { POSITION: relative; TEXT-ALIGN: center; MARGIN: 0px 0px 12px; WIDTH: = 636px; HEIGHT: 443px } .gallery_thumbnail { MARGIN: 6px 7px 0px 0px; WIDTH: 150px; FLOAT: left; HEIGHT: 113px } .thumbnail_selected { BORDER-BOTTOM: black 1px solid; BORDER-LEFT: black 1px solid; = BORDER-TOP: black 1px solid; CURSOR: crosshair; BORDER-RIGHT: black 1px = solid } .thumbnail_caption { Z-INDEX: 2000; POSITION: absolute; WIDTH: 171px; TOP: 100px; LEFT: = -10px } .thumbnail_caption_sides { PADDING-BOTTOM: 10px; PADDING-LEFT: 10px; WIDTH: 151px; PADDING-RIGHT: = 10px; BACKGROUND: #edf1ef; PADDING-TOP: 10px } .thumbnail_caption H1 { MARGIN: 0px; WIDTH: 140px; COLOR: #3c4b45; FONT-SIZE: 12px; = FONT-WEIGHT: bold } .thumbnail_caption P { WIDTH: 140px } #caption_articles_links { WIDTH: 636px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/caption_articles_links_= bg.gif) repeat-y; COLOR: #000100; FONT-SIZE: 11px } #gallery_caption { PADDING-BOTTOM: 6px; PADDING-LEFT: 10px; WIDTH: 230px; PADDING-RIGHT: = 22px; FLOAT: left; PADDING-TOP: 8px } #gallery_caption H1 { MARGIN: 0px; COLOR: black; FONT-SIZE: 14px; FONT-WEIGHT: bold } #gallery_caption P { MARGIN: 0px 0px 3px; COLOR: #202d28; FONT-SIZE: 12px } #gallery_articles { MARGIN: 9px 25px 8px 0px; WIDTH: 180px; FLOAT: left } #gallery_links { MARGIN: 9px 0px 0px; WIDTH: 158px; FLOAT: left } #gallery_links H2 { COLOR: #3c4b45; FONT-SIZE: 12px; FONT-WEIGHT: bold } #gallery_articles H2 { COLOR: #3c4b45; FONT-SIZE: 12px; FONT-WEIGHT: bold } #gallery_links A { COLOR: #202d28; TEXT-DECORATION: none } #gallery_links A:visited { COLOR: #202d28; TEXT-DECORATION: none } #gallery_articles A { COLOR: #202d28; TEXT-DECORATION: none } #gallery_articles A:visited { COLOR: #202d28; TEXT-DECORATION: none } #gallery_links A:hover { TEXT-DECORATION: underline } #gallery_articles A:hover { TEXT-DECORATION: underline } .gallery_large_detail_video { POSITION: relative; TEXT-ALIGN: center; MARGIN: 0px 0px 12px; WIDTH: = 636px; HEIGHT: 515px } .gallery_thumbnail { MARGIN: 6px 7px 0px 0px; WIDTH: 150px; FLOAT: left; HEIGHT: 113px } .thumbnail_selected { BORDER-BOTTOM: black 1px solid; BORDER-LEFT: black 1px solid; = BORDER-TOP: black 1px solid; CURSOR: crosshair; BORDER-RIGHT: black 1px = solid } .thumbnail_caption { Z-INDEX: 2000; POSITION: absolute; WIDTH: 171px; TOP: 100px; LEFT: = -10px } .thumbnail_caption_sides { PADDING-BOTTOM: 10px; PADDING-LEFT: 10px; WIDTH: 151px; PADDING-RIGHT: = 10px; BACKGROUND: #edf1ef; PADDING-TOP: 10px } .thumbnail_caption H1 { MARGIN: 0px; WIDTH: 140px; COLOR: #3c4b45; FONT-SIZE: 12px; = FONT-WEIGHT: bold } .thumbnail_caption P { WIDTH: 140px } #caption_articles_links { WIDTH: 636px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/caption_articles_links_= bg.gif) repeat-y; COLOR: #000100; FONT-SIZE: 11px } #gallery_caption { PADDING-BOTTOM: 6px; PADDING-LEFT: 10px; WIDTH: 230px; PADDING-RIGHT: = 22px; FLOAT: left; PADDING-TOP: 8px } #gallery_caption H1 { MARGIN: 0px; COLOR: black; FONT-SIZE: 14px; FONT-WEIGHT: bold } #gallery_caption P { MARGIN: 0px 0px 3px; COLOR: #202d28; FONT-SIZE: 12px } #gallery_articles { MARGIN: 9px 25px 8px 0px; WIDTH: 180px; FLOAT: left } #gallery_links { MARGIN: 9px 0px 0px; WIDTH: 158px; FLOAT: left } #gallery_links H2 { COLOR: #3c4b45; FONT-SIZE: 12px; FONT-WEIGHT: bold } #gallery_articles H2 { COLOR: #3c4b45; FONT-SIZE: 12px; FONT-WEIGHT: bold } #gallery_links A { COLOR: #202d28; TEXT-DECORATION: none } #gallery_links A:visited { COLOR: #202d28; TEXT-DECORATION: none } #gallery_articles A { COLOR: #202d28; TEXT-DECORATION: none } #gallery_articles A:visited { COLOR: #202d28; TEXT-DECORATION: none } #gallery_links A:hover { TEXT-DECORATION: underline } #gallery_articles A:hover { TEXT-DECORATION: underline } #image_search_results { MARGIN-BOTTOM: 15px } #image_search_results .thumbnail { POSITION: relative; MARGIN: 0px 8px 0px 0px; WIDTH: 150px; FLOAT: left; = HEIGHT: 113px } #image_search_results .text { WIDTH: 140px; FLOAT: left } #image_search_results H2 { MARGIN: 0px; COLOR: black; FONT-SIZE: 11px } #image_search_results P { LINE-HEIGHT: 1.1 } #links_list { LIST-STYLE-TYPE: none; MARGIN: 0px; LIST-STYLE-IMAGE: none } #links_list LI { PADDING-LEFT: 15px; MARGIN-BOTTOM: 3px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/li_arrow_grey.gif) = no-repeat 5px 5px } #links_list A { COLOR: #5e5e5e } #links_list A:visited { COLOR: #5e5e5e } #popular_topics { MARGIN: 0px 0px 10px; FONT-SIZE: 14px } #popular_topics .link { PADDING-BOTTOM: 0px; MARGIN: 0px 3px 4px 0px; PADDING-LEFT: 9px; WIDTH: = 156px; PADDING-RIGHT: 0px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popular_topics_bg.gif) = no-repeat; FLOAT: left; HEIGHT: 24px; PADDING-TOP: 4px } #popular_topics A { COLOR: #131313 } #popular_topics A:visited { COLOR: #131313 } #fact_sheet { MARGIN-TOP: 25px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_vertical_divider.g= if) no-repeat 738px 100% } #fact_sheet .label { WIDTH: 145px; FLOAT: left; FONT-WEIGHT: bold } #fact_sheet .data { WIDTH: 305px; FLOAT: left; FONT-WEIGHT: normal } #fact_sheet .divider { PADDING-BOTTOM: 5px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; CLEAR: = both; PADDING-TOP: 5px } #fact_sheet .detail { WIDTH: 738px; FLOAT: left; MARGIN-RIGHT: 20px } #fact_sheet .detail .label { WIDTH: 123px } #fact_sheet .detail .data { WIDTH: 578px } #fact_sheet .images { MARGIN-TOP: -30px; WIDTH: 213px; FLOAT: left } #related_facts { PADDING-BOTTOM: 10px; PADDING-LEFT: 10px; PADDING-RIGHT: 10px; = BACKGROUND: #e5eaf0; PADDING-TOP: 10px } #related_facts DIV { MARGIN-BOTTOM: 10px } #tourism_office { WIDTH: 320px; FLOAT: left; MARGIN-RIGHT: 16px } #tourism_office .sides { BORDER-LEFT: #003265 2px solid; PADDING-BOTTOM: 7px; PADDING-LEFT: = 12px; PADDING-RIGHT: 12px; BACKGROUND: #e5e9f0; BORDER-RIGHT: #003265 = 2px solid; PADDING-TOP: 9px } #tourism_office H2 { MARGIN: 6px 0px 4px; FONT-SIZE: 11px } #tourism_office P { MARGIN-BOTTOM: 0px } #tourism_office B { COLOR: #666 } #tourism_office A { COLOR: #000 } #tourism_office A:visited { COLOR: #000 } #call_centre_box { WIDTH: 330px; MARGIN-BOTTOM: 14px; FLOAT: left } #call_centre_box .sides { PADDING-BOTTOM: 7px; PADDING-LEFT: 12px; PADDING-RIGHT: 12px; = BACKGROUND: #d9e5d3; COLOR: #666; PADDING-TOP: 9px } #call_centre_box TABLE { MARGIN: 2px 0px 0px 23px } #call_centre_box TD { FONT-SIZE: 18px } #call_centre_box A { COLOR: #666 } #call_centre_box A:visited { COLOR: #666 } #change_your_region { WIDTH: 330px; FLOAT: left } #change_your_region .sides { PADDING-BOTTOM: 10px; PADDING-LEFT: 12px; PADDING-RIGHT: 12px; = BACKGROUND: #ffdc99; PADDING-TOP: 9px } #change_your_region SELECT { BORDER-BOTTOM: #c2c2c2 1px solid; BORDER-LEFT: #c2c2c2 1px solid; = MARGIN: 6px 0px 0px; WIDTH: 229px; BORDER-TOP: #c2c2c2 1px solid; = BORDER-RIGHT: #c2c2c2 1px solid } #fundi_search_results { COLOR: #666; CLEAR: both; PADDING-TOP: 20px } #fundi_search_results H2 { MARGIN-BOTTOM: 5px; COLOR: black; FONT-SIZE: 14px; FONT-WEIGHT: bold } #fundi_search_results P { MARGIN-BOTTOM: 5px } #fundi_search_results .italics { FONT-STYLE: italic; COLOR: #999; FONT-SIZE: 11px } #fundi_search_results .thumbnail { MARGIN: 0px 10px 0px 0px; WIDTH: 90px; FLOAT: left; HEIGHT: 75px } #fundi_search_results .text { WIDTH: 558px; FLOAT: left } #fundi_search_results TD { FONT-SIZE: 12px } #fundi_search_results .label { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; WIDTH: 72px; PADDING-RIGHT: = 0px; COLOR: #666; FONT-WEIGHT: bold; PADDING-TOP: 0px } #gallery_panel { MARGIN: 0px 5px 5px 0px; WIDTH: 158px; FLOAT: left } #gallery_panel .image { MARGIN-BOTTOM: 5px } #gallery_panel P { PADDING-BOTTOM: 5px; LINE-HEIGHT: 1.2; MARGIN: 0px; PADDING-LEFT: 5px; = PADDING-RIGHT: 0px; PADDING-TOP: 5px } #gallery_panel A { COLOR: #414141 } #gallery_panel A:visited { COLOR: #414141 } #gallery_panel A:hover { TEXT-DECORATION: none } .gallery_panel_bg { PADDING-BOTTOM: 0px; MIN-HEIGHT: 160px; PADDING-LEFT: 4px; = PADDING-RIGHT: 4px; HEIGHT: auto !important; PADDING-TOP: 0px } #category_list { MARGIN: 0px 0px 10px; FONT-SIZE: 12px } #category_list UL { LIST-STYLE-TYPE: none; MARGIN: 0px; LIST-STYLE-IMAGE: none } #category_list LI { PADDING-BOTTOM: 5px; MARGIN: 0px 3px 4px 0px; PADDING-LEFT: 9px; WIDTH: = 156px; PADDING-RIGHT: 0px; DISPLAY: block; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popular_topics_bg.gif) = no-repeat; FLOAT: left; PADDING-TOP: 4px } #category_list B { FONT-WEIGHT: normal } #category_list LI A { PADDING-LEFT: 11px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/li_arrow_red.gif) = no-repeat 0px 5px; COLOR: #131313 } #category_list LI A:visited { PADDING-LEFT: 11px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/li_arrow_red.gif) = no-repeat 0px 5px; COLOR: #131313 } #tips_categories { WIDTH: 970px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/tips_categories_bg.gif)= repeat-y } #tips_categories #category_list { LIST-STYLE-TYPE: none; MARGIN: 10px 0px 0px; FONT-SIZE: 12px; = LIST-STYLE-IMAGE: none } #tips_categories #category_list LI { PADDING-LEFT: 16px; WIDTH: 161px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/tips_categories_list_bg= .gif) no-repeat } #tips_categories #category_list A { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; DISPLAY: = block; BACKGROUND: none transparent scroll repeat 0% 0%; PADDING-TOP: = 0px } #tips_categories #category_list A:visited { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; DISPLAY: = block; BACKGROUND: none transparent scroll repeat 0% 0%; PADDING-TOP: = 0px } #tips_categories #category_list A:hover { COLOR: #c00; TEXT-DECORATION: none } #tips_categories #category_list UL UL { DISPLAY: none } #panel1 { PADDING-BOTTOM: 0px; PADDING-LEFT: 14px; WIDTH: 360px; PADDING-RIGHT: = 22px; FLOAT: left; PADDING-TOP: 0px } #panel2 { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; WIDTH: 171px; PADDING-RIGHT: = 22px; FLOAT: left; PADDING-TOP: 0px } #panel3 { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; WIDTH: 172px; PADDING-RIGHT: = 26px; FLOAT: left; PADDING-TOP: 0px } #panel4 { WIDTH: 166px; FLOAT: left } #tips_detail_container { MARGIN-TOP: 30px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_vertical_divider.g= if) no-repeat 395px 100% } #tips_detail { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_vertical_divider.g= if) no-repeat 764px 100% } #tips_column1 { MARGIN: 0px 34px 20px 0px; WIDTH: 380px; FLOAT: left } #tips_column2 { WIDTH: 330px; FLOAT: left; MARGIN-RIGHT: 36px } #tips_column3 { WIDTH: 194px; FLOAT: left } #faqs_list { MARGIN-TOP: 10px } .letter { MARGIN-TOP: 4px; WIDTH: 25px; FLOAT: left; HEIGHT: 30px } .question { FONT-WEIGHT: bold } .answer { CLEAR: both } #search_results #main_content { WIDTH: 979px; BACKGROUND: none transparent scroll repeat 0% 0% } #search_results_bg { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_vertical_divider.g= if) no-repeat 668px 100% } #search_results #main_column { WIDTH: 659px } #search_results #main_column2 { PADDING-LEFT: 19px } .heading_popular_topics { MARGIN: 13px 0px 15px } BODY#iframe { BACKGROUND-IMAGE: none; TEXT-ALIGN: left; LINE-HEIGHT: 1.4; = BACKGROUND-COLOR: white; COLOR: #424242; FONT-SIZE: 11px } TD.form_capture_label { PADDING-BOTTOM: 5px; PADDING-LEFT: 0px; WIDTH: 155px; PADDING-RIGHT: = 0px; PADDING-TOP: 5px } .ccs_textfield { PADDING-LEFT: 4px; WIDTH: 232px; COLOR: #666 } .ccs_textarea { PADDING-LEFT: 4px; WIDTH: 232px; COLOR: #666 } .cmt_textarea { PADDING-LEFT: 4px; WIDTH: 232px; COLOR: #666 } .cmt_textfield { PADDING-LEFT: 4px; WIDTH: 232px; COLOR: #666 } .ccs_textarea { MARGIN-TOP: 5px } .ccs_dropdown { WIDTH: 240px; COLOR: #666 } .form_capture_buttons INPUT { MARGIN-TOP: 10px; FONT-SIZE: 11px } .email_page { POSITION: absolute; TOP: 5px; RIGHT: 27px } #email_this_page { MARGIN: 20px } .email_page_textfield { WIDTH: 300px } .email_page_textarea { WIDTH: 300px } .button_submit { BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; MARGIN-TOP: 10px; = BORDER-TOP: medium none; BORDER-RIGHT: medium none } TD.label { PADDING-BOTTOM: 4px; PADDING-LEFT: 0px; PADDING-RIGHT: 4px; COLOR: = black; PADDING-TOP: 4px } TD.data { PADDING-BOTTOM: 4px; PADDING-LEFT: 0px; PADDING-RIGHT: 4px; COLOR: = #666; PADDING-TOP: 4px } #site_map { LINE-HEIGHT: 1.3 } #site_map UL { PADDING-BOTTOM: 0px; LIST-STYLE-TYPE: none; MARGIN: 0px 0px 20px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; LIST-STYLE-IMAGE: none; = PADDING-TOP: 0px } LI.site_map_parent1 { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/separator_and_dots_red.= gif) repeat-x; FONT-SIZE: 18px; PADDING-TOP: 6px } LI.site_map_child1 { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/separator_and_dots_red.= gif) repeat-x; FONT-SIZE: 18px; PADDING-TOP: 6px } LI.site_map_child1 A { PADDING-RIGHT: 22px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/icon_more_red_thin.gif)= no-repeat right 4px; COLOR: #d40d16; FONT-WEIGHT: normal } LI.site_map_child1 A:visited { PADDING-RIGHT: 22px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/icon_more_red_thin.gif)= no-repeat right 4px; COLOR: #d40d16; FONT-WEIGHT: normal } LI.site_map_parent1 A { PADDING-RIGHT: 22px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/icon_more_red_thin.gif)= no-repeat right 4px; COLOR: #d40d16; FONT-WEIGHT: normal } LI.site_map_parent1 A:visited { PADDING-RIGHT: 22px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/icon_more_red_thin.gif)= no-repeat right 4px; COLOR: #d40d16; FONT-WEIGHT: normal } LI.site_map_child2 { MARGIN-TOP: 15px; MARGIN-BOTTOM: 5px; FONT-SIZE: 12px; FONT-WEIGHT: = bold } LI.site_map_parent2 { MARGIN-TOP: 15px; MARGIN-BOTTOM: 5px; FONT-SIZE: 12px; FONT-WEIGHT: = bold } LI.site_map_child2 A { BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: black; = FONT-WEIGHT: bold } LI.site_map_child2 A:visited { BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: black; = FONT-WEIGHT: bold } LI.site_map_parent2 A { BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: black; = FONT-WEIGHT: bold } LI.site_map_parent2 A:visited { BACKGROUND: none transparent scroll repeat 0% 0%; COLOR: black; = FONT-WEIGHT: bold } LI.site_map_child3 { MARGIN-BOTTOM: 5px; FONT-SIZE: 12px; FONT-WEIGHT: normal } LI.site_map_parent3 { MARGIN-BOTTOM: 5px; FONT-SIZE: 12px; FONT-WEIGHT: normal } LI.site_map_child3 A { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; BACKGROUND: = none transparent scroll repeat 0% 0%; COLOR: black; FONT-WEIGHT: normal; = PADDING-TOP: 0px } LI.site_map_child3 A:visited { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; BACKGROUND: = none transparent scroll repeat 0% 0%; COLOR: black; FONT-WEIGHT: normal; = PADDING-TOP: 0px } LI.site_map_parent3 A { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; BACKGROUND: = none transparent scroll repeat 0% 0%; COLOR: black; FONT-WEIGHT: normal; = PADDING-TOP: 0px } LI.site_map_parent3 A:visited { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; BACKGROUND: = none transparent scroll repeat 0% 0%; COLOR: black; FONT-WEIGHT: normal; = PADDING-TOP: 0px } LI.site_map_child4 { PADDING-LEFT: 20px; MARGIN-BOTTOM: 5px; FONT-SIZE: 12px; FONT-WEIGHT: = normal } LI.site_map_child4 A { PADDING-BOTTOM: 0px; PADDING-LEFT: 15px; PADDING-RIGHT: 0px; COLOR: = black; FONT-WEIGHT: normal; PADDING-TOP: 0px } LI.site_map_child4 A:visited { PADDING-BOTTOM: 0px; PADDING-LEFT: 15px; PADDING-RIGHT: 0px; COLOR: = black; FONT-WEIGHT: normal; PADDING-TOP: 0px } .ccs_category_select LI { LIST-STYLE-TYPE: none; LIST-STYLE-IMAGE: none } #footer { PADDING-BOTTOM: 40px; PADDING-LEFT: 16px; WIDTH: 999px; PADDING-RIGHT: = 23px; BACKGROUND: #2a2d36; COLOR: #abaaaa; CLEAR: both; FONT-SIZE: 10px; = PADDING-TOP: 18px } #footer A { PADDING-BOTTOM: 0px; PADDING-LEFT: 8px; PADDING-RIGHT: 10px; = BACKGROUND: = url(/sat/applications/sat/templates/css/../images/footer_arrow.gif) = no-repeat 0px 3px; FLOAT: left; COLOR: white; TEXT-DECORATION: none; = PADDING-TOP: 0px } #footer A:visited { PADDING-BOTTOM: 0px; PADDING-LEFT: 8px; PADDING-RIGHT: 10px; = BACKGROUND: = url(/sat/applications/sat/templates/css/../images/footer_arrow.gif) = no-repeat 0px 3px; FLOAT: left; COLOR: white; TEXT-DECORATION: none; = PADDING-TOP: 0px } #footer A:hover { COLOR: #eb1e25 } ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/applications/sat/templates/css/sIFR-screen.css .sIFR-flash { VISIBILITY: visible !important } .sIFR-replaced { VISIBILITY: visible !important } SPAN.sIFR-alternate { POSITION: absolute; WIDTH: 0px; DISPLAY: block; HEIGHT: 0px; OVERFLOW: = hidden; TOP: 0px; LEFT: 0px } .sIFR-flash + DIV[adblocktab=3Dtrue] { DISPLAY: none !important } .sIFR-hasFlash H1.title { MARGIN: 0px 0px 7px; VISIBILITY: hidden; FONT-SIZE: 18px; FONT-WEIGHT: = normal } .sIFR-hasFlash H1.title_homepage { MARGIN: 0px 0px 7px -3px; VISIBILITY: hidden; COLOR: black; FONT-SIZE: = 22px; FONT-WEIGHT: normal } .sIFR-hasFlash H2.red { MARGIN: 6px 0px 12px -2px; VISIBILITY: hidden; FONT-SIZE: 15px } .sIFR-hasFlash H2.blue { MARGIN: 6px 0px 12px -2px; VISIBILITY: hidden; FONT-SIZE: 15px } .sIFR-hasFlash H2.green { MARGIN: 6px 0px 12px -2px; VISIBILITY: hidden; FONT-SIZE: 15px } .sIFR-hasFlash H3.top3 { MARGIN: 6px 0px 12px -2px; VISIBILITY: hidden; FONT-SIZE: 15px } ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/applications/sat/templates/css/sIFR-print.css .sIFR-flash { POSITION: absolute; WIDTH: 0px; DISPLAY: none !important; HEIGHT: 0px; = OVERFLOW: hidden } .sIFR-flash OBJECT { POSITION: absolute; WIDTH: 0px; DISPLAY: none !important; HEIGHT: 0px; = OVERFLOW: hidden } .sIFR-flash EMBED { POSITION: absolute; WIDTH: 0px; DISPLAY: none !important; HEIGHT: 0px; = OVERFLOW: hidden } SPAN.sIFR-alternate { POSITION: static !important; DISPLAY: block !important; VISIBILITY: = visible !important; TOP: auto !important; LEFT: auto !important } ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/applications/sat/templates/css/best-of-south-africa.css #outside_container { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/best_of_south_africa/ba= ckground.jpg) no-repeat 50% 0px } #header { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/best_of_south_africa/he= ader.jpg) no-repeat } #top_tabs { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/best_of_south_africa/to= p_tabs.jpg) no-repeat } ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/applications/sat/templates/css/print.css #header { DISPLAY: none } #top_tabs { DISPLAY: none } #icons_print_email { DISPLAY: none } #footer { DISPLAY: none } #main_column2 { DISPLAY: none } .article_list_more { DISPLAY: none } BODY { TEXT-ALIGN: left; BACKGROUND: none transparent scroll repeat 0% 0% } #outside_container { BACKGROUND: none transparent scroll repeat 0% 0% } #inside_container { POSITION: static; TEXT-ALIGN: left; WIDTH: 669px; BACKGROUND: white; = MARGIN-LEFT: 1px; OVERFLOW: visible; LEFT: 0px } #main_content { MIN-HEIGHT: 200px; WIDTH: 669px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_vertical.gif) = repeat-y 683px 0px; HEIGHT: auto !important } #main_column1 { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; WIDTH: 669px; PADDING-RIGHT: = 0px; FLOAT: none; PADDING-TOP: 0px } #main_column1a { BACKGROUND: none transparent scroll repeat 0% 0%; FLOAT: left; = MARGIN-RIGHT: 0px } #main_column1b { FLOAT: left } ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/shared/client_scripts/greybox/gb_styles.css #GB_overlay { Z-INDEX: 100; POSITION: absolute; BACKGROUND-COLOR: #000; MARGIN: auto; = TOP: 0px; LEFT: 0px } #GB_window { Z-INDEX: 150; POSITION: absolute; FONT-SIZE: 1px; OVERFLOW: visible; = TOP: 0px; LEFT: 0px } #GB_window .content { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; WIDTH: auto; = PADDING-RIGHT: 0px; PADDING-TOP: 0px } #GB_frame { BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; PADDING-BOTTOM: 0px; MARGIN: 0px; = PADDING-LEFT: 0px; PADDING-RIGHT: 0px; WHITE-SPACE: nowrap; OVERFLOW: = auto; BORDER-TOP: 0px; BORDER-RIGHT: 0px; PADDING-TOP: 0px } .GB_Gallery { MARGIN: 0px 22px } .GB_Gallery .content { BORDER-BOTTOM: #ddd 3px solid; BORDER-LEFT: #ddd 3px solid; = BACKGROUND-COLOR: #fff; BORDER-TOP: #ddd 3px solid; BORDER-RIGHT: #ddd = 3px solid } .GB_header { Z-INDEX: 500; BORDER-BOTTOM: #555 2px solid; POSITION: absolute; = MARGIN: 0px; BORDER-TOP: #555 2px solid; TOP: 10px; LEFT: 0px } .GB_header .inner { PADDING-BOTTOM: 2px; BACKGROUND-COLOR: #333; PADDING-LEFT: 20px; = PADDING-RIGHT: 20px; FONT-FAMILY: Arial, Verdana, sans-serif; = PADDING-TOP: 2px } .GB_header TABLE { MARGIN: 0px; WIDTH: 100%; BORDER-COLLAPSE: collapse } .GB_header .caption { TEXT-ALIGN: left; WHITE-SPACE: nowrap; COLOR: #eee; FONT-SIZE: 20px } .GB_header .close { TEXT-ALIGN: right } .GB_header .close IMG { Z-INDEX: 500; CURSOR: pointer } .GB_header .middle { TEXT-ALIGN: center; WHITE-SPACE: nowrap } #GB_middle { COLOR: #eee } #GB_middle IMG { VERTICAL-ALIGN: middle; CURSOR: pointer } #GB_middle .disabled { CURSOR: default } #GB_middle .left { PADDING-RIGHT: 10px } #GB_middle .right { PADDING-LEFT: 10px } .GB_Window .content { BORDER-BOTTOM: #ccc 3px solid; BORDER-LEFT: #ccc 3px solid; = BACKGROUND-COLOR: #fff; BORDER-TOP: medium none; BORDER-RIGHT: #ccc 3px = solid } .GB_Window .header { BORDER-BOTTOM: #aaa 1px solid; BORDER-LEFT: #ccc 3px solid; = PADDING-BOTTOM: 3px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; = HEIGHT: 22px; COLOR: #333; FONT-SIZE: 12px; BORDER-TOP: #999 1px solid; = BORDER-RIGHT: #ccc 3px solid; PADDING-TOP: 3px } .GB_Window .caption { TEXT-ALIGN: left; PADDING-RIGHT: 20px; WHITE-SPACE: nowrap; FONT-SIZE: = 12px; FONT-WEIGHT: bold } .GB_Window .close { TEXT-ALIGN: right } .GB_Window .close SPAN { FONT-SIZE: 12px; CURSOR: pointer } .GB_Window .close IMG { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 3px; CURSOR: = pointer; PADDING-TOP: 0px } .GB_Window .on { BORDER-BOTTOM: #333 1px solid } .GB_Window .click { BORDER-BOTTOM: red 1px solid } ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/shared/templates/css/linear_comments.css .colour0 { PADDING-BOTTOM: 10px; PADDING-LEFT: 10px; PADDING-RIGHT: 10px; = BACKGROUND: #e5e5e5; PADDING-TOP: 10px } .by_indent { PADDING-LEFT: 30px; FONT-SIZE: 90% } .report { PADDING-LEFT: 30px; FONT-SIZE: 80% } ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: text/css; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/applications/sat/templates/css/tripplanner.css * { PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: = 0px; FONT-FAMILY: Trebuchet MS, Tahoma, Arial, Helvetica, sans-serif; = PADDING-TOP: 0px } TABLE { FONT-SIZE: 11px } SELECT { BORDER-BOTTOM: #dcdada 1px solid; BORDER-LEFT: #dcdada 1px solid; = COLOR: #424242; FONT-SIZE: 11px; BORDER-TOP: #dcdada 1px solid; = BORDER-RIGHT: #dcdada 1px solid } TEXTAREA { BORDER-BOTTOM: #dcdada 1px solid; BORDER-LEFT: #dcdada 1px solid; = COLOR: #424242; FONT-SIZE: 11px; BORDER-TOP: #dcdada 1px solid; = BORDER-RIGHT: #dcdada 1px solid } INPUT { BORDER-BOTTOM: #dcdada 1px solid; BORDER-LEFT: #dcdada 1px solid; = COLOR: #424242; FONT-SIZE: 11px; BORDER-TOP: #dcdada 1px solid; = BORDER-RIGHT: #dcdada 1px solid } OPTION { PADDING-BOTTOM: 0px; PADDING-LEFT: 5px; PADDING-RIGHT: 5px; = PADDING-TOP: 0px } A { COLOR: #c00; TEXT-DECORATION: none } A:visited { COLOR: #c00; TEXT-DECORATION: none } A:hover { COLOR: #3e7b25; TEXT-DECORATION: underline } A.red_dots { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/red_dots_underline.gif)= repeat-x 0px 15px } A.red_dots:visited { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/red_dots_underline.gif)= repeat-x 0px 15px } A.a_trip { COLOR: #000; TEXT-DECORATION: underline } A.a_trip:hover { TEXT-DECORATION: none } .ccs_textfield { PADDING-LEFT: 4px; WIDTH: 232px; COLOR: #666 } .ccs_textarea { PADDING-LEFT: 4px; WIDTH: 232px; COLOR: #666 } .cmt_textarea { PADDING-LEFT: 4px; WIDTH: 232px; COLOR: #666 } .cmt_textfield { PADDING-LEFT: 4px; WIDTH: 232px; COLOR: #666 } .ccs_textarea { MARGIN-TOP: 5px } .ccs_dropdown { WIDTH: 240px; COLOR: #666 } .tripbody { BACKGROUND-COLOR: #fff; MARGIN: 10px; COLOR: #424242; FONT-SIZE: 11px } .article_strap { MARGIN-TOP: 10px; COLOR: #d40d16; FONT-SIZE: 14px; FONT-WEIGHT: bold } .tripbody H1 { MARGIN-BOTTOM: 5px } .instruction_copy { FONT-STYLE: italic; MARGIN: 0px; COLOR: #999; FONT-SIZE: 13px } .mandatory_key { TEXT-ALIGN: center; WIDTH: 92px; MARGIN-BOTTOM: 10px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _key.gif); HEIGHT: 18px; COLOR: #000; FONT-SIZE: 11px } .triptext_login { PADDING-BOTTOM: 0px; MARGIN: 2px; PADDING-LEFT: 4px; WIDTH: 200px; = PADDING-RIGHT: 0px; COLOR: #666; FONT-SIZE: 11px; PADDING-TOP: 3px } .tripplanner_table { BORDER-COLLAPSE: collapse } .tripplanner_table .mandatory_field_left { WIDTH: 2px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _left.gif) no-repeat 0px 0px; HEIGHT: 27px } .tripplanner_table .mandatory_field_text { PADDING-BOTTOM: 0px; PADDING-LEFT: 5px; WIDTH: 200px; PADDING-RIGHT: = 15px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _tile.gif) repeat-x 0px 0px; HEIGHT: 27px; FONT-SIZE: 11px; PADDING-TOP: = 0px } .tripplanner_table .mandatory_field_textfield { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _tile.gif) repeat-x; HEIGHT: 27px } .tripplanner_table .mandatory_field_textarea { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _tile_textarea.gif) repeat-x } .tripplanner_table .mandatory_field_textarea P { MARGIN-TOP: 5px; FONT-SIZE: 11px } TD.tripplanner_ccs_text { PADDING-BOTTOM: 0px; MARGIN: 2px; PADDING-LEFT: 5px; WIDTH: 150px; = PADDING-RIGHT: 15px; HEIGHT: 22px; FONT-SIZE: 11px; VERTICAL-ALIGN: top; = PADDING-TOP: 4px } .tripplanner_table .mandatory_field_right { WIDTH: 2px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _right.gif) no-repeat 100% 0px; HEIGHT: 27px } .tripplanner_table .mandatory_field_right_textarea { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _right_textarea.gif) no-repeat 100% 0px } .spacer_cell_left { WIDTH: 2px; HEIGHT: 22px } .spacer_cell_right { WIDTH: 2px; HEIGHT: 22px } TD.popup_ccs_text { PADDING-BOTTOM: 0px; MARGIN: 2px; PADDING-LEFT: 0px; WIDTH: 200px; = PADDING-RIGHT: 15px; HEIGHT: 22px; FONT-SIZE: 11px; PADDING-TOP: 4px } TD.popup_ccs_textfields { PADDING-BOTTOM: 0px; MARGIN: 2px; PADDING-LEFT: 3px; WIDTH: 460px; = PADDING-RIGHT: 15px; PADDING-TOP: 4px } .register_field INPUT { BORDER-BOTTOM: darkgray thin solid; BORDER-LEFT: darkgray thin solid; = PADDING-BOTTOM: 0px; MARGIN-TOP: 6px; PADDING-LEFT: 2px; WIDTH: 160px; = PADDING-RIGHT: 0px; DISPLAY: inline; FLOAT: left; HEIGHT: 12px; COLOR: = black; FONT-SIZE: 10px; VERTICAL-ALIGN: top; BORDER-TOP: darkgray thin = solid; BORDER-RIGHT: darkgray thin solid; PADDING-TOP: 2px } .register_field TEXTAREA { BORDER-BOTTOM: darkgray thin solid; BORDER-LEFT: darkgray thin solid; = PADDING-BOTTOM: 0px; MARGIN-TOP: 6px; PADDING-LEFT: 2px; WIDTH: 160px; = PADDING-RIGHT: 0px; DISPLAY: inline; FLOAT: left; HEIGHT: 100px; COLOR: = black; FONT-SIZE: 10px; VERTICAL-ALIGN: top; BORDER-TOP: darkgray thin = solid; BORDER-RIGHT: darkgray thin solid; PADDING-TOP: 2px } .triptextenterarea { BORDER-BOTTOM: medium none; BORDER-LEFT: medium none; PADDING-BOTTOM: = 0px; OVERFLOW-Y: hidden; MARGIN-TOP: 6px; PADDING-LEFT: 7px; WIDTH: = 200px; PADDING-RIGHT: 0px; DISPLAY: inline; FLOAT: left; HEIGHT: 162px; = COLOR: black; FONT-SIZE: 10px; BORDER-TOP: medium none; BORDER-RIGHT: = medium none; PADDING-TOP: 5px } #popup_detail H1 { MARGIN-BOTTOM: 5px } #popup_detail .instruction_copy { FONT-STYLE: italic; MARGIN: 0px 0px 18px; COLOR: #999; FONT-SIZE: 13px } #popup_detail .header { BORDER-BOTTOM: #d6d6d6 1px solid; PADDING-BOTTOM: 0px; PADDING-LEFT: = 11px; PADDING-RIGHT: 11px; MARGIN-BOTTOM: 18px; PADDING-TOP: 0px } #popup_detail .header H2 { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; PADDING-RIGHT: 0px; BACKGROUND: = none transparent scroll repeat 0% 0%; COLOR: black; FONT-SIZE: 20px; = FONT-WEIGHT: normal; PADDING-TOP: 0px } #popup_detail .content { PADDING-BOTTOM: 0px; PADDING-LEFT: 11px; PADDING-RIGHT: 0px; = PADDING-TOP: 0px } #popup_detail .ccs_dropdown { COLOR: #424242 } #popup_detail .border { BORDER-BOTTOM: #b3bed2 1px solid; BORDER-LEFT: #b3bed2 1px solid; = WIDTH: 100%; BORDER-TOP: #b3bed2 1px solid; BORDER-RIGHT: #b3bed2 1px = solid } #popup_detail .privacy_policy { COLOR: #999; FONT-SIZE: 10px } #popup_detail TABLE { MARGIN: 0px 0px 10px } .popup_table { BORDER-COLLAPSE: collapse; MARGIN-BOTTOM: 20px } .popup_table .ccs_textfield { PADDING-BOTTOM: 0px; MARGIN: 2px; PADDING-LEFT: 3px; PADDING-RIGHT: = 0px; PADDING-TOP: 3px } .popup_table SELECT { PADDING-BOTTOM: 0px; MARGIN: 1px 2px 3px 0px; PADDING-LEFT: 1px; WIDTH: = 200px; PADDING-RIGHT: 0px; PADDING-TOP: 0px } .popup_table .message_box_text { MARGIN: 3px 3px 0px 0px; FLOAT: left } .popup_table .message_box { FLOAT: left } .popup_table .message_box .ccs_textarea { PADDING-LEFT: 4px; WIDTH: 400px; HEIGHT: 55px; COLOR: #666 } .mandatory_field_left { WIDTH: 12px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _left.gif) no-repeat 0px 0px; HEIGHT: 27px } .mandatory_field_left_textarea { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _left_textarea.gif) no-repeat 0px 0px; HEIGHT: 112px } .mandatory_field { WIDTH: 200px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _tile.gif) repeat-x; HEIGHT: 27px } .mandatory_field_text { PADDING-BOTTOM: 0px; PADDING-LEFT: 0px; WIDTH: 200px; PADDING-RIGHT: = 15px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _tile.gif) repeat-x; HEIGHT: 27px; PADDING-TOP: 0px } .mandatory_field_textfield { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _tile.gif) repeat-x; HEIGHT: 27px } .mandatory_field_textarea { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _tile_textarea.gif) repeat-x } .mandatory_field_textarea P { MARGIN-TOP: 5px; FONT-SIZE: 11px } .mandatory_field_textarea P.ccs_textarea { MARGIN-TOP: 0px } .mandatory_field_right { WIDTH: 2px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _right.gif) no-repeat 100% 0px; HEIGHT: 27px } .mandatory_field_right_textarea { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _right_textarea.gif) no-repeat 100% 0px } .ccs_textfield_code { WIDTH: 50px } .select_date { FONT-SIZE: 10px } .select_date .label { WIDTH: 40px; FLOAT: left } .select_date .data { FLOAT: left } #popup_detail .select_date TABLE { MARGIN-BOTTOM: 5px } .getaquote_table .text { WIDTH: 380px } .dots_horizontal_grey { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/dots_horizontal.gif) = #666 repeat-x; HEIGHT: 1px } TD.uf_td_label { PADDING-BOTTOM: 0px; PADDING-LEFT: 5px; WIDTH: 200px; PADDING-RIGHT: = 15px; BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _tile.gif) repeat-x; HEIGHT: 27px; PADDING-TOP: 0px } TD.uf_td_field { BACKGROUND: = url(/sat/applications/sat/templates/css/../images/popup_imagery/mandatory= _tile.gif) repeat-x; HEIGHT: 27px } .uf_textfield { PADDING-BOTTOM: 0px; MARGIN: 2px; PADDING-LEFT: 3px; WIDTH: 232px; = PADDING-RIGHT: 0px; COLOR: #666; PADDING-TOP: 3px } ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/shared/client_scripts/jstween/Tween.js =0A= function Delegate(){}=0A= Delegate.create=3Dfunction(o,f){var a=3Dnew Array();var = l=3Darguments.length;for(var i=3D2;ithis.getD= uration()){if(this.looping){this.rewind(t-this._duration);this.update();t= his.broadcastMessage('onMotionLooped',{target:this,type:'onMotionLooped'}= );}else{this._time=3Dthis._duration;this.update();this.stop();this.broadc= astMessage('onMotionFinished',{target:this,type:'onMotionFinished'});}}el= se = if(t<0){this.rewind();this.update();}else{this._time=3Dt;this.update();}}=0A= t.getTime=3Dfunction(){return this._time;}=0A= t.setDuration=3Dfunction(d){this._duration=3D(d=3D=3Dnull||d<=3D0)?100000= :d;}=0A= t.getDuration=3Dfunction(){return this._duration;}=0A= t.setPosition=3Dfunction(p){this.prevPos=3Dthis._pos;var = a=3Dthis.suffixe!=3D''?this.suffixe:'';this.obj[this.prop]=3DMath.round(p= )+a;this._pos=3Dp;this.broadcastMessage('onMotionChanged',{target:this,ty= pe:'onMotionChanged'});}=0A= t.getPosition=3Dfunction(t){if(t=3D=3Dundefined)t=3Dthis._time;return = this.func(t,this.begin,this.change,this._duration);};t.setFinish=3Dfuncti= on(f){this.change=3Df-this.begin;};t.geFinish=3Dfunction(){return = this.begin+this.change;};t.init=3Dfunction(obj,prop,func,begin,finish,dur= ation,suffixe){if(!arguments.length)return;this._listeners=3Dnew = Array();this.addListener(this);if(suffixe)this.suffixe=3Dsuffixe;this.obj= =3Dobj;this.prop=3Dprop;this.begin=3Dbegin;this._pos=3Dbegin;this.setDura= tion(duration);if(func!=3Dnull&&func!=3D''){this.func=3Dfunc;}=0A= this.setFinish(finish);}=0A= t.start=3Dfunction(){this.rewind();this.startEnterFrame();this.broadcastM= essage('onMotionStarted',{target:this,type:'onMotionStarted'});}=0A= t.rewind=3Dfunction(t){this.stop();this._time=3D(t=3D=3Dundefined)?0:t;th= is.fixTime();this.update();}=0A= t.fforward=3Dfunction(){this._time=3Dthis._duration;this.fixTime();this.u= pdate();}=0A= t.update=3Dfunction(){this.setPosition(this.getPosition(this._time));}=0A= t.startEnterFrame=3Dfunction(){this.stopEnterFrame();this.isPlaying=3Dtru= e;this.onEnterFrame();}=0A= t.onEnterFrame=3Dfunction(){if(this.isPlaying){this.nextFrame();setTimeou= t(Delegate.create(this,this.onEnterFrame),0);}}=0A= t.nextFrame=3Dfunction(){this.setTime((this.getTimer()-this._startTime)/1= 000);}=0A= t.stop=3Dfunction(){this.stopEnterFrame();this.broadcastMessage('onMotion= Stopped',{target:this,type:'onMotionStopped'});}=0A= t.stopEnterFrame=3Dfunction(){this.isPlaying=3Dfalse;}=0A= t.continueTo=3Dfunction(finish,duration){this.begin=3Dthis._pos;this.setF= inish(finish);if(this._duration!=3Dundefined)=0A= this.setDuration(duration);this.start();}=0A= t.resume=3Dfunction(){this.fixTime();this.startEnterFrame();this.broadcas= tMessage('onMotionResumed',{target:this,type:'onMotionResumed'});}=0A= t.yoyo=3Dfunction(){this.continueTo(this.begin,this._time);}=0A= t.addListener=3Dfunction(o){this.removeListener(o);return = this._listeners.push(o);}=0A= t.removeListener=3Dfunction(o){var a=3Dthis._listeners;var = i=3Da.length;while(i--){if(a[i]=3D=3Do){a.splice(i,1);return true;}}=0A= return false;}=0A= t.broadcastMessage=3Dfunction(){var arr=3Dnew Array();for(var = i=3D0;i2)?argv[2]:null;var path=3D(argc>3)?argv[3]:null;var = domain=3D(argc>4)?argv[4]:null;var = secure=3D(argc>5)?argv[5]:false;document.cookie=3Dname+"=3D"+escape(value= )+=0A= ((expires=3D=3Dnull)?"":("; expires=3D"+expires.toGMTString()))+=0A= ((path=3D=3Dnull)?"":("; path=3D"+path))+=0A= ((domain=3D=3Dnull)?"":("; domain=3D"+domain))+=0A= ((secure=3D=3Dtrue)?"; secure":"");}=0A= function deleteCookie(name){var exp=3Dnew = Date();exp.setTime(exp.getTime()-1);var = argv=3DdeleteCookie.arguments;var = argc=3DdeleteCookie.arguments.length;var = path=3D(argc>1)?argv[1]:null;var domain=3D(argc>2)?argv[2]:null;var = secure=3D(argc>3)?argv[3]:false;var = cval=3DgetCookie(name);document.cookie=3Dname+"=3D"+cval+";expires=3D"+ex= p.toGMTString()+=0A= ((path=3D=3Dnull)?"":("; path=3D"+path))+=0A= ((domain=3D=3Dnull)?"":("; domain=3D"+domain))+=0A= ((secure=3D=3Dtrue)?"; secure":"");} ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/shared/client_scripts/jstween/Parallel.js =0A= function Delegate(){}=0A= Delegate.create=3Dfunction(o,f){var a=3Dnew Array();var = l=3Darguments.length;for(var i=3D2;i -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= =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.isUndefined(object)) return 'undefined';=0A= if (object =3D=3D=3D null) return 'null';=0A= return object.inspect ? object.inspect() : String(object);=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 (!Object.isUndefined(value))=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 !=3D null && typeof object =3D=3D "object" &&=0A= 'splice' in object && 'join' in object;=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 && Object.isUndefined(arguments[0])) 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 Object.isUndefined(count) ? 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 Object.isUndefined(truncation) ? '...' : 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;=0A= if (str.blank()) return false;=0A= 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 /^([^.[]+|\[((?:.*?[^\\])?)\])(\.|\[|$)/;=0A= 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= });=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 Object.isUndefined(fillWith) ? 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 null || 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 null || 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 || 0, results =3D new Array(length);=0A= while (length--) results[length] =3D iterable[length];=0A= return results;=0A= }=0A= =0A= if (Prototype.Browser.WebKit) {=0A= $A =3D function(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 || 0, 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 (!Object.isUndefined(value)) 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= =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: function(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= 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= =0A= if (Object.isString(this.options.parameters))=0A= this.options.parameters =3D = this.options.parameters.toQueryParams();=0A= else if (Object.isHash(this.options.parameters))=0A= this.options.parameters =3D this.options.parameters.toObject();=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 && this.isSameOrigin() && 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= isSameOrigin: function() {=0A= var m =3D this.url.match(/^\s*https?:\/\/[^\/]*/);=0A= return !m || (m[0] =3D=3D = '#{protocol}//#{domain}#{port}'.interpolate({=0A= protocol: location.protocol,=0A= domain: document.domain,=0A= port: location.port ? ':' + location.port : ''=0A= }));=0A= },=0A= =0A= getHeader: function(name) {=0A= try {=0A= return this.transport.getResponseHeader(name) || null;=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 Object.isUndefined(xml) ? 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= !this.request.isSameOrigin());=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= this.responseText.blank())=0A= return null;=0A= try {=0A= return this.responseText.evalJSON(options.sanitizeJSON ||=0A= !this.request.isSameOrigin());=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 Object.clone(options);=0A= var onComplete =3D options.onComplete;=0A= options.onComplete =3D (function(response, json) {=0A= this.updateContent(response.responseText);=0A= if (Object.isFunction(onComplete)) onComplete(response, json);=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= });=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, insert, tagName, childNodes;=0A= =0A= for (var position in insertions) {=0A= content =3D insertions[position];=0A= position =3D position.toLowerCase();=0A= insert =3D Element._insertionTranslations[position];=0A= =0A= if (content && content.toElement) content =3D content.toElement();=0A= if (Object.isElement(content)) {=0A= insert(element, content);=0A= continue;=0A= }=0A= =0A= content =3D Object.toHTML(content);=0A= =0A= tagName =3D ((position =3D=3D 'before' || position =3D=3D 'after')=0A= ? element.parentNode : element).tagName.toUpperCase();=0A= =0A= childNodes =3D Element._getContentFromAnonymousElement(tagName, = content.stripScripts());=0A= =0A= if (position =3D=3D 'top' || position =3D=3D 'after') = childNodes.reverse();=0A= childNodes.each(insert.curry(element));=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 $(element).select("*");=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 Object.isNumber(expression) ? ancestors[expression] :=0A= Selector.findElement(ancestors, expression, index);=0A= },=0A= =0A= down: function(element, expression, index) {=0A= element =3D $(element);=0A= if (arguments.length =3D=3D 1) return element.firstDescendant();=0A= return Object.isNumber(expression) ? = element.descendants()[expression] :=0A= element.select(expression)[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 Object.isNumber(expression) ? previousSiblings[expression] :=0A= Selector.findElement(previousSiblings, expression, index);=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 Object.isNumber(expression) ? nextSiblings[expression] :=0A= Selector.findElement(nextSiblings, expression, index);=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 Object.isUndefined(value) ? true : value;=0A= =0A= for (var attr in attributes) {=0A= name =3D t.names[attr] || attr;=0A= 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= var originalAncestor =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 && nextAncestor.sourceIndex)=0A= return (e > a && e < nextAncestor.sourceIndex);=0A= }=0A= =0A= while (element =3D element.parentNode)=0A= if (element =3D=3D originalAncestor) 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= (Object.isUndefined(elementStyle.styleFloat) ? '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 'static') 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= if (Prototype.Browser.Opera) {=0A= Element.Methods.getStyle =3D Element.Methods.getStyle.wrap(=0A= function(proceed, element, style) {=0A= switch (style) {=0A= case 'left': case 'top': case 'right': case 'bottom':=0A= if (proceed(element, 'position') =3D=3D=3D 'static') return = null;=0A= case 'height': case 'width':=0A= // returns '0px' for hidden elements; we want it to return null=0A= if (!Element.visible(element)) return null;=0A= =0A= // returns the border-box dimensions rather than the = content-box=0A= // dimensions, so we subtract padding and borders from the = value=0A= var dim =3D parseInt(proceed(element, style), 10);=0A= =0A= if (dim !=3D=3D element['offset' + style.capitalize()])=0A= return dim + 'px';=0A= =0A= var properties;=0A= if (style =3D=3D=3D 'height') {=0A= properties =3D ['border-top-width', 'padding-top',=0A= 'padding-bottom', 'border-bottom-width'];=0A= }=0A= else {=0A= properties =3D ['border-left-width', 'padding-left',=0A= 'padding-right', 'border-right-width'];=0A= }=0A= return properties.inject(dim, function(memo, property) {=0A= var val =3D proceed(element, property);=0A= return val =3D=3D=3D null ? memo : memo - parseInt(val, 10);=0A= }) + 'px';=0A= default: return proceed(element, style);=0A= }=0A= }=0A= );=0A= =0A= Element.Methods.readAttribute =3D Element.Methods.readAttribute.wrap(=0A= function(proceed, element, attribute) {=0A= if (attribute =3D=3D=3D 'title') return element.title;=0A= return proceed(element, attribute);=0A= }=0A= );=0A= }=0A= =0A= else if (Prototype.Browser.IE) {=0A= // IE doesn't report offsets correctly for static elements, so we = change them=0A= // to "relative" to get the values, then change them back.=0A= Element.Methods.getOffsetParent =3D = Element.Methods.getOffsetParent.wrap(=0A= function(proceed, element) {=0A= element =3D $(element);=0A= var position =3D element.getStyle('position');=0A= if (position !=3D=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= $w('positionedOffset 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=3D 'static') return proceed(element);=0A= // Trigger hasLayout on the offset parent so that IE6 reports=0A= // accurate offsetTop and offsetLeft values for position: fixed.=0A= var offsetParent =3D element.getOffsetParent();=0A= if (offsetParent && offsetParent.getStyle('position') =3D=3D=3D = 'fixed')=0A= offsetParent.setStyle({ zoom: 1 });=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= 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.extend({=0A= cellpadding: 'cellPadding',=0A= cellspacing: 'cellSpacing'=0A= }, 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 = Element#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 ('outerHTML' in document.createElement('div')) {=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= if (t) {=0A= div.innerHTML =3D t[0] + html + t[1];=0A= t[2].times(function() { div =3D div.firstChild });=0A= } else div.innerHTML =3D html;=0A= return $A(div.childNodes);=0A= };=0A= =0A= Element._insertionTranslations =3D {=0A= before: function(element, node) {=0A= element.parentNode.insertBefore(node, element);=0A= },=0A= top: function(element, node) {=0A= element.insertBefore(node, element.firstChild);=0A= },=0A= bottom: function(element, node) {=0A= element.appendChild(node);=0A= },=0A= after: function(element, node) {=0A= element.parentNode.insertBefore(node, element.nextSibling);=0A= },=0A= tags: {=0A= TABLE: ['', '
', 1],=0A= TBODY: ['', '
', 2],=0A= TR: ['', '
', 3],=0A= TD: ['
', '
', 4],=0A= SELECT: ['', 1]=0A= }=0A= };=0A= =0A= (function() {=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= var B =3D Prototype.Browser;=0A= $w('width height').each(function(d) {=0A= var D =3D d.capitalize();=0A= dimensions[d] =3D (B.WebKit && !document.evaluate) ? self['inner' = + D] :=0A= (B.Opera) ? document.body['client' + D] : = document.documentElement['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= shouldUseXPath: function() {=0A= if (!Prototype.BrowserFeatures.XPath) return false;=0A= =0A= var e =3D this.expression;=0A= =0A= // Safari 3 chokes on :*-of-type and :empty=0A= if (Prototype.Browser.WebKit &&=0A= (e.include("-of-type") || e.include(":empty")))=0A= return false;=0A= =0A= // XPath can't do namespaced attributes, nor can it read=0A= // the "checked" property from DOM nodes=0A= if ((/(\[[\w-]*?:|:checked)/).test(this.expression))=0A= return false;=0A= =0A= return true;=0A= },=0A= =0A= compileMatcher: function() {=0A= if (this.shouldUseXPath())=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: function(m) {=0A= m[1] =3D m[1].toLowerCase();=0A= return new Template("[@#{1}]").evaluate(m);=0A= },=0A= attr: function(m) {=0A= m[1] =3D m[1].toLowerCase();=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, 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); 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); 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:=0A= /^:((first|last|nth|nth-last|only)(-child|-of-type)|empty|checked|(en|dis= )abled|not)(\((.*?)\))?(\b|$|(?=3D\s|[:+~>]))/,=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 nodeValue && Selector.operators[matches[2]](nodeValue, = matches[5] || matches[6]);=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= var _true =3D Prototype.emptyFunction;=0A= for (var i =3D 0, node; node =3D nodes[i]; i++)=0A= node._countedByPrototype =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._countedByPrototype =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._countedByPrototype =3D Prototype.emptyFunction;=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._countedByPrototype)) 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._countedByPrototype)) 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])._countedByPrototype) {=0A= n._countedByPrototype =3D Prototype.emptyFunction;=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, 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= var uTagName =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=3D uTagName) = 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, combinator) {=0A= if (!nodes) nodes =3D root.getElementsByTagName("*");=0A= if (nodes && combinator) nodes =3D this[combinator](nodes);=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, combinator) {=0A= if (!nodes) nodes =3D root.getElementsByTagName("*");=0A= if (nodes && combinator) nodes =3D this[combinator](nodes);=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._countedByPrototype) {=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._countedByPrototype) 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= split: function(expression) {=0A= var expressions =3D [];=0A= expression.scan(/(([\w#:.~>+()\s-]+|\*|\[.*?\])+)\s*(,|$)/, = function(m) {=0A= expressions.push(m[1].strip());=0A= });=0A= return expressions;=0A= },=0A= =0A= matchElements: function(elements, expression) {=0A= var matches =3D $$(expression), 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._countedByPrototype) 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= expressions =3D Selector.split(expressions.join(','));=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= if (Prototype.Browser.IE) {=0A= Object.extend(Selector.handlers, {=0A= // IE returns comment nodes on getElementsByTagName("*").=0A= // Filter them out.=0A= concat: function(a, b) {=0A= for (var i =3D 0, node; node =3D b[i]; i++)=0A= if (node.tagName !=3D=3D "!") a.push(node);=0A= return a;=0A= },=0A= =0A= // IE improperly serializes _countedByPrototype in (inner|outer)HTML.=0A= unmark: function(nodes) {=0A= for (var i =3D 0, node; node =3D nodes[i]; i++)=0A= node.removeAttribute('_countedByPrototype');=0A= return nodes;=0A= }=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 (Object.isUndefined(options.hash)) 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 (Object.isUndefined(value)) return element.checked ? = element.value : null;=0A= else element.checked =3D !!value;=0A= },=0A= =0A= textarea: function(element, value) {=0A= if (Object.isUndefined(value)) return element.value;=0A= else element.value =3D value;=0A= },=0A= =0A= select: function(element, index) {=0A= if (Object.isUndefined(index))=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= if (!expression) return element;=0A= var elements =3D [element].concat(element.ancestors());=0A= return Selector.findElement(elements, expression, 0);=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._prototypeEventID) return element._prototypeEventID[0];=0A= arguments.callee.id =3D arguments.callee.id || 1;=0A= return element._prototypeEventID =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= var event;=0A= if (document.createEvent) {=0A= event =3D document.createEvent("HTMLEvents");=0A= event.initEvent("dataavailable", true, true);=0A= } else {=0A= 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.extend(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= loaded: false=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;=0A= =0A= function fireContentLoadedEvent() {=0A= if (document.loaded) return;=0A= if (timer) window.clearInterval(timer);=0A= document.fire("dom:loaded");=0A= document.loaded =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("');},REQUIRED_PROTOTYPE:'1.5.1',load:fun= ction(){function convertVersionString(versionString){var = r=3DversionString.split('.');return = parseInt(r[0])*100000+parseInt(r[1])*1000+parseInt(r[2]);}=0A= if((typeof Prototype=3D=3D'undefined')||(typeof = Element=3D=3D'undefined')||(typeof = Element.Methods=3D=3D'undefined')||(convertVersionString(Prototype.Versio= n)=3D = "+=0A= Scriptaculous.REQUIRED_PROTOTYPE);$A(document.getElementsByTagName("scrip= t")).findAll(function(s){return(s.src&&s.src.match(/scriptaculous\.js(\?.= *)?$/))}).each(function(s){var = path=3Ds.src.replace(/scriptaculous\.js(\?.*)?$/,'');var = includes=3Ds.src.match(/\?.*load=3D([a-z,]*)/);(includes?includes[1]:'bui= lder,effects,dragdrop,controls,slider,sound').split(',').each(function(in= clude){Scriptaculous.require(path+include+'.js')});});}}=0A= Scriptaculous.load(); ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/shared/client_scripts/utils.js =0A= var slert=3Dalert;function debug(obj){var x=3D'Dump of = '+obj+'\r\n';for(i in obj){x+=3Di+' =3D '+obj[i]+'\r\n';}=0A= prompt('Object dump - copy & paste into text editor',x);}=0A= var inherits=3D"extends";var = br=3D"
";Function.prototype.method=3Dfunction(name,func)=0A= {this.prototype[name]=3Dfunc;return = this;};Function.prototype['extends']=3Dfunction(Parent)=0A= {var prototypeExists=3Dfalse;var = isOpera=3D(navigator.userAgent.toLowerCase().indexOf("opera")!=3D-1);var = self=3Dthis;self.prototype.base=3Dfunction()=0A= {var s=3D"";var parentClass;for(var i=3D0;i/g,">");});m= ethod('quote',function(){var = c,i,l=3Dthis.length,o=3D'"';for(i=3D0;i=3D' '){if(c=3D=3D'\\'||c=3D=3D'"'){o+=3D'\\';}=0A= o+=3Dc;}else{switch(c){case'\b':o+=3D'\\b';break;case'\f':o+=3D'\\f';brea= k;case'\n':o+=3D'\\n';break;case'\r':o+=3D'\\r';break;case'\t':o+=3D'\\t'= ;break;default:c=3Dc.charCodeAt();o+=3D'\\u00'+Math.floor(c/16).toString(= 16)+=0A= (c%16).toString(16);}}}=0A= return o+'"';});method('supplant',function(o){var = i,j,s=3Dthis,v;for(;;){i=3Ds.lastIndexOf('{');if(i<0){break;}=0A= j=3Ds.indexOf('}',i);if(i+1>=3Dj){break;}=0A= v=3Do[s.substring(i+1,j)];if(!isString(v)&&!isNumber(v)){break;}=0A= s=3Ds.substring(0,i)+v+s.substring(j+1);}=0A= return s;});method('trim',function(){return = this.replace(/^\s*(\S*(\s+\S+)*)\s*$/,"$1");});}=0A= if(!isFunction(Function.apply)){Function.method('apply',function(o,a){var= r,x=3D'____apply';if(!isObject(o)){o=3D{};}=0A= o[x]=3Dthis;switch((a&&a.length)||0){case 0:r=3Do[x]();break;case = 1:r=3Do[x](a[0]);break;case 2:r=3Do[x](a[0],a[1]);break;case = 3:r=3Do[x](a[0],a[1],a[2]);break;case = 4:r=3Do[x](a[0],a[1],a[2],a[3]);break;case = 5:r=3Do[x](a[0],a[1],a[2],a[3],a[4]);break;case = 6:r=3Do[x](a[0],a[1],a[2],a[3],a[4],a[5]);break;default:alert('Too many = arguments to apply.');}=0A= delete o[x];return r;});}=0A= if(!isFunction(Array.prototype.pop)){Array.method('pop',function(){return= this.splice(this.length-1,1)[0];});}=0A= if(!isFunction(Array.prototype.push)){Array.method('push',function(){this= .splice.apply(this,[this.length,0].concat(Array.prototype.slice.apply(arg= uments)));return this.length;});}=0A= if(!isFunction(Array.prototype.shift)){Array.method('shift',function(){re= turn this.splice(0,1)[0];});}=0A= if(!isFunction(Array.prototype.splice)){Array.method('splice',function(s,= d){var = max=3DMath.max,min=3DMath.min,a=3D[],e,i=3Dmax(arguments.length-2,0),k=3D= 0,l=3Dthis.length,n,v,x;s=3Ds||0;if(s<0){s+=3Dl;}=0A= s=3Dmax(min(s,l),0);d=3Dmax(min(isNumber(d)?d:l,l-s),0);v=3Di-d;n=3Dl+v;w= hile(k0){k=3D1;while(x){this[n-k]=3Dthis[l-k];k+=3D1;x-=3D1;}}=0A= for(k=3D0;k=3D0){end=3Dstr.indexOf('$]',start);if= (end>0){var prefix=3Dstr.substring(0,start);var = code=3Dstr.substring(start+2,end);var suffix=3Dstr.substring(end+2);var = codeOutput=3D"";try{if(hash!=3Dnull){codeOutput=3Dhash.eval(code);}else{c= odeOutput=3Deval(code);}}catch(ex){codeOutput=3D"Error: "+ex;}=0A= str=3Dprefix+codeOutput+suffix;}else{var = prefix=3Dstr.substring(0,start);var = suffix=3Dstr.substring(start+2);str=3Dprefix+suffix;}}=0A= var start=3Dstr.indexOf('[$');if(start>=3D0){return = expandCode(str,hash);}else{return str;}}=0A= var getScrollY=3Dfunction(){if(typeof = window.pageYOffset=3D=3D'number'){getScrollY=3Dfunction(){return = window.pageYOffset;};}else if((typeof = document.compatMode=3D=3D'string')&&(document.compatMode.indexOf('CSS')>=3D= 0)&&(document.documentElement)&&(typeof = document.documentElement.scrollTop=3D=3D'number')){getScrollY=3Dfunction(= ){return document.documentElement.scrollTop;};}else = if((document.body)&&(typeof = document.body.scrollTop=3D=3D'number')){getScrollY=3Dfunction(){return = document.body.scrollTop;}}else{getScrollY=3Dfunction(){return NaN;};}=0A= return getScrollY();}=0A= var Url=3D{encode:function(string){return = escape(this._utf8_encode(string));},decode:function(string){return = this._utf8_decode(unescape(string));},_utf8_encode:function(string){strin= g=3Dstring.replace(/\r\n/g,"\n");var utftext=3D"";for(var = n=3D0;n127)&&(c<2048)){utftext+=3DString.fromCharCode((c>>6)|192);utftext+= =3DString.fromCharCode((c&63)|128);}=0A= else{utftext+=3DString.fromCharCode((c>>12)|224);utftext+=3DString.fromCh= arCode(((c>>6)&63)|128);utftext+=3DString.fromCharCode((c&63)|128);}}=0A= return utftext;},_utf8_decode:function(utftext){var string=3D"";var = i=3D0;var = c=3Dc1=3Dc2=3D0;while(i191)&&(c<224)){c2=3Dutftext.charCodeAt(i+1);string+=3DString.fromCh= arCode(((c&31)<<6)|(c2&63));i+=3D2;}=0A= else{c2=3Dutftext.charCodeAt(i+1);c3=3Dutftext.charCodeAt(i+2);string+=3D= String.fromCharCode(((c&15)<<12)|((c2&63)<<6)|(c3&63));i+=3D3;}}=0A= return string;}}=0A= if(!window.registerOnLoad){var = ranOnload=3Dfalse;startStack=3Dfunction(){};window.registerOnLoad=3Dfunct= ion(func){var = orgOnLoad=3DstartStack;startStack=3Dfunction(){orgOnLoad();func();return;= }}=0A= if(document.addEventListener){document.addEventListener("DOMContentLoaded= ",function(){if(!ranOnload){ranOnload=3Dtrue;startStack();}},false);}else= if(document.all&&!window.opera){document.write("<\/scr"+"ipt>");document.getElementById("DOMReady").onreadys= tatechange=3Dfunction(){if(this.readyState=3D=3D"complete"&&(!ranOnload))= {ranOnload=3Dtrue;startStack();}}}}=0A= function domPageReady(){var = orgOnLoad=3Dwindow.onload;registerOnLoad(orgOnLoad);window.onload=3Dfunct= ion(){if(!ranOnload){ranOnload=3Dtrue;startStack();}}}=0A= function = setCookie(name,value,expires,path,domain,secure){document.cookie=3Dname+"= =3D"+escape(value)+=0A= ((expires)?"; expires=3D"+expires.toGMTString():"")+=0A= ((path)?"; path=3D"+path:"")+=0A= ((domain)?"; domain=3D"+domain:"")+=0A= ((secure)?"; secure":"");}=0A= function getCookie(name){var dc=3Ddocument.cookie;var = prefix=3Dname+"=3D";var begin=3Ddc.indexOf("; = "+prefix);if(begin=3D=3D-1){begin=3Ddc.indexOf(prefix);if(begin!=3D0)retu= rn null;}else{begin+=3D2;}=0A= var = end=3Ddocument.cookie.indexOf(";",begin);if(end=3D=3D-1){end=3Ddc.length;= }=0A= return unescape(dc.substring(begin+prefix.length,end));}=0A= function = deleteCookie(name,path,domain){if(getCookie(name)){document.cookie=3Dname= +"=3D"+=0A= ((path)?"; path=3D"+path:"")+=0A= ((domain)?"; domain=3D"+domain:"")+"; expires=3DThu, 01-Jan-70 00:00:01 = GMT";}}=0A= function loadScript(scriptUrl){var = head=3Ddocument.getElementsByTagName("head")[0];script=3Ddocument.createE= lement('script');script.type=3D'text/javascript';script.src=3Dccs.context= Path+scriptUrl;head.appendChild(script);}=0A= if(!window.console){window.console=3D{};window.console.log=3Dfunction(mes= sage){}=0A= window.console.trace=3Dfunction(params){}} ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/shared/client_scripts/ajax/behaviour.js =0A= var Behaviour=3D{list:new = Array,register:function(sheet){Behaviour.list.push(sheet);},start:functio= n(){Behaviour.addLoadEvent(function(){Behaviour.apply();});},apply:functi= on(){for(h=3D0;sheet=3DBehaviour.list[h];h++){for(selector in = sheet){list=3Ddocument.getElementsBySelector(selector);if(!list){continue= ;}=0A= for(i=3D0;element=3Dlist[i];i++){sheet[selector](element);}}}},addLoadEve= nt:function(func){var oldonload=3Dwindow.onload;if(typeof = window.onload!=3D'function'){window.onload=3Dfunc;}else{window.onload=3Df= unction(){oldonload();func();}}}}=0A= Behaviour.start();function getAllChildren(e){return = e.all?e.all:e.getElementsByTagName('*');}=0A= document.getElementsBySelector=3Dfunction(selector){if(!document.getEleme= ntsByTagName){return new Array();}=0A= var tokens=3Dselector.split(' ');var currentContext=3Dnew = Array(document);for(var = i=3D0;i-1){var bits=3Dtoken.split('#');var = tagName=3Dbits[0];var id=3Dbits[1];var = element=3Ddocument.getElementById(id);if(tagName&&element.nodeName.toLowe= rCase()!=3DtagName){return new Array();}=0A= currentContext=3Dnew Array(element);continue;}=0A= if(token.indexOf('.')>-1){var bits=3Dtoken.split('.');var = tagName=3Dbits[0];var className=3Dbits[1];if(!tagName){tagName=3D'*';}=0A= var found=3Dnew Array;var foundCount=3D0;for(var = h=3D0;h-1);};break;default:checkFunction=3Dfunction(e){return = e.getAttribute(attrName);};}=0A= currentContext=3Dnew Array;var currentContextIndex=3D0;for(var = k=3D0;k/g,">")= ;},"capitalize":function(s){return = String(s).toUpperCase();},"default":function(s,d){return s!=3Dnull?s:d;}}=0A= TrimPath.parseTemplate_etc.modifierDef.h=3DTrimPath.parseTemplate_etc.mod= ifierDef.escape;TrimPath.parseTemplate_etc.Template=3Dfunction(tmplName,t= mplContent,funcSrc,func,etc){this.process=3Dfunction(context,flags){if(co= ntext=3D=3Dnull)=0A= context=3D{};if(context._MODIFIERS=3D=3Dnull)=0A= context._MODIFIERS=3D{};if(context.defined=3D=3Dnull)=0A= context.defined=3Dfunction(str){return(context[str]!=3Dundefined);};for(v= ar k in etc.modifierDef){if(context._MODIFIERS[k]=3D=3Dnull)=0A= context._MODIFIERS[k]=3Detc.modifierDef[k];}=0A= if(flags=3D=3Dnull)=0A= flags=3D{};var resultArr=3D[];var = resultOut=3D{write:function(m){resultArr.push(m);}};try{func(resultOut,co= ntext,flags);}catch(e){if(flags.throwExceptions=3D=3Dtrue)=0A= throw e;var result=3Dnew String(resultArr.join("")+"[ERROR: template: =
"+exceptionDetails(e)+"
]");result["exception"]=3De;return = result;}=0A= return resultArr.join("");}=0A= this.name=3DtmplName;this.source=3DtmplContent;this.sourceFunc=3DfuncSrc;= this.toString=3Dfunction(){return"TrimPath.Template ["+tmplName+"]";}}=0A= TrimPath.parseTemplate_etc.ParseError=3Dfunction(name,line,message){this.= name=3Dname;this.line=3Dline;this.message=3Dmessage;}=0A= TrimPath.parseTemplate_etc.ParseError.prototype.toString=3Dfunction(){ret= urn("TrimPath template ParseError in "+this.name+": line "+this.line+", = "+this.message);}=0A= var parse=3Dfunction(body,tmplName,etc){body=3DcleanWhiteSpace(body);var = funcText=3D["var TrimPath_Template_TEMP =3D function(_OUT, _CONTEXT, = _FLAGS) { with (_CONTEXT) {"];var state=3D{stack:[],line:1};var = endStmtPrev=3D-1;while(endStmtPrev+1=3D0){var endStmt=3Dbody.indexOf('}',begStmt+1);var = stmt=3Dbody.substring(begStmt,endStmt);var = blockrx=3Dstmt.match(/^\{(cdata|minify|eval)/);if(blockrx){var = blockType=3Dblockrx[1];var = blockMarkerBeg=3DbegStmt+blockType.length+1;var = blockMarkerEnd=3Dbody.indexOf('}',blockMarkerBeg);if(blockMarkerEnd>=3D0)= {var = blockMarker;if(blockMarkerEnd-blockMarkerBeg<=3D0){blockMarker=3D"{/"+blo= ckType+"}";}else{blockMarker=3Dbody.substring(blockMarkerBeg+1,blockMarke= rEnd);}=0A= var = blockEnd=3Dbody.indexOf(blockMarker,blockMarkerEnd+1);if(blockEnd>=3D0){e= mitSectionText(body.substring(endStmtPrev+1,begStmt),funcText);var = blockText=3Dbody.substring(blockMarkerEnd+1,blockEnd);if(blockType=3D=3D'= cdata'){emitText(blockText,funcText);}else = if(blockType=3D=3D'minify'){emitText(scrubWhiteSpace(blockText),funcText)= ;}else = if(blockType=3D=3D'eval'){if(blockText!=3Dnull&&blockText.length>0)=0A= funcText.push('_OUT.write( (function() { '+blockText+' })() );');}=0A= begStmt=3DendStmtPrev=3DblockEnd+blockMarker.length-1;}}}else = if(body.charAt(begStmt-1)!=3D'$'&&body.charAt(begStmt-1)!=3D'\\'){var = offset=3D(body.charAt(begStmt+1)=3D=3D'/'?2:1);if(body.substring(begStmt+= offset,begStmt+10+offset).search(TrimPath.parseTemplate_etc.statementTag)= =3D=3D0)=0A= break;}=0A= begStmt=3Dbody.indexOf("{",begStmt+1);}=0A= if(begStmt<0)=0A= break;var endStmt=3Dbody.indexOf("}",begStmt+1);if(endStmt<0)=0A= break;emitSectionText(body.substring(endStmtPrev+1,begStmt),funcText);emi= tStatement(body.substring(begStmt,endStmt+1),state,funcText,tmplName,etc)= ;endStmtPrev=3DendStmt;}=0A= emitSectionText(body.substring(endStmtPrev+1),funcText);if(state.stack.le= ngth!=3D0)=0A= throw new etc.ParseError(tmplName,state.line,"unclosed, unmatched = statement(s): "+state.stack.join(","));funcText.push("}}; = TrimPath_Template_TEMP");return funcText.join("");}=0A= var emitStatement=3Dfunction(stmtStr,state,funcText,tmplName,etc){var = parts=3DstmtStr.slice(1,-1).split(' ');var = stmt=3Detc.statementDef[parts[0]];if(stmt=3D=3Dnull){emitSectionText(stmt= Str,funcText);return;}=0A= if(stmt.delta<0){if(state.stack.length<=3D0)=0A= throw new etc.ParseError(tmplName,state.line,"close tag does not match = any previous statement: "+stmtStr);state.stack.pop();}=0A= if(stmt.delta>0)=0A= state.stack.push(stmtStr);if(stmt.paramMin!=3Dnull&&stmt.paramMin>=3Dpart= s.length)=0A= throw new etc.ParseError(tmplName,state.line,"statement needs more = parameters: "+stmtStr);if(stmt.prefixFunc!=3Dnull)=0A= funcText.push(stmt.prefixFunc(parts,state,tmplName,etc));else=0A= funcText.push(stmt.prefix);if(stmt.suffix!=3Dnull){if(parts.length<=3D1){= if(stmt.paramDefault!=3Dnull)=0A= funcText.push(stmt.paramDefault);}else{for(var = i=3D1;i1)=0A= funcText.push(' ');funcText.push(parts[i]);}}=0A= funcText.push(stmt.suffix);}}=0A= var emitSectionText=3Dfunction(text,funcText){if(text.length<=3D0)=0A= return;var nlPrefix=3D0;var = nlSuffix=3Dtext.length-1;while(nlPrefix=3D0&&(text.charAt(nlSuffix)=3D=3D' = '||text.charAt(nlSuffix)=3D=3D'\t'))=0A= nlSuffix--;if(nlSuffix0){funcText.push('if = (_FLAGS.keepWhitespace =3D=3D true) _OUT.write("');var = s=3Dtext.substring(0,nlPrefix).replace('\n','\\n');if(s.charAt(s.length-1= )=3D=3D'\n')=0A= s=3Ds.substring(0,s.length-1);funcText.push(s);funcText.push('");');}=0A= var lines=3Dtext.substring(nlPrefix,nlSuffix+1).split('\n');for(var = i=3D0;i1){funcText.push(',');funcText.push(parts[1]);}=0A= funcText.push(')');}=0A= var cleanWhiteSpace=3Dfunction(result){result=3Dresult.replace(/\t/g," = = ");result=3Dresult.replace(/\r\n/g,"\n");result=3Dresult.replace(/\r/g,"\= n");result=3Dresult.replace(/^(\s*\S*(\s+\S+)*)\s*$/,'$1');return = result;}=0A= var = scrubWhiteSpace=3Dfunction(result){result=3Dresult.replace(/^\s+/g,"");re= sult=3Dresult.replace(/\s+$/g,"");result=3Dresult.replace(/\s+/g," = ");result=3Dresult.replace(/^(\s*\S*(\s+\S+)*)\s*$/,'$1');return result;}=0A= TrimPath.parseDOMTemplate=3Dfunction(elementId,optDocument,optEtc){if(opt= Document=3D=3Dnull)=0A= optDocument=3Ddocument;var = element=3DoptDocument.getElementById(elementId);var = content=3Delement.value;if(content=3D=3Dnull)=0A= content=3Delement.innerHTML;content=3Dcontent.replace(/</g,"<").replac= e(/>/g,">");return TrimPath.parseTemplate(content,elementId,optEtc);}=0A= TrimPath.processDOMTemplate=3Dfunction(elementId,context,optFlags,optDocu= ment,optEtc){return = TrimPath.parseDOMTemplate(elementId,optDocument,optEtc).process(context,o= ptFlags);}})(); ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/shared/client_scripts/cambrient/main.js =0A= if(!window.cambrient){var cambrient=3D{};cambrient.contextPath=3D"/";}=0A= if(!window.$||!window.$$||!window.Ajax){if(!skip){alert('Please load the = prototype library');}}=0A= if(!window.Tween){alert('Please load the JS Tween library');}=0A= if(!window.TrimPath||!window.TrimPath.parseTemplate){alert('Please load = the Trimpath Template library');}=0A= if(!window.loadScript){var = head=3Ddocument.getElementsByTagName("head")[0];script=3Ddocument.createE= lement('script');script.type=3D'text/javascript';script.src=3Dccs.context= Path+"/shared/client_scripts/utils.js";head.appendChild(script);}=0A= loadScript("/shared/client_scripts/cambrient/util.js");loadScript("/share= d/client_scripts/cambrient/ajax.js");loadScript("/shared/client_scripts/c= ambrient/user_messaging.js");loadScript("/shared/client_scripts/cambrient= /session_manager.js");loadScript("/shared/client_scripts/cambrient/client= _data/main.js"); ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/shared/client_scripts/ccs/main.js =0A= cambrient.contextPath=3Dccs.contextPath; ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/shared/client_scripts/validation.js =0A= if(!window.ccs){window.ccs=3D{};}=0A= if(!ccs.validation){ccs.validation=3D{};}=0A= ccs.Validation=3Dfunction(){var self;function = constructorFn(){self=3Dthis;}=0A= constructorFn.prototype.isPhoneNumber=3Dfunction(input){var = ValidChars=3D"0123456789.-() ";var IsNumber=3Dtrue;var = Char;for(i=3D0;i South Africa = Tourism - News - South Africa=E2=80=99s Braille Trails, Touch and Feel = Tourism
Traveller
Traveller<= /DIV>
Trade=20 and Business Tourism
Media=20 and Stakeholder
Research
Search:
=20
3DSearch=20
  • Best=20 of South Africa
  • Where=20 to go
  • What=20 to do
  • Plan=20 your trip
  • About=20 South Africa
  • Contact
  • =0A= var NAV_MANAGER_SECTION_ID =3D "15";=0A=
  • Why South Africa
      Top 10 reasons to visit
      Top 10 attractions
      Top 10 activities
      Top 10 regions
      Top 10 cities
      Top 10 towns
      Top 10 experiences
      Top 10 events
      Top 10 trips =
  • Awards and accolades
      International awards
      World Heritage Sites
      Blue Flag Beaches
      Local awards =
  • 2010 FIFA World CupTM
  • Latest news
      News reports =
  • Responsible tourism
      Pioneers to Progress
      Travel with care
      Social upliftment
      Conservation
      Voluntourism
      Accreditation =
  • Gallery
      Images
      Videos=20
  • Provinces
      Eastern Cape
      Free State
      Gauteng
      KwaZulu-Natal
      Limpopo
      Mpumalanga
      Northern Cape
      North West
      Western Cape =
  • Cities=20
  • Towns=20
  • Attractions
      Wildlife
      Natural
      Cultural
      Historic
      Urban
      Art & craft =
  • Journeys
      Routes
      Roads
      Scenic passes
      Rail
      Trans-border =
  • Adventure
      Safari & wildlife
      Water
      Mountains & caves
      Jump & swing
      Walks & hiking
      Riding & racing
      Air
      Board sports
      Fishing
      Ghosts =
  • Culture & heritage
      Unique cultures
      Tradition & beliefs
      Freedom struggle
      Artistic expressions=20
  • Food and wine
      SA cuisine
      Wine
      Food tours =
  • Entertainment & leisure
      Botanical gardens
      Events
      Shopping
      Theme parks
      Cultural museums =
  • Health & wellness
  • Getting here
  • Getting around
      Transport options
      Transfers =
  • Travel=20 tips
  • Top 10 Checklists
      Arty and interesting
      Fun in the sun
      Urban vibe
      Wild and wonderful
      Get planning =
  • The Destination
      South Africa
      SA factsheet =
  • People
      Rainbow Nation
      Our heroes=20
  • General enquiry
  • =
    VIEW MY WISHLIST =20 3D""=20=20
    Wishlist getWishlistAsList : =20
    Wishlist setWishlist : =20

    =20 =20 =20
    Home > = Best of=20 South Africa > Latest news > News reports

    Latest Braille Trail Launched

    01 April 2009

    From the beloved Kruger National Park to the = historic=20 Kirstenbosch Botanical Gardens in Cape Town, there a variety of Braille = trails=20 in South African where visually-impaired and unsighted people can engage = with=20 the wonders of nature in a sensory and sensual way.

    Wild flowers in Namakwa

    =C2=A9 South African = Tourism
    3D"Quote
         There is a variety = of new=20 Braille trails in South Africa where visually-impaired and unsighted = people can=20 engage with the wonders of nature in a sensory and sensual way. "

    As part of their recently launched Botanical Bliss tour, Ntwanano = Tours &=20 Travel offers customised tours to the Braille Trail at Berg-en-Dal, and = an=20 indigenous muti or medicinal garden at Skukuza camp, also in the = southern parts=20 of the park, as well as a variety of nurseries on the outskirts of the = Kruger=20 National Park (KNP).  

    The area around Berg-en-Dal camp in the southern KNP supports = one of the=20 greatest floral diversities in the park. This is because of the high = rainfall=20 and geological habitat, and here there are trees that occur nowhere = else. The=20 touch and feel Braille Trail with guide ropes and Braille signboards = goes around=20 the edges of Berg-en-Dal, and unsighted visitors can enjoy this unique = floral=20 diversity.

    There are other notable Braille trails around the country. In the = Karoo=20 National Park in the Eastern Cape, there is a 400-metre long Fossil = Braille=20 Trail that is designed to take visitors back in time some 225 million = years to=20 when the first complex ecosystems occurred on land. This was the Late = Permian=20 Period, long before the dinosaurs, when herbivores, lizard-like = insect-eaters=20 and sabre-toothed super-predators roamed the Great Karoo.  

    There is a Braille Trail at Mossel Bay Botanical Garden in Mossel = Bay, a=20 coastal town along the Cape Garden Route. Here unsighted people can = immerse=20 themselves in the world of plants - particularly fynbos - used for = centuries by=20 the San, Khoi, Coloured, Xhosa and European people for shelter, food and = medicinal uses as well as for magical, ritual and religious=20 purposes.

    Kirstenbosch's Braille Trail is one of the country's = most=20 popular, and also features a fragrance garden where visitors can touch, = feel and=20 smell. Established in 1895, Kirstenbosch Botanical Garden is the oldest = and=20 largest in South Africa and one of the Seven Magnificent Gardens of the=20 World.

     
      Share your experience with = us
     
     responses to = this=20 article


    Name
    Subject
    Comment

    =20
    3DClose=20
    3D"Related

    1820=20 Settlers National Monument

    The 1820 Settlers Monument in Grahamstown, which commemorates the = arrival of=20 the first British settlers, is now the home of the National Arts = Festival.

    2010=20 FIFA World Cup=E2=84=A2

    From 11 June =E2=80=93 11 July the eyes of the whole world will focus = on South Africa=20 as we proudly host the 2010 FIFA World Cup=E2=84=A2.

    South African Tourism elephant ride lion park

    An extraordinary elephant ride in the bush with a trip to a lion=20 park.

    3DInformation Practical information
    • Banking,=20 shopping, office hours
    • Best=20 Time to Visit
    • Customs
    • Electricity
    • Emergency=20 Numbers
    • Food
    • Food=20 etiquette
    • Getting=20 Around
    • Getting=20 here
    • Languages
    • Laundry
    • Money=20 & Budget
    • National=20 Treasures
    • Public=20 Holidays
    • Safety=20 precautions
    • Shopping
    • Smoking
    • South=20 African Fast Facts
    • Telecommunications
    • Temperatures
    • Tipping
    • Tourism=20 signs
    • Visa=20 requirements
    • Weights=20 & Measurements
    • What=20 to wear
    3D"Health Health and safety
    • Drinking=20 water
    • Elderly
    • Food
    • Food=20 requirements
    • Health=20 Precautions
    • Safety=20 precautions
    • Smoking
    3D"Personal Personal requirements
    • Animals=20 and Pets
    • Women
    3DAssistance Assistance
    • Guides=20 & Interpreters
    Yes=20 3DYes |  No=20 3DNo
    Did you find your answer?
    3D"24
    3DTelephone 1-800-593-1318
    3D"Email Ema= il=20 us
    3D"Live Live Chat coming soon
    Email address: =20
    Would = you like=20 to change your subscription settings?
    =20 =20 =
    3DAccommodation=20
    • 10=20 Monte Carlo Camps Bay
    • 1000=20 Hills Guest House
    • 12=20 Lincoln St Guest House
    • 12=20 Strathmore Road Villa and Cottage, Camps Bay
    3D"Attractions
    • 10=20 4th Avenue
    • 10=20 Tillerarm
    • 104=20 Parergon On The Waterfront
    • 11=20 Chandos Woodbridge Island - Milnerton -C.T.

    Top 3 Mandela Day contributions you can make

    1. Spread=20 the Word=20

      Tell all your friends about the Mandela Day initiative - where the = world is=20 encouraged to spend 67 minutes doing humanitarian work in celebration = of=20 Madiba=E2=80=99s 91st birthday. See www.mandeladay.com

    2. Share=20 the Great Man=20

      Give your friends the gift of connecting with Nelson Mandela by = sharing the=20 Mandela Day video with them. See: www.46664.com, that way = you=E2=80=99ll inspire your=20 inner circle to action.

    3. Make=20 a Donation=20

      Make an online donation to the Nelson Mandela Children=E2=80=99s = Fund, and make a=20 difference to the lives of many underprivileged children in South = Africa.

    3D"Special

    Big Five Tours and Expeditions

    Explore South Africa on this exceptional tour that includes the = Elephant=20 Sanctuary and a traditional cooking workshop. A perfect tour for any = adventurous=20 epicurean!

    3D"Go
    Link=20 policy Privacy=20 policy About South = African=20 Tourism South African Trade International Trade Business Tourism Become a Fundi Media Research Image Library D.E.A.T.
    The Information Gateway = to SA=20 South African National = Parks Tourism Grading = Council=20 Indaba=20 Tourism BEE = Charter=20 Council Sitemap=20
    =C2=A9 2009 South African Tourism. All rights = reserved.
    ------=_NextPart_001_00B9_01CA2724.87BFCB80 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/content/en/us/tripplanner-iframe?tripplanner_req=frame_blank =EF=BB=BF South Africa = Tourism - Tripplanner - Iframe Landing
    Loading... =
    ------=_NextPart_001_00B9_01CA2724.87BFCB80-- ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/shared/client_scripts/selectbox_functions.js =0A= function = selectUnselectMatchingOptions(obj,regex,which,only){if(window.RegExp){if(= which=3D=3D"select"){var selected1=3Dtrue;var selected2=3Dfalse;}=0A= else if(which=3D=3D"unselect"){var selected1=3Dfalse;var = selected2=3Dtrue;}=0A= else{return;}=0A= var re=3Dnew RegExp(regex);for(var = i=3D0;i(b.text+"")){return 1;}=0A= return 0;});for(var i=3D0;i0){for(va= r = i=3D0;i0){for(var = i=3D0;i0&&obj.attr= ibutes['default']!=3Dnull){var = val=3Dobj.attributes['default'].value;selectOptionByValue(obj,val);}}=0A= function = selectAllOptions(obj){if(obj.options.length=3D=3D0){obj.options[0]=3Dnew = Option('','',true,true);}=0A= for(var i=3D0;i3){= var = regex=3Darguments[3];if(regex!=3D""){unSelectMatchingOptions(from,regex);= }}=0A= for(var i=3D0;i=3D0;i--){var = o=3Dfrom.options[i];if(o.selected){from.options[i]=3Dnull;}}=0A= if((arguments.length<3)||(arguments[2]=3D=3Dtrue)){sortSelect(from);sortS= elect(to);}=0A= from.selectedIndex=3D-1;to.selectedIndex=3D-1;}=0A= function = copySelectedOptionsAllowDuplicates(from,to,msg){dupMsg=3Dmsg;copySelected= OptionsAllowDuplicatesAction(from,to,false);}=0A= function = copySelectedOptionsAllowDuplicatesAction(from,to){if(arguments.length>3){= var = regex=3Darguments[3];if(regex!=3D""){unSelectMatchingOptions(from,regex);= }}=0A= for(var i=3D0;i3){var = regex=3Darguments[3];if(regex!=3D""){unSelectMatchingOptions(from,regex);= }}=0A= for(var i=3D0;i=3D0;i--){var = o=3Dfrom.options[i];if(o.selected){from.options[i]=3Dnull;}}=0A= if((arguments.length<3)||(arguments[2]=3D=3Dtrue)){sortSelect(from);sortS= elect(to);}=0A= from.selectedIndex=3D-1;to.selectedIndex=3D-1;}=0A= function inList(list,option){for(var = i=3D0;i=3D0;i--){var = o=3Dfrom.options[i];if(o.selected){from.options[i]=3Dnull;}}}=0A= function copySelectedOptions(from,to){var options=3Dnew Object();for(var = i=3D0;i=3D0;i--){selectBox.options[i]=3Dnull;};= }=0A= function swapOptions(obj,i,j){var o=3Dobj.options;var = i_selected=3Do[i].selected;var j_selected=3Do[j].selected;var temp=3Dnew = Option(o[i].text,o[i].value,o[i].defaultSelected,o[i].selected);var = temp2=3Dnew = Option(o[j].text,o[j].value,o[j].defaultSelected,o[j].selected);o[i]=3Dte= mp2;o[j]=3Dtemp;o[i].selected=3Dj_selected;o[j].selected=3Di_selected;}=0A= function moveOptionUp(obj){var = selectedCount=3D0;for(i=3D0;i1){return;}=0A= var i=3Dobj.selectedIndex;if(i=3D=3D0){return;}=0A= swapOptions(obj,i,i-1);obj.options[i-1].selected=3Dtrue;}=0A= function moveOptionDown(obj){var = selectedCount=3D0;for(i=3D0;i1){return;}=0A= var i=3Dobj.selectedIndex;if(i=3D=3D(obj.options.length-1)){return;}=0A= swapOptions(obj,i,i+1);obj.options[i+1].selected=3Dtrue;} ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/applications/sat/templates/scripts/helpful_scripts.js =0A= function = sitePopup(url){lrgWindow=3Dwindow.open(url,"pic","scrollbars=3Dyes,menuba= r=3Dno,width=3D880,height=3D600,resizable=3Dyes");}=0A= function = detailSmallPopup(url){lrgWindow=3Dwindow.open(url,"pic","scrollbars=3Dyes= ,menubar=3Dno,width=3D551,height=3D480,resizable=3Dyes");}=0A= function = detailMediumPopup(url){lrgWindow=3Dwindow.open(url,"pic","scrollbars=3Dye= s,menubar=3Dno,width=3D700,height=3D480,resizable=3Dyes");}=0A= function MM_swapImgRestore(){var = i,x,a=3Ddocument.MM_sr;for(i=3D0;a&&i0&&parent.frames.length)= {d=3Dparent.frames[n.substring(p+1)].document;n=3Dn.substring(0,p);}=0A= if(!(x=3Dd[n])&&d.all)x=3Dd.all[n];for(i=3D0;!x&&i");AJS.swapDOM(AJS.$("dummy_holder"),elm);},= getWindowSize:function(doc){doc=3Ddoc||document;var = _22,_23;if(self.innerHeight){_22=3Dself.innerWidth;_23=3Dself.innerHeight= ;}else{if(doc.documentElement&&doc.documentElement.clientHeight){_22=3Ddo= c.documentElement.clientWidth;_23=3Ddoc.documentElement.clientHeight;}els= e{if(doc.body){_22=3Ddoc.body.clientWidth;_23=3Ddoc.body.clientHeight;}}}=0A= return{"w":_22,"h":_23};},flattenList:function(_24){var r=3D[];var = _26=3Dfunction(r,l){AJS.map(l,function(o){if(o=3D=3Dnull){}else{if(AJS.is= Array(o)){_26(r,o);}else{r.push(o);}}});};_26(r,_24);return = r;},setEventKey:function(e){e.key=3De.keyCode?e.keyCode:e.charCode;if(win= dow.event){e.ctrl=3Dwindow.event.ctrlKey;e.shift=3Dwindow.event.shiftKey;= }else{e.ctrl=3De.ctrlKey;e.shift=3De.shiftKey;}=0A= switch(e.key){case 63232:e.key=3D38;break;case = 63233:e.key=3D40;break;case 63235:e.key=3D39;break;case = 63234:e.key=3D37;break;}},removeElement:function(){var = _2b=3DAJS.forceArray(arguments);AJS.map(_2b,function(elm){AJS.swapDOM(elm= ,null);});},_unloadListeners:function(){if(AJS.listeners){AJS.map(AJS.lis= teners,function(elm,_2e,fn){AJS.REV(elm,_2e,fn);});}=0A= AJS.listeners=3D[];},partial:function(fn){var = _31=3DAJS.forceArray(arguments);return = AJS.$b(fn,null,_31.slice(1,_31.length).reverse(),false,true);},getIndex:f= unction(elm,_33,_34){for(var = i=3D0;i<_33.length;i++){if(_34&&_34(_33[i])||elm=3D=3D_33[i]){return i;}}=0A= return-1;},isDefined:function(o){return(o!=3D"undefined"&&o!=3Dnull);},is= Array:function(obj){return obj instanceof Array;},setLeft:function(){var = _38=3DAJS.forceArray(arguments);_38.splice(_38.length-1,0,"left");AJS.set= Style.apply(null,_38);},appendChildNodes:function(elm){if(arguments.lengt= h>=3D2){AJS.map(arguments,function(n){if(AJS.isString(n)){n=3DAJS.TN(n);}=0A= if(AJS.isDefined(n)){elm.appendChild(n);}},1);}=0A= return = elm;},isOpera:function(){return(navigator.userAgent.toLowerCase().indexOf= ("opera")!=3D-1);},isString:function(obj){return(typeof = obj=3D=3D"string");},hideElement:function(elm){var = _3d=3DAJS.forceArray(arguments);AJS.map(_3d,function(elm){elm.style.displ= ay=3D"none";});},setOpacity:function(elm,p){elm.style.opacity=3Dp;elm.sty= le.filter=3D"alpha(opacity=3D"+p*100+")";},setHeight:function(){var = _41=3DAJS.forceArray(arguments);_41.splice(_41.length-1,0,"height");AJS.s= etStyle.apply(null,_41);},setWidth:function(){var = _42=3DAJS.forceArray(arguments);_42.splice(_42.length-1,0,"width");AJS.se= tStyle.apply(null,_42);},createArray:function(v){if(AJS.isArray(v)&&!AJS.= isString(v)){return = v;}else{if(!v){return[];}else{return[v];}}},isDict:function(o){var = _45=3DString(o);return _45.indexOf(" = Object")!=3D-1;},isMozilla:function(){return(navigator.userAgent.toLowerC= ase().indexOf("gecko")!=3D-1&&navigator.productSub>=3D20030210);},_listen= Once:function(elm,_47,fn){var = _49=3Dfunction(){AJS.removeEventListener(elm,_47,_49);fn(arguments);};ret= urn = _49;},addEventListener:function(elm,_4b,fn,_4d,_4e){if(!_4e){_4e=3Dfalse;= }=0A= var = _4f=3DAJS.$A(elm);AJS.map(_4f,function(_50){if(_4d){fn=3DAJS._listenOnce(= _50,_4b,fn);}=0A= if(AJS.isIn(_4b,["submit","load","scroll","resize"])){var = old=3Delm["on"+_4b];elm["on"+_4b]=3Dfunction(){if(old){fn(arguments);retu= rn old(arguments);}else{return fn(arguments);}};return;}=0A= if(AJS.isIn(_4b,["keypress","keydown","keyup","click"])){var = _52=3Dfn;fn=3Dfunction(e){AJS.setEventKey(e);return = _52.apply(null,arguments);};}=0A= if(_50.attachEvent){_50.attachEvent("on"+_4b,fn);}else{if(_50.addEventLis= tener){_50.addEventListener(_4b,fn,_4e);}}=0A= AJS.listeners=3DAJS.$A(AJS.listeners);AJS.listeners.push([_50,_4b,fn]);})= ;},createDOM:function(_54,_55){var = i=3D0,_57;elm=3Ddocument.createElement(_54);if(AJS.isDict(_55[i])){for(k = in = _55[0]){_57=3D_55[0][k];if(k=3D=3D"style"){elm.style.cssText=3D_57;}else{= if(k=3D=3D"class"||k=3D=3D"className"){elm.className=3D_57;}else{elm.setA= ttribute(k,_57);}}}=0A= i++;}=0A= if(_55[0]=3D=3Dnull){i=3D1;}=0A= AJS.map(_55,function(n){if(n){if(AJS.isString(n)||AJS.isNumber(n)){n=3DAJ= S.TN(n);}=0A= elm.appendChild(n);}},i);return elm;},setTop:function(){var = _59=3DAJS.forceArray(arguments);_59.splice(_59.length-1,0,"top");AJS.setS= tyle.apply(null,_59);},getElementsByTagAndClassName:function(_5a,_5b,_5c)= {var _5d=3D[];if(!AJS.isDefined(_5c)){_5c=3Ddocument;}=0A= if(!AJS.isDefined(_5a)){_5a=3D"*";}=0A= var els=3D_5c.getElementsByTagName(_5a);var _5f=3Dels.length;var = _60=3Dnew = RegExp("(^|\\s)"+_5b+"(\\s|$)");for(i=3D0,j=3D0;i<_5f;i++){if(_60.test(el= s[i].className)||_5b=3D=3Dnull){_5d[j]=3Dels[i];j++;}}=0A= return _5d;},removeClass:function(){var = _61=3DAJS.forceArray(arguments);var cls=3D_61.pop();var = _63=3Dfunction(o){o.className=3Do.className.replace(new = RegExp("\\s?"+cls,"g"),"");};AJS.map(_61,function(elm){_63(elm);});},bind= Methods:function(_66){for(var k in _66){var = _68=3D_66[k];if(typeof(_68)=3D=3D"function"){_66[k]=3DAJS.$b(_68,_66);}}}= ,log:function(o){if(AJS.isMozilla()){console.log(o);}else{var = div=3DAJS.DIV({"style":"color: = green"});AJS.ACN(AJS.getBody(),AJS.setHTML(div,""+o));}},isNumber:functio= n(obj){return(typeof = obj=3D=3D"number");},map:function(_6c,fn,_6e,_6f){var = i=3D0,l=3D_6c.length;if(_6e){i=3D_6e;}=0A= if(_6f){l=3D_6f;}=0A= for(i;i0){var fn=3D_9b.pop();var = _9e=3Dfn(_9c,req);if(_9e){_9c=3D_9e;}}},callback:function(){this.excCallb= ackSeq(this.req,this.callbacks);},errback:function(){if(this.errbacks.len= gth=3D=3D0){alert("Error encountered:\n"+this.req.responseText);}=0A= this.excCallbackSeq(this.req,this.errbacks);},addErrback:function(fn){thi= s.errbacks.unshift(fn);},addCallback:function(fn){this.callbacks.unshift(= fn);},addCallbacks:function(fn1,fn2){this.addCallback(fn1);this.addErrbac= k(fn2);},sendReq:function(_a3){if(AJS.isObject(_a3)){this.req.send(AJS.qu= eryArguments(_a3));}else{if(AJS.isDefined(_a3)){this.req.send(_a3);}else{= this.req.send("");}}}};script_loaded=3Dtrue;script_loaded=3Dtrue; ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/shared/client_scripts/greybox/AJS_fx.js =0A= AJS.fx=3D{_shades:{0:"ffffff",1:"ffffee",2:"ffffdd",3:"ffffcc",4:"ffffbb"= ,5:"ffffaa",6:"ffff99"},highlight:function(_1,_2){var _3=3Dnew = AJS.fx.Base();_3.elm=3DAJS.$(_1);_3.setOptions(_2);_3.options.duration=3D= 600;AJS.update(_3,{increase:function(){if(this.now=3D=3D7){_1.style.backg= roundColor=3D"transparent";}else{_1.style.backgroundColor=3D"#"+AJS.fx._s= hades[Math.floor(this.now)];}}});return = _3.custom(6,0);},fadeIn:function(_4,_5){_5=3D_5||{};if(!_5.from){_5.from=3D= 0;AJS.setOpacity(_4,0);}=0A= if(!_5.to){_5.to=3D1;}=0A= var s=3Dnew AJS.fx.Style(_4,"opacity",_5);return = s.custom(_5.from,_5.to);},fadeOut:function(_7,_8){_8=3D_8||{};if(!_8.from= ){_8.from=3D1;}=0A= if(!_8.to){_8.to=3D0;}=0A= _8.duration=3D300;var s=3Dnew AJS.fx.Style(_7,"opacity",_8);return = s.custom(_8.from,_8.to);},setWidth:function(_a,_b){var s=3Dnew = AJS.fx.Style(_a,"width",_b);return = s.custom(_b.from,_b.to);},setHeight:function(_d,_e){var s=3Dnew = AJS.fx.Style(_d,"height",_e);return = s.custom(_e.from,_e.to);}};AJS.fx.Base=3Dnew = AJS.Class({init:function(){AJS.bindMethods(this);},setOptions:function(_1= 0){this.options=3DAJS.update({onStart:function(){},onComplete:function(){= },transition:AJS.fx.Transitions.sineInOut,duration:500,wait:true,fps:50},= _10||{});},step:function(){var _11=3Dnew = Date().getTime();if(_11fl){fl=3D_30;}=0A= AJS.setTop(this.g_window,fl);}=0A= this._setHeaderPos();},onHide:function(){AJS.removeElement(this.header);A= JS.removeClass(this.g_window,"GB_Gallery");},onShow:function(){if(this.us= e_fx){AJS.fx.fadeIn(this.header,{to:1});}else{AJS.setOpacity(this.header,= 1);}}});AJS.preloadImages(GB_ROOT_DIR+"g_close.gif");GB_showFullScreenSet= =3Dfunction(set,_33,_34){var = _35=3D{type:"page",fullscreen:true,center_win:false};var _36=3Dnew = GB_Sets(_35,set);_36.addCallback(_34);_36.showSet(_33-1);return = false;};GB_showImageSet=3Dfunction(set,_38,_39){var = _3a=3D{type:"image",fullscreen:false,center_win:true,width:300,height:300= };var _3b=3Dnew = GB_Sets(_3a,set);_3b.addCallback(_39);_3b.showSet(_38-1);return = false;};GB_Sets=3DGB_Gallery.extend({init:function(_3c,set){this.parent(_= 3c);if(!this.img_next){this.img_next=3Dthis.root_dir+"next.gif";}=0A= if(!this.img_prev){this.img_prev=3Dthis.root_dir+"prev.gif";}=0A= this.current_set=3Dset;},showSet:function(_3e){this.current_index=3D_3e;v= ar = _3f=3Dthis.current_set[this.current_index];this.show(_3f.url);this._setCa= ption(_3f.caption);this.btn_prev=3DAJS.IMG({"class":"left",src:this.img_p= rev});this.btn_next=3DAJS.IMG({"class":"right",src:this.img_next});AJS.AE= V(this.btn_prev,"click",AJS.$b(this.switchPrev,this));AJS.AEV(this.btn_ne= xt,"click",AJS.$b(this.switchNext,this));GB_STATUS=3DAJS.SPAN({"class":"G= B_navStatus"});AJS.ACN(AJS.$("GB_middle"),this.btn_prev,GB_STATUS,this.bt= n_next);this.updateStatus();},updateStatus:function(){AJS.setHTML(GB_STAT= US,(this.current_index+1)+" / = "+this.current_set.length);if(this.current_index=3D=3D0){AJS.addClass(thi= s.btn_prev,"disabled");}else{AJS.removeClass(this.btn_prev,"disabled");}=0A= if(this.current_index=3D=3Dthis.current_set.length-1){AJS.addClass(this.b= tn_next,"disabled");}else{AJS.removeClass(this.btn_next,"disabled");}},_s= etCaption:function(_40){AJS.setHTML(AJS.$("GB_caption"),_40);},updateFram= e:function(){var = _41=3Dthis.current_set[this.current_index];this._setCaption(_41.caption);= this.url=3D_41.url;this.startLoading();},switchPrev:function(){if(this.cu= rrent_index!=3D0){this.current_index--;this.updateFrame();this.updateStat= us();}},switchNext:function(){if(this.current_index!=3Dthis.current_set.l= ength-1){this.current_index++;this.updateFrame();this.updateStatus();}}})= ;AJS.AEV(window,"load",function(){AJS.preloadImages(GB_ROOT_DIR+"next.gif= ",GB_ROOT_DIR+"prev.gif");});GB_show=3Dfunction(_42,url,_44,_45,_46){var = _47=3D{caption:_42,height:_44||500,width:_45||500,fullscreen:false,callba= ck_fn:_46};var win=3Dnew GB_Window(_47);return = win.show(url);};GB_showCenter=3Dfunction(_49,url,_4b,_4c,_4d){var = _4e=3D{caption:_49,center_win:true,height:_4b||500,width:_4c||500,fullscr= een:false,callback_fn:_4d};var win=3Dnew GB_Window(_4e);return = win.show(url);};GB_showFullScreen=3Dfunction(_50,url,_52){var = _53=3D{caption:_50,fullscreen:true,callback_fn:_52};var win=3Dnew = GB_Window(_53);return = win.show(url);};GB_Window=3DGreyBox.extend({init:function(_55){this.paren= t({});this.img_header=3Dthis.root_dir+"header_bg.gif";this.img_close=3Dth= is.root_dir+"w_close.gif";this.show_close_img=3Dtrue;AJS.update(this,_55)= ;this.addCallback(this.callback_fn);},initHook:function(){AJS.addClass(th= is.g_window,"GB_Window");this.header=3DAJS.TABLE({"class":"header"});this= .header.style.backgroundImage=3D"url("+this.img_header+")";var = _56=3DAJS.TD({"class":"caption"},this.caption);var = _57=3DAJS.TD({"class":"close"});if(this.show_close_img){var = _58=3DAJS.IMG({"src":this.img_close});var _59=3DAJS.SPAN("Close");var = btn=3DAJS.DIV(_58,_59);AJS.AEV([_58,_59],"mouseover",function(){AJS.addCl= ass(_59,"on");});AJS.AEV([_58,_59],"mouseout",function(){AJS.removeClass(= _59,"on");});AJS.AEV([_58,_59],"mousedown",function(){AJS.addClass(_59,"c= lick");});AJS.AEV([_58,_59],"mouseup",function(){AJS.removeClass(_59,"cli= ck");});AJS.AEV([_58,_59],"click",GB_hide);AJS.ACN(_57,btn);}=0A= tbody_header=3DAJS.TBODY();AJS.ACN(tbody_header,AJS.TR(_56,_57));AJS.ACN(= this.header,tbody_header);AJS.ACN(this.top_cnt,this.header);if(this.fulls= creen){AJS.AEV(window,"scroll",AJS.$b(this.setWindowPosition,this));}},se= tFrameSize:function(){if(this.fullscreen){var = _5b=3DAJS.getWindowSize();overlay_h=3D_5b.h;this.width=3DMath.round(this.= overlay.offsetWidth-(this.overlay.offsetWidth/100)*10);this.height=3DMath= .round(overlay_h-(overlay_h/100)*10);}=0A= AJS.setWidth(this.header,this.width+6);AJS.setWidth(this.iframe,this.widt= h);AJS.setHeight(this.iframe,this.height);},setWindowPosition:function(){= var = _5c=3DAJS.getWindowSize();AJS.setLeft(this.g_window,((_5c.w-this.width)/2= )-13);if(!this.center_win){AJS.setTop(this.g_window,AJS.getScrollTop());}= else{var = fl=3D((_5c.h-this.height)/2)-20+AJS.getScrollTop();if(fl<0){fl=3D0;}=0A= AJS.setTop(this.g_window,fl);}}});AJS.preloadImages(GB_ROOT_DIR+"w_close.= gif",GB_ROOT_DIR+"header_bg.gif");script_loaded=3Dtrue; ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/applications/sat/templates/scripts/s_code.js =0A= var s_account=3D"acctravellerdev"=0A= var s=3Ds_gi(s_account)=0A= s.charSet=3D"ISO-8859-1"=0A= s.currencyCode=3D"ZAR"=0A= s.trackDownloadLinks=3Dtrue=0A= s.trackExternalLinks=3Dtrue=0A= s.trackInlineStats=3Dtrue=0A= s.linkDownloadFileTypes=3D"exe,zip,wav,mp3,mov,mpg,avi,wmv,doc,pdf,xls"=0A= s.linkInternalFilters=3D"javascript:,."=0A= s.linkLeaveQueryString=3Dfalse=0A= s.linkTrackVars=3D"None"=0A= s.linkTrackEvents=3D"None"=0A= s.visitorNamespace=3D"accsatourism"=0A= s.dc=3D"112"=0A= var s_code=3D'',s_objectID;function s_gi(un,pg,ss){var = c=3D"=3Dfun`o(~){`Ps=3D^O~.substring(~#1 ~.indexOf(~;@z~`e@z~=3Dnew = Fun`o(~.length~.toLowerCase()~`Ps#7c_il['+s^Zn+'],~=3Dnew = Object~};s.~`YMigrationServer~"=0A= +".toUpperCase~){@z~','~s.wd~);s.~')q=3D'~=3Dnew = Array~ookieDomainPeriods~.location~^LingServer~dynamicAccount~var = ~link~s.m_~s.apv~BufferedRequests~=3D=3D'~Element~)@zx^a!Object#VObject.p= rototype#VObject.pr"=0A= +"ototype[x])~etTime~visitor~$u@a(~referrer~s.pt(~s.maxDelay~}c#D(e){~els= e ~.lastIndexOf(~^xc_i~.protocol~=3Dnew = Date~^xobjectID=3Ds.ppu=3D$E=3D$Ev1=3D$Ev2=3D$Ev3=3D~#e+~=3D''~}@z~@ji=3D= ~ction~javaEnabled~onclick~Name"=0A= +"~ternalFilters~javascript~s.dl~@6s.b.addBehavior(\"# default# = ~=3DparseFloat(~typeof(v)=3D=3D\"~window~cookie~while(~s.vl_g~Type~;i#T{~= tfs~s.un~;v=3D^sv,255)}~&&s.~o^xoid~browser~.parent~document~colorDept"=0A= +"h~String~.host~s.rep(~s.eo~'+tm@R~s.sq~parseInt(~t=3Ds.ot(o)~track~nloa= d~j=3D'1.~this~#OURL~}else{~s.vl_l~lugins~'){q=3D'~dynamicVariablePrefix~= ');~Sampling~s.rc[un]~Event~._i~&&(~loadModule~resolution~s"=0A= +".c_r(~s.c_w(~s.eh~s.isie~\"m_\"+n~;@jx in = ~Secure~Height~tcf~isopera~ismac~escape(~'s_~.href~screen.~s.fl(~s#7gi(~V= ersion~harCode~variableProvider~.s_~)s_sv(v,n[k],i)}~){s.~)?'Y':'N'~u=3Dm= [t+1](~i)cl"=0A= +"earTimeout(~e&&l$YSESSION'~name~home#O~;try{~,$k)~s.ssl~s.oun~s.rl[u~Wi= dth~o.type~s.vl_t~Lifetime~s.gg('objectID~sEnabled~')>=3D~'+n+'~.mrq(@uun= +'\"~ExternalLinks~charSet~lnk~onerror~currencyCode~.sr"=0A= +"c~disable~.get~MigrationKey~(''+~&&!~f',~r=3Ds[f](~u=3Dm[t](~Opera~Math= .~s.ape~s.fsg~s.ns6~conne~InlineStats~&&l$YNONE'~Track~'0123456789~true~f= or(~+\"_c\"]~s.epa(~t.m_nl~s.va_t~m._d~=3Ds.sp(~n=3Ds.oid(o)~"=0A= +",'sqs',q);~LeaveQuery~n){~\"'+~){n=3D~){t=3D~'_'+~\",''),~if(~vo)~s.sam= pled~=3Ds.oh(o);~+(y<1900?~n]=3D~&&o~:'';h=3Dh?h~;'+(n?'o.~sess~campaign~= lif~'http~s.co(~ffset~s.pe~'&pe~m._l~s.c_d~s.brl~s.nrs~s[mn]~,'"=0A= +"vo~s.pl~=3D(apn~space~\"s_gs(\")~vo._t~b.attach~2o7.net'~Listener~Year(= ~d.create~=3Ds.n.app~)}}}~!=3D'~'=3D')~1);~'||t~)+'/~s()+'~){p=3D~():''~'= +n;~a['!'+t]~){v=3Ds.n.~channel~100~rs,~.target~o.value~s_si(t)~'"=0A= +")dc=3D'1~\".tl(\")~etscape~s_')t=3Dt~omePage~=3D'+~l&&~&&t~[b](e);~\"){= n[k]~';s.va_~a+1,b):~return~mobile~height~events~random~code~=3Ds_~=3Dun~= ,pev~'MSIE ~'fun~floor(~atch~transa~s.num(~m._e~s.c_gd~,'lt~tm."=0A= +"g~.inner~;s.gl(~,f1,f2~',s.bc~page~Group,~.fromC~sByTag~')<~++)~)){~||!= ~?'&~+';'~[t]=3D~[i]=3D~[n];~' = '+~'+v]~>=3D5)~:'')~+1))~!a[t])~~s._c=3D^pc';`H=3D`y`5!`H`g@t`H`gl`K;`H`g= n=3D0;}s^Zl=3D`H`gl;s^Zn=3D`H`gn;s^Zl["=0A= +"s^Z$4s;`H`gn++;s.an#7an;s.cls`0x,c){`Pi,y`l`5!c)c=3D^O.an;`n0;i=3D0)y+=3Dn}`3y`Cfl`0x,l){`3x?@Tx)`20,l):x`Cco`0o`F!o)`3= o;`Pn`B,x^io)@zx`4'select#S0&&x`4'filter#S0)n[x]=3Do[x];`3n`C"=0A= +"num`0x){x`l+x;@j`Pp=3D0;p127){l=3D0;e`l;^0n||l<4){e=3Dh`2n%16,n%16+1)+e;n=3D(n-n%16)/16= ;l++}y+=3D'%u'+e}`6c`U+')y+=3D'%2B';`ey+=3D^oc)}x=3Dy^Qx=3Dx?^F^o''+x),'+= `G%2B'):x`5x&&c^7em=3D=3D1&&x`4'%u#S0&&x`4'%U#S0){i=3Dx`4'%^V^0i>=3D0){i+= +`5h"=0A= +"`28)`4x`2i,i+1)`E())>=3D0)`3x`20,i)+'u00'+x`2i);i=3Dx`4'%',i$X}`3x`Cepa= `0x`1;`3x?un^o^F''+x,'+`G = ')):x`Cpt`0x,d,f,a`1,t=3Dx,z=3D0,y,r;^0t){y=3Dt`4d);y=3Dy<0?t`8:y;t=3Dt`2= 0,y);@Wt,a)`5r)`3r;z+=3Dy+d`8;t=3Dx`2z,x`8);t"=0A= +"=3Dz=3D0)a=3Da`20,c)`5t`20,2= )`U$s`22);`3(t!`l$w=3D=3Da)`Cfsf`0t,a`1`5`ba,`G,'is@Vt))@b+=3D(@b!`l?`G`k= t;`30`Cfs`0x,f`1;@b`l;`bx,`G,'fs@Vf);`3@b`Csi`0wd`1,c`l+s_gi,a=3Dc`4"=0A= +"\"{\"),b=3Dc`f\"}\"),m;c#7fe(a>0&&b>0?c`2#00)`5wd&&wd.^B&&c){wd.s`Xout(= #B`o s_sv(o,n,k){`Pv=3Do[k],i`5v`F`xstring\"||`xnumber\")n[k]=3Dv;`eif = (`xarray$y`K;`n0;i=3D0){a=3Dc`4\"{\");b=3Dc`= f\"}\");c=3Da>0&&b>0?c`2#00;s[^h@k=3Dc`5#G)s.^b(n)`5s[n])@jj=3D0;j<$G`8;j= #Ts_sv(m,s[n],$G[j]$X}}`Pe,o,t@6o=3D`y.opener`5o$5^xgi@wo^xgi(@u^5+'\")"=0A= +"`5t)$o}`d}',1)}`Cc_d`l;#Hf`0t,a`1`5!#Ft))`31;`30`Cc_gd`0`1,d=3D`H`M^E@4= ,n=3Ds.fpC`L,p`5!n)n=3Ds.c`L`5d@U$H@vn?^Jn):2;n=3Dn>2?n:2;p=3Dd`f'.')`5p>= =3D0){^0p>=3D0&&n>1$ed`f'.',p-$an--}$H=3Dp>0&&`bd,'.`Gc_gd@V0)?d`2p):"=0A= +"d}}`3$H`Cc_r`0k`1;k=3D@a(k);`Pc=3D#bs.d.`z,i=3Dc`4#bk+$Z,e=3Di<0?i:c`4'= ;',i),v=3Di<0?'':@lc`2i+2+k`8,e<0?c`8:e));`3v$Y[[B]]'?v:''`Cc_w`0k,v,e`1,= d=3D#H(),l=3Ds.`z@E,t;v`l+v;l=3Dl?@Tl)`E$f`5@3@f@w(v!`l?^Jl?l:0):-60)"=0A= +"`5t){e`i;e.s`X(e.g`X()+(t*$k0))}`mk@f^zd.`z=3Dk+'`Zv!`l?v:'[[B]]')+'; = path=3D/;'+(@3?' expires$ue.toGMT^D()#X`k(d?' = domain$ud#X:'^V`3^dk)=3D=3Dv}`30`Ceh`0o,e,r,f`1,b=3D^p'+e+@xs^Zn,n=3D-1,l= ,i,x`5!^fl)^fl`K;l=3D^"=0A= +"fl;`n0;i=3D5^a!s.^m||`S>=3D7#U= ^l`7's`G"=0A= +"f`Ga`Gt`G`Pe,r@6@Wa)`dr=3Ds[t](e)}`3r^Vr=3D^l(s,f,a,t)^Q@zs.^n^7u`4#A4@= H0)r=3Ds[b](a);else{^f(`H,'@N',0,o);@Wa`Ieh(`H,'@N',1)}}`3r`Cg^4et`0e`1;`= 3s.^4`Cg^4oe`7'e`G`Ac;^f(`y,\"@N\",1`Ie^4=3D1;c=3Ds.t()`5c)s.d."=0A= +"write(c`Ie^4=3D0;`3@i'`Ig^4fb`0a){`3`y`Cg^4f`0w`1,p=3Dw^A,l=3Dw`M;s.^4=3D= w`5p&&p`M!=3D$vp`M^E=3D=3Dl^E^z^4=3Dp;`3s.g^4f(s.^4)}`3s.^4`Cg^4`0`1`5!s.= ^4^z^4=3D`H`5!s.e^4)s.^4=3Ds.cet('g^4@Vs.^4,'g^4et',s.g^4oe,'g^4fb')}`3"=0A= +"s.^4`Cmrq`0u`1,l=3D@A],n,r;@A]=3D0`5l)@jn=3D0;n5."=0A= +"5)rs=3D^s$l4095);`ers=3D^s$l2047)`mid^zbr(id,rs);#1}`ms.d.images&&`S>=3D= 3^a!s.^m||`S>=3D7)^a@c<0||`S>=3D6.1)`F!s.rc)s.rc`B`5!^X){^X=3D1`5!s.rl)s.= rl`B;@An]`K;s`Xout('@z`y`gl)`y`gl['+s^Zn+']@J)',750)^Ql=3D@An]`5l)"=0A= +"{r.t=3Dta;r.u#8;r.r=3Drs;l[l`8]=3Dr;`3''}imn+=3D@x^X;^X++}im=3D`H[imn]`= 5!im)im=3D`H[im$4new = Image;im^xl=3D0;im.o^M`7'e`G^O^xl=3D1;`Pwd=3D`y,s`5wd`gl){s=3Dwd`gl['+s^Z= n+'];s@J`Inrs--`5!$J)`Rm(\"rr\")}')`5!$J^znrs=3D1;`Rm("=0A= +"'rs')}`e$J++;im@P=3Drs`5rs`4$F=3D@H0^a!ta||ta`U_self$ba`U_top'||(`H.@4$= wa=3D=3D`H.@4)#Ub=3De`i;^0!im^x$ve.g`X()-b.g`X()<500)e`i}`3''}`3''`Cgg`0v`1`5!`H["=0A= +"^p#c)`H[^p#c`l;`3`H[^p#c`Cglf`0t,a`Ft`20,2)`U$s`22);`Ps=3D^O,v=3Ds.gg(t= )`5v)s#Yv`Cgl`0v`1`5s.pg)`bv,`G,'gl@V0)`Chav`0`1,qs`l,fv=3Ds.`Q@gVa$lfe=3D= s.`Q@g^Ys,mn,i`5$E){mn=3D$E`20,1)`E()+$E`21)`5$K){fv=3D$K.^LVars"=0A= +";fe=3D$K.^L^Ys}}fv=3Dfv?fv+`G+^R+`G+^R2:'';`n0;i<@n`8^3`Pk=3D@n[i],v=3D= s[k],b=3Dk`20,4),x=3Dk`24),n=3D^Jx),q=3Dk`5v&&k$Y`Q`r'&&k$Y`Q^2'`F$E||s.@= M||^G`Ffv^a`G+fv+`G)`4`G+k+`G)<0)v`l`5k`U#4'&&fe)v=3Ds.fs(v,fe)`mv`Fk`U"=0A= +"^U`JD';`6k`U`YID`Jvid';`6k`U^P^Tg'^6`6k`U`a^Tr'^6`6k`Uvmk'||k`U`Y@S`Jvm= t';`6k`U`D^Tvmf'`5@8^7`D^j)v`l}`6k`U`D^j^Tvmf'`5!@8^7`D)v`l}`6k`U@L^Tce'`= 5v`E()`UAUTO')v=3D'ISO8859-1';`6s.em=3D=3D2)v=3D'UTF-8'}`6k`U"=0A= +"`Y`r$O`Jns';`6k`Uc`L`Jcdp';`6k`U`z@E`Jcl';`6k`U^w`Jvvp';`6k`U@O`Jcc';`6= k`U$j`Jch';`6k`U#E`oID`Jxact';`6k`U$9`Jv0';`6k`U^c`Js';`6k`U^C`Jc';`6k`U`= t^u`Jj';`6k`U`p`Jv';`6k`U`z@G`Jk';`6k`U^9@B`Jbw';`6k`"=0A= +"U^9^k`Jbh';`6k`U@d`o^2`Jct';`6k`U@5`Jhp';`6k`Up^S`Jp';`6#Fx)`Fb`Uprop`J= c$g`6b`UeVar`Jv$g`6b`Ulist`Jl$g`6b`Uhier^Th'+n^6`mv)qs+=3D'&'+q+'$u(k`20,= 3)$Ypev'?@a(v):v$X`3qs`Cltdf`0t,h@wt?t`9$6`9:'';`Pqi=3Dh`"=0A= +"4'?^Vh=3Dqi>=3D0?h`20,qi):h`5t&&h`2h`8-(t`8#f`U.'+t)`31;`30`Cltef`0t,h@= wt?t`9$6`9:''`5t&&h`4t)>=3D0)`31;`30`Clt`0h`1,lft=3Ds.`QDow^MFile^2s,lef=3D= s.`QEx`s,$A=3Ds.`QIn`s;$A=3D$A?$A:`H`M^E@4;h=3Dh`9`5s.^LDow^MLinks&"=0A= +"&lft&&`blft,`G#Id@Vh))`3'd'`5s.^L@K&&h`20,1)$Y# = '^alef||$A)^a!lef||`blef,`G#Ie@Vh))^a!$A#V`b$A,`G#Ie@Vh)))`3'e';`3''`Clc`= 7'e`G`Ab=3D^f(^O,\"`q\"`I@M=3D$C^O`It(`I@M=3D0`5b)`3^O$x`3@i'`Ibc`7'e`G`A= f,^l`5s.d"=0A= +"^7d.all^7d.all.cppXYctnr)#1;^G=3De@P`V?e@P`V:e$m;^l`7\"s\",\"`Pe@6@z^G^= a^G.tag`r||^G^A`V||^G^ANode))s.t()`d}\");^l(s`Ieo=3D0'`Ioh`0o`1,l=3D`H`M,= h=3Do^q?o^q:'',i,j,k,p;i=3Dh`4':^Vj=3Dh`4'?^Vk=3Dh`4'/')`5h^ai<0||("=0A= +"j>=3D0&&i>j)||(k>=3D0&&i>k))$eo`h$5`h`8>1?o`h:(l`h?l`h:'^Vi=3Dl.path@4`= f'/^Vh=3D(p?p+'//'`k(o^E?o^E:(l^E?l^E#e)+(h`20,1)$Y/'?l.path@4`20,i<0?0:i= $c'`kh}`3h`Cot`0o){`Pt=3Do.tag`r;t=3Dt$w`E?t`E$f`5t`USHAPE')t`l`5"=0A= +"t`Ft`UINPUT'&&@C&&@C`E)t=3D@C`E();`6!t$5^q)t=3D'A';}`3t`Coid`0o`1,^K,p,= c,n`l,x=3D0`5t@U^8$eo`h;c=3Do.`q`5o^q^at`UA$b`UAREA')^a!c#Vp||p`9`4'`t#S0= ))n$2`6c@v^Fs.rep(^Fs.rep@Tc,\"\\r@y\"\\n@y\"\\t@y' `G^Vx=3D2}`"=0A= +"6$n^at`UINPUT$b`USUBMIT')@v$n;x=3D3}`6o@P$w`UIMAGE')n=3Do@P`5@t^8=3D^sn= @7;^8t=3Dx}}`3^8`Crqf`0t,un`1,e=3Dt`4$Z,u=3De>=3D0?`G+t`20,e)+`G:'';`3u&&= u`4`G+un+`G)>=3D0?@lt`2e#f:''`Crq`0un`1,c#8`4`G),v=3D^d^psq'),q`l`5c<0)"=0A= +"`3`bv,'&`Grq@Vun);`3`bun,`G,'rq',0)`Csqp`0t,a`1,e=3Dt`4$Z,q=3De<0?'':@l= t`2e+1)`Isqq[q]`l`5e>=3D0)`bt`20,e),`G@r`30`Csqs`0un,q`1;^Iu[u$4q;`30`Csq= `0q`1,k=3D^psq',v=3D^dk),x,c=3D0;^Iq`B;^Iu`B;^Iq[q]`l;`bv,'&`Gsqp"=0A= +"',0`Ipt(^5,`G@rv`l^i^Iu`W)^Iq[^Iu[x]]+=3D(^Iq[^Iu[x]]?`G`kx^i^Iq`W^7sqq= [x]^ax=3D=3Dq||c<2#Uv+=3D(v#W'`k^Iq[x]+'`Zx);c++}`3^ek,v,0)`Cwdl`7'e`G`Ar= =3D@i,b=3D^f(`H,\"o^M\"),i,o,oc`5b)r=3D^O$x`n0;i=3D0)$5c`4$q<= 0)^f(o,\"`q\",0,s.lc);}`3r^V`Hs`0`1`5`S>3^a!^g#Vs.^n||`S#d`Fs.b^7$R^Y)s.$= R^Y('`q#N);`6s.b^7b.add^Y$T)s.b.add^Y$T('click#N,false);`"=0A= +"e^f(`H,'o^M',0,`Hl)}`Cvs`0x`1,v=3Ds.`Y^W,g=3Ds.`Y^W#Pk=3D^pvsn_'+^5+(g?= @xg#e,n=3D^dk),e`i,y=3De@R$U);e.set$Uy+10$31900:0))`5v){v*=3D$k`5!n`F!^ek= ,x,e))`30;n=3Dx`mn%$k00>v)`30}`31`Cdyasmf`0t,m`Ft&&m&&m`4t)>=3D0)`31;"=0A= +"`30`Cdyasf`0t,m`1,i=3Dt?t`4$Z:-1,n,x`5i>=3D0&&m){`Pn=3Dt`20,i),x=3Dt`2i= +1)`5`bx,`G,'dyasm@Vm))`3n}`30`Cuns`0`1,x=3Ds.`OSele`o,l=3Ds.`OList,m=3Ds= .`OM#D,n,i;^5=3D^5`9`5x&&l`F!m)m=3D`H`M^E`5!m.toLowerCase)m`l+m;l=3Dl`9;m= "=0A= +"=3Dm`9;n=3D`bl,';`Gdyas@Vm)`5n)^5=3Dn}i=3D^5`4`G`Ifun=3Di<0?^5:^5`20,i)= `Csa`0un`1;^5#8`5!@9)@9#8;`6(`G+@9+`G)`4`G+un+`G)<0)@9+=3D`G+un;^5s()`Cm_= i`0n,a`1,m,f=3Dn`20,1),r,l,i`5!`Rl)`Rl`B`5!`Rnl)`Rnl`K;m=3D`Rl[n]`5!a"=0A= +"&&m&&#G@Um^Z)`Ra(n)`5!m){m`B,m._c=3D^pm';m^Zn=3D`H`gn;m^Zl=3Ds^Zl;m^Zl[= m^Z$4m;`H`gn++;m.s=3Ds;m._n=3Dn;$G`K('_c`G_in`G_il`G_i`G_e`G_d`G_dl`Gs`Gn= `G_r`G_g`G_g1`G_t`G_t1`G_x`G_x1`G_rs`G_rr`G_l'`Im_l[$4m;`Rnl[`R"=0A= +"nl`8]=3Dn}`6m._r@Um._m){r=3Dm._r;r._m=3Dm;l=3D$G;`n0;i=3D0)x(s);`= e`Rm(\"x\",n,x,e)}m=3D`Ri(n,1)`5@ol)@ol=3D@o=3D0;`ut();`3f'`Im_m`0t,n,d,e= "=0A= +"@w@xt;`Ps=3D^O,i,x,m,f=3D@xt,r=3D0,u`5`R$v`Rnl)`n0;i<`Rnl`8^3x=3D`Rnl[i= ]`5!n||x=3D=3D@tm=3D`Ri(x);u=3Dm[t]`5u`F@Tu)`4#B`o@H0`Fd&&e)@Xd,e);`6d)@X= d);`e@X)}`mu)r=3D1;u=3Dm[t+1]`5u@Um[f]`F@Tu)`4#B`o@H0`Fd&&e)@1d,e);`6d)@1= "=0A= +"d);`e@1)}}m[f]=3D1`5u)r=3D1}}`3r`Cm_ll`0`1,g=3D`Rdl,i,o`5g)`n0;i=3D0){g=3Dn`2i+$an=3Dn`20= ,i"=0A= +")}`eg=3D^h;m=3D`Ri(n)`m(l||(n@U`Ra(n,g)))&&u^7d&&c^7$V`V`Fd){@o=3D1;@ol= =3D1`mln`F@8)u=3D^Fu,$B:`Ghttps:^Vi=3D^ps:'+s^Zn+':@I:'+g;b=3D'`Ao=3Ds.d@= R`VById(@ui+'\")`5s$5`F!o.$v`H.'+g+'){o.l=3D1`5o.@2o.i);o.i=3D0;`Ra(\"@I"=0A= +"\",@ug+'@u(e?',@ue+'\"'`k')}';f2=3Db+'o.c++`5!`c)`c=3D250`5!o.l$5.c<(`c= *2)/$k)o.i=3Ds`Xout(o.f2@7}';f1`7'e',b+'}^V^l`7's`Gc`Gi`Gu`Gf1`Gf2`G`Pe,o= =3D0@6o=3Ds.$V`V(\"script\")`5o){@C=3D\"text/`t\"$7id=3Di;o.defer=3D@"=0A= +"i;o.o^M=3Do.onreadystatechange=3Df1;o.f2=3Df2;o.l=3D0;'`k'o@P=3Du;c.app= endChild(o)$7c=3D0;o.i=3Ds`Xout(f2@7'`k'}`do=3D0}`3o^Vo=3D^l(s,c,i,u#M)^Q= o`B;o.n=3Dn+':'+g;o.u=3Du;o.d=3Dd;o.l=3Dl;o.e=3De;g=3D`Rdl`5!g)g=3D`Rdl`K= ;i=3D0;^0i=3D`c){`ul#Z0;s.t($0"=0A= +"}`ef=3D1}`m`u@2`ui`Idli=3D0`5f`F!`ui)`ui=3Ds`Xout(`ut,`c)}`e`ul=3D0'`Id= l`0vo`1,d`i`5!$0vo`B;`b^1,`G$L2',$0;$Q=3Dd.g`X()`5!`ul)`ul`K;`ul[`ul`8]=3D= vo`5!`c)`c=3D250;`ut()`Ct`0vo,id`1,trk=3D1,tm`i,sed=3DMath&&@Z#5?@Z#C@"=0A= +"Z#5()*$k00000000000):#J`X(),$8=3D's'+@Z#C#J`X()/10800000)%10+sed,y=3Dtm= @R$U),vt=3Dtm@RDate($c^HMonth($c'$3y+1900:y)+' = ^HHour$d:^HMinute$d:^HSecond$d = ^HDay()+#b#J`XzoneO$D(),^l,^4=3Ds.g^4(),ta`l,q`l,qs`l,#6"=0A= +"`l,vb`B#L^1`Iuns(`Im_ll()`5!s.td){`Ptl=3D^4`M,a,o,i,x`l,c`l,v`l,p`l,bw`= l,bh`l,^N0',k=3D^e^pcc`G@i',0@0,hp`l,ct`l,pn=3D0,ps`5^D&&^D.prototype){^N= 1'`5j.m#D){^N2'`5tm.setUTCDate){^N3'`5^g^7^n&&`S#d^N4'`5pn."=0A= +"toPrecisio@t^N5';a`K`5a.forEach){^N6';i=3D0;o`B;^l`7'o`G`Pe,i=3D0@6i=3D= new = Iterator(o)`d}`3i^Vi=3D^l(o)`5i&&i.next)^N7'}}}}`m`S>=3D4)x=3D^rwidth+'x'= +^r#3`5s.isns||s.^m`F`S>=3D3$i`p(@0`5`S>=3D4){c=3D^rpixelDepth;bw=3D`"=0A= +"H#K@B;bh=3D`H#K^k}}$M=3Ds.n.p^S}`6^g`F`S>=3D4$i`p(@0;c=3D^r^C`5`S#d{bw=3D= s.d.^B`V.o$D@B;bh=3Ds.d.^B`V.o$D^k`5!s.^n^7b){^l`7's`Gtl`G`Pe,hp=3D0`vh$t= \");hp=3Ds.b.isH$t(tl)?\"Y\":\"N\"`d}`3hp^Vhp=3D^l(s,tl);^l`7's`G`Pe,"=0A= +"ct=3D0`vclientCaps\");ct=3Ds.b.@d`o^2`d}`3ct^Vct=3D^l(s$X`er`l`m$M)^0pn= <$M`8&&pn<30){ps=3D^s$M[pn].@4@7#X`5p`4ps)<0)p+=3Dps;pn++}s.^c=3Dx;s.^C=3D= c;s.`t^u=3Dj;s.`p=3Dv;s.`z@G=3Dk;s.^9@B=3Dbw;s.^9^k=3Dbh;s.@d`o^2=3Dct;s.= @5=3Dhp"=0A= +";s.p^S=3Dp;s.td=3D1`m$0{`b^1,`G$L2',vb`Ipt(^1,`G$L1',$0`ms.useP^S)s.doP= ^S(s);`Pl=3D`H`M,r=3D^4.^B.`a`5!s.^P)s.^P=3Dl^q?l^q:l`5!s.`a@Us._1_`a^z`a= =3Dr;s._1_`a=3D1`m(vo&&$Q)#V`Rm('d'#U`Rm('g')`5s.@M||^G){`Po=3D^G?^G:"=0A= +"s.@M`5!o)`3'';`Pp=3Ds.#O`r,w=3D1,^K,@q,x=3D^8t,h,l,i,oc`5^G$5=3D=3D^G){= ^0o@Un$w$YBODY'){o=3Do^A`V?o^A`V:o^ANode`5!o)`3'';^K;@q;x=3D^8t}oc=3Do.`q= ?''+o.`q:''`5(oc`4$P>=3D0$5c`4\"^xoc(\")<0)||oc`4$q>=3D0)`3''}ta=3Dn?o$m:= 1;"=0A= +"h$2i=3Dh`4'?^Vh=3Ds.`Q@s^D||i<0?h:h`20,i);l=3Ds.`Q`r;t=3Ds.`Q^2?s.`Q^2`= 9:s.lt(h)`5t^ah||l))q+=3D$F=3D@M_'+(t`Ud$b`Ue'?@a(t):'o')+(h?$Fv1`Zh)`k(l= ?$Fv2`Zl):'^V`etrk=3D0`5s.^L@e`F!p$es.^P;w=3D0}^K;i=3Do.sourceIndex`5@F"=0A= +"')@v@F^Vx=3D1;i=3D1`mp&&n$w)qs=3D'&pid`Z^sp,255))+(w#Wpidt$uw`k'&oid`Z^= sn@7)+(x#Woidt$ux`k'&ot`Zt)+(i#Woi$ui#e}`m!trk@Uqs)`3'';$1=3Ds.vs(sed)`5t= rk`F$1)#6=3Ds.mr($8,(vt#Wt`Zvt)`ks.hav()+q+(qs?qs:s.rq(^5)),0,i"=0A= +"d,ta);qs`l;`Rm('t')`5s.p_r)s.p_r(`I`a`l}^I(qs);^Q`u($0;`m$0`b^1,`G$L1',= vb`I@M=3D^G=3Ds.`Q`r=3Ds.`Q^2=3D`H`j''`5s.pg)`H^x@M=3D`H^xeo=3D`H^x`Q`r=3D= `H^x`Q^2`l`5!id@Us.tc^ztc=3D1;s.flush`T()}`3#6`Ctl`0o,t,n,vo`1;s.@M=3D"=0A= +"$Co`I`Q^2=3Dt;s.`Q`r=3Dn;s.t($0}`5pg){`H^xco`0o){`P^t\"_\",1,$a`3$Co)`C= wd^xgs`0u@t`P^tun,1,$a`3s.t()`Cwd^xdc`0u@t`P^tun,$a`3s.t()}}@8=3D(`H`M`h`= 9`4$Bs@H0`Id=3D^B;s.b=3Ds.d.body`5s.d@R`V#R`r^zh=3Ds.d@R`V#R`r('H"=0A= +"EAD')`5s.h)s.h=3Ds.h[0]}s.n=3Dnavigator;s.u=3Ds.n.userAgent;@c=3Ds.u`4'= N$r6/^V`Papn$W`r,v$W^u,ie=3Dv`4#A'),o=3Ds.u`4'@Y = '),i`5v`4'@Y@H0||o>0)apn=3D'@Y';^g$N`UMicrosoft Internet = Explorer'`Iisns$N`UN$r'`I^m$N`U@Y'"=0A= +"`I^n=3D(s.u`4'Mac@H0)`5o>0)`S`ws.u`2o+6));`6ie>0){`S=3D^Ji=3Dv`2ie+5))`= 5`S>3)`S`wi)}`6@c>0)`S`ws.u`2@c+10));`e`S`wv`Iem=3D0`5^D#Q^v){i=3D^o^D#Q^= v(256))`E(`Iem=3D(i`U%C4%80'?2:(i`U%U0$k'?1:0))}s.sa(un`Ivl_l=3D'^U"=0A= +",`YID,vmk,`Y@S,`D,`D^j,ppu,@L,`Y`r$O,c`L,`z@E,#O`r,^P,`a,@O$zl@p^R,`G`I= vl_t=3D^R+',^w,$j,server,#O^2,#E`oID,purchaseID,$9,state,zip,#4,products,= `Q`r,`Q^2';@j`Pn=3D1;n<51;n#T@D+=3D',prop@I,eVar@I,hier@I,l"=0A= +"ist$g^R2=3D',tnt,pe#91#92#93,^c,^C,`t^u,`p,`z@G,^9@B,^9^k,@d`o^2,@5,p^S= ';@D+=3D^R2;@n@p@D,`G`Ivl_g=3D@D+',`N,`N^j,`NBase,fpC`L,@Q`T,#2,`Y^W,`Y^W= #P`OSele`o,`OList,`OM#D,^LDow^MLinks,^L@K,^L@e,`Q@s^D,`QDow"=0A= +"^MFile^2s,`QEx`s,`QIn`s,`Q@gVa$l`Q@g^Ys,`Q`rs,@M,eo,_1_`a$zg@p^1,`G`Ipg= =3Dpg#L^1)`5!ss)`Hs()",w=3Dwindow,l=3Dw.s_c_il,n=3Dnavigator,u=3Dn.userAg= ent,v=3Dn.appVersion,e=3Dv.indexOf('MSIE = '),m=3Du.indexOf('Netscape6/'),a,i,s;if(un){un=3Dun.toLowerCase();if(l)fo= r(i=3D0;i=3D0){j=3Dx.indexOf(d,i);a[a.length]=3Dx.subst"=0A= +"ring(i,j<0?x.length:j);i=3Dj;if(i>=3D0)i+=3Dd.length}}return = a");w.s_jn=3Dnew Function("a","d","var = x=3D'',i,j=3Da.length;if(a&&j>0){x=3Da[0];if(j>1){if(a.join)x=3Da.join(d)= ;else for(i=3D1;i0){d=3Dx.substring= (0,i);x=3Dx.substring(i+2);l=3Ds_sp(l,'');for(i=3D0;i<62;i++)l2[l[i]]=3Di= ;t=3Ds_sp(t,'');d"=0A= +"=3Ds_sp(d,'~');i=3D0;while(i<5){v=3D0;if(x.indexOf(t[i])>=3D0) = {x2=3Ds_sp(x,t[i]);for(j=3D1;j=3D0)x=3Ds_rep(x,w,t[i]);i++;b+=3D62}}}return = x");w.s_fe=3Dnew Function("c","return = s_rep(s_rep(s_rep(c,'\\\\','\\\\\\\\'),'\"','\\\\\"'),\"\\n\",\"\\\\n\")"= );w.s_fa=3Dnew Function("f","var = s=3Df.indexOf('(')+1,e=3Df.indexOf(')'),a=3D'',c;while(s>=3D0&&s=3D0){s++;d=3D1;q= =3D'';x=3D0;f=3Dc.substring(s);a=3Ds_fa(f);e=3Do=3Dc.indexOf('{',s);e++;w= hile(d>0){h=3Dc.substring(e,e+1);if(q){i"=0A= +"f(h=3D=3Dq&&!x)q=3D'';if(h=3D=3D'\\\\')x=3Dx?0:1;else = x=3D0}else{if(h=3D=3D'\"'||h=3D=3D\"'\")q=3Dh;if(h=3D=3D'{')d++;if(h=3D=3D= '}')d--}if(d>0)e++}c=3Dc.substring(0,s)+'new = Function('+(a?a+',':'')+'\"'+s_fe(c.substring(o+1,e))+'\")"=0A= +"'+c.substring(e+1);s=3Dc.indexOf('=3Dfunction(')}return = c;");c=3Ds_d(c);if(e>0){a=3DparseInt(i=3Dv.substring(e+5));if(a>3)a=3Dpar= seFloat(i)}else if(m>0)a=3DparseFloat(u.substring(m+10));else = a=3DparseFloat(v);if(a>=3D5&&v.indexOf('Opera')<0&&u.indexOf('Opera')<0){= w.s_c=3Dnew Function("un","pg","ss","var s=3Dthis;"+c);return new = s_c(un,pg,ss)}else s=3Dnew Function("un","pg","ss","var s=3Dnew = Object;"+s_ft(c)+";return s");return s(un,pg,ss)} ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/modletInclude/sub_navigation_dropdown/subnav.js =0A= sfHover=3Dfunction(){var = sfEls=3Ddocument.getElementById("sub_nav").getElementsByTagName("LI");for= (var = i=3D0;i0){i= f(navigator.plugins["Shockwave Flash 2.0"]||navigator.plugins["Shockwave = Flash"]){var swVer2=3Dnavigator.plugins["Shockwave Flash 2.0"]?" = 2.0":"";var flashDescription=3Dnavigator.plugins["Shockwave = Flash"+swVer2].description;var descArray=3DflashDescription.split(" = ");var tempArrayMajor=3DdescArray[2].split(".");var = versionMajor=3DtempArrayMajor[0];var = versionMinor=3DtempArrayMajor[1];var = versionRevision=3DdescArray[3];if(versionRevision=3D=3D""){versionRevisio= n=3DdescArray[4];}=0A= if(versionRevision[0]=3D=3D"d"){versionRevision=3DversionRevision.substri= ng(1);}else = if(versionRevision[0]=3D=3D"r"){versionRevision=3DversionRevision.substri= ng(1);if(versionRevision.indexOf("d")>0){versionRevision=3DversionRevisio= n.substring(0,versionRevision.indexOf("d"));}}else = if(versionRevision[0]=3D=3D"b"){versionRevision=3DversionRevision.substri= ng(1);}=0A= var flashVer=3DversionMajor+"."+versionMinor+"."+versionRevision;}}=0A= else = if(navigator.userAgent.toLowerCase().indexOf("webtv/2.6")!=3D-1)flashVer=3D= 4;else = if(navigator.userAgent.toLowerCase().indexOf("webtv/2.5")!=3D-1)flashVer=3D= 3;else = if(navigator.userAgent.toLowerCase().indexOf("webtv")!=3D-1)flashVer=3D2;= else if(isIE&&isWin&&!isOpera){flashVer=3DControlVersion();}=0A= return flashVer;}=0A= function DetectFlashVer(reqMajorVer,reqMinorVer,reqRevision)=0A= {versionStr=3DGetSwfVer();if(versionStr=3D=3D-1){return false;}else = if(versionStr!=3D0){if(isIE&&isWin&&!isOpera){tempArray=3DversionStr.spli= t(" = ");tempString=3DtempArray[1];versionArray=3DtempString.split(",");}else{v= ersionArray=3DversionStr.split(".");}=0A= var versionMajor=3DversionArray[0];var = versionMinor=3DversionArray[1];var = versionRevision=3DversionArray[2];if(versionMajor>parseFloat(reqMajorVer)= ){return true;}else = if(versionMajor=3D=3DparseFloat(reqMajorVer)){if(versionMinor>parseFloat(= reqMinorVer))=0A= return true;else = if(versionMinor=3D=3DparseFloat(reqMinorVer)){if(versionRevision>=3Dparse= Float(reqRevision))=0A= return true;}}=0A= return false;}}=0A= function AC_AddExtension(src,ext)=0A= {var qIndex=3Dsrc.indexOf('?');if(qIndex!=3D-1)=0A= {var = path=3Dsrc.substring(0,qIndex);if(path.length>=3Dext.length&&path.lastInd= exOf(ext)=3D=3D(path.length-ext.length))=0A= return src;else=0A= return src.replace(/\?/,ext+'?');}=0A= else=0A= {if(src.length>=3Dext.length&&src.lastIndexOf(ext)=3D=3D(src.length-ext.l= ength))=0A= return src;else=0A= return src+ext;}}=0A= function AC_Generateobj_SAT(objAttrs,params,embedAttrs)=0A= {var str=3D'';if(isIE&&isWin&&!isOpera)=0A= {str+=3D'';for(var i in params)=0A= str+=3D' = ';str+=3D'';}else{str+=3D' ';}=0A= return str;}=0A= function AC_FL_RunContent_SAT(){var ret=3DAC_GetArgs=0A= (arguments,".swf","movie","clsid:d27cdb6e-ae6d-11cf-96b8-444553540000","a= pplication/x-shockwave-flash");return = AC_Generateobj_SAT(ret.objAttrs,ret.params,ret.embedAttrs);}=0A= function AC_GetArgs(args,ext,srcParamName,classid,mimeType){var = ret=3Dnew Object();ret.embedAttrs=3Dnew Object();ret.params=3Dnew = Object();ret.objAttrs=3Dnew Object();for(var = i=3D0;i0){$("divTripplannerMax").style.display=3D"block";$("divTrip= plannerMax").innerHTML=3DmaximisedLoadNeedFlash;$("divNeedFlash").style.d= isplay=3D"block";}else{var = cookieEnabled=3D(navigator.cookieEnabled)?true:false;if(typeof = navigator.cookieEnabled=3D=3D"undefined"&&!cookieEnabled){document.cookie= =3D"testcookie";cookieEnabled=3D(document.cookie.indexOf("testcookie")!=3D= -1)?true:false;}=0A= if(!cookieEnabled){$("divTripplannerMin").innerHTML=3D"You do not have = cookie enabled, this prevents the trip planner from functioning = correctly."=0A= $("divTripplannerMin").style.display=3D"block";}else{var = tripState=3DgetCookie(TP_WINDOW_STATE);var = stateStr=3Dnull;if(tripState!=3Dnull&&tripState.length!=3D0){stateStr=3Dt= ripState;}else{if(pageName!=3D"home"){stateStr=3D"minimised";}else{stateS= tr=3D"maximised_intro";}}=0A= self.showState(stateStr);}}}=0A= return new constructorFn();}=0A= ccs.tripPlanner.NavBar=3Dfunction(){var self;var flagShadowTop;var = flagShadowLeft;var flagTop;var DEBUG;var getCount;var wishlist;function = constructorFn(){self=3Dthis;registerOnLoad(self.init);self.getCount=3D0;w= ishlist=3D"";}=0A= constructorFn.prototype.init=3Dfunction(){self.flagShadowTop=3DparseInt($= ("minFlagShadow").style.top);self.flagShadowLeft=3DparseInt($("minFlagSha= dow").style.left);self.flagTop=3DparseInt($("minFlag").style.top);self.ge= tWishlistForSession();}=0A= constructorFn.prototype.setDebugMode=3Dfunction(){self.DEBUG=3Dtrue;}=0A= constructorFn.prototype.show=3Dfunction(){if($("divTripplannerMin").style= .display!=3D"block"){$("divTripplannerMin").style.display=3D"block";}=0A= self.updateDisplayCount();}=0A= constructorFn.prototype.clearWishlist=3Dfunction(){self.wishlist=3D"";}=0A= constructorFn.prototype.getWishlistAsList=3Dfunction(){var = idList=3Dself.wishlist;if(idList=3D=3Dnull){idList=3D"";}=0A= if(self.DEBUG){self.getCount++;$("divGetWishlist").value=3Dnew Date()+" = - "+self.getCount+" :"+idList+"\n"+$("divGetWishlist").value+"\n";}=0A= return idList;}=0A= constructorFn.prototype.getWishlistAsArray=3Dfunction(){var = idList=3Dself.getWishlistAsList();var arr=3Dnew = Array();if(idList.length>0){arr=3DidList.split(",");}=0A= return arr;}=0A= constructorFn.prototype.updateDisplayCount=3Dfunction(){$("minWishlistCou= nt").innerHTML=3Dself.getWishlistAsArray().length+"";}=0A= constructorFn.prototype.inWishlist=3Dfunction(articleId){var = arr=3Dself.getWishlistAsArray();var = ret=3Dfalse;for(i=3D0;i0){if= (self.DEBUG){$("divSetWishlist").value=3Dnew = Date()+":"+list+"\n"+$("divSetWishlist").value+"\n";}=0A= self.saveWishlist(list);self.updateDisplayCount();}}=0A= constructorFn.prototype.removeFromWishlist=3Dfunction(articleId){var = arr=3Dself.getWishlistAsArray();var = newlist=3D"";for(i=3D0;i0?",":"")+arr[i];}}=0A= self.saveWishlist(newlist);}=0A= constructorFn.prototype.saveWishlist=3Dfunction(list){self.wishlist=3Dlis= t;self.saveForSession();}=0A= constructorFn.prototype.saveForSession=3Dfunction(){if(self.wishlist){new= = Ajax.Request(ccs.contextPath+'/json/'+ccs.appName+'/en/modules/tripplanne= r/set_session_wishlist.json?wl=3D'+escape(self.wishlist),{onSuccess:funct= ion(reply){}})}}=0A= constructorFn.prototype.getWishlistForSession=3Dfunction(){if(!ccs.tripPl= anner.main.tripplannerMaximised){new = Ajax.Request(ccs.contextPath+'/json/'+ccs.appName+'/en/modules/tripplanne= r/get_session_wishlist.json',{onSuccess:function(reply){try{var = retVal=3Dreply.responseText.evalJSON();if(!retVal.error){self.wishlist=3D= retVal.wishlist;self.updateDisplayCount();}}catch(e){self.wishlist=3D"";}= }})}}=0A= constructorFn.prototype.addToWishlist=3Dfunction(articleId){self.animateF= lag();self.addToWishlistNoAnim(articleId);}=0A= constructorFn.prototype.addToWishlistNoAnim=3Dfunction(articleId){if(!sel= f.inWishlist(articleId)){var = list=3Dself.getWishlistAsList();list+=3D(list.length>0?",":"")+articleId;= self.saveWishlist(list);}=0A= self.updateDisplayCount();}=0A= constructorFn.prototype.maximise=3Dfunction(){ccs.tripPlanner.main.showMa= ximised();}=0A= constructorFn.prototype.animateFlag=3Dfunction(){var howHigh=3D30;var = seq=3Dnew Sequence();var = flagWidth=3DparseInt($("minFlag").style.width);var = flagHeight=3DparseInt($("minFlag").style.height);var duration=3D0.5;var = t1=3Dnew = Tween($("minFlagShadow").style,'top',Tween.regularEaseOut,self.flagShadow= Top,self.flagShadowTop-howHigh,duration,'px');var t2=3Dnew = Tween($("minFlagShadow").style,'left',Tween.regularEaseOut,self.flagShado= wLeft,self.flagShadowLeft-howHigh,duration,'px');var t3=3Dnew = Tween($("minFlag").style,'top',Tween.regularEaseOut,self.flagTop,self.fla= gTop-howHigh,duration,'px');var par=3Dnew = Parallel();par.addChild(t1);par.addChild(t2);par.addChild(t3);var = t1Reverse=3Dnew = Tween($("minFlagShadow").style,'top',Tween.regularEaseIn,self.flagShadowT= op-howHigh,self.flagShadowTop,duration,'px');var t2Reverse=3Dnew = Tween($("minFlagShadow").style,'left',Tween.regularEaseIn,self.flagShadow= Left-howHigh,self.flagShadowLeft,duration,'px');var t3Reverse=3Dnew = Tween($("minFlag").style,'top',Tween.regularEaseIn,self.flagShadowTop-how= High,self.flagTop,duration,'px');var parReverse=3Dnew = Parallel();parReverse.addChild(t1Reverse);parReverse.addChild(t2Reverse);= parReverse.addChild(t3Reverse);seq.addChild(par);seq.addChild(parReverse)= ;seq.start();}=0A= return new constructorFn();}=0A= function debug(obj){var x=3D'Dump of '+obj+'\r\n';for(i in obj){x+=3Di+' = =3D '+obj[i]+'\r\n';}=0A= prompt('Object dump - copy & paste into text editor',x);}=0A= ccs.tripPlanner.main=3Dnew = ccs.tripPlanner.Main();ccs.tripPlanner.navBar=3Dnew = ccs.tripPlanner.NavBar();document.onmousemove=3Dccs.tripPlanner.main.mous= eMove;ccs.tripPlanner.main.addPinImage(); ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://s7.addthis.com/js/200/addthis_widget.js /* (c) 2008, 2009 Add This, LLC */=0A= var addthis_conf=3D{ver:200};function = addthis_invoke(s,u,t,p){addthis_config.username=3Dp||_ate.pub();addthis_s= hare.url=3D(u||w.addthis_url);addthis_share.title=3D(t||w.addthis_title);= var = w=3Dwindow,lu=3Daddthis_share.url.toLowerCase(),lt=3Daddthis_share.title.= toLowerCase();if(lu=3D=3D=3D""||lu=3D=3D=3D"[url]"){addthis_share.url=3Dl= ocation.href;}if(lt=3D=3D=3D""||lt=3D=3D=3D"[title]"){addthis_share.title= =3Ddocument.title;}_ate.as(s);return false;}if(!window._ate){var = _atd=3D"www.addthis.com/",_atr=3D"//s7.addthis.com/",_euc=3DencodeURIComp= onent,_duc=3DdecodeURIComponent,_atu=3D"undefined",_atc=3D{dr:0,ver:250,l= oc:0,enote:"",cwait:500,tamp:1,samp:0.01,camp:1,vamp:1,addr:-1,addt:1,xfl= :!!window.addthis_disable_flash,abf:!!window.addthis_do_ab};(function(){t= ry{var = l=3Dwindow.location;if(l.protocol.indexOf("file")=3D=3D=3D0){_atr=3D"http= :"+_atr;}if(l.hostname.indexOf("localhost")!=3D-1){_atc.loc=3D1;}}catch(e= ){}var = ua=3Dnavigator.userAgent.toLowerCase(),d=3Ddocument,w=3Dwindow,wa=3Dw.add= EventListener,we=3Dw.attachEvent,dl=3Dd.location,b=3D{win:/windows/.test(= ua),chr:/chrome/.test(ua),iph:/iphone/.test(ua),saf:(/webkit/.test(ua))&&= !(/chrome/.test(ua)),opr:/opera/.test(ua),msi:(/msie/.test(ua))&&!(/opera= /.test(ua)),ffx:/firefox/.test(ua),ie6:/msie = 6.0/.test(ua),mod:-1},_9=3D{isBound:false,isReady:false,readyList:window.= addthis_onload||[],onReady:function(){if(!_9.isReady){_9.isReady=3Dtrue;v= ar l=3D_9.readyList;for(var = fn=3D0;fn-1){r.onReady();return= ;}if(b.msi&&window=3D=3Dtop){(function(){if(r.isReady){return;}try{d.docu= mentElement.doScroll("left");}catch(error){setTimeout(arguments.callee,0)= ;return;}r.onReady();})();}if(b.opr){d.addEventListener("DOMContentLoaded= ",function(){if(r.isReady){return;}for(var = i=3D0;i25){dr=3Ddr.substr(0,25);}}new = Image().src=3D_atr+"live/t00/"+i+".gif?"+(a.uid!=3D=3Dnull?"uid=3D"+a.uid= +"&":"")+a.ran()+"&"+a.cst(c)+(a.pub()?"&pub=3D"+a.pub():"")+(dr?"&dr=3D"= +_euc(dr):"");}},cuid:function(){return(_17.sttm&_17.max).toString(16)+(M= ath.floor(Math.random()*_17.max)).toString(16);},ssid:function(){if(_17.s= id=3D=3D=3D0){_17.sid=3D_17.cuid();}return = _17.sid;},sev:function(id,_21){_17.pix=3D"sev-"+(typeof(id)!=3D=3D"number= "?_euc(id):id);_17.svt.push(id+";"+_17.off());if(_21=3D=3D=3D1){_17.xmi(t= rue);}else{_17.sxm(true);}},cev:function(k,v){_17.pix=3D"cev-"+_euc(k);_1= 7.cvt.push(_euc(k)+"=3D"+_euc(v)+";"+_17.off());_17.sxm(true);},sxm:funct= ion(b){if(_17.tmo!=3D=3Dnull){clearTimeout(_17.tmo);}if(b){_17.tmo=3D_17.= sto("_ate.xmi(false)",_17.wait);}},sto:function(c,t){return = setTimeout(c,t);},sta:function(){var = a=3D_17;return"AT-"+(a.pub()?a.pub():"unknown")+"/-/"+a.ab+"/"+a.ssid()+"= /"+(a.seq++)+(a.uid!=3D=3Dnull?"/"+a.uid:"");},xmi:function(_28){var = a=3D_17,h=3Da.dl?a.dl.hostname:"";if(!a.uid){a.dck("X"+a.cuid());}else{a.= coo();}if(a.cvt.length+a.svt.length>0){a.sxm(false);if(a.seq=3D=3D=3D1){a= .cev("pin",a.inst);}if(_atc.xtr){return;}if(h.indexOf(".gov")>-1||h.index= Of(".mil")>-1){_atc.xck=3D1;}var = urp=3Da.pix+"-"+a.ran()+".png?ev=3D"+_17.sta()+"&se=3D"+a.svt.join(",")+"= &ce=3D"+a.cvt.join(",")+(_atc.xck?"&xck=3D1":""),url=3Da.evu+urp;a.cvt=3D= [];a.svt=3D[];if(_28){var = d=3Ddocument,i=3Dd.ce("iframe");i.id=3D"_atf";i.src=3Durl;_17.opp(i.style= );d.body.appendChild(i);i=3Dd.getElementById("_atf");}else{(new = Image()).src=3Durl;}}},loc:function(){return = _atc.loc;},opp:function(st){st.width=3D"1px";st.height=3D"1px";st.positio= n=3D"absolute";st.zIndex=3D100000;},pub:function(){return = window.addthis_config&&addthis_config.username?_euc(addthis_config.userna= me):(window.addthis_pub||"");},plo:[],lad:function(x){_17.plo.push(x);},l= ng:function(al){var = d=3Ddocument;if(al&&(al.toLowerCase()).indexOf("en")!=3D=3D0&&!_17.pll){v= ar = o=3Dd.ce("script");o.src=3D_atr+"static/r07/lang00.js";d.gn("head")[0].ap= pendChild(o);_17.pll=3Do;}},jlo:function(){try{var = d=3Ddocument,al=3D(window.addthis_language||addthis_config.ui_language||(= _17.bro.msi?navigator.userLanguage:navigator.language));_17.lng(al);if(!_= 17.pld){var = m=3Dd.ce("script");m.src=3D_atr+"static/r07/menu29.js";d.gn("head")[0].ap= pendChild(m);_17.pld=3Dm;}}catch(e){}},igv:function(u,t){if(!w.addthis_sh= are){w.addthis_share=3D{url:w.addthis_url||u,title:w.addthis_title||t};}i= f(!w.addthis_config){w.addthis_config=3D{username:w.addthis_pub};}else{if= (addthis_config.data_use_flash=3D=3D=3Dfalse){_atc.xfl=3D1;}if(addthis_co= nfig.data_use_cookies=3D=3D=3Dfalse){_atc.xck=3D1;}}},lod:function(arg){t= ry{var = w=3Dwindow,a=3D_17,hp=3D0,f=3D((arg=3D=3D=3D1||w.addthis_load_flash)&&!_a= tc.abf),dr=3Dd.referer||d.referrer||"",du=3Ddl?dl.href:null,si=3Ddu?du.in= dexOf("sms_ss"):-1,al=3D((w.addthis_language||(w.addthis_config?w.addthis= _config.ui_language:null)||(_17.bro.msi?navigator.userLanguage:navigator.= language)).split("-"))[0],_42=3D"email,favorites,print,delicious,digg,goo= gle,myspace,live,facebook,stumbleupon,twitter,more",_43=3D{en:4,es:3,it:4= ,nl:2,ja:2,fr:2,pt:2,tr:2,de:3},_44=3D_43[al],lks=3Dd.getElementsByTagNam= e("link");for(var i=3D0;i=3D0&&!a.sub){a.sev("20");a.cev("plo",Math.round= (1/_atc.samp));if(a.dr){a.cev("pre",a.dr);hp=3D1;}}if(a.camp>=3D0&&du&&dl= &&dl.protocol&&(dr.indexOf("com/search")>-1)&&(dl.protocol.indexOf("https= ")=3D=3D-1)){dr=3Ddr.split("?").pop();var = t=3Ddr.split("&"),fnd=3D0,quo=3D-1,ts=3D"";for(var = i=3D0;i-1){var = sm=3Ddu.substr(si),am=3Dsm.indexOf("&");if(am>-1){sm=3Dsm.substr(0,am);}s= m=3D(sm.split("=3D"))[1];if(a.vamp>=3D0&&!a.sub&&sm.length){a.cev("plv",M= ath.round(1/_atc.vamp));a.cev("rsc",sm);}}a.img(_atc.ver+"lo","2");}if(a.= plo.length>0){a.jlo();}if(a.swf&&!_atc.xfl&&!(a.loc())&&!_atc.abf&&(f||a.= uid=3D=3D=3Dnull||(a.uid!=3D=3D"anonymous"&&a.oot&&((new = Date()).getTime()-a.oot>60480000)))){a.uoo();var = _4e=3Dfunction(o,n,v){var = c=3Dd.createElement("param");c.name=3Dn;c.value=3Dv;o.appendChild(c);};va= r = o=3Dd.createElement("object");a.opp(o.style);o.id=3D"atff";if(b.msi){o.cl= assid=3D"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000";_4e(o,"movie",a.swf)= ;}else{o.data=3Da.swf;o.quality=3D"high";o.type=3D"application/x-shockwav= e-flash";}_4e(o,"wmode","transparent");_4e(o,"allowScriptAccess","always"= );d.body.insertBefore(o,d.body.firstChild);if(b.msi){o.outerHTML+=3D" = ";}}}catch(e){}},unl:function(){var = a=3D_17;if(a.samp>=3D0&&!a.sub&&!_atc.abf){a.sev("21",1);a.cev("pun",1/_a= tc.samp);}return true;},kck:function(k){var = d=3Ddocument;if(d.cookie){d.cookie=3Dk+"=3D ; expires=3DTue, 31 Mar 2009 = 05:47:11 UTC; path=3D/";}},rck:function(k){var = d=3Ddocument;if(d.cookie){var ck=3Dd.cookie.split(";");for(var = i=3D0;i=3D0){return = c.substring(x+(k.length+1));}}}return;},uoo:function(){_17.sck("_csoot",(= new = Date().getTime()));},coo:function(f){if(_17.uid=3D=3D"anonymous"&&!_17.oo= t){_17.xck=3D1;_17.uoo();}},dck:function(c){_17.uid=3Dc;_17.sck("_csuid",= c);_17.coo();},gov:function(){var = h=3D_17.dl?_17.dl.hostname:"";if(h.indexOf(".gov")>-1||h.indexOf(".mil")>= -1){_atc.xck=3D1;_atc.xfl=3D1;}var = p=3D_17.pub(),x=3D["usarmymedia","gobiernousa","govdelivery"];for(i in = x){if(p=3D=3Dx[i]){_atc.xck=3D1;_atc.xfl=3D1;break;}}},sck:function(u,v,s= ){_17.gov();if(!_atc.xck){d.cookie=3Du+"=3D"+v+(!s?"; expires=3DWed, 04 = Oct 2028 03:19:53 GMT":"")+"; = path=3D/";}},fcl:null,asetup:function(x){var = a=3D_17;try{if(x!=3D=3Dnull&&x!=3D=3D_atu){a.dck(x);}if(a.fcl){a.fcl();}}= catch(e){}return = x;},ao:function(elt,_69,_6a,_6b,_6c,_6d){_17.lad(["open",elt,_69,_6a,_6b,= _6c,_6d]);_17.jlo();return = false;},ac:function(){},as:function(s,cf,sh){_17.lad(["send",s,cf,sh]);_1= 7.jlo();}},a=3D_17;w._ate=3Da;w._adr=3Dr;d.ce=3Dd.createElement;d.gn=3Dd.= getElementsByTagName;r.bindReady();if(wa){wa("unload",a.unl,false);}else{= if(we){we("onunload",a.unl);}else{w.onunload=3Da.unl;}}if(!_atc.ost){if(!= w.addthis_conf){w.addthis_conf=3D{};}for(var i in = addthis_conf){_atc[i]=3Daddthis_conf[i];}_atc.ost=3D1;}r.append(a.lod);if= (d.cookie){var ck=3Dd.cookie.split(";");for(var = i=3D0;i=3D0= ){_17.uid=3Dc.substring(x+7);}else{if(y>=3D0){_17.oot=3Dc.substring(y+7);= }}}}try{var = l=3Dd.ce("link");l.rel=3D"stylesheet";l.type=3D"text/css";l.href=3D_atr+"= static/r07/widget13.css";l.media=3D"all";d.gn("head")[0].appendChild(l);}= catch(e){}var = ss=3Dd.gn("script"),s=3Dss[ss.length-1],q=3Ds.src.replace(/^[^\?]+\??/,""= ),pq=3Dfunction(q){var p=3D{};if(!q){return p;}var = ps=3Dq.split(/[;&]/);for(var i=3D0;i");w._ate.igv();w._ate.lad(["span",rc,addthis_shar= e.url||"[url]",addthis_share.title||"[title]"]);}if(w.addthis_clickout){_= 17.lad(["cout"]);}}catch(e){}})();function = addthis_open(elt,_84,_85,_86,_87,_88){if(typeof = _87=3D=3D"string"){_87=3Dnull;}return = _ate.ao(elt,_84,_85,_86,_87,_88);}function = addthis_close(){_ate.ac();}function = addthis_sendto(s,cf,sh){_ate.as(s,cf,sh);return = false;}if(_atc.dr){_adr.onReady();}}else{_ate.inst++;}if(_atc.abf){addthi= s_open(document.getElementById("ab"),"emailab",window.addthis_url||"[URL]= ",window.addthis_title||"[TITLE]");} ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/modletInclude/got_a_question/gaq.js =0A= if(window.cambrient=3D=3Dnull){window.cambrient=3Dnew Object();}=0A= cambrient.GotAQuestion=3Dfunction(){var self;var = templatePath=3D"";function constructorFn(){self=3Dthis;}=0A= constructorFn.prototype.searchRegion=3Dfunction(region_list_page){var = selectedValue=3Ddocument.getElementById('region').options[document.getEle= mentById('region').selectedIndex].value;console.log("searchRegion > = selectedValue: = "+selectedValue);location.href=3Dregion_list_page+"?categorylistsearch=3D= cl_results&category_id=3D"+selectedValue;}=0A= constructorFn.prototype.swapGAQState=3Dfunction(){var = isOpen=3D(document.getElementById('gaq_open').style.display!=3D'none');if= (isOpen){if(document.getElementById('gaq_open_expert').style.display!=3D'= none'){Effect.BlindUp("gaq_open_expert");}=0A= Effect.BlindUp("gaq_open");document.getElementById('gaq_title_img').src=3D= this.templatePath+"images/got_a_question_closed.gif";setCookie("gaq_state= ","closed");}else{document.getElementById("gaq_open_questions").style.dis= play=3D"none";Effect.BlindDown("gaq_open");document.getElementById('gaq_t= itle_img').src=3Dthis.templatePath+"images/got_a_question_open.gif";setCo= okie("gaq_state","open");if(document.getElementById('subscribe_for_great_= deals_open').style.display!=3D'none'){subscribe();}}}=0A= constructorFn.prototype.switchExpert=3Dfunction(templatePath){var = gaq_state=3DgetCookie("gaq_state");if(gaq_state!=3Dnull&&gaq_state=3D=3D"= open_expert"||gaq_state=3D=3D"open_all"){cambrient.gaq.closeExpert(templa= tePath);}else{cambrient.gaq.openExpert(templatePath);}}=0A= constructorFn.prototype.openExpert=3Dfunction(templatePath){Effect.BlindD= own("gaq_open_expert");document.getElementById('gaq_expert_img').src=3Dte= mplatePath+"images/gadget_ask_an_expert_open.gif";var = gaq_state=3DgetCookie("gaq_state");if(gaq_state!=3Dnull&&gaq_state=3D=3D"= open_question"){setCookie("gaq_state","open_all");}else{setCookie("gaq_st= ate","open_expert");}}=0A= constructorFn.prototype.closeExpert=3Dfunction(templatePath){Effect.Blind= Up("gaq_open_expert");document.getElementById('gaq_expert_img').src=3Dtem= platePath+"images/gadget_ask_an_expert_closed.gif";var = gaq_state=3DgetCookie("gaq_state");if(gaq_state!=3Dnull&&gaq_state=3D=3D"= open_all"){setCookie("gaq_state","open_question");}else{setCookie("gaq_st= ate","open");}}=0A= constructorFn.prototype.switchQuestions=3Dfunction(templatePath){var = gaq_state=3DgetCookie("gaq_state");if(gaq_state!=3Dnull&&gaq_state=3D=3D"= open_question"||gaq_state=3D=3D"open_all"){cambrient.gaq.closeQuestions(t= emplatePath);}else{cambrient.gaq.openQuestions(templatePath);}}=0A= constructorFn.prototype.openQuestions=3Dfunction(templatePath){Effect.Bli= ndDown("gaq_open_questions");document.getElementById('gaq_question_img').= src=3DtemplatePath+"images/gadget_common_questions_open.gif";var = gaq_state=3DgetCookie("gaq_state");if(gaq_state!=3Dnull&&gaq_state=3D=3D"= open_expert"){setCookie("gaq_state","open_all");}else{setCookie("gaq_stat= e","open_question");}}=0A= constructorFn.prototype.closeQuestions=3Dfunction(templatePath){Effect.Bl= indUp("gaq_open_questions");document.getElementById('gaq_question_img').s= rc=3DtemplatePath+"images/gadget_common_questions_closed.gif";var = gaq_state=3DgetCookie("gaq_state");if(gaq_state!=3Dnull&&gaq_state=3D=3D"= open_all"){setCookie("gaq_state","open_expert");}else{setCookie("gaq_stat= e","open");}}=0A= constructorFn.prototype.notHelpful=3Dfunction(){Effect.BlindDown("not_hel= pful");}=0A= constructorFn.prototype.selectDefaultRegion=3Dfunction(){var = regionSelect=3Ddocument.getElementById('region')=0A= console.log(regionSelect.options);}=0A= constructorFn.prototype.init=3Dfunction(templatePath){this.templatePath=3D= templatePath;var gaq_state=3DgetCookie("gaq_state");var = title_image=3DtemplatePath+"images/got_a_question_closed.gif";var = open_display=3D"none";var open_expert_display=3D"none";var = expert_image=3DtemplatePath+"images/gadget_ask_an_expert_closed.gif";var = open_question_display=3D"none";var = question_image=3DtemplatePath+"images/gadget_common_questions_closed.gif"= ;if(gaq_state!=3Dnull&&gaq_state=3D=3D"open"){title_image=3DtemplatePath+= "images/got_a_question_open.gif";open_display=3D"block";}else = if(gaq_state!=3Dnull&&gaq_state=3D=3D"open_question"){title_image=3Dtempl= atePath+"images/got_a_question_open.gif";open_display=3D"block";open_ques= tion_display=3D"block";question_image=3DtemplatePath+"images/gadget_commo= n_questions_open.gif";}else = if(gaq_state!=3Dnull&&gaq_state=3D=3D"open_expert"){title_image=3Dtemplat= ePath+"images/got_a_question_open.gif";open_display=3D"block";open_expert= _display=3D"block";expert_image=3DtemplatePath+"images/gadget_ask_an_expe= rt_open.gif";}else = if(gaq_state!=3Dnull&&gaq_state=3D=3D"open_all"){title_image=3DtemplatePa= th+"images/got_a_question_open.gif";open_display=3D"block";open_question_= display=3D"block";question_image=3DtemplatePath+"images/gadget_common_que= stions_open.gif";open_expert_display=3D"block";expert_image=3DtemplatePat= h+"images/gadget_ask_an_expert_open.gif";}=0A= document.getElementById('gaq_title_img').src=3Dtitle_image;document.getEl= ementById('gaq_open').style.display=3Dopen_display;document.getElementByI= d('gaq_open_questions').style.display=3Dopen_question_display;document.ge= tElementById('gaq_question_img').src=3Dquestion_image;document.getElement= ById('gaq_open_expert').style.display=3Dopen_expert_display;document.getE= lementById('gaq_expert_img').src=3Dexpert_image;}=0A= return new constructorFn();}=0A= cambrient.gaq=3Dnew cambrient.GotAQuestion(); ------=_NextPart_000_0000_01CA2724.87B3E4A0 Content-Type: application/octet-stream Content-Transfer-Encoding: quoted-printable Content-Location: http://www.southafrica.net/sat/modletInclude/product_search_form/js/main.js =0A= function = setProduct(value){document.getElementById("productSearchSelect").value=3D= value;populateSelect("region",1,null);}=0A= function = setRegion(value){document.getElementById("regionSearchSelect").value=3Dva= lue;}=0A= function populateSelect(type,level,parentId){var = elementId=3Dtype+"Level"+level;var = selectElement=3Ddocument.getElementById(elementId);var = source;if(type=3D=3D'product'){source=3DproductOptions;}else = if(type=3D=3D'region'){source=3DregionOptions;}=0A= if(level>1&&parentId!=3Dnull){source=3DgetSubTree(source,parentId);}=0A= if(selectElement.length>1){var = optionsLength=3DselectElement.length-1;for(i=3DoptionsLength;i>0;i--){sel= ectElement.options[i]=3Dnull;}}=0A= for(i=3D0;i1){selectElement.style.display=3D"block";}else{se= lectElement.style.display=3D"none";}=0A= if(parentId!=3Dnull){if(type=3D=3D'product'){setProduct(parentId);}else = if(type=3D=3D'region'){setRegion(parentId);}}}=0A= function = getSubTree(source,parentId){for(i=3D0;i');=0A= }=0A= }=0A= =0A= var newJs =3D document.createElement('script');=0A= newJs.setAttribute('type', 'text/javascript');=0A= newJs.setAttribute('src', = 'http://cdn.tripadvisor.com/js2/widget/CdsWidgets-v3625751530a.js');=0A= document.getElementsByTagName("head")[0].appendChild(newJs);=0A= =0A= function injectcdsdmo2919() {=0A= var container =3D document.getElementById('TA_cdsdmo17');=0A= if (container =3D=3D null) {=0A= var scriptTags =3D document.getElementsByTagName("script");=0A= for (var i=3D0; i=3D 0)=0A= {=0A= var msgElem =3D document.createElement('div');=0A= if (msgElem !=3D null && msgElem !=3D 'undefined')=0A= {=0A= msgElem.style.margin=3D'8px';=0A= msgElem.style.color=3D'red';=0A= msgElem.innerHTML=3D"Please check the TripAdvisor code and = install again.";=0A= var parentElem =3D scriptTags[i].parentNode;=0A= if (parentElem !=3D null && parentElem !=3D 'undefined')=0A= {=0A= parentElem.appendChild(msgElem);=0A= }=0A= break;=0A= }=0A= }=0A= }=0A= return;=0A= }=0A= =0A= var validityRegEx =3D new = RegExp('https?://([^/]+\.|)tripadvisor\.(com|co\.uk|fr|it|es|de|ie|in|jp|= se|ca|com\.br)/.*');=0A= var taServerName =3D 'tripadvisor';=0A= var valid =3D true;=0A= var linksNum =3D 0;=0A= var links =3D container.getElementsByTagName("a");=0A= for (var i=3D0; i
    ' + "Please check the TripAdvisor code and = install again." + '
    ';=0A= container.innerHTML =3D tmpStr;=0A= } else {=0A= container.innerHTML =3D '
    '+=0A= '
    '+=0A= ' '+=0A= '
    '+=0A= '
    '+=0A= '
    '+=0A= '
    '+=0A= '
    3D"TripAdvisor"
    '+=0A= '
    Eastern Cape vacation advice from real travellers
    =
    '+=0A= '
    '+=0A= '
    '+=0A= '
    Featured Hotel Review
    '+=0A= '
    Pumba Game = Reserve '+=0A= '
    '+=0A= '
    “Everything We Wished For And = More!”
    '+=0A= '
    3D"5 '+=0A= '
    '+=0A= '
    '+=0A= '17 Aug 2009  '+=0A= 'ABMTRIM, Edinburgh
    '+=0A= '
    '+=0A= '

    We have just returned from a travelling holiday in South Africa and = Pumba Game Reserve is right up there amongst our favourites. It\'s easy = to find, about an hours drive...

    '+=0A= '
    '+=0A= ' '+=0A= '
    '+=0A= '
    '+=0A= '
    '+=0A= '
    © 2009 TripAdvisor LLC. All rights = reserved.
    '+=0A= '
    '+=0A= '
    '+=0A= '';=0A= } =0A= }=0A= ------=_NextPart_000_0000_01CA2724.87B3E4A0--