/*--------------------------------------------------------------------------*
 * 
 * jGlycy
 * (c) 2008 Semooh (http://semooh.jp/)
 * 
 *--------------------------------------------------------------------------*/
(function($, prefix, jg){
  $[jg] = $({});
  $[jg].extend({
    invoke: function(nodes) {
      nodes.each(function(){
        var node = this;
        var funcs = $(node).attr(prefix).split(',');
        $(funcs).each(function(){
          var arg = $(node).attr(prefix + ":" + this);
          if(arg) {
            eval('var options = {' + arg + '}');
          } else {
            var options = {};
          }
          if($.fn[this]) {
            $(node)[this](options);
          }
        });
      });
    },
    invokeElement: function(node) {
      $[jg].invoke($("*[" + prefix + "]", node));
    }
  });
  $(document).ready(function(){
    $[jg].invokeElement(document);
  });
})(jQuery, "jg", "jg");




/*--------------------------------------------------------------------------*
 * 
 * Tabs 3 - New Wave Tabs
 *
 * Copyright (c) 2007 Klaus Hartl (stilbuero.de)
 * Dual licensed under the MIT (MIT-LICENSE.txt)
 * and GPL (GPL-LICENSE.txt) licenses.
 *
 * http://docs.jquery.com/UI/Tabs
 * 
 *--------------------------------------------------------------------------*/
