function adriver(a,b,c){if(this instanceof adriver){var d=null;if(typeof a=="string")d=document.getElementById(a);else{d=a;a=d.id}if(!d){if(!adriver.isDomReady)adriver.onDomReady(function(){new adriver(a,b,c)});return null}if(adriver.items[a])return adriver.items[a];adriver.items[a]=this;this.p=d;this.defer=c;this.prm=adriver.extend(b,{ph:a});this.loadCompleteQueue=new adriver.queue;this.domReadyQueue=new adriver.queue(adriver.isDomReady);var e=this;adriver.initQueue.push(function(){e.init()});return this}else return arguments.length?
adriver.items[a]:adriver.items}adriver.prototype={isLoading:0,init:function(){},loadComplete:function(){},domReady:function(){},onLoadComplete:function(a){var b=this;this.loadCompleteQueue.push(function(){a.call(b)});return this},onDomReady:function(a){this.domReadyQueue.push(a);return this},reset:function(){this.loadCompleteQueue.flush();this.domReadyQueue.flush(adriver.isDomReady);return this}};
adriver.loadScript=function(a){try{a=a.replace(/!\[rnd\]/,Math.round(Math.random()*9999999));var b=document.getElementsByTagName("head")[0],c=document.createElement("script");c.setAttribute("type","text/javascript");c.setAttribute("charset","windows-1251");c.setAttribute("src",a);c.onreadystatechange=function(){if(/loaded|complete/.test(this.readyState)){c.onload=null;b.removeChild(c)}};c.onload=function(){b&&c&&b.removeChild(c)};b.insertBefore(c,b.firstChild)}catch(d){}};
adriver.extend=function(){for(var a=arguments[0],b=1,c=arguments.length;b<c;b++){var d=arguments[b],e;for(e in d)if(d.hasOwnProperty(e))if(d[e]instanceof Object)if(a[e])adriver.extend(a[e],d[e]);else a[e]=adriver.extend(d[e]instanceof Array?[]:{},d[e]);else a[e]=d[e]}return a};adriver.queue=function(a){this.q=[];this.flag=a?true:false};
adriver.queue.prototype={push:function(a){this.flag?a():this.q.push(a)},unshift:function(a){this.flag?a():this.q.unshift(a)},execute:function(a){for(var b;b=this.q.shift();)b();if(a==void 0)a=true;this.flag=a?true:false},flush:function(a){this.q.length=0;this.flag=a?true:false}};adriver.Plugin=function(a){if(this instanceof adriver.Plugin)if(a&&!adriver.plugins[a]){this.id=a;this.q=new adriver.queue;this.loadingStatus=0;adriver.plugins[a]=this;return this}return adriver.plugins[a]};
adriver.Plugin.prototype={load:function(){this.loadingStatus=1;var a=this.id.substr(this.id.lastIndexOf(".")+1);adriver.loadScript((adriver.pluginPath[a]||adriver.defaultMirror+"/plugins/")+this.id+".js")},loadComplete:function(){this.loadingStatus=2;this.q.execute();return this},onLoadComplete:function(a){this.q.push(a);return this}};
adriver.Plugin.require=function(){var a=this,b=0;this.q=new adriver.queue;for(var c=0,d=arguments.length;c<d;c++){var e=new adriver.Plugin(arguments[c]);if(e.loadingStatus!=2){b++;e.onLoadComplete(function(){b--==1&&a.q.execute()});e.loadingStatus||e.load()}}b||this.q.execute()};adriver.Plugin.require.prototype.onLoadComplete=function(a){this.q.push(a);return this};adriver.onDomReady=function(a){adriver.domReadyQueue.push(a)};adriver.onBeforeDomReady=function(a){adriver.domReadyQueue.unshift(a)};
adriver.domReady=function(){adriver.isDomReady=true;adriver.domReadyQueue.execute()};
adriver.checkDomReady=function(a){try{var b=document;if(/WebKit/i.test(navigator.userAgent))(function(){/loaded|complete/.test(b.readyState)?a():setTimeout(arguments.callee,100)})();else if(b.addEventListener)b.addEventListener("DOMContentLoaded",a,false);else if(document.attachEvent){var c=function(){if(!adriver.isDomReady){try{document.documentElement.doScroll("left")}catch(f){setTimeout(c,1);return}a()}},d=function(){if(document.readyState==="complete"){document.detachEvent("onreadystatechange",
d);a()}};document.attachEvent("onreadystatechange",d);window.attachEvent("onload",function(){adriver.isDomReady||a()});try{toplevel=window.frameElement==null}catch(e){}document.documentElement.doScroll&&toplevel&&c()}}catch(g){}};adriver.onLoadComplete=function(a){adriver.loadCompleteQueue.push(a);return adriver};adriver.loadComplete=function(){adriver.loadCompleteQueue.execute();return adriver};adriver.setDefaults=function(a){adriver.extend(adriver.defaults,a)};
adriver.setOptions=function(a){adriver.extend(adriver.options,a)};adriver.setPluginPath=function(a){adriver.extend(adriver.pluginPath,a)};
adriver.start=function(){adriver.version="2.3.4";adriver.items={};adriver.defaults={tail256:escape(document.referrer||"unknown")};adriver.options={};adriver.plugins={};adriver.pluginPath={};adriver.redirectHost="http://ad.adriver.ru";adriver.defaultMirror="http://content.adriver.ru";adriver.isDomReady=false;adriver.domReadyQueue=new adriver.queue;adriver.loadCompleteQueue=new adriver.queue;adriver.initQueue=new adriver.queue;adriver.checkDomReady(adriver.domReady);(new adriver.Plugin.require("autoUpdate.adriver")).onLoadComplete(function(){adriver.initQueue.execute()})};
adriver.start();

