(function(b){if(typeof b.topadvert!=="undefined"){return}var a=(function(){var f;return f})();var c=function(f){return f!=a};var e=(function(){var h={};var g={};var f={};f.registerClass=function(j,i){if(g.hasOwnProperty(j)){return}g[j]=i};f.getClass=function(i){if(!h.hasOwnProperty(i)){if(g.hasOwnProperty(i)){h[i]=(g[i])()}}return h[i]};return f})();e.registerClass("Browser",function(){var g;var f=e.getClass("Object").extend({init:function(){this._loaded=false;this._onLoadFunctions=[];var h=this;var i=function(){if(h._loaded){return}h._loaded=true;var j=h._onLoadFunctions.length;for(var k=0;kk){return false}}this._array.push(u);if(u!=null){if(this._hash[u]==null){this._hash[u]=0}this._hash[u]+=1}return true},_sort:function(u,t){if(t[1]>u[1]){return 1}if(t[1]t[0]){return 1}if(u[0]k){return}var v=l.get(u);if(v!=null){this._addStructToContext(v);return}for(var t=0;t/i.test(w)){continue}this._addStringToContext(w)}else{if(x.nodeType===q.ELEMENT_NODE){if(this._isNodeToProcess(x)){this._processElement(x)}}}}}});var p=e.getClass("Object").extend({_createContext:function(t,z){var v=new g();for(var x=0;x500||this._browser.loaded()){return false}else{var u=this._timer.toc();var t=this._getLastDomElement();if(u-this._prevTimePoint>100){if(t==null){return true}if(t===this._lastDomElement){return false}this._lastDomElement=t;this._prevTimePoint=u}}return true},defineContext:function(){if(this._isFinished){return true}if(this._needToWait()){return false}r.reset();var C={};var y=new p();C.tt=y.createFromStrings([document.title]);var B=["h1","h2","h3","h4"];for(var w=0;w0){t.push([varName,v[varName]])}}return t}});f.getInstance=function(){if(!c(s)){s=new f()}return s};return f});e.registerClass("Context.Encoder",function(){var h=e.getClass("Context.Const").TRUNCATE_WORDS_COUNT;var f=e.getClass("Object").extend({init:function(j,i){this._encoder=i.createBufferedEncoder();this._encoder.addString(j+"~");this._prependDelim=false},addWord:function(n,m,j){var l=(this._prependDelim)?",":"";var i=l+n+":"+m;var k=this._encoder.addString(i,j);if(k>=0){this._prependDelim=true}return k},getResult:function(){return this._encoder.getResult()}});var g=e.getClass("Object").extend({init:function(j){var i=j.createSimpleEncoder();this._encoderFactory=j;this._simpleEncoder=i},encodeContext:function(n){var p=n;var m=e.getClass("Context").getInstance();var x=m.getData();var t=[];for(var r=0;r0)?";":"";var q=o+x[r][0];var w=new f(q,this._encoderFactory);p-=w.getResult().length;t.push(w)}mainLoop:for(var u=0;u=k.length){continue}var j=k[u][0];var s=k[u][1];var v=t[r].addWord(j,s,p);if(v<0){break mainLoop}p-=v;y=true}if(!y){break}}var k=[];for(var r=0;rh){return -1}}this._result+=i;this._lastLanguage=this._encoder.getLastLanguage();if(this._firstLanguage==null){this._firstLanguage=this._encoder.getFirstLanguage()}return i.length},getResult:function(){var h=this._result;if(h===""){return""}if(h.charAt(0)!==g){h=g+this._firstLanguage+g+h}return h}});return f});e.registerClass("Encoding.JSCompression.EncoderFactory",function(){var f=e.getClass("Encoding.Abstract.EncoderFactory").extend({createSimpleEncoder:function(){var g=new (e.getClass("Encoding.JSCompression.SimpleEncoder"))();return g},createBufferedEncoder:function(){var g=new (e.getClass("Encoding.JSCompression.BufferedEncoder"))();return g}});return f});e.registerClass("Encoding.JSCompression.SimpleEncoder",function(){var h="_";var f="~";var g=e.getClass("Encoding.Abstract.SimpleEncoder").extend({init:function(){this._currentLang="en";this._firstLang=null;var i={};var j={};var n={all:{singleChars:"0123456789- ",singleMaps:"0123456789-+",doubleChars:"~_!@#$%^&*()+=`{}[]\\|:;\"'?/,\u2116<>.\u00ab\u00bb",doubleMaps:"Xx1234567890prVbBlLWIdDQqvwzNGgfkK"},en:{singleChars:"abvgdeqzijklmnoprstufhcyxwABVGDEQZIJKLMNOPRSTUFHCYXW",singleMaps:"abvgdeqzijklmnoprstufhcyxwABVGDEQZIJKLMNOPRSTUFHCYXW",doubleChars:"",doubleMaps:""},ru:{singleChars:"\u0430\u0431\u0432\u0433\u0434\u0435\u0436\u0437\u0438\u0439\u043a\u043b\u043c\u043d\u043e\u043f\u0440\u0441\u0442\u0443\u0444\u0445\u0446\u044b\u044d\u044e\u0410\u0411\u0412\u0413\u0414\u0415\u0416\u0417\u0418\u0419\u041a\u041b\u041c\u041d\u041e\u041f\u0420\u0421\u0422\u0423\u0424\u0425\u0426\u042b\u042d\u042e",singleMaps:"abvgdeqzijklmnoprstufhcyxwABVGDEQZIJKLMNOPRSTUFHCYXW",doubleChars:"\u0451\u0447\u0448\u0449\u044a\u044c\u044f\u0401\u0427\u0428\u0429\u042a\u042c\u042f",doubleMaps:"ecshtmaECSHTMA"}};for(var m in n){if(!n.hasOwnProperty(m)){continue}var l=function(s,o,p){var t=s.split("");var v=o.split("");for(var r=0;rg){return -1}}this._result+=h;return h.length},getResult:function(g){return this._result}});return f});e.registerClass("Encoding.URIComponent.EncoderFactory",function(){var f=e.getClass("Encoding.Abstract.EncoderFactory").extend({createSimpleEncoder:function(){var g=new (e.getClass("Encoding.URIComponent.SimpleEncoder"))();return g},createBufferedEncoder:function(){var g=new (e.getClass("Encoding.URIComponent.BufferedEncoder"))();return g}});return f});e.registerClass("Encoding.URIComponent.SimpleEncoder",function(){var f=e.getClass("Encoding.Abstract.SimpleEncoder").extend({encode:function(g){return encodeURIComponent(g)},decode:function(g){return decodeURIComponent(g)}});return f});e.registerClass("LoadJSAPI",function(){var g;var f=e.getClass("Object").extend({getClass:function(){return e.getClass("Object")},getURLParams:function(){return e.getClass("URLParams").getInstance()}});f.getInstance=function(){if(!c(g)){g=new f()}return g};return f});e.registerClass("Loader",function(){var f=e.getClass("Object").extend({init:function(){var p=new (e.getClass("Processors.Array.Processor"))();var l=new (e.getClass("Processors.Textarea.Async.Processor"))();var i=new (e.getClass("Processors.Textarea.Sync.Processor"))();var g=new (e.getClass("Processors.Textarea.Old.Processor"))();var o=new (e.getClass("Processors.Textarea.Event.Old.Processor"))();var j=new (e.getClass("Processors.Textarea.Event.Onclick.Processor"))();var n=new (e.getClass("Processors.Textarea.Event.Onmouseover.Processor"))();var m=[p,l,i,g,o,j,n];var k=e.getClass("Browser").getInstance();var h;this._load=function(){var q=function(){var r=m.length;for(var s=0;s=g.openActiveIndex},isActive:function(){return this._isActive},setOpenHandler:function(h){this.openHandler=h},setCloseHandler:function(h){this.closeHandler=h},activate:function(j,k){if(j){this.updateIndex()}g.openActiveIndex=this.activeIndex;for(var h=0;hthis._freeLength){return false}this._fullPath+=this._prefix+q+"="+r;this._prefix="&";this._freeLength-=p;return true};this.addParam("rnd",e.getClass("Utils").getRandomToken());this.addParam("v","e744af81ce");this.addParam("encode",k);var n=document.referrer;if(n==null){n=""}if(n.length>255){n=n.substring(0,255)}this.addParam("referer",n)},addParam:function(l,m){var k=this._encoder.encode(m);return this._addParam(l,k)},addContext:function(){var m="context";var k=new (e.getClass("Context.Encoder"))(this._encoderFactory);var l=this._freeLength-this._getParamLength(m,"");var n=k.encodeContext(l);this._addParam(m,n)},getFullPath:function(){return this._fullPath}});var h=e.getClass("Object").extend({init:function(s){if(typeof b.topadvertCallbacks==="undefined"){b.topadvertCallbacks={}}var l={url:"http://feed.topadvert.ru/feed",pack:false,timeout:0,onError:function(){},callback:function(t){},callbackParameter:"callback",context:null,data:{}};e.getClass("Utils").extendObject(l,s);var q=e.getClass("Utils").getRandomToken();var r='topadvertCallbacks["'+q+'"]';var k="topadvertCallback"+q;var m=(function(){var t=l.pack?j:f;var v=new i(l.url,t);for(var u in l.data){if(!l.data.hasOwnProperty(u)){continue}var w=l.data[u];v.addParam(u,w)}v.addParam("callback",'topadvertCallbacks["'+q+'"]');v.addParam("response_encoding","utf-8");v.addContext();fullPath=v.getFullPath();return fullPath})();var n=function(t){topadvertCallbacks[q]=t};var p;n(function(t){clearTimeout(p);l.callback(t);delete topadvertCallbacks[q]});var o=(function(){return document.getElementsByTagName("head")[0]||document.documentElement})();this._cancel=function(){n(function(u){});var t=document.getElementById(k);o.removeChild(t);l.onError()};this._send=function(){var t=document.createElement("script");t.type="text/javascript";t.setAttribute("src",m);t.setAttribute("id",k);t.setAttribute("charset","utf-8");t.setAttribute("defer","defer");t.setAttribute("async","async");var u=this;if(l.timeout>0){p=setTimeout(u._cancel,l.timeout)}o.appendChild(t)}},send:function(){var k=e.getClass("Browser").getInstance();if(k.isAsync()){this._send()}else{var l=this;k.onLoad(function(){l._send()})}},cancel:function(){this._cancel()}});var g=e.getClass("Object").extend({init:function(n){var l=n;var k=n.addParams;var m=e.getClass("Context").getInstance();delete l.addParams;this._send=function(t,y,u){if(!m.defineContext()){var w=this;var v=function(){w._send(t,y,u)};setTimeout(v,50);return}var o=e.getClass("Utils").extendObject({},k,t);var p=e.getClass("URLParams").getInstance().get();if(p.pattern_id!=null&&p.pattern_id===o.pattern_id){o=e.getClass("Utils").extendObject({},o,p.common_params);var x=o.component;if(x==null){x=""}var q=p.components_params[x];if(q!=null){o=e.getClass("Utils").extendObject({},o,q)}}var r=e.getClass("Utils").extendObject({},l,{data:o,callback:y,onError:u});var s=new h(r);s.send()}},send:function(m,k,l){var n=function(o){o.process(k,e.getClass("LoadJSAPI").getInstance())};this._send(m,n,l)}});return g});e.registerClass("Timer",function(){var f=e.getClass("Object").extend({init:function(){var g=this._getTime();this._t0=g;this._t1=g},_getTime:function(){var h=new Date();var g=h.getTime();return g},tic:function(){this._t0=this._getTime();this._t1=this._t0;return this._t0},toc:function(){this._t1=this._getTime();var g=this._t1-this._t0;return g}});return f});e.registerClass("URLParams",function(){var g;var f=e.getClass("Object").extend({init:function(){this._encoder=new (e.getClass("Encoding.JSCompression.SimpleEncoder"))()},get:function(){var h={};var j=b.location.href;var o=/[\?\&]topadvert_params=(.*?)(\&|$)/.exec(j);if(o!=null){var s=this._encoder.decode(o[1]);var q=s.split("&");for(var m=0;m=k){l=k-1}n+=o.charAt(l)}return n};g.strip=function(k){return k.replace(/^\s+/,"").replace(/\s+$/,"")};return g});var d=(function(){var f=new (e.getClass("Loader"))();return{init:function(){f.load()}}})();b.topadvert=d})(window);topadvert.init();