var menuitems = [ 'Arial', 'Georgia', 'Paramond', 'Times New Roman', 'black on white', 'darkblue on ivory', 'darkred on silver', 'black on silver', 'No line numbers', 'Number 5', 'Number each', 'Reset', 'Concordance', 'Feedback' ].reverse(),
 def = {s:['Georgia', 'black on white', 'No line numbers' ]}, dogear = null, cur = [], pim = [], prefas=[], tic = null, tis = null, hilix = 0,
 gid = window.document.getElementById ? function( o ) { return window.document.getElementById( o ) || null; } : ( window.document.all ? function( o ) { return window.document.all( o ) || null; } : null );

if( typeof Array.prototype.copy==='undefined' ) { Array.prototype.copy = function() { var a = [], i = this.length; while( i-- ) { a[i] = this[i]; } return a; }; }
Array.prototype.indexOf = function( n ) { for( var i = 0, l = this.length; i<l; i++ ) { if( this[i]===n ) { return i; } } return -1; };
Array.prototype.unique = function( b ) { for( var a = [], i = 0, l = this.length; i<l; i++ ) { if( a.indexOf( this[i], 0, b ) < 0 ) { a.push( this[i] ); } } return a; };
String.prototype.trim = function() { return this.replace( /^[\s|\u00a0]*|[\s|\u00a0]*$/g, '' ); };
function addevent( e, f, o ) { o = o || window; if( o.addEventListener ) { o.addEventListener( e, f, true ); return true; } else if( o.attachEvent ) { return o.attachEvent( 'on' + e, f ); } }
function ati( o ) { o = o || this; if( o.title ) { window.alert( o.title.trim() ); } }
function ct( o ) { if( o ) { window.clearTimeout( o ); o = null; } }
function decode( s ) { return ( typeof decodeURIComponent!=='undefined' ? decodeURIComponent( s ) : unescape( s ) ).replace( /\+/g, ' ' ); }
function gettext( o ) { var b, s = '', j = o && o.firstChild; if( j && o.childNodes.length<999 ) { for( ; j!==null; j = j.nextSibling ) { if( j.nodeType===3 ) { s += j.nodeValue; } else if( j.nodeType===1 ) { b = ( /^(b|code|em|i|span|strong|q|s|tt|u)$/i.test( j.tagName ) ) ? '' : ' '; s += b + gettext( j ) + b; } } } return s.replace( /\s+/g, ' ' ); }
function getwindow() { var v = window, d = v.document, w, h, l, t; if( typeof v.innerWidth==='number' ) { w = v.innerWidth; h = v.innerHeight; l = v.pageXOffset; t = v.pageYOffset; } else if( (v = d.documentElement) && typeof v.clientWidth==='number' && v.clientWidth!==0 || (v = d.body) ) { w = v.clientWidth; h = v.clientHeight; l = v.scrollLeft; t = v.scrollTop; } return { w: w, h: h, l: l, t: t }; }
function isselect() { var d = window.document; if( d.selection && d.selection.createRange ) { return d.selection.createRange().text; } if( d.getSelection ) { return d.getSelection(); } return ''; }
function mul( n, s, m ) { n = parseFloat( n, 10 ); return Math.round( n * 10 ) / 10 + ' ' + ( n>0&&n<2 ? s : ( m ? m : ( s + 's' ) ) ); }
function rf() { return false; }
function tog( o ) { o = typeof o==='string' ? gid( o ) : o; if( o ) { var re = /(\s*)\bhid\b(\s*)/, s = o.className; o.className = re.test( s ) ? s.replace( re, '$1$2' ) : ( s + ' hid' ); return false; } return true; }
function play( o, t ) { if( gid( 'snd' ) ) { gid( 'snd' ).src = o && o.href || o || '/web/sound/silence.wav'; gid( 'snd' ).loop = t ? t : 'infinite'; return false; } return true; }
function preload() { if( window.Image ) { var a = arguments, i = a.length, j; while( i-- ) { j = pim.length; pim[j] = new Image(); pim[j].src = a[i]; } } }

function highlight( s, o ) {
 if( !s ) { return 0; }
 var d = window.document, f = d.forms.f.elements,
  h = d.createElement( 'span' ), i = 0, j, k, l, m, n = 0, t,
  r = new RegExp( s, f.cases && f.cases.checked ? 'g' : 'gi' );
 if( f.regex && !f.regex.checked || false ) { s = s.replace( /([\\|\^$()\[\]{}.*+?])/g, '\\$1' ); }
 if( /^\s*$/.test( s ) ) { return 0; }
 if( f.phrase && !f.phrase.checked || false ) { s = s.split( /\s+/ ).join( '|' ); }
 o = [ o || gid( 'g' ) || d.documentElement || d.body ];
 h.className = 'q' + ( hilix++ )%5;
 do {
  m = o[i];
  if( m.nodeType===3 ) {
   r.lastIndex = 0;
   l = r.exec( m.nodeValue );
   if( l !== null ) {
    k = l[0].length;
    if( r.lastIndex > k ) {
     m.splitText( r.lastIndex - k );
     m = m.nextSibling;
    }
    if( m.nodeValue.length > k ) {
     m.splitText( k );
     o[i++] = m.nextSibling;
    }
    t = h.cloneNode( true );
    t.appendChild( d.createTextNode( l[0] ) ); n++;
    m.parentNode.replaceChild( t, m );
   }
  } else {
   j = m.childNodes.length;
   while ( j ) { o[i++] = m.childNodes.item( --j ); }
  }
 } while( i-- );
 if( !n ) { hilix--; } return n;
}