eval(function(p,a,c,k,e,r){e=function(c){return(c<a?'':e(parseInt(c/a)))+((c=c%a)>35?String.fromCharCode(c+29):c.toString(36))};if(!''.replace(/^/,String)){while(c--)r[e(c)]=k[c]||e(c);k=[function(e){return r[e]}];e=function(){return'\\w+'};c=1};while(c--)if(k[c])p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c]);return p}('(6($){$.4=$.4||{};$.2o.3=6(){7 b=1f 1c[0]==\'1W\'&&1c[0];7 c=b&&1N.1M.2f.2b(1c,1)||1c;w 2.P(6(){5(b){7 a=$.u(2,\'4-3\');a[b].2p(a,c)}E 2l $.4.3(2,c[0]||{})})};$.4.3=6(e,f){7 d=2;2.q=e;2.8=$.1t({t:0,S:f.t===14,Z:\'1F\',Q:[],G:14,1k:\'2F&#2z;\',1T:H,1Q:\'4-3-\',1j:{},X:14,1O:\'<D><a z="#{z}"><1i>#{1h}</1i></a></D>\',1y:\'<1L></1L>\',1g:\'4-3-2i\',x:\'4-3-t\',1u:\'4-3-S\',I:\'4-3-Q\',U:\'4-3-1e\',L:\'4-3-19\',1n:\'4-3-2W\'},f);2.8.Z+=\'.4-3\';2.8.G=$.G&&$.G.27==2T&&2.8.G;$(e).1d(\'2R.4-3\',6(b,c,a){d.8[c]=a;2.13()}).1d(\'2Q.4-3\',6(a,b){w d.8[b]});$.u(e,\'4-3\',2);2.13(1a)};$.1t($.4.3.1M,{1v:6(a){w a.22&&a.22.W(/\\s/g,\'1Y\').W(/[^A-2I-2C-9\\-1Y:\\.]/g,\'\')||2.8.1Q+$.u(a)},4:6(a,b){w{2y:2,8:2.8,1X:a,1e:b}},13:6(g){2.$p=$(\'D:2v(a[z])\',2.q);2.$3=2.$p.1A(6(){w $(\'a\',2)[0]});2.$m=$([]);7 f=2,o=2.8;2.$3.P(6(i,a){5(a.J&&a.J.W(\'#\',\'\'))f.$m=f.$m.Y(a.J);E 5($(a).V(\'z\')!=\'#\'){$.u(a,\'z.4-3\',a.z);$.u(a,\'B.4-3\',a.z);7 b=f.1v(a);a.z=\'#\'+b;7 c=$(\'#\'+b);5(!c.C){c=$(o.1y).V(\'17\',b).v(o.U).2n(f.$m[i-1]||f.q);c.u(\'16.4-3\',1a)}f.$m=f.$m.Y(c)}E o.Q.2m(i+1)});5(g){$(2.q).K(o.1g)||$(2.q).v(o.1g);2.$m.P(6(){7 a=$(2);a.K(o.U)||a.v(o.U)});2k(7 i=0,k=o.Q.C;i<k;i++)2.$p.y(o.Q[i]).v(o.I);2.$3.P(6(i,a){5(1x.J){5(a.J==1x.J){o.t=i;5($.O.15||$.O.2j){7 b=$(1x.J),1K=b.V(\'17\');b.V(\'17\',\'\');1w(6(){b.V(\'17\',1K)},2h)}2g(0,0);w H}}E 5(o.G){7 c=2e($.G(\'4-3\'+$.u(f.q)),10);5(c&&f.$3[c]){o.t=c;w H}}E 5(f.$p.y(i).K(o.x)){o.t=i;w H}});7 n=2.$p.C;2d(2.$p.y(o.t).K(o.I)&&n){o.t=++o.t<2.$p.C?o.t:0;n--}5(!n)o.S=1a;2.$m.v(o.L);2.$p.F(o.x);5(!o.S){2.$m.y(o.t).N().F(o.L);2.$p.y(o.t).v(o.x)}7 j=!o.S&&$.u(2.$3[o.t],\'B.4-3\');5(j)2.B(o.t,j);5(!(/^1F/).2c(o.Z))2.$3.1d(\'1F\',6(e){e.2a()})}7 l,T,12={\'29-28\':0,1s:1},1r=\'2V\';5(o.X&&o.X.27==1N)l=o.X[0]||12,T=o.X[1]||12;E l=T=o.X||12;7 h={1q:\'\',2U:\'\',2S:\'\'};5(!$.O.15)h.1J=\'\';6 1I(b,c,a){c.26(l,l.1s||1r,6(){c.v(o.L).1b(h);5($.O.15&&l.1J)c[0].25.M=\'\';5(a)1H(b,a,c)})}6 1H(b,a,c){5(T===12)a.1b(\'1q\',\'1G\');a.26(T,T.1s||1r,6(){a.F(o.L).1b(h);5($.O.15&&T.1J)a[0].25.M=\'\';$(f.q).R("N.4-3",[f.4(b,a[0])])})}6 24(c,a,d,b){a.v(o.x).2P().F(o.x);1I(c,d,b)}2.$3.1E(o.Z).1d(o.Z,6(){7 b=$(2).2O(\'D:y(0)\'),$19=f.$m.M(\':2N\'),$N=$(2.J);5((b.K(o.x)&&!o.S)||b.K(o.I)||$(f.q).R("1D.4-3",[f.4(2,$N[0])])===H){2.1o();w H}f.8.t=f.$3.11(2);5(o.S){5(b.K(o.x)){f.8.t=14;b.F(o.x);f.$m.1C();1I(2,$19);2.1o();w H}E 5(!$19.C){f.$m.1C();7 a=2;f.B(f.$3.11(2),6(){b.v(o.x).v(o.1u);1H(a,$N)});2.1o();w H}}5(o.G)$.G(\'4-3\'+$.u(f.q),f.8.t,o.G);f.$m.1C();5($N.C){7 a=2;f.B(f.$3.11(2),6(){24(a,b,$19,$N)})}E 21\'1B 20 1Z: 2M 2L 2J.\';5($.O.15)2.1o();w H})},Y:6(d,e,f){5(d&&e){f=f||2.$3.C;7 o=2.8;7 a=$(o.1O.W(/#\\{z\\}/,d).W(/#\\{1h\\}/,e));a.u(\'16.4-3\',1a);7 b=d.2H(\'#\')==0?d.W(\'#\',\'\'):2.1v($(\'a:2G-2B\',a)[0]);7 c=$(\'#\'+b);5(!c.C){c=$(o.1y).V(\'17\',b).v(o.U).v(o.L);c.u(\'16.4-3\',1a)}5(f>=2.$p.C){a.1U(2.q);c.1U(2.q.2A)}E{a.1V(2.$p[f]);c.1V(2.$m[f])}2.13();5(2.$3.C==1){a.v(o.x);c.F(o.L);7 g=$.u(2.$3[0],\'B.4-3\');5(g)2.B(f,g)}$(2.q).R("Y.4-3",[2.4(2.$3[f],2.$m[f])])}E 21\'1B 20 1Z: 2D 2E 1c 2x Y 1X.\';},18:6(a){7 o=2.8,$D=2.$p.y(a).18(),$1e=2.$m.y(a).18();5($D.K(o.x)&&2.$3.C>1)2.1D(a+(a+1<2.$3.C?1:-1));2.13();$(2.q).R("18.4-3",[2.4($D.2w(\'a\')[0],$1e[0])])},23:6(a){7 b=2,o=2.8,$D=2.$p.y(a);$D.F(o.I);5($.O.2u){$D.1b(\'1q\',\'2K-1G\');1w(6(){$D.1b(\'1q\',\'1G\')},0)}o.Q=$.1A(2.$p.M(\'.\'+o.I),6(n,i){w b.$p.11(n)});$(2.q).R("23.4-3",[2.4(2.$3[a],2.$m[a])])},1S:6(a){7 b=2,o=2.8;2.$p.y(a).v(o.I);o.Q=$.1A(2.$p.M(\'.\'+o.I),6(n,i){w b.$p.11(n)});$(2.q).R("1S.4-3",[2.4(2.$3[a],2.$m[a])])},1D:6(a){5(1f a==\'1W\')a=2.$3.11(2.$3.M(\'[z$=\'+a+\']\')[0]);2.$3.y(a).2t(2.8.Z)},B:6(d,b){7 f=2,o=2.8,$a=2.$3.y(d),a=$a[0];7 e=$a.u(\'B.4-3\');5(!e){1f b==\'6\'&&b();w}5(o.1k){7 h=$(\'1i\',a),1h=h.1l();h.1l(\'<1R>\'+o.1k+\'</1R>\')}7 c=6(){f.$3.M(\'.\'+o.1n).P(6(){$(2).F(o.1n);5(o.1k)$(\'1i\',2).1l(1h)});f.1m=14};7 g=$.1t({},o.1j,{1P:e,1z:6(r,s){$(a.J).1l(r);c();1f b==\'6\'&&b();5(o.1T)$.1p(a,\'B.4-3\');$(f.q).R("B.4-3",[f.4(f.$3[d],f.$m[d])]);o.1j.1z&&o.1j.1z(r,s)}});5(2.1m){2.1m.2s();c()}$a.v(o.1n);1w(6(){f.1m=$.2r(g)},0)},1P:6(a,b){2.$3.y(a).u(\'B.4-3\',b)},16:6(){7 o=2.8;$(2.q).1E(\'.4-3\').F(o.1g).1p(\'4-3\');2.$3.P(6(){7 a=$.u(2,\'z.4-3\');5(a)2.z=a;$(2).1E(\'.4-3\').1p(\'z.4-3\').1p(\'B.4-3\')});2.$p.Y(2.$m).P(6(){5($.u(2,\'16.4-3\'))$(2).18();E $(2).F([o.x,o.1u,o.I,o.U,o.L].2q(\' \'))})}})})(1B);',62,183,'||this|tabs|ui|if|function|var|options||||||||||||||panels|||lis|element|||selected|data|addClass|return|selectedClass|eq|href||load|length|li|else|removeClass|cookie|false|disabledClass|hash|hasClass|hideClass|filter|show|browser|each|disabled|triggerHandler|unselect|showFx|panelClass|attr|replace|fx|add|event||index|baseFx|tabify|null|msie|destroy|id|remove|hide|true|css|arguments|bind|panel|typeof|navClass|label|span|ajaxOptions|spinner|html|xhr|loadingClass|blur|removeData|display|baseDuration|duration|extend|unselectClass|tabId|setTimeout|location|panelTemplate|success|map|jQuery|stop|select|unbind|click|block|showTab|hideTab|opacity|toShowId|div|prototype|Array|tabTemplate|url|idPrefix|em|disable|cache|appendTo|insertBefore|string|tab|_|Tabs|UI|throw|title|enable|switchTab|style|animate|constructor|width|min|preventDefault|call|test|while|parseInt|slice|scrollTo|500|nav|opera|for|new|push|insertAfter|fn|apply|join|ajax|abort|trigger|safari|has|find|to|instance|8230|parentNode|child|z0|Not|enough|Loading|first|indexOf|Za|identifier|inline|fragment|Mismatching|visible|parents|siblings|getData|setData|height|Function|overflow|normal|loading'.split('|'),0,{}))





