//includes fleximessage
//http://webplayer.yahooapis.com/legacy/player.js
function yui_Namespace(){var a=arguments,o=null,i,j,d;for(i=0;i<a.length;++i){d=a[i].split(".");o=YAHOO;for(j=(d[0]=="YAHOO")?1:0;j<d.length;++j){o[d[j]]=o[d[j]]||{};o=o[d[j]];}}return o;}if(typeof YAHOO=="undefined"){var YAHOO={}};if(typeof YAHOO.namespace=="undefined")YAHOO.namespace=yui_Namespace;YAHOO.ympyui=YAHOO.ympyui||(function(){var YAHOO={};if(typeof YAHOO=="undefined"||!YAHOO){var YAHOO={};}YAHOO.namespace=function(){var A=arguments,E=null,C,B,D;for(C=0;C<A.length;C=C+1){D=A[C].split(".");E=YAHOO;for(B=(D[0]=="YAHOO")?1:0;B<D.length;B=B+1){E[D[B]]=E[D[B]]||{};E=E[D[B]];}}return E;};YAHOO.log=function(D,A,C){var B=YAHOO.widget.Logger;if(B&&B.log){return B.log(D,A,C);}else{return false;}};YAHOO.register=function(A,E,D){var I=YAHOO.env.modules;if(!I[A]){I[A]={versions:[],builds:[]};}var B=I[A],H=D.version,G=D.build,F=YAHOO.env.listeners;B.name=A;B.version=H;B.build=G;B.versions.push(H);B.builds.push(G);B.mainClass=E;for(var C=0;C<F.length;C=C+1){F[C](B);}if(E){E.VERSION=H;E.BUILD=G;}else{YAHOO.log("mainClass is undefined for module "+A,"warn");}};YAHOO.env=YAHOO.env||{modules:[],listeners:[]};YAHOO.env.getVersion=function(A){return YAHOO.env.modules[A]||null;};YAHOO.env.ua=function(){var C={ie:0,opera:0,gecko:0,webkit:0,mobile:null,air:0};var B=navigator.userAgent,A;if((/KHTML/).test(B)){C.webkit=1;}A=B.match(/AppleWebKit\/([^\s]*)/);if(A&&A[1]){C.webkit=parseFloat(A[1]);if(/ Mobile\//.test(B)){C.mobile="Apple";}else{A=B.match(/NokiaN[^\/]*/);if(A){C.mobile=A[0];}}A=B.match(/AdobeAIR\/([^\s]*)/);if(A){C.air=A[0];}}if(!C.webkit){A=B.match(/Opera[\s\/]([^\s]*)/);if(A&&A[1]){C.opera=parseFloat(A[1]);A=B.match(/Opera Mini[^;]*/);if(A){C.mobile=A[0];}}else{A=B.match(/MSIE\s([^;]*)/);if(A&&A[1]){C.ie=parseFloat(A[1]);}else{A=B.match(/Gecko\/([^\s]*)/);if(A){C.gecko=1;A=B.match(/rv:([^\s\)]*)/);if(A&&A[1]){C.gecko=parseFloat(A[1]);}}}}}return C;}();(function(){YAHOO.namespace("util","widget","example");if("undefined"!==typeof YAHOO_config){var B=YAHOO_config.listener,A=YAHOO.env.listeners,D=true,C;if(B){for(C=0;C<A.length;C=C+1){if(A[C]==B){D=false;break;}}if(D){A.push(B);}}}})();YAHOO.lang=YAHOO.lang||{isArray:function(B){if(B){var A=YAHOO.lang;return A.isNumber(B.length)&&A.isFunction(B.splice);}return false;},isBoolean:function(A){return typeof A==="boolean";},isFunction:function(A){return typeof A==="function";},isNull:function(A){return A===null;},isNumber:function(A){return typeof A==="number"&&isFinite(A);},isObject:function(A){return(A&&(typeof A==="object"||YAHOO.lang.isFunction(A)))||false;},isString:function(A){return typeof A==="string";},isUndefined:function(A){return typeof A==="undefined";},hasOwnProperty:function(A,B){if(Object.prototype.hasOwnProperty){return A.hasOwnProperty(B);}return!YAHOO.lang.isUndefined(A[B])&&A.constructor.prototype[B]!==A[B];},_IEEnumFix:function(C,B){if(YAHOO.env.ua.ie){var E=["toString","valueOf"],A;for(A=0;A<E.length;A=A+1){var F=E[A],D=B[F];if(YAHOO.lang.isFunction(D)&&D!=Object.prototype[F]){C[F]=D;}}}},extend:function(D,E,C){if(!E||!D){throw new Error("YAHOO.lang.extend failed, please check that "+"all dependencies are included.");}var B=function(){};B.prototype=E.prototype;D.prototype=new B();D.prototype.constructor=D;D.superclass=E.prototype;if(E.prototype.constructor==Object.prototype.constructor){E.prototype.constructor=E;}if(C){for(var A in C){D.prototype[A]=C[A];}YAHOO.lang._IEEnumFix(D.prototype,C);}},augmentObject:function(E,D){if(!D||!E){throw new Error("Absorb failed, verify dependencies.");}var A=arguments,C,F,B=A[2];if(B&&B!==true){for(C=2;C<A.length;C=C+1){E[A[C]]=D[A[C]];}}else{for(F in D){if(B||!E[F]){E[F]=D[F];}}YAHOO.lang._IEEnumFix(E,D);}},augmentProto:function(D,C){if(!C||!D){throw new Error("Augment failed, verify dependencies.");}var A=[D.prototype,C.prototype];for(var B=2;B<arguments.length;B=B+1){A.push(arguments[B]);}YAHOO.lang.augmentObject.apply(this,A);},dump:function(A,G){var C=YAHOO.lang,D,F,I=[],J="{...}",B="f(){...}",H=", ",E=" => ";if(!C.isObject(A)){return A+"";}else{if(A instanceof Date||("nodeType"in A&&"tagName"in A)){return A;}else{if(C.isFunction(A)){return B;}}}G=(C.isNumber(G))?G:3;if(C.isArray(A)){I.push("[");for(D=0,F=A.length;D<F;D=D+1){if(C.isObject(A[D])){I.push((G>0)?C.dump(A[D],G-1):J);}else{I.push(A[D]);}I.push(H);}if(I.length>1){I.pop();}I.push("]");}else{I.push("{");for(D in A){if(C.hasOwnProperty(A,D)){I.push(D+E);if(C.isObject(A[D])){I.push((G>0)?C.dump(A[D],G-1):J);}else{I.push(A[D]);}I.push(H);}}if(I.length>1){I.pop();}I.push("}");}return I.join("");},substitute:function(Q,B,J){var G,F,E,M,N,P,D=YAHOO.lang,L=[],C,H="dump",K=" ",A="{",O="}";for(;;){G=Q.lastIndexOf(A);if(G<0){break;}F=Q.indexOf(O,G);if(G+1>=F){break;}C=Q.substring(G+1,F);M=C;P=null;E=M.indexOf(K);if(E>-1){P=M.substring(E+1);M=M.substring(0,E);}N=B[M];if(J){N=J(M,N,P);}if(D.isObject(N)){if(D.isArray(N)){N=D.dump(N,parseInt(P,10));}else{P=P||"";var I=P.indexOf(H);if(I>-1){P=P.substring(4);}if(N.toString===Object.prototype.toString||I>-1){N=D.dump(N,parseInt(P,10));}else{N=N.toString();}}}else{if(!D.isString(N)&&!D.isNumber(N)){N="~-"+L.length+"-~";L[L.length]=C;}}Q=Q.substring(0,G)+N+Q.substring(F+1);}for(G=L.length-1;G>=0;G=G-1){Q=Q.replace(new RegExp("~-"+G+"-~"),"{"+L[G]+"}","g");}return Q;},trim:function(A){try{return A.replace(/^\s+|\s+$/g,"");}catch(B){return A;}},merge:function(){var D={},B=arguments;for(var C=0,A=B.length;C<A;C=C+1){YAHOO.lang.augmentObject(D,B[C],true);}return D;},later:function(H,B,I,D,E){H=H||0;B=B||{};var C=I,G=D,F,A;if(YAHOO.lang.isString(I)){C=B[I];}if(!C){throw new TypeError("method undefined");}if(!YAHOO.lang.isArray(G)){G=[D];}F=function(){C.apply(B,G);};A=(E)?setInterval(F,H):setTimeout(F,H);return{interval:E,cancel:function(){if(this.interval){clearInterval(A);}else{clearTimeout(A);}}};},isValue:function(B){var A=YAHOO.lang;return(A.isObject(B)||A.isString(B)||A.isNumber(B)||A.isBoolean(B));}};YAHOO.util.Lang=YAHOO.lang;YAHOO.lang.augment=YAHOO.lang.augmentProto;YAHOO.augment=YAHOO.lang.augmentProto;YAHOO.extend=YAHOO.lang.extend;YAHOO.register("yahoo",YAHOO,{version:"2.5.1",build:"984"});(function(){var B=YAHOO.util,K,I,J={},F={},M=window.document;YAHOO.env._id_counter=YAHOO.env._id_counter||0;var C=YAHOO.env.ua.opera,L=YAHOO.env.ua.webkit,A=YAHOO.env.ua.gecko,G=YAHOO.env.ua.ie;var E={HYPHEN:/(-[a-z])/i,ROOT_TAG:/^body|html$/i,OP_SCROLL:/^(?:inline|table-row)$/i};var N=function(P){if(!E.HYPHEN.test(P)){return P;}if(J[P]){return J[P];}var Q=P;while(E.HYPHEN.exec(Q)){Q=Q.replace(RegExp.$1,RegExp.$1.substr(1).toUpperCase());}J[P]=Q;return Q;};var O=function(Q){var P=F[Q];if(!P){P=new RegExp("(?:^|\\s+)"+Q+"(?:\\s+|$)");F[Q]=P;}return P;};if(M.defaultView&&M.defaultView.getComputedStyle){K=function(P,S){var R=null;if(S=="float"){S="cssFloat";}var Q=P.ownerDocument.defaultView.getComputedStyle(P,"");if(Q){R=Q[N(S)];}return P.style[S]||R;};}else{if(M.documentElement.currentStyle&&G){K=function(P,R){switch(N(R)){case"opacity":var T=100;try{T=P.filters["DXImageTransform.Microsoft.Alpha"].opacity;}catch(S){try{T=P.filters("alpha").opacity;}catch(S){}}return T/100;case"float":R="styleFloat";default:var Q=P.currentStyle?P.currentStyle[R]:null;return(P.style[R]||Q);}};}else{K=function(P,Q){return P.style[Q];};}}if(G){I=function(P,Q,R){switch(Q){case"opacity":if(YAHOO.lang.isString(P.style.filter)){P.style.filter="alpha(opacity="+R*100+")";if(!P.currentStyle||!P.currentStyle.hasLayout){P.style.zoom=1;}}break;case"float":Q="styleFloat";default:P.style[Q]=R;}};}else{I=function(P,Q,R){if(Q=="float"){Q="cssFloat";}P.style[Q]=R;};}var D=function(P,Q){return P&&P.nodeType==1&&(!Q||Q(P));};YAHOO.util.Dom={get:function(R){if(R&&(R.nodeType||R.item)){return R;}if(YAHOO.lang.isString(R)||!R){return M.getElementById(R);}if(R.length!==undefined){var S=[];for(var Q=0,P=R.length;Q<P;++Q){S[S.length]=B.Dom.get(R[Q]);}return S;}return R;},getStyle:function(P,R){R=N(R);var Q=function(S){return K(S,R);};return B.Dom.batch(P,Q,B.Dom,true);},setStyle:function(P,R,S){R=N(R);var Q=function(T){I(T,R,S);};B.Dom.batch(P,Q,B.Dom,true);},getXY:function(P){var Q=function(R){if((R.parentNode===null||R.offsetParent===null||this.getStyle(R,"display")=="none")&&R!=R.ownerDocument.body){return false;}return H(R);};return B.Dom.batch(P,Q,B.Dom,true);},getX:function(P){var Q=function(R){return B.Dom.getXY(R)[0];};return B.Dom.batch(P,Q,B.Dom,true);},getY:function(P){var Q=function(R){return B.Dom.getXY(R)[1];};return B.Dom.batch(P,Q,B.Dom,true);},setXY:function(P,S,R){var Q=function(V){var U=this.getStyle(V,"position");if(U=="static"){this.setStyle(V,"position","relative");U="relative";}var X=this.getXY(V);if(X===false){return false;}var W=[parseInt(this.getStyle(V,"left"),10),parseInt(this.getStyle(V,"top"),10)];if(isNaN(W[0])){W[0]=(U=="relative")?0:V.offsetLeft;}if(isNaN(W[1])){W[1]=(U=="relative")?0:V.offsetTop;}if(S[0]!==null){V.style.left=S[0]-X[0]+W[0]+"px";}if(S[1]!==null){V.style.top=S[1]-X[1]+W[1]+"px";}if(!R){var T=this.getXY(V);if((S[0]!==null&&T[0]!=S[0])||(S[1]!==null&&T[1]!=S[1])){this.setXY(V,S,true);}}};B.Dom.batch(P,Q,B.Dom,true);},setX:function(Q,P){B.Dom.setXY(Q,[P,null]);},setY:function(P,Q){B.Dom.setXY(P,[null,Q]);},getRegion:function(P){var Q=function(R){if((R.parentNode===null||R.offsetParent===null||this.getStyle(R,"display")=="none")&&R!=R.ownerDocument.body){return false;}var S=B.Region.getRegion(R);return S;};return B.Dom.batch(P,Q,B.Dom,true);},getClientWidth:function(){return B.Dom.getViewportWidth();},getClientHeight:function(){return B.Dom.getViewportHeight();},getElementsByClassName:function(T,X,U,V){X=X||"*";U=(U)?B.Dom.get(U):null||M;if(!U){return[];}var Q=[],P=U.getElementsByTagName(X),W=O(T);for(var R=0,S=P.length;R<S;++R){if(W.test(P[R].className)){Q[Q.length]=P[R];if(V){V.call(P[R],P[R]);}}}return Q;},hasClass:function(R,Q){var P=O(Q);var S=function(T){return P.test(T.className);};return B.Dom.batch(R,S,B.Dom,true);},addClass:function(Q,P){var R=function(S){if(this.hasClass(S,P)){return false;}S.className=YAHOO.lang.trim([S.className,P].join(" "));return true;};return B.Dom.batch(Q,R,B.Dom,true);},removeClass:function(R,Q){var P=O(Q);var S=function(T){if(!Q||!this.hasClass(T,Q)){return false;}var U=T.className;T.className=U.replace(P," ");if(this.hasClass(T,Q)){this.removeClass(T,Q);}T.className=YAHOO.lang.trim(T.className);return true;};return B.Dom.batch(R,S,B.Dom,true);},replaceClass:function(S,Q,P){if(!P||Q===P){return false;}var R=O(Q);var T=function(U){if(!this.hasClass(U,Q)){this.addClass(U,P);return true;}U.className=U.className.replace(R," "+P+" ");if(this.hasClass(U,Q)){this.replaceClass(U,Q,P);}U.className=YAHOO.lang.trim(U.className);return true;};return B.Dom.batch(S,T,B.Dom,true);},generateId:function(P,R){R=R||"yui-gen";var Q=function(S){if(S&&S.id){return S.id;}var T=R+YAHOO.env._id_counter++;if(S){S.id=T;}return T;};return B.Dom.batch(P,Q,B.Dom,true)||Q.apply(B.Dom,arguments);},isAncestor:function(P,Q){P=B.Dom.get(P);Q=B.Dom.get(Q);if(!P||!Q){return false;}if(P.contains&&Q.nodeType&&!L){return P.contains(Q);}else{if(P.compareDocumentPosition&&Q.nodeType){return!!(P.compareDocumentPosition(Q)&16);}else{if(Q.nodeType){return!!this.getAncestorBy(Q,function(R){return R==P;});}}}return false;},inDocument:function(P){return this.isAncestor(M.documentElement,P);},getElementsBy:function(W,Q,R,T){Q=Q||"*";R=(R)?B.Dom.get(R):null||M;if(!R){return[];}var S=[],V=R.getElementsByTagName(Q);for(var U=0,P=V.length;U<P;++U){if(W(V[U])){S[S.length]=V[U];if(T){T(V[U]);}}}return S;},batch:function(T,W,V,R){T=(T&&(T.tagName||T.item))?T:B.Dom.get(T);if(!T||!W){return false;}var S=(R)?V:window;if(T.tagName||T.length===undefined){return W.call(S,T,V);}var U=[];for(var Q=0,P=T.length;Q<P;++Q){U[U.length]=W.call(S,T[Q],V);}return U;},getDocumentHeight:function(){var Q=(M.compatMode!="CSS1Compat")?M.body.scrollHeight:M.documentElement.scrollHeight;var P=Math.max(Q,B.Dom.getViewportHeight());return P;},getDocumentWidth:function(){var Q=(M.compatMode!="CSS1Compat")?M.body.scrollWidth:M.documentElement.scrollWidth;var P=Math.max(Q,B.Dom.getViewportWidth());return P;},getViewportHeight:function(){var P=self.innerHeight;var Q=M.compatMode;if((Q||G)&&!C){P=(Q=="CSS1Compat")?M.documentElement.clientHeight:M.body.clientHeight;}return P;},getViewportWidth:function(){var P=self.innerWidth;var Q=M.compatMode;if(Q||G){P=(Q=="CSS1Compat")?M.documentElement.clientWidth:M.body.clientWidth;}return P;},getAncestorBy:function(P,Q){while(P=P.parentNode){if(D(P,Q)){return P;}}return null;},getAncestorByClassName:function(Q,P){Q=B.Dom.get(Q);if(!Q){return null;}var R=function(S){return B.Dom.hasClass(S,P);};return B.Dom.getAncestorBy(Q,R);},getAncestorByTagName:function(Q,P){Q=B.Dom.get(Q);if(!Q){return null;}var R=function(S){return S.tagName&&S.tagName.toUpperCase()==P.toUpperCase();};return B.Dom.getAncestorBy(Q,R);},getPreviousSiblingBy:function(P,Q){while(P){P=P.previousSibling;if(D(P,Q)){return P;}}return null;},getPreviousSibling:function(P){P=B.Dom.get(P);if(!P){return null;}return B.Dom.getPreviousSiblingBy(P);},getNextSiblingBy:function(P,Q){while(P){P=P.nextSibling;if(D(P,Q)){return P;}}return null;},getNextSibling:function(P){P=B.Dom.get(P);if(!P){return null;}return B.Dom.getNextSiblingBy(P);},getFirstChildBy:function(P,R){var Q=(D(P.firstChild,R))?P.firstChild:null;return Q||B.Dom.getNextSiblingBy(P.firstChild,R);},getFirstChild:function(P,Q){P=B.Dom.get(P);if(!P){return null;}return B.Dom.getFirstChildBy(P);},getLastChildBy:function(P,R){if(!P){return null;}var Q=(D(P.lastChild,R))?P.lastChild:null;return Q||B.Dom.getPreviousSiblingBy(P.lastChild,R);},getLastChild:function(P){P=B.Dom.get(P);return B.Dom.getLastChildBy(P);},getChildrenBy:function(Q,S){var R=B.Dom.getFirstChildBy(Q,S);var P=R?[R]:[];B.Dom.getNextSiblingBy(R,function(T){if(!S||S(T)){P[P.length]=T;}return false;});return P;},getChildren:function(P){P=B.Dom.get(P);if(!P){}return B.Dom.getChildrenBy(P);},getDocumentScrollLeft:function(P){P=P||M;return Math.max(P.documentElement.scrollLeft,P.body.scrollLeft);},getDocumentScrollTop:function(P){P=P||M;return Math.max(P.documentElement.scrollTop,P.body.scrollTop);},insertBefore:function(Q,P){Q=B.Dom.get(Q);P=B.Dom.get(P);if(!Q||!P||!P.parentNode){return null;}return P.parentNode.insertBefore(Q,P);},insertAfter:function(Q,P){Q=B.Dom.get(Q);P=B.Dom.get(P);if(!Q||!P||!P.parentNode){return null;}if(P.nextSibling){return P.parentNode.insertBefore(Q,P.nextSibling);}else{return P.parentNode.appendChild(Q);}},getClientRegion:function(){var R=B.Dom.getDocumentScrollTop(),Q=B.Dom.getDocumentScrollLeft(),S=B.Dom.getViewportWidth()+Q,P=B.Dom.getViewportHeight()+R;return new B.Region(R,S,P,Q);}};var H=function(){if(M.documentElement.getBoundingClientRect){return function(Q){var R=Q.getBoundingClientRect();var P=Q.ownerDocument;return[R.left+B.Dom.getDocumentScrollLeft(P),R.top+B.Dom.getDocumentScrollTop(P)];};}else{return function(R){var S=[R.offsetLeft,R.offsetTop];var Q=R.offsetParent;var P=(L&&B.Dom.getStyle(R,"position")=="absolute"&&R.offsetParent==R.ownerDocument.body);if(Q!=R){while(Q){S[0]+=Q.offsetLeft;S[1]+=Q.offsetTop;if(!P&&L&&B.Dom.getStyle(Q,"position")=="absolute"){P=true;}Q=Q.offsetParent;}}if(P){S[0]-=R.ownerDocument.body.offsetLeft;S[1]-=R.ownerDocument.body.offsetTop;}Q=R.parentNode;while(Q.tagName&&!E.ROOT_TAG.test(Q.tagName)){if(Q.scrollTop||Q.scrollLeft){if(!E.OP_SCROLL.test(B.Dom.getStyle(Q,"display"))){if(!C||B.Dom.getStyle(Q,"overflow")!=="visible"){S[0]-=Q.scrollLeft;S[1]-=Q.scrollTop;}}}Q=Q.parentNode;}return S;};}}();})();YAHOO.util.Region=function(C,D,A,B){this.top=C;this[1]=C;this.right=D;this.bottom=A;this.left=B;this[0]=B;};YAHOO.util.Region.prototype.contains=function(A){return(A.left>=this.left&&A.right<=this.right&&A.top>=this.top&&A.bottom<=this.bottom);};YAHOO.util.Region.prototype.getArea=function(){return((this.bottom-this.top)*(this.right-this.left));};YAHOO.util.Region.prototype.intersect=function(E){var C=Math.max(this.top,E.top);var D=Math.min(this.right,E.right);var A=Math.min(this.bottom,E.bottom);var B=Math.max(this.left,E.left);if(A>=C&&D>=B){return new YAHOO.util.Region(C,D,A,B);}else{return null;}};YAHOO.util.Region.prototype.union=function(E){var C=Math.min(this.top,E.top);var D=Math.max(this.right,E.right);var A=Math.max(this.bottom,E.bottom);var B=Math.min(this.left,E.left);return new YAHOO.util.Region(C,D,A,B);};YAHOO.util.Region.prototype.toString=function(){return("Region {"+"top: "+this.top+", right: "+this.right+", bottom: "+this.bottom+", left: "+this.left+"}");};YAHOO.util.Region.getRegion=function(D){var F=YAHOO.util.Dom.getXY(D);var C=F[1];var E=F[0]+D.offsetWidth;var A=F[1]+D.offsetHeight;var B=F[0];return new YAHOO.util.Region(C,E,A,B);};YAHOO.util.Point=function(A,B){if(YAHOO.lang.isArray(A)){B=A[1];A=A[0];}this.x=this.right=this.left=this[0]=A;this.y=this.top=this.bottom=this[1]=B;};YAHOO.util.Point.prototype=new YAHOO.util.Region();YAHOO.register("dom",YAHOO.util.Dom,{version:"2.5.1",build:"984"});YAHOO.util.CustomEvent=function(D,B,C,A){this.type=D;this.scope=B||window;this.silent=C;this.signature=A||YAHOO.util.CustomEvent.LIST;this.subscribers=[];if(!this.silent){}var E="_YUICEOnSubscribe";if(D!==E){this.subscribeEvent=new YAHOO.util.CustomEvent(E,this,true);}this.lastError=null;};YAHOO.util.CustomEvent.LIST=0;YAHOO.util.CustomEvent.FLAT=1;YAHOO.util.CustomEvent.prototype={subscribe:function(B,C,A){if(!B){throw new Error("Invalid callback for subscriber to '"+this.type+"'");}if(this.subscribeEvent){this.subscribeEvent.fire(B,C,A);}this.subscribers.push(new YAHOO.util.Subscriber(B,C,A));},unsubscribe:function(D,F){if(!D){return this.unsubscribeAll();}var E=false;for(var B=0,A=this.subscribers.length;B<A;++B){var C=this.subscribers[B];if(C&&C.contains(D,F)){this._delete(B);E=true;}}return E;},fire:function(){var D=this.subscribers.length;if(!D&&this.silent){return true;}var H=[].slice.call(arguments,0),F=true,C,I=false;if(!this.silent){}var B=this.subscribers.slice();for(C=0;C<D;++C){var K=B[C];if(!K){I=true;}else{if(!this.silent){}var J=K.getScope(this.scope);if(this.signature==YAHOO.util.CustomEvent.FLAT){var A=null;if(H.length>0){A=H[0];}try{F=K.fn.call(J,A,K.obj);}catch(E){this.lastError=E;}}else{try{F=K.fn.call(J,this.type,H,K.obj);}catch(G){this.lastError=G;}}if(false===F){if(!this.silent){}return false;}}}return true;},unsubscribeAll:function(){for(var A=this.subscribers.length-1;A>-1;A--){this._delete(A);}this.subscribers=[];return A;},_delete:function(A){var B=this.subscribers[A];if(B){delete B.fn;delete B.obj;}this.subscribers.splice(A,1);},toString:function(){return"CustomEvent: "+"'"+this.type+"', "+"scope: "+this.scope;}};YAHOO.util.Subscriber=function(B,C,A){this.fn=B;this.obj=YAHOO.lang.isUndefined(C)?null:C;this.override=A;};YAHOO.util.Subscriber.prototype.getScope=function(A){if(this.override){if(this.override===true){return this.obj;}else{return this.override;}}return A;};YAHOO.util.Subscriber.prototype.contains=function(A,B){if(B){return(this.fn==A&&this.obj==B);}else{return(this.fn==A);}};YAHOO.util.Subscriber.prototype.toString=function(){return"Subscriber { obj: "+this.obj+", override: "+(this.override||"no")+" }";};if(!YAHOO.util.Event){YAHOO.util.Event=function(){var H=false;var I=[];var J=[];var G=[];var E=[];var C=0;var F=[];var B=[];var A=0;var D={63232:38,63233:40,63234:37,63235:39,63276:33,63277:34,25:9};return{POLL_RETRYS:2000,POLL_INTERVAL:20,EL:0,TYPE:1,FN:2,WFN:3,UNLOAD_OBJ:3,ADJ_SCOPE:4,OBJ:5,OVERRIDE:6,lastError:null,isSafari:YAHOO.env.ua.webkit,webkit:YAHOO.env.ua.webkit,isIE:YAHOO.env.ua.ie,_interval:null,_dri:null,DOMReady:false,startInterval:function(){if(!this._interval){var K=this;var L=function(){K._tryPreloadAttach();};this._interval=setInterval(L,this.POLL_INTERVAL);}},onAvailable:function(P,M,Q,O,N){var K=(YAHOO.lang.isString(P))?[P]:P;for(var L=0;L<K.length;L=L+1){F.push({id:K[L],fn:M,obj:Q,override:O,checkReady:N});}C=this.POLL_RETRYS;this.startInterval();},onContentReady:function(M,K,N,L){this.onAvailable(M,K,N,L,true);},onDOMReady:function(K,M,L){if(this.DOMReady){setTimeout(function(){var N=window;if(L){if(L===true){N=M;}else{N=L;}}K.call(N,"DOMReady",[],M);},0);}else{this.DOMReadyEvent.subscribe(K,M,L);}},addListener:function(M,K,V,Q,L){if(!V||!V.call){return false;}if(this._isValidCollection(M)){var W=true;for(var R=0,T=M.length;R<T;++R){W=this.on(M[R],K,V,Q,L)&&W;}return W;}else{if(YAHOO.lang.isString(M)){var P=this.getEl(M);if(P){M=P;}else{this.onAvailable(M,function(){YAHOO.util.Event.on(M,K,V,Q,L);});return true;}}}if(!M){return false;}if("unload"==K&&Q!==this){J[J.length]=[M,K,V,Q,L];return true;}var Y=M;if(L){if(L===true){Y=Q;}else{Y=L;}}var N=function(Z){return V.call(Y,YAHOO.util.Event.getEvent(Z,M),Q);};var X=[M,K,V,N,Y,Q,L];var S=I.length;I[S]=X;if(this.useLegacyEvent(M,K)){var O=this.getLegacyIndex(M,K);if(O==-1||M!=G[O][0]){O=G.length;B[M.id+K]=O;G[O]=[M,K,M["on"+K]];E[O]=[];M["on"+K]=function(Z){YAHOO.util.Event.fireLegacyEvent(YAHOO.util.Event.getEvent(Z),O);};}E[O].push(X);}else{try{this._simpleAdd(M,K,N,false);}catch(U){this.lastError=U;this.removeListener(M,K,V);return false;}}return true;},fireLegacyEvent:function(O,M){var Q=true,K,S,R,T,P;S=E[M].slice();for(var L=0,N=S.length;L<N;++L){R=S[L];if(R&&R[this.WFN]){T=R[this.ADJ_SCOPE];P=R[this.WFN].call(T,O);Q=(Q&&P);}}K=G[M];if(K&&K[2]){K[2](O);}return Q;},getLegacyIndex:function(L,M){var K=this.generateId(L)+M;if(typeof B[K]=="undefined"){return-1;}else{return B[K];}},useLegacyEvent:function(L,M){if(this.webkit&&("click"==M||"dblclick"==M)){var K=parseInt(this.webkit,10);if(!isNaN(K)&&K<418){return true;}}return false;},removeListener:function(L,K,T){var O,R,V;if(typeof L=="string"){L=this.getEl(L);}else{if(this._isValidCollection(L)){var U=true;for(O=L.length-1;O>-1;O--){U=(this.removeListener(L[O],K,T)&&U);}return U;}}if(!T||!T.call){return this.purgeElement(L,false,K);}if("unload"==K){for(O=J.length-1;O>-1;O--){V=J[O];if(V&&V[0]==L&&V[1]==K&&V[2]==T){J.splice(O,1);return true;}}return false;}var P=null;var Q=arguments[3];if("undefined"===typeof Q){Q=this._getCacheIndex(L,K,T);}if(Q>=0){P=I[Q];}if(!L||!P){return false;}if(this.useLegacyEvent(L,K)){var N=this.getLegacyIndex(L,K);var M=E[N];if(M){for(O=0,R=M.length;O<R;++O){V=M[O];if(V&&V[this.EL]==L&&V[this.TYPE]==K&&V[this.FN]==T){M.splice(O,1);break;}}}}else{try{this._simpleRemove(L,K,P[this.WFN],false);}catch(S){this.lastError=S;return false;}}delete I[Q][this.WFN];delete I[Q][this.FN];I.splice(Q,1);return true;},getTarget:function(M,L){var K=M.target||M.srcElement;return this.resolveTextNode(K);},resolveTextNode:function(L){try{if(L&&3==L.nodeType){return L.parentNode;}}catch(K){}return L;},getPageX:function(L){var K=L.pageX;if(!K&&0!==K){K=L.clientX||0;if(this.isIE){K+=this._getScrollLeft();}}return K;},getPageY:function(K){var L=K.pageY;if(!L&&0!==L){L=K.clientY||0;if(this.isIE){L+=this._getScrollTop();}}return L;},getXY:function(K){return[this.getPageX(K),this.getPageY(K)];},getRelatedTarget:function(L){var K=L.relatedTarget;if(!K){if(L.type=="mouseout"){K=L.toElement;}else{if(L.type=="mouseover"){K=L.fromElement;}}}return this.resolveTextNode(K);},getTime:function(M){if(!M.time){var L=new Date().getTime();try{M.time=L;}catch(K){this.lastError=K;return L;}}return M.time;},stopEvent:function(K){this.stopPropagation(K);this.preventDefault(K);},stopPropagation:function(K){if(K.stopPropagation){K.stopPropagation();}else{K.cancelBubble=true;}},preventDefault:function(K){if(K.preventDefault){K.preventDefault();}else{K.returnValue=false;}},getEvent:function(M,K){var L=M||window.event;if(!L){var N=this.getEvent.caller;while(N){L=N.arguments[0];if(L&&Event==L.constructor){break;}N=N.caller;}}return L;},getCharCode:function(L){var K=L.keyCode||L.charCode||0;if(YAHOO.env.ua.webkit&&(K in D)){K=D[K];}return K;},_getCacheIndex:function(O,P,N){for(var M=0,L=I.length;M<L;M=M+1){var K=I[M];if(K&&K[this.FN]==N&&K[this.EL]==O&&K[this.TYPE]==P){return M;}}return-1;},generateId:function(K){var L=K.id;if(!L){L="yuievtautoid-"+A;++A;K.id=L;}return L;},_isValidCollection:function(L){try{return(L&&typeof L!=="string"&&L.length&&!L.tagName&&!L.alert&&typeof L[0]!=="undefined");}catch(K){return false;}},elCache:{},getEl:function(K){return(typeof K==="string")?document.getElementById(K):K;},clearCache:function(){},DOMReadyEvent:new YAHOO.util.CustomEvent("DOMReady",this),_load:function(L){if(!H){H=true;var K=YAHOO.util.Event;K._ready();K._tryPreloadAttach();}},_ready:function(L){var K=YAHOO.util.Event;if(!K.DOMReady){K.DOMReady=true;K.DOMReadyEvent.fire();K._simpleRemove(document,"DOMContentLoaded",K._ready);}},_tryPreloadAttach:function(){if(F.length===0){C=0;clearInterval(this._interval);this._interval=null;return;}if(this.locked){return;}if(this.isIE){if(!this.DOMReady){this.startInterval();return;}}this.locked=true;var Q=!H;if(!Q){Q=(C>0&&F.length>0);}var P=[];var R=function(T,U){var S=T;if(U.override){if(U.override===true){S=U.obj;}else{S=U.override;}}U.fn.call(S,U.obj);};var L,K,O,N,M=[];for(L=0,K=F.length;L<K;L=L+1){O=F[L];if(O){N=this.getEl(O.id);if(N){if(O.checkReady){if(H||N.nextSibling||!Q){M.push(O);F[L]=null;}}else{R(N,O);F[L]=null;}}else{P.push(O);}}}for(L=0,K=M.length;L<K;L=L+1){O=M[L];R(this.getEl(O.id),O);}C--;if(Q){for(L=F.length-1;L>-1;L--){O=F[L];if(!O||!O.id){F.splice(L,1);}}this.startInterval();}else{clearInterval(this._interval);this._interval=null;}this.locked=false;},purgeElement:function(O,P,R){var M=(YAHOO.lang.isString(O))?this.getEl(O):O;var Q=this.getListeners(M,R),N,K;if(Q){for(N=Q.length-1;N>-1;N--){var L=Q[N];this.removeListener(M,L.type,L.fn);}}if(P&&M&&M.childNodes){for(N=0,K=M.childNodes.length;N<K;++N){this.purgeElement(M.childNodes[N],P,R);}}},getListeners:function(M,K){var P=[],L;if(!K){L=[I,J];}else{if(K==="unload"){L=[J];}else{L=[I];}}var R=(YAHOO.lang.isString(M))?this.getEl(M):M;for(var O=0;O<L.length;O=O+1){var T=L[O];if(T){for(var Q=0,S=T.length;Q<S;++Q){var N=T[Q];if(N&&N[this.EL]===R&&(!K||K===N[this.TYPE])){P.push({type:N[this.TYPE],fn:N[this.FN],obj:N[this.OBJ],adjust:N[this.OVERRIDE],scope:N[this.ADJ_SCOPE],index:Q});}}}}return(P.length)?P:null;},_unload:function(Q){var K=YAHOO.util.Event,N,M,L,P,O,R=J.slice();for(N=0,P=J.length;N<P;++N){L=R[N];if(L){var S=window;if(L[K.ADJ_SCOPE]){if(L[K.ADJ_SCOPE]===true){S=L[K.UNLOAD_OBJ];}else{S=L[K.ADJ_SCOPE];}}L[K.FN].call(S,K.getEvent(Q,L[K.EL]),L[K.UNLOAD_OBJ]);R[N]=null;L=null;S=null;}}J=null;if(I){for(M=I.length-1;M>-1;M--){L=I[M];if(L){K.removeListener(L[K.EL],L[K.TYPE],L[K.FN],M);}}L=null;}G=null;K._simpleRemove(window,"unload",K._unload);},_getScrollLeft:function(){return this._getScroll()[1];},_getScrollTop:function(){return this._getScroll()[0];},_getScroll:function(){var K=document.documentElement,L=document.body;if(K&&(K.scrollTop||K.scrollLeft)){return[K.scrollTop,K.scrollLeft];}else{if(L){return[L.scrollTop,L.scrollLeft];}else{return[0,0];}}},regCE:function(){},_simpleAdd:function(){if(window.addEventListener){return function(M,N,L,K){M.addEventListener(N,L,(K));};}else{if(window.attachEvent){return function(M,N,L,K){M.attachEvent("on"+N,L);};}else{return function(){};}}}(),_simpleRemove:function(){if(window.removeEventListener){return function(M,N,L,K){M.removeEventListener(N,L,(K));};}else{if(window.detachEvent){return function(L,M,K){L.detachEvent("on"+M,K);};}else{return function(){};}}}()};}();(function(){var EU=YAHOO.util.Event;EU.on=EU.addListener;if(EU.isIE){YAHOO.util.Event.onDOMReady(YAHOO.util.Event._tryPreloadAttach,YAHOO.util.Event,true);var n=document.createElement("p");EU._dri=setInterval(function(){try{n.doScroll("left");clearInterval(EU._dri);EU._dri=null;EU._ready();n=null;}catch(ex){}},EU.POLL_INTERVAL);}else{if(EU.webkit&&EU.webkit<525){EU._dri=setInterval(function(){var rs=document.readyState;if("loaded"==rs||"complete"==rs){clearInterval(EU._dri);EU._dri=null;EU._ready();}},EU.POLL_INTERVAL);}else{EU._simpleAdd(document,"DOMContentLoaded",EU._ready);}}EU._simpleAdd(window,"load",EU._load);EU._simpleAdd(window,"unload",EU._unload);EU._tryPreloadAttach();})();}YAHOO.util.EventProvider=function(){};YAHOO.util.EventProvider.prototype={__yui_events:null,__yui_subscribers:null,subscribe:function(A,C,F,E){this.__yui_events=this.__yui_events||{};var D=this.__yui_events[A];if(D){D.subscribe(C,F,E);}else{this.__yui_subscribers=this.__yui_subscribers||{};var B=this.__yui_subscribers;if(!B[A]){B[A]=[];}B[A].push({fn:C,obj:F,override:E});}},unsubscribe:function(C,E,G){this.__yui_events=this.__yui_events||{};var A=this.__yui_events;if(C){var F=A[C];if(F){return F.unsubscribe(E,G);}}else{var B=true;for(var D in A){if(YAHOO.lang.hasOwnProperty(A,D)){B=B&&A[D].unsubscribe(E,G);}}return B;}return false;},unsubscribeAll:function(A){return this.unsubscribe(A);},createEvent:function(G,D){this.__yui_events=this.__yui_events||{};var A=D||{};var I=this.__yui_events;if(I[G]){}else{var H=A.scope||this;var E=(A.silent);var B=new YAHOO.util.CustomEvent(G,H,E,YAHOO.util.CustomEvent.FLAT);I[G]=B;if(A.onSubscribeCallback){B.subscribeEvent.subscribe(A.onSubscribeCallback);}this.__yui_subscribers=this.__yui_subscribers||{};var F=this.__yui_subscribers[G];if(F){for(var C=0;C<F.length;++C){B.subscribe(F[C].fn,F[C].obj,F[C].override);}}}return I[G];},fireEvent:function(E,D,A,C){this.__yui_events=this.__yui_events||{};var G=this.__yui_events[E];if(!G){return null;}var B=[];for(var F=1;F<arguments.length;++F){B.push(arguments[F]);}return G.fire.apply(G,B);},hasEvent:function(A){if(this.__yui_events){if(this.__yui_events[A]){return true;}}return false;}};YAHOO.util.KeyListener=function(A,F,B,C){if(!A){}else{if(!F){}else{if(!B){}}}if(!C){C=YAHOO.util.KeyListener.KEYDOWN;}var D=new YAHOO.util.CustomEvent("keyPressed");this.enabledEvent=new YAHOO.util.CustomEvent("enabled");this.disabledEvent=new YAHOO.util.CustomEvent("disabled");if(typeof A=="string"){A=document.getElementById(A);}if(typeof B=="function"){D.subscribe(B);}else{D.subscribe(B.fn,B.scope,B.correctScope);}function E(J,I){if(!F.shift){F.shift=false;}if(!F.alt){F.alt=false;}if(!F.ctrl){F.ctrl=false;}if(J.shiftKey==F.shift&&J.altKey==F.alt&&J.ctrlKey==F.ctrl){var G;if(F.keys instanceof Array){for(var H=0;H<F.keys.length;H++){G=F.keys[H];if(G==J.charCode){D.fire(J.charCode,J);break;}else{if(G==J.keyCode){D.fire(J.keyCode,J);break;}}}}else{G=F.keys;if(G==J.charCode){D.fire(J.charCode,J);}else{if(G==J.keyCode){D.fire(J.keyCode,J);}}}}}this.enable=function(){if(!this.enabled){YAHOO.util.Event.addListener(A,C,E);this.enabledEvent.fire(F);}this.enabled=true;};this.disable=function(){if(this.enabled){YAHOO.util.Event.removeListener(A,C,E);this.disabledEvent.fire(F);}this.enabled=false;};this.toString=function(){return"KeyListener ["+F.keys+"] "+A.tagName+(A.id?"["+A.id+"]":"");};};YAHOO.util.KeyListener.KEYDOWN="keydown";YAHOO.util.KeyListener.KEYUP="keyup";YAHOO.util.KeyListener.KEY={ALT:18,BACK_SPACE:8,CAPS_LOCK:20,CONTROL:17,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,META:224,NUM_LOCK:144,PAGE_DOWN:34,PAGE_UP:33,PAUSE:19,PRINTSCREEN:44,RIGHT:39,SCROLL_LOCK:145,SHIFT:16,SPACE:32,TAB:9,UP:38};YAHOO.register("event",YAHOO.util.Event,{version:"2.5.1",build:"984"});YAHOO.register("yahoo-dom-event",YAHOO,{version:"2.5.1",build:"984"});YAHOO.util.Event._load();return YAHOO;})();var isMWPSupported=true;var badUserAgentStrings=['NETSCAPE6','NETSCAPE/7'];if(navigator){var len=badUserAgentStrings.length;for(var i=0;i<len;i++){if(navigator.userAgent.toUpperCase().indexOf(badUserAgentStrings[i])!==-1){isMWPSupported=false;}}}if(isMWPSupported===true){if(typeof YAHOO.mediaplayer=="undefined"){YAHOO.namespace("YAHOO.mediaplayer");}YAHOO.mediaplayer.playerAlreadyLoaded=function(){if(YAHOO.mediaplayer.bLoaded===true){return true;}YAHOO.mediaplayer.bLoaded=true;return false;};if(YAHOO.mediaplayer.playerAlreadyLoaded()!==true){YAHOO.mediaplayer.partnerId="42858483";if(typeof YMPParams=="undefined"){var YMPParams={};}YAHOO.mediaplayer.loadPlayerScript=function(){if(Boolean(arguments.callee.bCalled)){return;};arguments.callee.bCalled=true;function webplayerjs(){var suffix='-min-2.0.32.js';return"http://l.yimg.com/pb/webplayer/legacy/2.0.32/mediaplayer"+suffix;};var playerScriptSrc=webplayerjs();if(playerScriptSrc&&playerScriptSrc.length>0){YAHOO.mediaplayer.elPlayerSource=document.createElement("script");YAHOO.mediaplayer.elPlayerSource.type="text/javascript";YAHOO.mediaplayer.elPlayerSource.src=playerScriptSrc;document.getElementsByTagName("head")[0].appendChild(YAHOO.mediaplayer.elPlayerSource);}};YAHOO.ympyui.util.Event.addListener(window,"load",YAHOO.mediaplayer.loadPlayerScript);YAHOO.namespace("YAHOO.MediaPlayer");YAHOO.MediaPlayer=function(){this.controller=null;};YAHOO.MediaPlayer.onAPIReady=new YAHOO.ympyui.util.CustomEvent("onAPIReady",null,false,YAHOO.ympyui.util.CustomEvent.FLAT);(function(){try{if(!YMPParams['injected-by']){var documentTitle=encodeURIComponent(document.title);var documentURL=encodeURIComponent(document.location);var ywaImg=new Image;setTimeout(function(){ywaImg.src="http://o.analytics.yahoo.com/p.pl?a=10002086853556&b="+documentTitle+"&f="+documentURL;},10);}}catch(e){}}());}}
//
//replace contents of header div
h ="<center>";//<img src='red.gif' width=10 height=0px>
h+="<img src='number_online.php'> ";
h+="<a href='ref.htm'>A-Z</a> ";
//h+="<img src='red.gif' width=10 height=0px>";
h+="<a target=twitter href='http://www.twitter.com/Father_Thames'>";
h+="<img src='http://twitter-badges.s3.amazonaws.com/t_small-a.png' title='Follow Father_Thames on Twitter' alt='Follow Father_Thames on Twitter'/></a>";
//h+="<a href='googlemap.htm'>Map</a> ";

//h+="<a target=twitter href='https://twitter.com/Father_Thames' name='Follow @Father_Thames on Twitter, Tweets for this site'"
//h+="title='Follow @Father_Thames on Twitter, Tweets for this site'>Twitter</a> ";

//h+="<img src='red.gif' width=10 height=0px>";
h+="<span id='heading'> WHERE THAMES SMOOTH WATERS GLIDE </span>";
h+="<img src='red.gif' width=10 height=0px>";
h+="<a href='rlinks.htm'>Resources</a> ";
//h+="<img src='red.gif' width=10 height=0px>";
h+="<a href='gbook.htm' target='gbook'>Messages</a>/";
//h+="<img src='red.gif' width=10 height=0px>";
h+="<a href='http://www.prchecker.info/' target='prc'>";
h+="<img src='http://www.prchecker.info/PR1_img.gif' alt='Free Page Rank Checker' border='0' /></a>";
h+="<div id='menu'></div>"; 

function head(){ document.getElementById("header").innerHTML=h; menu(0);} 

MNAME = new Array(400);
ADDRESS=new Array(400);
COMMENT=new Array(400);
menun=0;
loc=location.href;
section=0;

//==============================================================================
var viewportwidth; var viewportheight;
// the more standards compliant browsers (mozilla/netscape/opera/IE7) use window.innerWidth and window.innerHeight
if (typeof window.innerWidth != 'undefined'){ viewportwidth = window.innerWidth;viewportheight = window.innerHeight;}
// IE6 in standards compliant mode (i.e. with a valid doctype as the first line in the document)
else if (typeof document.documentElement != 'undefined' && typeof document.documentElement.clientWidth !='undefined' && document.documentElement.clientWidth != 0)
{ viewportwidth = document.documentElement.clientWidth; viewportheight = document.documentElement.clientHeight; }
 // older versions of IE
else { viewportwidth = document.getElementsByTagName('body')[0].clientWidth; viewportheight = document.getElementsByTagName('body')[0].clientHeight;}
//document.write('<p>Your viewport width is '+viewportwidth+'x'+viewportheight+'</p>');
//------------------------------------------------------------------------------
function setimage(id,w,h,maxw,maxh)
{
  if(h=="100%"){ h=viewportheight}
  
  image = document.getElementById(id);
  
  image.style.height=h+"px";

}
//==============================================================================
function loaded()
{
 
}


//==============================================================================

function enlargeimages()
{
    
   for(x=0;x<document.images.length;x++)
   {
      i=document.images[x].src
      if((       i.indexOf("files/")>0       )   &&     ((  i.indexOf("jpg")>0)||  (i.indexOf("gif")>0)))
      {
         ii=document.images[x].src.split("/");
//alert(ii[0]+"//"+ii[2] + "/" +ii[3] + "large/" + ii[4]);
        document.images[x].src=ii[0]+"//"+ii[2] + "/" +ii[3] + "large/" + ii[4];
        if(document.images[x].width==300){document.images[x].width=800;}
      }
   }
}   
   
function embedsound(soundfile)
{
document.write("<embed src='http://www.odeo.com/flash/audio_player_standard_gray.swf' ");
document.write("quality='low' width='300' height='52' allowScriptAccess='always' wmode='transparent' ");
document.write("type='application/x-shockwave-flash' flashvars='valid_sample_rate=true&external_url="+soundfile+"' " );
document.write("pluginspage='http://www.macromedia.com/go/getflashplayer'> PLAY</embed>");
document.close();
}

function index(name,address,comment)
{
   MNAME[menun]=name;
   ADDRESS[menun]=address;
   COMMENT[menun]=comment; if(comment==null){ COMMENT[menun]=name;}
   if(loc.search(address)!=-1){section=menun;}
   menun++; 
};

index("SEVEN SPRINGS","s02390.htm","from Cricklade to the Seven Springs (Churn) Source")
index("THAMES HEAD","s02380.htm","from Cricklade to the Thames Head Source")
index("SOURCE?","s02370.htm","There are at least two sources")
index("Cricklade","s02360.htm","A419 to Cricklade Bridge")
index("A419 Br","s02350.htm","from A419 Bridge, Cricklade to Cricklade High Street Bridge")
index("Marston Meysey","s02340.htm","Marston Meysey to below A419 Bridge")
index("Castle Eaton Br","s02330.htm","Castle Eaton Bridge to below Marston Meysey")
index("Kempsford","s02320.htm","Kempsford to below Castle Eaton")
index("Hannington Br","s02310.htm","Hannington Bridge to below Kempsford")
index("Inglesham","s02300.htm","Inglesham to below Hannington Bridge")
index("LIMIT","s02290.htm","the Limit of Navigation")
index("Marina Slip","s02280.htm","Lechlade Marina Slipway")
index("Halfpenny Br","s02270.htm","Lechlade Halfpenny Bridge")
index("ST JOHNS LOCK","s02260.htm","St Johns Lock, Lechlade")
index("St Johns Br","s02250.htm","St Johns Bridge, Lechlade")
index("Trout Inn","s02240.htm","The Trout Inn, Lechlade")
index("Bloomers Hole Fb","s02230.htm","Bloomers Hole Footbridge, Lechlade")
index("BUSCOT LOCK","s02220.htm","Buscot Lock")
index("Eaton Fb","s02210.htm","Eaton Footbridge")
index("Kelmscott","s02200.htm","Kelmscott")
index("Eaton Hastings","s02190.htm","Eaton Hastings")
index("GRAFTON LOCK","s02180.htm","Grafton Lock")
index("Radcot Old Br","s02170.htm","Radcot Old Bridge")
index("Radcot New Br","s02160.htm","Radcot New Bridge")
index("Swan Inn","s02150.htm","The Swan Inn, Radcot")
index("Radcot Cradle Fb","s02140.htm","Radcot Cradle Footbridge")
index("RADCOT LOCK","s02130.htm","Radcot Lock")
index("Old Mans Fb","s02120.htm","Old Mans Footbridge")
index("RUSHEY LOCK","s02110.htm","Rushey Lock")
index("Tadpole Br","s02100.htm","Tadpole Bridge")
index("Trout Inn","s02090.htm","The Trout Inn, Tadpole")
index("Tenfoot Fb","s02080.htm","Tenfoot Footbridge")
index("Shifford Fb","s02070.htm","Shifford Footbridge")
index("SHIFFORD LOCK","s02060.htm","Shifford Lock")
index("below Shifford","s02050.htm","below Shifford Lock")
index("River Windrush","s02040.htm","River Windrush at Newbridge")
index("NewBr","s02010.htm","Newbridge")
index("Harts Fb","s02000.htm","Harts Footbridge")
index("NORTHMOOR LOCK","s01990.htm","Northmoor Lock")
index("Arks Weir Site","s01980.htm","Site of Arks Weir")
index("Bablock Hythe Slip","s01970.htm","Bablock Hythe Slipway")
index("Stanton Harcourt","s01960.htm","Stanton Harcourt")
index("Farmoor Reservoir","s01950.htm","Farmoor Reservoir")
index("PINKHILL LOCK","s01940.htm","Pinkhill Lock")
index("Oxford Cruisers","s01930.htm","Oxford Cruisers Boatyard")
index("Swinford Br","s01920.htm","Swinford Bridge (Eynsham)")
index("EYNSHAM LOCK","s01910.htm","Eynsham Lock")
index("River Evenlode","s01900.htm","River Evenlode")
index("KINGS LOCK","s01890.htm","Kings Lock")
index("Thames Br","s01880.htm","Thames Bridge")
index("Godstow Br","s01870.htm","Godstow Bridge")
index("Godstow Nunnery","s01860.htm","Godstow Nunnery")
index("GODSTOW LOCK","s01850.htm","Godstow Lock")
index("Trout Inn","s01840.htm","The Trout Inn Godstow")
index("Perch Inn","s01830.htm","The Perch Inn, Binsey")
index("Bossoms Boatyard","s01820.htm","Bossoms Boatyard, Medley")
index("Medley Fb","s01810.htm","Medley Footbridge")
index("Medley Weir Site","s01800.htm","Medley Weir Site")
index("OXFORD CANAL","s02440.htm","Oxford Canal Round Trip from Folly Bridge up Canal and across to Kings Lock and back via Godstow")
index("OXFORD OLD RIVER","s01790.htm","Various puntable Oxford rivers")
index("Four Rivers","s01780.htm","Four rivers - a river crossroads")
index("Osney Br","s01770.htm","Osney Road Bridge")
index("OSNEY LOCK","s01760.htm","Osney Lock")
index("Osney Marina","s01750.htm","Osney Marina")
index("Bullstake Stream","s02400.htm","Bullstake Stream from the River towards Hinksey")
index("Osney R Br","s01740.htm","Osney Railway Bridges")
index("Castle Weir stream","s01730.htm","Castle Weir Stream")
index("Osney Fb","s01720.htm","Osney Footbridge (was Gasworks Bridge")
index("Oxford Fb","s01710.htm","Oxford Footbridge")
index("Bacons Folly","s01700.htm","Site of Bacons Folly, Roger Bacon")
index("Folly Br","s01690.htm","Folly Bridge")
index("Rowing","s01630.htm","Oxford Rowing - prints and history")
index("Punting","s01675.htm","Punting, where and how")
index("Salters","s01681.htm","Salters Steamers")
index("Head of River","s01680.htm","The Head of the River pub, Oxford")
index("Islip","s02430.htm","Victoria Arms to Islip (punt limit on the Cherwell)")
index("Bardwell Rd to Victoria Arms","s02420.htm","Bardwell Rd to Victoria Arms on the Cherwell")
index("Rollers to Bardwell Rd","s02414.htm","Boat Rollers to below Bardwell Rd on the River Cherwell")
index("Mesopotamia","s02413.htm","Above Magdalen Bridge. Magdalen Water to the boat rollers on the River Cherwell")
index("Magdalen Bridge","s02412.htm","Magdalen Bridge on the River Cherwell")
index("Lower Cherwell","s02410.htm","River Cherwell from the boathouses on the Isis to below Magdalen Bridge")
index("Oxford Boathouses","s01670.htm","Oxford Boathouses on the Isis")
index("Riverside Slip","s01660.htm","Riverside Slipway below Donnington Road Bridge")
index("Donnington Br","s01650.htm","Donnington Road Bridge")
index("Isis Inn","s01640.htm","Isis Inn and the Oxford Academicals Boathouse")
index("IFFLEY LOCK","s01620.htm","Iffley Lock")
index("Iffley Mill","s01610.htm","Iffley Mill")
index("Isis Br","s01600.htm","Isis Bridge")
index("Kennington R Br","s01590.htm","Kennington Railway Bridge")
index("Rose Island","s01580.htm","Rose Island")
index("SANDFORD LOCK","s01570.htm","Sandford Lock")
index("Sandford Lasher","s01569.htm","Sandford Lasher (Weir)")
index("Radley Boats","s01560.htm","Radley College Boathouses")
index("Nuneham Park","s01550.htm","Nuneham Park")
index("Nuneham","s01540.htm","Nuneham")
index("Nuneham R Br","s01530.htm","Nuneham Railway Bridge")
index("ABINGDON LOCK","s01520.htm","Abingdon Lock")
index("Abingdon Br","s01510.htm","Abingdon Bridge")
index("Abingdon","s01500.htm","Abingdon")
index("Abingdon Slip","s01490.htm","Abingdon Marina Slipway")
index("Culham Cut Fb","s01480.htm","Culham Cut Footbridge - restored canal and proposed reservoir")
index("CULHAM LOCK","s01470.htm","Culham Lock")
index("Sutton Br","s01460.htm","Sutton Bridge")
index("Sutton Courtenay","s01450.htm","Sutton Courtenay")
index("Appleford R Br","s01440.htm","Appleford Railway Bridge")
index("CLIFTON LOCK","s01430.htm","Clifton Lock")
index("Long Wittenham","s01420.htm","Long Wittenham")
index("Barley Mow Inn","s01410.htm","The Barley Mow Inn")
index("Clifton Hampden Br","s01400.htm","Clifton Hampden Bridge")
index("Clifton Hampden Church","s01390.htm","Clifton Hampden Church")
index("Clifton Hampden","s01380.htm","Clifton Hampden")
index("Burcot","s01375.htm","Burcot")
index("DAYS LOCK","s01370.htm","Days Lock")
index("R.Thame","s01360.htm","River Thame")
index("Shillingford Br","s01350.htm","Shillingford Bridge")
index("BENSON LOCK","s01340.htm","Benson Lock")
index("Wallingford Br","s01330.htm","Wallingford Bridge")
index("Winterbrook Br","s01320.htm","Winterbrook Bridge")
index("Papist Way Slip","s01310.htm","Papist Way Slipway")
index("Moulsford R Br","s01300.htm","Moulsford Railway Bridge")
index("Moulsford","s01290.htm","Moulsford, The Beetle and Wedge Inn")
index("CLEEVE LOCK","s01280.htm","Cleeve Lock")
index("Swan Inn","s01271.htm","The Swan Inn at Streatley")
index("GORING LOCK","s01270.htm","Goring Lock")
index("Goring Br","s01260.htm","Goring Bridge (to Streatley)")
index("Goring Gap","s01250.htm","The Goring Gap")
index("Gatehampton R Br","s01240.htm","Gatehampton Railway Bridge")
index("Hartswood Reach","s01230.htm","Hartswood Reach")
index("WHITCHURCH LOCK","s01220.htm","Whitchurch Lock")
index("Whitchurch Br","s01210.htm","Whitchurch Bridge (to Pangbourne)")
index("Hardwick House","s01200.htm","Hardwick House")
index("MAPLEDURHAM LOCK","s01190.htm","Mapledurham Lock")
index("Mapledurham Ho","s01189.htm","Mapledurham House & Mill")
index("Purley","s01180.htm","Purley")
index("Reading Slip","s01170.htm","Reading Slipway below Caversham Bridge")
index("Caversham Br","s01160.htm","Caversham Bridge")
index("Reading Br","s01150.htm","Reading Bridge")
index("CAVERSHAM LOCK","s01140.htm","Caversham Lock")
index("K&A Canal","s01130.htm","Kennet & Avon Canal, Reading")
index("Dreadnought Reach","s01120.htm","Dreadnought Reach, Reading")
index("SONNING LOCK","s01110.htm","Sonning Lock")
index("Sonning Br","s01100.htm","Sonning Bridge")
index("SHIPLAKE LOCK","s01090.htm","Shiplake Lock")
index("R.Loddon","s01080.htm","River Loddon and St Patricks Stream")
index("Shiplake R Br","s01070.htm","Shiplake Railway Bridge") 
index("Wargrave","s01060.htm","Wargrave and the George and Dragon Inn")
index("Bolney","s01050.htm","Bolney")
index("Hennerton Backwater","s01040.htm","Hennerton Backwater")
index("MARSH LOCK","s01030.htm","Marsh Lock")
index("Rowing Museum","s01020.htm","Site of Hobbs slipway, Henley Rowing Museum")
index("Hobbs Boatyard","s01010.htm","Hobbs Boatyard Henley")
index("Henley Public Landing","s01000.htm","Henley Public Landing")
index("Angel on Br","s00990.htm","The Angel on the Bridge at Henley")
index("Henley Br","s00980.htm","Henley Bridge")
index("Red Lion Inn","s00970.htm","The Red Lion at Henley")
index("Leander Club","s00960.htm","The Leander Club, Henley")
index("Henley Slip","s00950.htm","Henley Slipway")
index("Phyllis Court","s00940.htm","Phyllis Court private club")
index("Henley Olympics","s00931.htm","Olympic Rowing at Henley 1908 & 1948")
index("Henley Royal Regatta","s00930.htm","Henley Royal Regatta - General Page")
index("HRR Launches","s00930umpire.htm","Henley Royal Regatta Umpires Launches")
index("HRR 2010s","s00930s.htm","Henley Royal Regatta 2010s")
index("HRR 2000s","s00930r.htm","Henley Royal Regatta 2000s")
index("HRR 1990s","s00930q.htm","Henley Royal Regatta 1990s")
index("HRR 1980s","s00930p.htm","Henley Royal Regatta 1980s")
index("HRR 1970s","s00930o.htm","Henley Royal Regatta 1970s")
index("HRR 1960s","s00930n.htm","Henley Royal Regatta 1960s")
index("HRR 1950s","s00930m.htm","Henley Royal Regatta 1950s")
index("HRR 1940s","s00930l.htm","Henley Royal Regatta 1940s")
index("HRR 1930s","s00930k.htm","Henley Royal Regatta 1930s")
index("HRR 1920s","s00930j.htm","Henley Royal Regatta 1920s")
index("HRR 1910s","s00930i.htm","Henley Royal Regatta 1910s")
index("HRR 1900s","s00930h.htm","Henley Royal Regatta 1900s")
index("HRR 1890s","s00930g.htm","Henley Royal Regatta 1890s")
index("HRR 1880s","s00930f.htm","Henley Royal Regatta 1880s")
index("HRR 1870s","s00930e.htm","Henley Royal Regatta 1870s")
index("HRR 1860s","s00930d.htm","Henley Royal Regatta 1860s")
index("HRR 1850s","s00930c.htm","Henley Royal Regatta 1850s")
index("HRR 1840s","s00930b.htm","Henley Royal Regatta 1840s")
index("HRR -1839","s00930a.htm","Henley Royal Regatta 1839 and before")
//index("Henley Royal Regatta","s00930.htm","Henley Royal Regatta - General Page")
index("Remenham","s00920.htm","Remenham")
index("Fawley Court","s00910.htm","Fawley Court")
index("Ghost!","phantom.pdf","Ghost Story about Temple Island by Charles Dickens!")
index("Temple Island","s00900.htm","Temple Island, Henley")
index("Greenlands","s00892.htm","Greenlands")
index("Hambleden Mill","s00891.htm","Hambleden Mill")
index("HAMBLEDEN LOCK","s00890.htm","Hambleden Lock")
index("Aston Slip","s00880.htm","Aston Slipway (both sides)")
index("Culham Court","s00870.htm","Culham Court")
index("Medmenham","s00860.htm","Medmenham Abbey")
index("HURLEY LOCK","s00850.htm","Hurley Lock")
index("TEMPLE LOCK","s00840.htm","Temple Lock")
index("Bisham","s00830.htm","Bisham Church and Abbey")
index("Marlow Br","s00820.htm","Marlow Suspension Bridge")
index("Compleat Angler","s00812.htm","Compleat Angler")
index("Marlow Slipway","s00811.htm","Marlow Slipway")
index("MARLOW LOCK","s00810.htm","Marlow Lock")
index("A404 Br","s00800.htm","A404 Bridge, Marlow")
index("Quarry Woods","s00795.htm","Quarry Woods belwo Marlow")
index("Bourne End R  & Fb","s00790.htm","Bourne End Railway and footbridge")
index("Cookham Br","s00780.htm","Cookham Bridge")
index("Cookham Slip","s00770.htm","The Ferry Inn and Slipway, Cookham")
index("COOKHAM LOCK","s00760.htm","Cookham Lock")
index("Hedsor","s00751.htm","Hedsor (above Cookham Lock)")
index("Cliveden House & Reach","s00750.htm","Cliveden House and Reach")
index("Jubilee River","s00745.htm","Jubilee River flood channel")
index("BOULTERS LOCK","s00740.htm","Boulters Lock")
index("Below Boulters","s00730.htm","below Boulters Lock, Boulters Restaurant")
index("Maidenhead Br","s00720.htm","Maidenhead Bridge")
index("Maidenhead R Br","s00710.htm","Maidenhead Railway Bridge")
index("BRay Slip","s00700.htm","Bray Slipway")
index("BRAY LOCK","s00690.htm","Bray Lock")
index("New Thames Br","s00680.htm","New Thames Bridge")
index("Monkey Island","s00670.htm","Monkey Island")
index("Summerleaze Fb","s00660.htm","Summerleaze Footbridge")
index("York Cut","s00655.htm","York Cut (waterways around Maidenhead)")
index("Bray Marina","s00654.htm","Bray Marina")
index("Queens Eyot","s00653.htm","Queens Eyot, Eton College")
index("Windsor Marina","s00652.htm","Windsor Marina")
index("Ruddles Pool","s00651.htm","Ruddles Pool, Surly Hall, The Willows")
index("Rowing Course","s00650.htm","Dorney Lake, Eton College Olympic Rowing Course")
index("Marina","s00648.htm","Windsor Racecourse Marina on Clewer Millstream")
index("BOVENEY LOCK","s00640.htm","Boveney Lock")
index("Elizabeth Br","s00630.htm","Elizabeth Bridge, Windsor")
index("Windsor Slip","s00620.htm","Windsor Slipway just below Elizabeth Bridge Windsor")
index("Windsor R Br","s00610.htm","Windsor Railway Bridge")
index("Windsor Br","s00600.htm","Windsor Bridge")
index("Eton","s00590.htm","Eton College")
index("ROMNEY LOCK","s00580.htm","Romney Lock")
index("Black Potts R Br","s00570.htm","Black Potts Railway Bridge")
index("Victoria Br","s00560.htm","Victoria Bridge")
index("Datchet","s00550.htm","Datchet")
index("Albert Br","s00540.htm","Albert Bridge")
index("OLD WINDSOR LOCK","s00530.htm","Old Windsor Lock")
index("Bells of Ousely","s00522.htm","The Bells of Ousely")
index("Magna Carta Island","s00520.htm","Magna Carta Island and Runnymede")
index("BELL WEIR LOCK","s00510.htm","Bell Weir Lock")
index("Runnymede Br","s00500.htm","Runnymede Bridge")
index("Staines Br","s00490.htm","Staines Bridge")
index("Staines R Br","s00480.htm","Staines Railway Bridge")
index("PENTON HOOK LOCK","s00470.htm","Penton Hook Lock")
index("Laleham Slip","s00460.htm","Laleham Slipway")
index("M3 Br","s00450.htm","M3 Bridge")
index("CHERTSEY LOCK","s00440.htm","Chertsey Lock")
index("Chertsey Br","s00430.htm","Chertsey Bridge")
index("SHEPPERTON LOCK","s00420.htm","Shepperton Lock")
index("Desborough Cut","s00410.htm")
index("Walton Br","s00400.htm")
index("Swan Upping","s00395.htm")
index("SUNBURY LOCK","s00390.htm")
index("MOLESEY LOCK","s00380.htm")
index("Hampton Br","s00370.htm")
index("Ditton Slipway","s00360.htm")
index("Kingston Br","s00350.htm")
index("Kingston R Br","s00340.htm")
index("TEDDINGTON LOCKS","s00330.htm")
index("Richmond Br","s00320.htm")
index("Richmond R Br","s00310.htm")
index("Twickenham Br","s00300.htm")
index("RICHMOND LOCK","s00290.htm")
index("Kew Br","s00280.htm")
index("Kew R Br","s00270.htm")
index("Chiswick Br","s00260.htm")
index("Barnes R Br","s00250.htm")
index("Chiswick Eyot","s00241.htm")
index("Hammersmith Br","s00240.htm")
index("Boatrace 2010s","s00231r.htm")
index("Boatrace 2000s","s00231q.htm")
index("Boatrace 1990s","s00231p.htm")
index("Boatrace 1980s","s00231o.htm")
index("Boatrace 1970s","s00231n.htm")
index("Boatrace 1960s","s00231m.htm")
index("Boatrace 1950s","s00231l.htm")
index("Boatrace 1940s","s00231k.htm")
index("Boatrace 1930s","s00231j.htm")
index("Boatrace 1920s","s00231i.htm")
index("Boatrace 1910s","s00231h.htm")
index("Boatrace 1900s","s00231g.htm")
index("Boatrace 1890s","s00231f.htm")
index("Boatrace 1880s","s00231e.htm")
index("Boatrace 1870s","s00231d.htm")
index("Boatrace 1860s","s00231c.htm")
index("Boatrace 1850s","s00231b.htm")
index("Boatrace 1845-49","s00231a3.htm")
index("Boatrace 1836-42","s00231a2.htm")
index("Boatrace 1829","s00231a.htm")
index("Putney Br","s00230.htm")
index("Fulham R Br","s00220.htm")
index("Wandsworth Br","s00210.htm")
index("Battersea R Br","s00200.htm")
index("Battersea Br","s00190.htm")
index("Albert Br","s00180.htm")
index("Chelsea Br","s00170.htm")
index("Victoria R Br","s00160.htm")
index("Vauxhall Br","s00150.htm")
index("Lambeth Br","s00140.htm")
index("Westminster Br","s00130.htm")
index("Charing Cross R Br","s00120.htm")
index("Waterloo Br","s00110.htm")
index("Blackfriars Br","s00100.htm")
index("Blackfriars R Br","s00090.htm")
index("Millenium Fb","s00080.htm")
index("Southwark Br","s00070.htm","")
index("The Great Stink","s00065.htm","The Great Stink, Victorian (and earlier Pollution")
index("Cannon St R Br","s00060.htm","Cannon Street Railway Bridge")
index("Frost Fairs","s00051.htm","Frost Fairs on the frozen river")
index("Doggetts","s00049L.htm","Doggett's Coat and Badge Race")
index("Great River Race","s00049I.htm","The Great River Race")
index("London Br 1967-","s00049e.htm","London Bridge since 1967")
index("London Br 1825-1967","s00049d.htm","London Bridge 1825-1967")
index("London Br 1666-1825","s00049c.htm","London Bridge 1666-1825")
index("London Br Fire 1666","s00049b.htm","London Bridge fire in 1666")
index("London Br -1666","s00049a.htm","London Bridge before 1666")
index("Custom House","s00048.htm","The Custom House")
index("Tower","s00041.htm","From the Tower of London to below Custom House")
index("Tower Br","s00040.htm","Tower Bridge")
index("Lower Pool","s00038.htm","Lower Pool (incomplete")
index("Woolwich","s00032.htm","From Barrier to below Tower Bridge")
index("Barrier","s00031.htm","The Thames Barrier")
index("TIDES","s00030.htm","Live Thames Tides & Barrier Calculations")
index("GRAPHS","barriercontrol.htm","Graphs for barrier (opens new page)")
//index("GBTIDES","gbtides.htm","Live Tides of Great Britain (USE INTERNET EXPLORER ONLY! opens on a new page)")
index("Online SHIPS","tsobeta.htm","ships - AIS & PLA Lists");    // thamesshipping.htm
index("QEII Br","s00020.htm","QEII Bridge to Barrier")
index("Inner Estuary","s00015.htm","Below QEII Bridge")
//index("Canvey Island","s00013.htm","Canvey Island")
index("Southend","s00011.htm","Southend")
//index("Estuary","s00010.htm","Thames Estuary")  //remove
index("Sheerness","s00009.htm","Sheerness & the Medway")
index("Essex Coast","s00007.htm","Thames Essex Coast")
index("Kent Coast","s00005.htm","Thames Kent Coast")
index("Estuary","s00004.htm","Estuary and the Nore")
index("Introduction","index.htm","Introduction to this site")
//alert(INDEX[100][1]+" "+INDEX[100][2])
menun--
currentsection=section

function movesection(ms)
{
   var csms=currentsection+ms; if(csms<0){csms=0;};if(csms>menun){csms=menun};
   document.location=ADDRESS[csms]
}

function finder(f,sought)
{
   csf=currentsection+f 
   if(f==-1)
   {  for(var i=csf; i>0; i--){if(MNAME[i].search(sought)!=-1){document.location=ADDRESS[i];break;}}
   }else
    {  for(var i=csf; i<menun; i++){if(MNAME[i].search(sought)!=-1){document.location=ADDRESS[i];break;}}
   }  
}

function river()
{
   var R=new Array(3,12,36,70,158,224,252,309,325);
   var N=new Array("Cricklade","Lechlade","Newbridge","Oxford","Henley","Windsor","Teddington","London","Estuary")
   line="";
   for ( var r=0; r<R.length; r++ )
   {
      line+="<a href='"+ADDRESS[R[r]]+"'>"+N[r]+"  "
   }
document.getElementById("menu").innerHTML=line
}




function r1(r)
{
   section=r;menu(0);
}

function menu(i) 
{
   section=section+i;//i may be negative
   if(section<=0){section=4;}
   if(section>menun){section=menun-4;}
   var m1=section-4;
   if(m1<0){m1=0}
   var m2=m1+8;if(m2>menun){m2=menun;m1=menun-8}
   var line="";
   for ( var i=m1; i <=m2; i++ )
   {
      line+="<font size=2><a title='"+COMMENT[i]+"' ";
      if(ADDRESS[i]=="gbtides.htm") { line+="target='tides' ";}
      if(ADDRESS[i]=="barriercontrol.htm") { line+="target='graphs' ";}
     if(MNAME[i]=="Ghost!") { line+="target='phantom' ";}
//      if(MNAME[i]=="Shipping AIS") { line+="target='shipping' ";}
      
      
      line+="href='"+ADDRESS[i]+"'>"+MNAME[i]+"</a>        "
   }
line+=currentsection
line+="<br>next upstream: "
if(currentsection>13){ line+="<span onclick='finder(-1,\"LOCK\")'><u>LOCK</u></span>;  ";}
line+="<span onclick='finder(-1,\"Br\")'><u>BRIDGE</u></span>;  "
line+="<span onclick='movesection(-1)'><u>SECTION</u></span>.  "
line+="<span onclick='menu(-1000)'><img title='Move menu upstream to Source.  Key left for upstream, Key right for downstream' src='LLL.GIF' width=20px height=20px></span>  "
line+="<span onclick='menu(-8)'><img title='Move menu upstream 8 sections.  Key left for upstream, Key right for downstream' src='LL.GIF' width=20px height=20px></span>  "
line+="<span onclick='menu(-1)'><img title='Move menu upstream 1 section.  Key left for upstream, Key right for downstream' src='L.GIF' width=20px height=20px></span>  "
line+="<span onclick='river()'><img title='Show whole river menu.  Key left for upstream, Key right for downstream' src='faviconT.jpg' width=20px height=20px></span>  "
line+="<span onclick='menu(1)'><img title='Move menu downstream 1 section.  Key left for upstream, Key right for downstream' src='R.GIF' width=20px height=20px></span>  "
line+="<span onclick='menu(8)'><img title='Move menu downstream 8 sections.  Key left for upstream, Key right for downstream' src='RR.GIF' width=20px height=20px></span>   "
line+="<span onclick='menu(1000)'><img title='Move menu downstream to Estuary.  Key left for upstream, Key right for downstream' src='RRR.GIF' width=20px height=20px></span>   "
line+="next downstream: "
line+="<span onclick='movesection(1)'><u>SECTION</u></span>;  "
line+="<span onclick='finder(1,\"Br\")'><u>BRIDGE</u></span>;  "
if(currentsection<220){ line+="<span onclick='finder(1,\"LOCK\")'><u>LOCK</u></span>  ";}else{line+="<a href='s00030.htm'>Online Thames Tides</a>   "}
//<a href="http://twitter.com/Father_Thames" class="twitter-follow-button" data-show-count="false">Follow @Father_Thames</a>
//<!--script src="http://platform.twitter.com/widgets.js" type="text/javascript"></script-->


document.getElementById("menu").innerHTML=line
}

document.onkeyup = KeyCheck;  
function KeyCheck(e){var KeyID = (window.event) ? event.keyCode : e.keyCode;
//alert(KeyID)// a=65 and A=65  leftarrow=37  right arrow=39
//if((KeyID>64)&&(KeyID<91)){document.location="ref.htm#"+AZ.charAt(KeyID-65) };
if(KeyID==37){menu(-8);};
if(KeyID==39){menu(8);};
};

function riverlevel(d,t)
{
//horizontal
   if(d<-100){ d=-100;}
   if(d<0)
   {
      h ="<img src='yellow1.gif' height=20px width="+((100+d)*1)+"px>";
      h+="<img src='black.gif' height=20px width=4px>";
      h+="<img src='yellow1.gif' height=20px width="+((d)*1)+">";
   }else
   {
      h ="<img src='yellow1.gif' height=20px width=100px>";
   }
   if((d>-0.1)&&(d<100))
   {
      h+="<img src='green.gif' height=20px width="+((d)*1)+"px>";
      h+="<img src='black.gif' height=20px width=4px>";
      h+="<img src='green.gif' height=20px width="+((100-d)*1)+">";
   }else
   {
      h+="<img src='green.gif' height=20px width=100px>";
   }
   if(d>99.9)
   {
      h+="<img src='red.gif' height=20px width="+((d-100)*1)+"px>";
      h+="<img src='black.gif' height=20px width=4px>";
      h+="<img src='red.gif' height=20px width="+((227-d)*1)+">";
   }else
   {
      h+="<img src='red.gif' height=20px width=227px>";
   }
  ht ="<table border=3><tr><th align=center colspan=8>Bar marks AVERAGE LEVEL (" + d + ") upstream </th></tr>";
  ht+="<tr><td align=center colspan=8>" + h + "</td></tr>";
  ht+="<tr><td colspan=8>drought............low.....................high............................................flood</td</tr>";
  ht+=t;
  ht+="</table>";
  document.getElementById("riverlevel").innerHTML=ht;
}
//  fleximessage.js copyright J Eade 2011
//DEFAULT SETTINGS CAN BE ALTERED HERE - BUT CAN BE OVERRIDDEN AT EACH CALL to fleximessage()
defaultstyle ="color:black;background-color:lightblue;"//colour
defaultstyle+="text-align:center;font-family:Arial,sans-serif;font-size:18px;"//font
defaultstyle+="padding:20px;float:left;border:12px solid green;"//border 
defaultstyle+="left:400px;top:300px;"
defaultstyle+="position:absolute;";// absolute | fixed | relative
defaultstyle+="white-space:pre;"// normal | nowrap pre | pre-line | pre-wrap |inherit  nowrap gives box to fit text OR use height and width
//defaultstyle+="height:400px;width:300px;";
defaultstyle+="-moz-border-radius:30px;border-radius:30px;";//moz required for Firefox
defaultstyle+="border-style:outset;";//none | hidden | dotted | dashed | solid | double | groove | ridge | inset | outset
//END OF ALTERABLE SETTINGS=====================================================
defaultstyle+="display:none;z-index:200;";
document.write("<div onmouseover='fm.style.display=\"none\"' id='fm' style='"+defaultstyle+"'></div>");document.close();
fm=document.getElementById('fm') 
//------------------------------------------------------------------------------
winW=630;winH= 460;screensize();

header="";//<a style='color:green;font-size: 10px;float:left;'>Fleximessage</a><br><hr><br>";

helper ="<span style='color:green;font-size: 10px;float:left;'>Fleximessage Help:</span><br>";
helper+="Called by fleximessage( [text] , [seconds] , [style])<br>";
helper+="[text] is any HTML message including images<br>"
helper+="[seconds] is time shown (nothing or 0 means until closure button pressed)<br>"
helper+="[style] (optional) default setting used unless overwritten<br>"
helper+="Note one or more pairs in format <i>PROPERTY : ATTRIBUTE ;</i><br>"
helper+=defaultstyle;
/*helper+="<i>color:black;   background-color:lightblue;<br>"//colour
helper+="white-space:nowrap; </i>[OR]<i> height:200px;width:400px;<br>"
helper+="left:400px;   top:300px;   position:absolute;   white-space:nowrap;<br>"
helper+="text-align:left;  font-family:Arial,sans-serif;  font-size:24px;<br>"//font
helper+="padding:10px; border:5px solid green;<br>"//border 
helper+="position:absolute;";// absolute | fixed | relative
helper+="left:400px;top:300px;</i>";
*/
//FLEXIMESSAGE==================================================================
running="";
function fleximessage(text,secs,style)
{
    if(running){clearTimeout(running);}
    if(typeof text=='undefined'){ text=helper;style="white-space:pre-wrap;";}else
    {   if(text==""){ text=helper;style="white-space:pre-wrap;text-align:left;";};}
    
    if(typeof secs=='undefined'){ secs=0;}
    if(secs==0) 
    {
        footer="<br><span style='color:green;font-size: 10px;' onclick='document.getElementById(\"fm\").style.display=\"none\"'>[X]</span>";
        //footer+="<input align=center type=button style='font: bold 10px Arial;background-color: yellow' value=' CLICK TO CLOSE '</span>";
    }else
    {
        footer="<span id='seconds' onclick='document.getElementById(\"fm\").style.display=\"none\"' style='color:green;font-size: 10px;'><br>[ Cursor here to close. Autoclose in "+secs+" secs ]</span>";
    }

    text=header+text+footer;
    if(typeof style=='undefined'){ style="";}
    style=defaultstyle+style;
    ITEM=style.split(";");
    for(i in ITEM){if(ITEM[i]!=''){I=ITEM[i].split(":");eval("fm.style."+respell(I[0])+"='"+I[1]+"'");};}
     fm.innerHTML=text;
    fm.style.display = 'block';
     if(secs!=0){ running=setTimeout("document.getElementById('fm').style.display='none'",secs*1000);}
//centering fm.scrollWidth is width of message box------------------------------
fm.style.left=(winW/2-fm.scrollWidth/2)+"px";fm.style.top=(winH/2-fm.scrollHeight/2)+"px";

    if(fm.style.mystyle=="oval"){fm.style.borderRadius=(fm.scrollWidth/2)+"px / "+(fm.scrollHeight/2)+"px";}
    if(fm.style.mystyle=="square"){fm.style.height=(fm.scrollWidth/2)+'px';}//why /2?
    if(fm.style.mystyle=="round")
    {   fm.style.height=(fm.scrollWidth/2)+'px';//ie square
        fm.style.borderRadius=(fm.scrollWidth/2)+"px";
    }
//    fm.style.mystyle="";
//    fm.style.mozBorderRadius=br;
 //   fm.style.height=w+'px';//ie square
 //   alert(w+" "+h);
}
function respell(p)
 {
 if(p=="background-color"){ p ="backgroundColor";}
 if(p=="font-family"){ p ="fontFamily";}
 if(p=="font-size"){ p ="fontSize";}
 if(p=="border-width"){ p ="borderWidth";}
 if(p=="border-style"){ p ="borderStyle";}
 if(p=="border-color"){ p ="borderColor";}
 if(p=="border-radius"){ p ="borderRadius";}
 if(p=="-moz-border-radius"){ p ="mozBorderRadius";}
 if(p=="white-space"){ p ="whiteSpace";}
 if(p=="text-align"){ p ="textAlign";}
 if(p=="z-index"){ p ="zIndex";}
return p;
}
//------------------------------------------------------------------------------
function screensize()
{
    winW = 630, winH = 460;
    if(document.body && document.body.offsetWidth){winW=document.body.offsetWidth;winH=document.body.offsetHeight;}
    if(document.compatMode=='CSS1Compat' && document.documentElement && document.documentElement.offsetWidth ) {
        winW = document.documentElement.offsetWidth; winH = document.documentElement.offsetHeight;}
    if (window.innerWidth && window.innerHeight){winW=window.innerWidth;winH = window.innerHeight;}
}
//==============================================================================
var BrowserDetect = {
	init: function () {
		this.browser = this.searchString(this.dataBrowser) || "An unknown browser";
		this.version = this.searchVersion(navigator.userAgent)
			|| this.searchVersion(navigator.appVersion)
			|| "an unknown version";
		this.OS = this.searchString(this.dataOS) || "an unknown OS";
	},
	searchString: function (data) {
		for (var i=0;i<data.length;i++)	{
			var dataString = data[i].string;
			var dataProp = data[i].prop;
			this.versionSearchString = data[i].versionSearch || data[i].identity;
			if (dataString) {
				if (dataString.indexOf(data[i].subString) != -1)
					return data[i].identity;
			}
			else if (dataProp)
				return data[i].identity;
		}
	},
	searchVersion: function (dataString) {
		var index = dataString.indexOf(this.versionSearchString);
		if (index == -1) return;
		return parseFloat(dataString.substring(index+this.versionSearchString.length+1));
	},
	dataBrowser: [
		{
			string: navigator.userAgent,
			subString: "Chrome",
			identity: "Chrome"
		},
		{ 	string: navigator.userAgent,
			subString: "OmniWeb",
			versionSearch: "OmniWeb/",
			identity: "OmniWeb"
		},
		{
			string: navigator.vendor,
			subString: "Apple",
			identity: "Safari",
			versionSearch: "Version"
		},
		{
			prop: window.opera,
			identity: "Opera",
			versionSearch: "Version"
		},
		{
			string: navigator.vendor,
			subString: "iCab",
			identity: "iCab"
		},
		{
			string: navigator.vendor,
			subString: "KDE",
			identity: "Konqueror"
		},
		{
			string: navigator.userAgent,
			subString: "Firefox",
			identity: "Firefox"
		},
		{
			string: navigator.vendor,
			subString: "Camino",
			identity: "Camino"
		},
		{		// for newer Netscapes (6+)
			string: navigator.userAgent,
			subString: "Netscape",
			identity: "Netscape"
		},
		{
			string: navigator.userAgent,
			subString: "MSIE",
			identity: "Explorer",
			versionSearch: "MSIE"
		},
		{
			string: navigator.userAgent,
			subString: "Gecko",
			identity: "Mozilla",
			versionSearch: "rv"
		},
		{ 		// for older Netscapes (4-)
			string: navigator.userAgent,
			subString: "Mozilla",
			identity: "Netscape",
			versionSearch: "Mozilla"
		}
	],
	dataOS : [
		{
			string: navigator.platform,
			subString: "Win",
			identity: "Windows"
		},
		{
			string: navigator.platform,
			subString: "Mac",
			identity: "Mac"
		},
		{
			   string: navigator.userAgent,
			   subString: "iPhone",
			   identity: "iPhone/iPod"
	    },
		{
			string: navigator.platform,
			subString: "Linux",
			identity: "Linux"
		}
	]

};
BrowserDetect.init();
bv=BrowserDetect.browser + " " + BrowserDetect.version;
show="n";
m="Your browser detected as " + bv + " on " + BrowserDetect.OS +"<br>";
//
if(BrowserDetect.browser!="Firefox")
{
  m+="This site optimised for Firefox 8<br>";show="y";
}else
{
  if(BrowserDetect.version<7){ m+="Update Firefox to version 8";show="y";}
}
m+="Free download at <a target=etc href='http://www.mozilla.org/en-US/firefox/new/'>http://www.mozilla.org/en-US/firefox/new/</a>";

if(show=="y"){ fleximessage(m,3);}


//------------------------------------------------------------------------------
/*
function addElement() {

  var ni = document.getElementById('myDiv');

  var numi = document.getElementById('theValue');

  var num = (document.getElementById('theValue').value -1)+ 2;

  numi.value = num;


  var newdiv = document.createElement('div');

  var divIdName = 'my'+num+'Div';

  newdiv.setAttribute('id',divIdName);

  newdiv.innerHTML = 'Element Number '+num+' has been added! <a href=\'#\' onclick=\'removeElement('+divIdName+')\'>Remove the div "'+divIdName+'"</a>';

  ni.appendChild(newdiv);

}
function removeElement(parentDiv, childDiv){
     if (childDiv == parentDiv) {
          alert("The parent div cannot be removed.");
     }
     else if (document.getElementById(childDiv)) {     
          var child = document.getElementById(childDiv);
          var parent = document.getElementById(parentDiv);
          parent.removeChild(child);
     }
     else {
          alert("Child div has already been removed or does not exist.");
          ){ return false;
     }
} 
*/
