  function org_noritan_RemainTimer(_target) {
    this.name = "org_noritan_" + Math.floor(Math.random() * 1000000);
    this.target = _target;
    document.write(
      "<a href='http://noritan-micon.blog.so-net.ne.jp/2009-02-16'>" +
      "<span id='"+this.name+"' title='RemainTimer by noritan.org'>1234567890</span>" +
      "</a>"
    );
//    window.setInterval(this.update, 500, this);
    window.setInterval(
      "org_noritan_RemainTimer.prototype.update('" +
      this.name + "'," + this.target + ")", 500
    );
  }

//  org_noritan_RemainTimer.prototype.update = function (obj) {
//    var node = document.getElementById(obj.name);
//    if (node != null) {
//      node.innerHTML = Math.floor(obj.target - new Date().getTime() / 1000);
//    }
//  }

  org_noritan_RemainTimer.prototype.update = function (_name, _target) {
    var node = document.getElementById(_name);
    if (node != null) {
      node.innerHTML = Math.floor(_target - new Date().getTime() / 1000);
    }
  }

  function org_noritan_WorldendTimer() {
    this.prototype = new org_noritan_RemainTimer(0x80000000);
  }

  function org_noritan_WeekendTimer(_day, _hour, _min) {
    var weekend = new Date(new Date().getTime());
    var days_to_weekend = (_day + 7 - weekend.getDay()) % 7;
    weekend.setTime(weekend.getTime() + days_to_weekend * 86400000);
    weekend.setHours(_hour);
    weekend.setMinutes(_min);
    weekend.setSeconds(0);
    this.prototype = new org_noritan_RemainTimer(weekend.getTime() / 1000);
  }