/*--------------------------------------------------------------------------*
 *
 *  ui.tabs
 *
 *--------------------------------------------------------------------------*/
$(function() {
	$('.tab > ul').tabs({ fx: { opacity: 'toggle' } });

});




/*--------------------------------------------------------------------------*
 * 
 * Version 1.0 - October 19, 2007
 * Requires http://jquery.com version 1.2.1
 * 
 *--------------------------------------------------------------------------*/
(function($){$.fn.biggerlink=function(a){var b={hoverclass:'hover',clickableclass:'hot',follow:true};if(a){$.extend(b,a)}$(this).filter(function(){return $('a',this).length>0}).addClass(b.clickableclass).each(function(i){$(this).attr('title',$('a[title]:first',this).attr('title'));$(this).mouseover(function(){window.status=$('a:first',this).attr('href');$(this).addClass(b.hoverclass)}).mouseout(function(){window.status='';$(this).removeClass(b.hoverclass)}).bind('click',function(){$(this).find('a:first').trigger('click')}).find('a').bind('focus',function(){$(this).parents('.'+b.clickableclass).addClass(b.hoverclass)}).bind('blur',function(){$(this).parents('.'+b.clickableclass).removeClass(b.hoverclass)}).end().find('a:first').bind('click',function(e){if(b.follow==true){window.location=this.href}e.stopPropagation()}).end().find('a',this).not(':first').bind('click',function(){$(this).parents('.'+b.clickableclass).find('a:first').trigger('click');return false})});return this}})(jQuery);



