dready_stack=function() { };
register_dready = function(func) {
   var dready_org = dready_stack;
   dready_stack = function () {
      dready_org();
      func();
      return;
   }
}

var dready_fire=false; 
if (document.addEventListener) {
    document.addEventListener("DOMContentLoaded", function(){ if (!dready_fire) {dready_fire=true; dready_stack();}}, false);
} else if ( document.attachEvent ){
    document.attachEvent("onreadystatechange", function(){
        if ( document.readyState === "complete" ) {
            document.detachEvent( "onreadystatechange", arguments.callee );
            if (!dready_fire) {dready_fire=true; dready_stack();}
        }
    });

    if ( document.documentElement.doScroll && window == window.top ) (function(){
        if ( dready_fire ) { return; }
        try {
            document.documentElement.doScroll("left");
        } catch( error ) {
            setTimeout( arguments.callee, 0 );
            return;
        }
        if (!dready_fire) { dready_fire=true; dready_stack(); }
    })();
}


var dready_org=window.onload;
window.onload=function() {
   if (typeof(dready_org)=='function') {
      dready_org();
   }
   if (!dready_fire) {
     dready_fire=true;
     dready_stack();
   }
}

/*
function register_dready(func) {
    addHandler(window,'load', func);
}
*/