function unhilite() {
 var d = window.document, a = gid( 'g' ).getElementsByTagName( 'span' ), i = a.length, j, k, p, s;
 while( i-- ) { j = a[i];
  if( !j.className.indexOf( 'q' ) ) {
   p = j.parentNode; s = gettext( j );
   if( (k=j.previousSibling) && k.nodeType===3 ) {
    s = k.nodeValue + s; p.removeChild( k );
   }
   if( (k=j.nextSibling) && k.nodeType===3 ) {
    s = s + k.nodeValue; p.removeChild( k );
   }
   p.insertBefore( d.createTextNode( s ), j );
   p.removeChild( j );
  }
 }
 hilix = 0; return false;
}

function mm( e ) {
 e = e || window.event || {};  // (e.srcElement || e.target).tagName 
 var b = typeof e.clientY==='number', g = gid( 'g' ), w = getwindow(), x, y, dx = dogear.offsetWidth + (g.offsetWidth-g.scrollWidth), dy = dogear.offsetHeight;
 x = b ? e.clientX : e.x; x = g.offsetLeft + g.offsetWidth - x;
 y = b ? e.clientY : e.y; y = g.offsetTop + g.offsetHeight - y;
 if( x+y>128 ) {
  dogear.style.left = '-9999px';
 } else if( gid( 'f' ).style.left ) {
  dogear.style.left = w.w - dx + 'px';
  dogear.style.top = w.h - dy + 'px';
 } else {
  dogear.style.left = g.offsetLeft + g.offsetWidth - dx +'px';
  dogear.style.top = g.offsetTop + g.offsetHeight - dy +'px';
 }
}

function prefset() { var s=( '#' + def.s.join( '#' ) + ( gid( 'f' ).style.left ? '#zap' : '' ) ).replace( def.re, '' ).replace( ' on ', '&' ).replace( / /g, '+' ), i = prefas.length; while(i--) { prefas[i].href = '/' + prefas[i].pathname + s; } }

function menuhide( e, o ) { e = e || window.event || {}; o = o || e.srcElement || e.target; if( gid( 'menu' ) && ( !o || !o.parentNode || o.parentNode!==gid( 'menu' ) )) { gid( 'menu' ).style.left = '-9999px'; } }