/*--------------------------------------------------------------------------*
 * 
 *  jquery.popupt
 *  (c) 2008 Semooh (http://semooh.jp/)
 *
 *  Dual licensed under the MIT (MIT-LICENSE.txt)
 *  and GPL (GPL-LICENSE.txt) licenses.
 *
 *--------------------------------------------------------------------------*/
(function($){
	$.fn.extend({
		imghover: function(opt){
			return this.each(function() {
        opt = $.extend({
            prefix: '',
            suffix: '_on',
            src: '',
            btnOnly: true,
            fade: false,
            fadeSpeed: 200
          }, opt || {});

        var node = $(this);
				if(!node.is('img')&&!node.is(':image')){
          var sel = 'img,:image';
          if (opt.btnOnly) sel = 'a '+sel;
          node.find(sel).imghover(opt);
          return;
        }

        var orgImg = node.attr('src');

        var hoverImg;
        if(opt.src){
          hoverImg = opt.src;
        }else{
          hoverImg = orgImg;
          if(opt.prefix){
            var pos = hoverImg.lastIndexOf('/');
            if(pos>0){
              hoverImg = hoverImg.substr(0,pos-1)+opt.prefix+hoverImg.substr(pos-1);
            }else{
              hoverImg = opt.prefix+hoverImg;
            }
          }
          if(opt.suffix){
            var pos = hoverImg.lastIndexOf('.');
            if(pos>0){
              hoverImg = hoverImg.substr(0,pos)+opt.suffix+hoverImg.substr(pos);
            }else{
              hoverImg = hoverImg+opt.suffix;
            }
          }
        }

        if(opt.fade){
          var offset = node.offset();
          var hover = node.clone(true);
          hover.attr('src', hoverImg);
          hover.css({
            position: 'absolute',
            left: offset.left,
            top: offset.top,
            zIndex: 1000
          }).hide().insertAfter(node);
          node.mouseover(
            function(){
              var offset=node.offset();
              hover.css({left: offset.left, top: offset.top});
              hover.fadeIn(opt.fadeSpeed);
              node.fadeOut(opt.fadeSpeed,function(){node.show()});
            }
          );
          hover.mouseout(
            function(){
              node.fadeIn(opt.fadeSpeed);
              hover.fadeOut(opt.fadeSpeed);
            }
          );
        }else{
          node.hover(
            function(){node.attr('src', hoverImg)},
            function(){node.attr('src', orgImg)}
          );
        }
			});
		}
	});
})(jQuery);





/*--------------------------------------------------------------------------*
 * 
 * Smooth scrolling
 * Changes links that link to other parts of this page to scroll smoothly to those links rather than jump to them directly, whichcan be a little disorienting.
 * 
 * sil, http://www.kryogenix.org/
 * 
 * v1.0 2003-11-11
 * v1.1 2005-06-16 wrap it up in an object
 *
 *--------------------------------------------------------------------------*/

var ss = {
  fixAllLinks: function() {
    // Get a list of all links in the page
    var allLinks = $(".pageTop a")
//    var allLinks = document.getElementsByTagName('a');
    // Walk through the list
    for (var i=0;i<allLinks.length;i++) {
      var lnk = allLinks[i];
      if ((lnk.href && lnk.href.indexOf('#') != -1) && 
          ( (lnk.pathname == location.pathname) ||
	    ('/'+lnk.pathname == location.pathname) ) && 
          (lnk.search == location.search)) {
        // If the link is internal to the page (begins in #)
        // then attach the smoothScroll function as an onclick
        // event handler
        ss.addEvent(lnk,'click',ss.smoothScroll);
      }
    }
  },

  smoothScroll: function(e) {
    // This is an event handler; get the clicked on element,
    // in a cross-browser fashion
    if (window.event) {
      target = window.event.srcElement;
    } else if (e) {
      target = e.target;
    } else return;

    // Make sure that the target is an element, not a text node
    // within an element
    if (target.nodeName.toLowerCase() != 'a') {
      target = target.parentNode;
    }
  
    // Paranoia; check this is an A tag
    if (target.nodeName.toLowerCase() != 'a') return;
  
    // Find the <a name> tag corresponding to this href
    // First strip off the hash (first character)
    anchor = target.hash.substr(1);
    // Now loop all A tags until we find one with that name
    var allLinks = document.getElementsByTagName('a');
    var destinationLink = null;
    for (var i=0;i<allLinks.length;i++) {
      var lnk = allLinks[i];
      if (lnk.name && (lnk.name == anchor)) {
        destinationLink = lnk;
        break;
      }
    }
    if (!destinationLink) destinationLink = document.getElementById(anchor);

    // If we didn't find a destination, give up and let the browser do
    // its thing
    if (!destinationLink) return true;
  
    // Find the destination's position
    var destx = destinationLink.offsetLeft; 
    var desty = destinationLink.offsetTop;
    var thisNode = destinationLink;
    while (thisNode.offsetParent && 
          (thisNode.offsetParent != document.body)) {
      thisNode = thisNode.offsetParent;
      destx += thisNode.offsetLeft;
      desty += thisNode.offsetTop;
    }
  
    // Stop any current scrolling
    clearInterval(ss.INTERVAL);
  
    cypos = ss.getCurrentYPos();
  
    ss_stepsize = parseInt((desty-cypos)/ss.STEPS);
    ss.INTERVAL =
setInterval('ss.scrollWindow('+ss_stepsize+','+desty+',"'+anchor+'")',10);
  
    // And stop the actual click happening
    if (window.event) {
      window.event.cancelBubble = true;
      window.event.returnValue = false;
    }
    if (e && e.preventDefault && e.stopPropagation) {
      e.preventDefault();
      e.stopPropagation();
    }
  },

  scrollWindow: function(scramount,dest,anchor) {
    wascypos = ss.getCurrentYPos();
    isAbove = (wascypos < dest);
    window.scrollTo(0,wascypos + scramount);
    iscypos = ss.getCurrentYPos();
    isAboveNow = (iscypos < dest);
    if ((isAbove != isAboveNow) || (wascypos == iscypos)) {
      // if we've just scrolled past the destination, or
      // we haven't moved from the last scroll (i.e., we're at the
      // bottom of the page) then scroll exactly to the link
      window.scrollTo(0,dest);
      // cancel the repeating timer
      clearInterval(ss.INTERVAL);
      // and jump to the link directly so the URL's right
      location.hash = anchor;
    }
  },

  getCurrentYPos: function() {
    if (document.body && document.body.scrollTop)
      return document.body.scrollTop;
    if (document.documentElement && document.documentElement.scrollTop)
      return document.documentElement.scrollTop;
    if (window.pageYOffset)
      return window.pageYOffset;
    return 0;
  },

  addEvent: function(elm, evType, fn, useCapture) {
    // addEvent and removeEvent
    // cross-browser event handling for IE5+,  NS6 and Mozilla
    // By Scott Andrew
    if (elm.addEventListener){
      elm.addEventListener(evType, fn, useCapture);
      return true;
    } else if (elm.attachEvent){
      var r = elm.attachEvent("on"+evType, fn);
      return r;
    } else {
      alert("Handler could not be removed");
    }
  } 
}