function menushow( e ) {
 e = e || window.event || {};
 var b = typeof e.clientY==='number', d = window.document, div, d1, d2,i;
 if( !gid( 'menu' ) ) {
  div = d.createElement( 'div' ); div.id = 'menu';
  d1 = d.links[0].cloneNode( true );
  d1.style.display = 'block';
  d1.style.border = '';
  d1.style.padding = '2px 20px';
  d1.style.background = '#e4e0d8 none no-repeat scroll 4px center';
  addevent( 'mouseover', function( e, o ) { e = e || window.event || {}; o = o || e.srcElement || e.target; o.style.border = '1px inset white'; o.style.padding = '1px 19px'; ct( tic ); }, d1 );
  addevent( 'mouseout', function( e, o ) { e = e || window.event || {}; o = o || e.srcElement || e.target; o.style.border = ''; o.style.padding = '2px 20px'; ct( tic ); tic = window.setTimeout( menuhide, 700 ); }, d1 );
  addevent( 'click', function( e, o ) { e = e || window.event || {}; o = o || e.srcElement || e.target;
   var i, k, s = o.title;
   if( s==='Source' ) { k='<html><head><title>Generated source of: '+d.location.href+'<\/title><\/head><body style="margin:0;border:0;height:100%;overflow:hidden;font:menu;background:threedface;"><textarea cols="80" rows="20" style="width:100%;height:95%;" id="t">'+d.documentElement.outerHTML+'<\/textarea>&nbsp; &nbsp; <div><a href="javascript:history.go(-1);" style="text-decoration:none;">&larr; Back<\/a> &nbsp; <a href="javascript:window.location.href=window.location.href;" style="text-decoration:none;">&darr; Reload<\/a><\/div><\/body><\/html>'; d.open(); d.write( k ); return false; }
   else if( s==='Feedback' ) { return true; }
   else if( s==='Concordance' ) { return listshow(); }
   else if( s==='Reset' ) { setfon( def.i[0] ); setcol( def.i[1] ); setnum( def.i[2], true ); listhide(); var a = gid('menu').getElementsByTagName('a'), i = 0, j = 0; do { if( /^none\b|\/check.gif\b/.test( a[i].style.backgroundImage ) ) {if( def.i.indexOf(a[i].title)<0 ) { a[i].style.backgroundImage = 'none'; } else { a[i].style.backgroundImage = 'url( /image/icon/check.gif )'; cur[j++] = a[i]; } } } while( a[++i] ); }
   else if( s.indexOf( 'umber' )>0 ) { setnum( s ); cur[2].style.backgroundImage = 'none'; cur[2] = o; }
   else if( s.indexOf( ' on ' )<0 ) { setfon( s ); cur[0].style.backgroundImage = 'none'; cur[0] = o; }
   else { setcol( s ); cur[1].style.backgroundImage = 'none'; cur[1] = o; }
   if( s!=='Reset' ) { o.style.backgroundImage = 'url( /image/icon/check.gif )'; }
   prefset(); play( '/web/sound/tick0.wav', 1 );
   gid( 'g' ).focus();
   return false;
  }, d1 );
  i = menuitems.length;
  while( i-- ) { k = menuitems[i];
   d2 = d1.cloneNode( true );
   d2.href = '#' + escape( k );
   d2.title = k;
   d2.firstChild.nodeValue = k.replace( /^(dark)?(\w+) on (dark)?(\w+)$/, '$2 on $4' ).replace( / (ITC|MS|MT|New( Roman)?|Unicode)$/, '' );
   if( k==='Feedback' ) {
    d2.href = 'mailto:info@4umi.com?subject=Feedback from ' + d.title.replace( / <4umi word/, '' ) + '&body=About page:%0d%0a%3c ' + escape( d.location.href.replace( /#$/, '' ) ) + ' %3e%0d%0a%20%0d%0aYour comments here.%0d%0aThank you.';
    d2.style.backgroundImage = 'url( /image/icon/mailto.gif )';
   } else if( k==='Concordance' ) {
    d2.style.backgroundImage = 'url( /image/icon/page9.gif )';
   } else if( k==='Reset' ) {
    d2.style.backgroundImage = 'url( /image/icon/arrow/ungo.gif )';
   } else if( k.indexOf( 'umber' )>0 ) { if( !gid( 'l1' ) ) { continue; }
    if( def.s[2]===k.trim() ) { cur[2] = d2; }
   } else if( k.indexOf( ' on ' )<0 ) {
    if( def.s[0]===k ) { cur[0] = d2; }
    d2.style.fontFamily = k;
   } else {
    if( def.s[1]===k ) { cur[1] = d2; }
    d2.style.backgroundColor = k.replace( /^\w+ on /, '' ); d2.style.color = k.replace( / on \w+$/g, '' );
   }
   div.insertBefore( d2, null );
  }
  i = cur.length; while(i--) { k = cur[i]; def[i] = k; k.style.backgroundImage = 'url( /image/icon/check.gif )'; }
  d.body.insertBefore( div, gid( 'f' ) );
 }
 gid( 'menu' ).style.top = Math.max( 0, ( b ? e.clientY : e.y ) - gid( 'menu' ).offsetHeight ) + 'px';
 gid( 'menu' ).style.left = ( b ? e.clientX : e.x ) + 'px';
 return false;
}

function zap() {
 var b = gid( 'f' ).style.left, g = gid('g');
 gid( 'f' ).style.left = b ? '' : '-9999px';
 g.style.margin = b ? '' : '0';
 g.style.height = ( b ? g.offsetHeight - 47 : g.offsetHeight + 47 ) + 'px';
 gid( 't' ).style.display = b ? '' : 'none';
 gid( 'lef' ).style.display = b ? '' : 'none';
 listhide(); prefset();
 if( dogear ) { dogear.style.left = '-9999px'; }
 play( '/web/sound/' + ( b ? 'fingerclick' : 'fingerclick' ) + '.wav', 1 );
 return false;
}

function resized( preserve ) {
 window.scrollTo();
 var o, v = getwindow(), w = v.w;
 if( dogear ) { dogear.style.left = '-9999px'; }
 if( gid( 'f' ).style.left ) { zap(); }
 if( (o=gid( 'g' )) ) {
  o.style.height = Math.max( 0, v.h - 47 ) + 'px';
  o.style.marginLeft = w>900 ? '' : '150px';
  o.style.marginRight = ( gid( 'sorta' ) ? 14 + gid( 'sorta' ).parentNode.offsetWidth : Math.round( o.offsetLeft / 2 ) ) + 'px';
 }
 if( (o=gid( 'lef' )) ) {
  o.style.height = Math.max( 0, gid( 'g' ).offsetHeight - 3 ) + 'px';
  o.style.width = Math.max( 0, gid( 'g' ).offsetLeft - 6 ) + 'px';
 }
 if( !preserve ) { listhide(); }
 if( typeof mov==='function' ) { mov(); }
}

function setcookie( name, value ) {
 var now = new Date(); now.setTime( now.getTime() + Math.round( 86400000 * 28 ) );  //  in days
 window.document.cookie = name + '=' + escape( value ) + '; expires=' + now.toGMTString() + '; path=/';
}

function getridofemptytextnodes( o ) {
 for( var c = o.childNodes, i = 0, y=c[0]; y; y=c[++i] ) {
    if( y.nodeType==1 ) { getridofemptytextnodes( y ); }
     else if( y.nodeType==3 && !( /\S/.test( y.nodeValue ) ) ) {
      o.removeChild( y ); --i;
}}}

function pop( o, e ) {
 o = o || this;
 e = e || window.event || {};
 var a = o.href, b = a.indexOf( '/juke' ) > 0, v = window.screen, w;
 if( a.indexOf( 'mailto:' ) ) {
  w = window.open( a,
   b ? '_juke' : '_pop',
   b ? 'left=' + ( v.availWidth - 187 ) + ',top=' + ( v.availHeight - 223 ) + ',resizable,width=180,height=180' : '' );
  if( w ) { w.focus(); return false; }
 }
}

function scrolldo( n ) {
 var g = gid( 'g' ), x = n>0?-1:1;
 g.scrollTop = g.scrollTop + x;
 ct( tis );
 if( n ) { 
  tis = window.setTimeout( 'scrolldo(' + ( n + x*(n>40?2:1) ) + ');', Math.max( 1, 40 - Math.abs( n ) ) );
 }
}

function scrollgo( n ) {
 ct( tis );
 tis = window.setTimeout( 'scrolldo( '+n+' );', 1 );
 return true;
}

function gogo( o ) { o = typeof o==='string' ? gid( o ) || gid( 'l' + o ) || gid( 'p' + o ) : o;
 if( o.id && o.id!=='g' && o.id!=='end' ) { o.style.backgroundColor = 'orange'; window.setTimeout( 'gid( \'' + o.id + '\' ).style.backgroundColor = \'gold\';', 300 ); window.setTimeout( 'gid( \'' + o.id + '\' ).style.backgroundColor = \'\';', 3000 ); }
 if( !o.id || o.id!=='g' ) {
  if( o.offsetTop<gid( 'g' ).scrollTop|| /^h\d$/i.test( o.tagName ) ) { gid( 'g' ).scrollTop=o.offsetTop;/*scrollgo(40);*/ } else
  if( o.offsetTop+o.offsetHeight>gid('g').scrollTop+gid('g').offsetHeight ) { gid('g').scrollTop=o.offsetTop+o.offsetHeight-gid('g').offsetHeight+40;/*scrollgo(-120);*/ } }
 play( '/web/sound/bellhigh.wav', 1 );
}

function gohash( e, o ) { e = e || window.event || {}; o = o || e.srcElement || e.target; gogo( (o.hash||o.parentNode.hash).substring( 1 ) ); return false; }

function setfon( s ) { gid( 'g' ).style.fontFamily = s; def.s[0] = s; }

function setcol( s ) { gid( 'g' ).style.backgroundColor = s.replace( /^\w+ on /, '' ); gid( 'g' ).style.color = s.replace( / on \w+$/g, '' ); def.s[1] = s; }

function setnum( s, quiet ) {
 if( gid( 'l1' ) ) {
  var d = window.document, i, j, k, o, p;
  if( !(j=gid( 'l1' ).firstChild) || j.className!=='ln' ) {
   o = d.createElement( 'a' );
   o.href = '#';
   o.className = 'ln';
   o.insertBefore( d.createTextNode( ' ' ), null ); addevent( 'click', gohash, o );
   i=0; while( (j=gid('l'+ (++i) )) ) {
    p = o.cloneNode( true );
    j.insertBefore( p, j.firstChild );
   }
  }
  i=0; while( (j=gid('l'+ (++i) )) ) {
   p = j.firstChild;
   p.href = '#' + i;
   p.firstChild.nodeValue = s.indexOf( 'No' )<0 ? ( s.indexOf( '5' )<0 ? i : ( i%5 ? '\u00a0' : i ) ) : '\u00a0';
  }
  def.s[2] = s;
 } else if( !quiet ) { window.alert( 'Found no verselines.' ); }
}

function gtube( o ) {
 var d = window.document, g = o.parentNode, h = d.createElement( 'div' ), m = d.createElement( 'embed' );
 m.src = 'http://www.youtube.com/v/' + o.href.replace( /^.*?\w+=([^&]+).*$/, '$1' ) + '&fs=1&color1=0x234900&color2=0x4e9e00';
 m.type = 'application/x-shockwave-flash';
 m.allowscriptaccess = 'always';
 m.allowfullscreen = 'true';
 m.wmode = 'transparent';
 m.width = 480;
 m.height = 385;
 h.className = 'c';
 h.insertBefore( m, null );
 g.parentNode.insertBefore( h, g );
 g.parentNode.removeChild( g );
 return false;
}

function tos( e, o ) {
 e = e || window.event || {}; o = o || e.srcElement || e.target;
 var d = window.document, g = gid( 'g' ), b = 0, n = 0, r, t = 1,
  s = gettext( o ).trim(), w = o.parentNode.tagName.toLowerCase('')==='td' ? 2 : 0,
  alas = function() { t=0;var p; if( (p=gid(s)||gid('l'+s)||gid('p'+s)) ) { gogo( p ); } else { window.alert( 'Found no "' + s + '".' ); } },
  good = function() { var p = r.parentElement();
   do { if( p.id==='f' || ( /\b(hid|srt)\b/.test( p.className || '' ) ) ) { return false; } }
    while( (p=p.parentNode) ); return true;
  },
  grab = function() { return r.findText( s, b?-1:1, b + w ); },
  look = function() { return grab() || ( n += r.moveStart( 'textedit', b?1:-1 ) ) && grab(); },
  step = function() { return b ? r.moveEnd( 'character', -1 ) : r.moveStart( 'character', 1 ); };
 if( !s ) { return false; }
 if( window.find ) {
  if( !window.find( s ) ) { while( window.find( s, false, true ) ) { ++n; } } else { ++n; }
  if( !n ) { alas(); }
 } else if( d.selection ) {
  r = d.selection.createRange();
  if( !e.keyCode || e.keyCode>40 ) {
   if( e.ctrlKey ) { b = 1; }
   if( r.text && good() ) {
    step();
   } else {
    d.selection.empty();
    r = d.selection.createRange();
    r.moveToElementText( g );
   }
   if( look() ) {
    if( !good() ) {
     while( step() && look() && Math.abs( n )<3 ) {
      if( good() ) { break; }
     }
    }
    if( good() ) {
     r.select(); r.scrollIntoView();
     if( r.offsetTop<55 && r.parentElement()===g ) { g.scrollTop = g.scrollTop - 55; }
    } else { alas(); }
   } else { alas(); }
  }
 }
 r.parentElement().focus();
 if( t ) { play( '/web/sound/bellhigh.wav', 1 ); }
 return false;
}

function toa() {
 var b, d = window.document,
  f = d.forms.f, g = f.lastChild.lastChild, c = g.childNodes, h = g.firstChild, i, j,
  s = f.elements.q.value.trim();
 if( gettext( g )!==s ) {
  s = s.split( /[\s\.,;:!?\/\\()\[\]\u0022]+/ ).unique();
  i = s.length;
  while( c.length>i + 1 ) {
   if( g.lastChild!==h ) { g.removeChild( g.lastChild ); }
  }
  while( c.length<i + 1 ) {
   b = h.cloneNode( true );
   b.className = 'se';
   b.onclick = b.onkeydown = tos;
   j = c.length%10; b.accessKey = j; b.title = ' Alt+' + j + ' ';
   g.insertBefore( b, null );
  }
  while( i-- ) { j = c[i + 1]; j.firstChild.nodeValue = s[i]; j.href = def.fi + s[i]; }
 }
 return false;
}

function topaste() { var d = window.document, r, s = this.value;
 if( d.selection && (r = d.selection.createRange()) && !r.text || ( r.text!==s ) ) {
  window.event.returnValue = true; toa(); return true;
 }
 this.value = window.clipboardData.getData( 'Text' );
 window.event.returnValue = false; toa(); return false;
}

function listsort( e ) {
 var b, col = this.nextSibling ? 0 : 1,
  table = gid( 'sorta' ),
  tbody = table.firstChild,
  newtbody = tbody.cloneNode( false ),
  rows = tbody.rows, i = rows.length,
  newrows = [];
 function cell( o ) { return o.childNodes[ col ] || ''; }
 function comp( va, vb ) { return va===vb ? 0 : ( (!va && va!==0) || (va>vb && vb) ? 1 : -1); }
 function sortn( a, b ) { function c( o ) { return +gettext(cell(o))||1; } return comp( c(a), c(b) ); }
 function sortw( a, b ) { function c( o ) { return gettext(cell(o)).toLowerCase(); } return comp( c(a), c(b) ); }
 while (i--) {
  newrows[i] = rows[i].cloneNode( true );
 }
 if( this.className && this.className.indexOf( 'sorted' )>-1 ) {
  newrows.reverse();
 } else {
  if( (b=this.previousSibling) ) { b.className = b.className.replace( ' sorted', '' ); }
  if( (b=this.nextSibling) ) { b.className = b.className.replace( ' sorted', '' ); }
  this.className += ' sorted';
  newrows.sort( col ? sortn : sortw );
 }
 for( i=0; i<newrows.length; i++ ) {
  newtbody.appendChild( newrows[i] );
 }
 table.replaceChild( newtbody, tbody );
 return false;
}

function grow() {}

function grew() {}

function listhide() { var b = window.document.body; while( dogear && b.lastChild && b.lastChild!==dogear ) { b.removeChild( b.lastChild ); } }

function listshow( e ) {
 var d = window.document, h = isselect(), s = h || gettext( gid( 'g' ) ).replace( /- --oOo-- -/, '' ) || gettext( d.body ),
  re = /[\w\u00a1-\u00ff'-]+/g, a = s.match( re ), b = {}, c = [], i, j, k, l, t;
 if( d.body.lastChild!==dogear ) { listhide(); return false; }
 if( a ) { a.sort(); i = a.length;
  while( i-- ) { if( b[a[i].toLowerCase()] ) { b[a[i].toLowerCase()] = b[a[i].toLowerCase()] + 1; } else { b[a[i]] = b[a[i]] ? b[a[i]] + 1 : 1; } }
  for( i in b ) { if( b[i] ) { c.push( [b[i], ' ' + i] ); } }
  c.sort( function( a, b ) { var x = b[0] - a[0]; return x || ( b[1].toLowerCase()<a[1].toLowerCase() ? 1 : -1 ); } );
  c = c.join( '\n' ).replace( /(\d+),/g, '$1\t' ).split( /\n/ ).reverse();
  listhide();
  var bt = d.createTextNode( ' ' );
  var br = d.createElement( 'br' );
  var div = d.createElement( 'div' ), div2; div.className = 'srt'; div2 = div.cloneNode( true );
  var table = d.createElement( 'table' ), table2; table.className = div.className; table2 = table.cloneNode( true ); table.id='sorta';
  var thead = d.createElement( 'thead' );
  var tbody = d.createElement( 'tbody' );
  var qr, tr = d.createElement( 'tr' );
  var qa, ta = d.createElement( 'a' ); ta.insertBefore( bt, null ); ta.href = '#'; addevent( 'click', tos, ta ); addevent( 'keydown', tos, ta );
  var qh, th = d.createElement( 'th' ); th.insertBefore( bt.cloneNode( true ), null ); addevent( 'click', listsort, th );
  var qd, td = d.createElement( 'td' ); td.insertBefore( bt.cloneNode( true ), null );
  qr = tr.cloneNode( true ); qr.title = Math.round( c.length / a.length * 100 ) + '%' + ' unique.';
  qh = th.cloneNode( true ); qh.lastChild.nodeValue = c.length + '/' + mul( a.length, 'word' ).replace( /\s/, '\u00a0' ); qh.style.overflow='hidden'; qh.style.display='block';
  qr.insertBefore( qh, null );
  qh = th.cloneNode( true ); qh.className = 'r sorted'; qh.lastChild.nodeValue = '#';
  qr.insertBefore( qh, null );
  thead.insertBefore( qr, null );
  table2.insertBefore( thead, null );
  i = c.length; while( i-- ) { t = c[i].split( /\t+/ );
   qr = tr.cloneNode( true );
   qd = td.cloneNode( true );
   qa = ta.cloneNode( true ); qa.lastChild.nodeValue = t[1]; qa.href = def.fi + t[1];
   qd.insertBefore( qa, null );
   qr.insertBefore( qd, null );
   qd = td.cloneNode( true ); qd.lastChild.nodeValue = t[0]==='1' ? '\u00a0' : t[0]; qd.className = 'r';
   qr.insertBefore( qd, null );
   tbody.insertBefore( qr, null );
  }
  table.insertBefore( tbody, null );
  div.insertBefore( table, null );
  d.body.insertBefore( div, null );
  div2.insertBefore( table2, null );
  d.body.insertBefore( div2, null );
  qh.previousSibling.style.width = qa.offsetWidth - 4 + 'px';
  qh.style.width = qd.offsetWidth - 4 + 'px';
  resized( true );
  div2.style.top = gid( 'g' ).offsetTop - div2.offsetHeight + 'px';
  div2.style.left = gid( 'g' ).offsetLeft + gid( 'g' ).offsetWidth + 2 + 'px';
  i = gid( 'g' ).offsetHeight;
  div.style.height = table.offsetHeight>i ? i + 'px' : '';
  div.style.width = table.offsetWidth + 12 + 'px';
  div.style.top = div2.offsetTop + div2.offsetHeight + 'px';
  div.style.left = div2.offsetLeft + 'px';
  play( '/web/sound/tick2.wav', 1 );
 } else { window.alert( 'Found no words.' ); }
 return false;
}

(function() {
 var buttons = [
  { l:'%Zap', s:'/image/icon/edit.gif', f:zap },
  { l:'%Hilite on this page', s:'/image/icon/torch.gif', f:function() { var i, j, s = this.form.q.value, t = 0; if( (j=gid( s ) || gid( 'l' + s ) || gid( 'p' + s )) ) { gogo( j ); } else if( hilix ) { unhilite(); this.className = 'i'; play( '/web/sound/dingh.wav', 1 ); } else { j = s.split( /[^\w\-'"]+/ ); i = j.length; while(i--) { t += highlight( j[i] ); } if( t ) { setcookie( 'q', s ); this.className = 'j'; play( '/web/sound/ding.wav', 1 ); } else if( s ) { window.alert( 'Found no "' + s + '".' ); } } return false; } },
  { l:'%Tools', s:'/image/icon/screenshot.gif', f:menushow } ],
  d = window.document, m = d.links[0], f = d.forms.f, g, h, i, j, k, l = buttons.length, q = f.elements.q;
 def.i = def.s.copy();
 def.re = new RegExp( '#(' + def.i.join( '|' ) + ')', 'g' );
 def.fi = '/find?qf=' + f.elements.qf.value + '&q=';
 m.className = 'm';
 if( (g=f.lastChild) && (h=g.lastChild) ) {
  while( l-- ) {
   j = h.cloneNode( true );
   k = buttons[l];
   if( k.s ) { j.src = k.s; }
   j.value = k.l.replace( /%/, '' );
   j.accessKey = k.l.replace( /^.*%(\w).*$/, '$1' );
   j.title = ( ' ' + j.value + '. Alt+' + j.accessKey.toUpperCase() + ' ' ).replace( 'Alt+Z', 'Escape' );
   j.onclick = k.f || rf;
   if( j.value==='Zap' ) { j.style.position = 'absolute'; j.style.right = '18px'; j.style.top = '4px'; }
   g.insertBefore( j, j.value==='Tools' ? g.firstChild : null );
  }
  g.insertBefore( g.cloneNode( false ), null );
  g.lastChild.style.display = 'inline';
  h = g.lastChild.insertBefore( m.cloneNode( true ), null );
  h.className = 'dg';
  h.lastChild.nodeValue = '|';
  h.title = 'Resize the form.';
  h.onclick = rf;
  h.onmousedown = function( e ) { e = e || window.event || {};
   var b = typeof e.clientY==='number', o = gid( 'q' ),
    w = o.offsetWidth - ( b ? e.clientX : e.x ) - 3;
   d.ondragstart = d.onselectstart = rf;
   d.onmousemove = function( e ) { e = e || window.event || {}; o.style.width = w + ( b ? e.clientX : e.x ); };
   d.onmouseup = function() { d.ondragstart = d.onselectstart = d.onmousemove = d.onmouseup = null; };
  };
 }
 q.onfocus = function() { this.select(); };
 q.onkeydown = function() { play( '/web/sound/tick1.wav', 1 ); };
 q.onkeyup = q.onmouseup = toa;
 q.onpaste = topaste;
 i = decode( d.location.href + '&' + d.referrer || '' ).match( /[&?](q(\w{3,})?|p|w)=([^&]*)/ );
 if( i ) { i = i[3].replace( /^(define|site):\s*/, '' ).replace( /^cache:(\S*:)?\s*/, '' ); q.value = i; setcookie( 'q', i ); }
 if( q.value ) { toa(); }

 if( (h=d.createElement( 'bgsound' )) && h.tagName.toLowerCase()==='bgsound' ) {
  h.id = 'snd';
  h.loop = 1;
  h.volume = -1000;
  h.src = '/web/sound/silence.wav';
  d.body.insertBefore( h, null );
 }

 resized();
 g = gid( 'g' );
 h = g.getElementsByTagName( 'div' );
 if( h[0] && (i=gettext( h[0] )) && (i=i.replace( /januari/gi, 'January' ).replace( /februari/gi, 'February' ).replace( /maart/gi, 'March' ).replace( /mei/gi, 'May' ).replace( /juni/gi, 'June' ).replace( /juli/gi, 'July' ).replace( /augustus/gi, 'August' ).replace( /oktober/gi, 'October' ).match( / \d+ \w+ \w{4}/g )) && i.length===2 ) {
  h[0].title = Math.floor( ( new Date( i[1] ) - new Date( i[0] ) ) / 31536000000 ) + ' years.';
  h[0].onclick = function( e ) { e = e || window.event; if( (e.srcElement||e.target)===this ) { ati( this ); } };
 }

 h = g.getElementsByTagName( 'p' ); j = 0; q = 0; l = h.length;
 for( i = 0; i<l; i++ ) {
  k = h[i];
  if( gettext( k ).trim() ) {
   k.id = 'p' + (k.id || (++q));
  }
 }

 h = g.getElementsByTagName( 'li' ); j = 0; q = 0; l = h.length;
 for( i = 0; i<l; i++ ) {
  k = h[i];
  if( gettext( k ).trim() ) {
   if( /\bnote\b/.test( k.parentNode.className ) ) {
    k.id = 'n' + (++q);
   } else if( k.parentNode.tagName.toLowerCase()!=='ol' && !( /\bto[co]\b/.test( k.parentNode.className ) ) && !( /\b[hs]id\b/.test( k.className ) ) ) {
    if( +k.title.replace( /[abcdl]/g, '' ) ) { j = +k.title.replace( /[abcdl]/g, '' ) - 1; k.title = ''; } k.id = 'l' + (++j);
   }
  }
 }

 if( q ) {
  l = m.cloneNode( true );
  l.lastChild.nodeValue = '^ ';
  l.style.color = '#466';
  l.title = 'Up'; addevent('click',gohash,l);
  do {
   j = gid( 'n' + q );
   k = l.cloneNode( true ); k.href = '#c' + q;
   j.insertBefore( k, j.firstChild );
  } while( --q );
 }

 if( (k=gid( 'toc' )) ) {
  h = gid( 'thispage' );
  i = h.parentNode;
  j = h.nextSibling;
  k = k.firstChild;
  do { i.insertBefore( k.firstChild.cloneNode( true ), j ); } while ( (k=k.nextSibling) );
 }

 dogear = m.cloneNode( true );
 dogear.style.position = 'absolute';
 dogear.style.display = 'block';
 dogear.style.width = '18px';
 dogear.style.height = '18px';
 dogear.style.padding = '8px 0 0 8px';
 dogear.style.background = 'url( /image/icon/button/dogear-bottomright.gif ) no-repeat right bottom';
 dogear.title = ' Next. ';// dogear.accessKey = 'n';
 dogear.firstChild.nodeValue = '\u00a0';
 d.body.insertBefore( dogear, null );
 prefas.push( dogear );

 h = d.getElementsByTagName( 'img' ); l = h.length;
 i = h.length; while(i--) { j = h[i];
  if( /\bw\d+h\d+\b/.test( j.className ) ) {
   j.onmouseover = grow;
   j.onmouseout = grew;
  }
 }

 h = d.getElementsByTagName( 'a' ); j = d.location.hostname; l = h.length;
 for( i = 0; i<l; i++ ) {
  k = h[i];
  if( /\.(gif|jpe?g|png)$/i.test( k.href ) ) { k.onclick = pop; }
  else if( k.hostname===j ) {
   if( k.parentNode.id==='lef' || k.parentNode.parentNode.className==='toc' || k.hash==='#zap' ) { prefas.push( k ); }
   if( k.pathname==='juke' ) { k.onclick = pop; }
   else if( /^#n\d+$/.test( k.hash ) ) { k.onclick = gohash; k.id = 'c' + k.hash.substring( 2 ); if( !k.title ) { k.title = 'Note ' + k.hash.substring( 2 ); } }
   else if( gid( k.hash.substring( 1 ) ) && !k.onclick && d.location.pathname==='/'+k.pathname ) { k.onclick = gohash; }
   else if( k.id==='thispage' ) { dogear.href = k.nextSibling&&k.nextSibling.href||k.nextSibling.nextSibling&&k.nextSibling.nextSibling.href||k.parentNode.firstChild.href; if( k.offsetTop+k.offsetHeight>k.parentNode.offsetHeight ) { k.parentNode.scrollTop = k.offsetTop - k.parentNode.offsetHeight + k.offsetHeight*2 + 10; }}
   else { k.target = '_top'; }
  }
 }

 if( (h=decode( d.location.hash.substring( 1 ) )) && (h=h.replace( '&', ' on ' ).split( /\s*#\s*/ )) ) {
  i = h.length; while(i--) { j = h[i];
   if( j.toLowerCase()==='zap' ) { zap(); }
   else if( (k=gid( h ) || gid( 'l' + h ) || gid( 'p' + h )) ) { if( gid( h ) ) { k.id = 'p' + k.id; } gogo( k ); }
   else if( menuitems.indexOf( j )>-1 ) {
    if( j.indexOf( 'umber' )>0 ) { setnum( j, true ); }
    else if( j.indexOf( ' on ' )<0 ) { setfon( j ); }
    else { setcol( j ); }
   }
  }
  prefset();
 }

 window.onresize = resized;
 d.onmousedown = menuhide;
 d.onkeydown = function( e ) {
  function rq( o, y ) { o.style.width = Math.min( w - 100, Math.max( 20, y ) ) + 'px'; }
  e = e || window.event || {}; var o = gid( 'q' ), w = getwindow().w;
  if( (e.srcElement||e.target)!==o ) {
   if( e.keyCode===27 || e.keyCode===90 ) { zap(); }
   if( e.keyCode===37 ) { rq( o, o.offsetWidth - 4 - 1 ); }
   if( e.keyCode===39 ) { rq( o, o.offsetWidth - 4 + 1 ); }
  }
 };
 addevent( 'mousemove', mm, g );
// g.onmousemove = mm;
 g.focus();
})();