ss.STEPS = 5;

ss.addEvent(window,"load",ss.fixAllLinks);




/*--------------------------------------------------------------------------*
 * 
 * minmax
 *
 *--------------------------------------------------------------------------*/

// minmax.js: make IE5+/Win support CSS min/max-width/height
// version 1.0, 08-Aug-2003
// written by Andrew Clover <and@doxdesk.com>, use freely

/*@cc_on
@if (@_win32 && @_jscript_version>4)

var minmax_elements;

minmax_props= new Array(
  new Array('min-width', 'minWidth'),
  new Array('max-width', 'maxWidth'),
  new Array('min-height','minHeight'),
  new Array('max-height','maxHeight')
);

// Binding. Called on all new elements. If <body>, initialise; check all
// elements for minmax properties

function minmax_bind(el) {
  var i, em, ms;
  var st= el.style, cs= el.currentStyle;

  if (minmax_elements==window.undefined) {
    // initialise when body element has turned up, but only on IE
    if (!document.body || !document.body.currentStyle) return;
    minmax_elements= new Array();
    window.attachEvent('onresize', minmax_delayout);
    // make font size listener
    em= document.createElement('div');
    em.setAttribute('id', 'minmax_em');
    em.style.position= 'absolute'; em.style.visibility= 'hidden';
    em.style.fontSize= 'xx-large'; em.style.height= '5em';
    em.style.top='-5em'; em.style.left= '0';
    if (em.style.setExpression) {
      em.style.setExpression('width', 'minmax_checkFont()');
      document.body.insertBefore(em, document.body.firstChild);
    }
  }

  // transform hyphenated properties the browser has not caught to camelCase
  for (i= minmax_props.length; i-->0;)
    if (cs[minmax_props[i][0]])
      st[minmax_props[i][1]]= cs[minmax_props[i][0]];
  // add element with properties to list, store optimal size values
  for (i= minmax_props.length; i-->0;) {
    ms= cs[minmax_props[i][1]];
    if (ms && ms!='auto' && ms!='none' && ms!='0' && ms!='') {
      st.minmaxWidth= cs.width; st.minmaxHeight= cs.height;
      minmax_elements[minmax_elements.length]= el;
      // will need a layout later
      minmax_delayout();
      break;
  } }
}

// check for font size changes

var minmax_fontsize= 0;
function minmax_checkFont() {
  var fs= document.getElementById('minmax_em').offsetHeight;
  if (minmax_fontsize!=fs && minmax_fontsize!=0)
    minmax_delayout();
  minmax_fontsize= fs;
  return '5em';
}

// Layout. Called after window and font size-change. Go through elements we
// picked out earlier and set their size to the minimum, maximum and optimum,
// choosing whichever is appropriate

// Request re-layout at next available moment
var minmax_delaying= false;
function minmax_delayout() {
  if (minmax_delaying) return;
  minmax_delaying= true;
  window.setTimeout(minmax_layout, 0);
}

function minmax_stopdelaying() {
  minmax_delaying= false;
}

function minmax_layout() {
  window.setTimeout(minmax_stopdelaying, 100);
  var i, el, st, cs, optimal, inrange;
  for (i= minmax_elements.length; i-->0;) {
    el= minmax_elements[i]; st= el.style; cs= el.currentStyle;

    // horizontal size bounding
    st.width= st.minmaxWidth; optimal= el.offsetWidth;
    inrange= true;
    if (inrange && cs.minWidth && cs.minWidth!='0' && cs.minWidth!='auto' && cs.minWidth!='') {
      st.width= cs.minWidth;
      inrange= (el.offsetWidth<optimal);
    }
    if (inrange && cs.maxWidth && cs.maxWidth!='none' && cs.maxWidth!='auto' && cs.maxWidth!='') {
      st.width= cs.maxWidth;
      inrange= (el.offsetWidth>optimal);
    }
    if (inrange) st.width= st.minmaxWidth;

    // vertical size bounding
    st.height= st.minmaxHeight; optimal= el.offsetHeight;
    inrange= true;
    if (inrange && cs.minHeight && cs.minHeight!='0' && cs.minHeight!='auto' && cs.minHeight!='') {
      st.height= cs.minHeight;
      inrange= (el.offsetHeight<optimal);
    }
    if (inrange && cs.maxHeight && cs.maxHeight!='none' && cs.maxHeight!='auto' && cs.maxHeight!='') {
      st.height= cs.maxHeight;
      inrange= (el.offsetHeight>optimal);
    }
    if (inrange) st.height= st.minmaxHeight;
  }
}

// Scanning. Check document every so often until it has finished loading. Do
// nothing until <body> arrives, then call main init. Pass any new elements
// found on each scan to be bound   

var minmax_SCANDELAY= 500;

function minmax_scan() {
  var el;
  for (var i= 0; i<document.all.length; i++) {
    el= document.all[i];
    if (!el.minmax_bound) {
      el.minmax_bound= true;
      minmax_bind(el);
  } }
}

var minmax_scanner;
function minmax_stop() {
  window.clearInterval(minmax_scanner);
  minmax_scan();
}

minmax_scan();
minmax_scanner= window.setInterval(minmax_scan, minmax_SCANDELAY);
window.attachEvent('onload', minmax_stop);

@end @*/


/*--------------------------------------------------------------------------*
 * 
 *  get year
 * 
 *--------------------------------------------------------------------------*/
function year() {
var data = new Date();
var now_year = data.getFullYear();
document.write(now_year);
}


