


/*! Copyright 2009,2010 the Rubicon Project.  All Rights Reserved.  No permission is granted to use, copy or extend this code */

oz_partner = "rubicon";


function RubiconInsight(){this.config={host:"http://tap.rubiconproject.com",statichost:"http://tap-cdn.rubiconproject.com"};this.default_context={oz_partner:"rubicon",oz_partner_user_id:null,oz_partner_channel:null,oz_partner_tracking:null,oz_ad_slot_size:null,oz_ad_slot_sizes:null,oz_rtb_demand:false,oz_api:"insight",oz_api_key:null,oz_view:null,oz_ad_server:null,oz_callback:null};
this.context=null;this.init=function(A){try{if(A){this.context=this.mergeProperties(A,this.default_context);}else{this.context=this.default_context;}if(this.context.oz_host){this.config.host=this.context.oz_host;}if(this.context.oz_statichost){this.config.statichost=this.context.oz_statichost;}}catch(B){}};
this.trim=function(A){return A.replace(/^\s+|\s+$/g,"");};this.mergeProperties=function(B,A){if(typeof (B)=="undefined"||!B){return A;}if(typeof (A)=="undefined"||!A){return new Object();}for(var C in A){if(typeof B[C]=="undefined"){B[C]=A[C];}}return B;};this.copyProperties=function(B,C){if(typeof B=="undefined"||!B){return C;
}for(var A in B){C[A]=B[A];}return C;};this.addParam=function(A,B){if(B){return"&"+A+"="+B;}return"";};this.start=function(){if(this.context.oz_api=="insight"){this.fetchInsight();}if(this.context.oz_api=="valuation"){this.fetchValuation();}};this.fetchInsight=function(){var A;if(this.insightRetrieved){return ;
}this.insightRetrieved=true;try{A=this.config.host+"/partner/agent/"+this.context.oz_partner+"/"+this.context.oz_api+".js?";if(this.context.oz_api_key){A+="&ak="+this.context.oz_api_key;}if(this.context.oz_partner_user_id){A+="&afu="+this.context.oz_partner_user_id;}if(this.context.oz_partner_channel){A+="&pc="+this.context.oz_partner_channel;
}if(this.context.oz_partner_tracking){A+="&ptc="+this.context.oz_partner_tracking;}if(this.context.oz_view){A+="&uv="+this.context.oz_view;}if(this.context.oz_ad_server){A+="&as="+this.context.oz_ad_server;}A+="&cb=oz_onInsightLoaded";try{if(this.oz_source.referrer){host=this.oz_source.referrer.split("/")[2];
}if(host&&(host!=this.oz_source.location.host)){A+="&rd="+host;}}catch(B){}document.write("<scr"+"ipt type='text/javascript' src='"+A+"'></scr"+"ipt>");}catch(B){}};this.ad_sizes={"120/160":"22","120x240":"12","120x60":"6","120x600":"8","120x90":"5","125x125":"7","160x600":"9","160x90":"24","180x150":"11","180x90":"25","1x1":"30","200x200":"13","200x90":"26","234x60":"3","240x400":"17","250x250":"14","300x100":"19","300x250":"15","300x600":"10","300x850":"29","336x280":"16","468/728":"21","468x15":"27","468x60":"1","728x15":"28","728x90":"2","88x31":"4","Pop":"20"};
this.price_bands=[0,5,20,50,100,200,400];this.getAdSizeById=function(B){for(var A in this.ad_sizes){if(this.ad_sizes[A]==B){return A;}}return null;};this.fetchValuation=function(){var B;if(this.valuationRetrieved){return ;}this.valuationRetrieved=true;try{B=this.config.host+"/a/api/market.js?";B="http://anvil.rubiconproject.com"+"/a/api/market.js?";
if(this.context.oz_site){var D=this.context.oz_site.split("/")[0];var A=this.context.oz_site.split("/")[1];B+="&account_id="+D;B+="&site_id="+A;}if(this.context.oz_zone){B+="&zone_id="+this.context.oz_zone;}if(this.context.oz_rtb_demand){B+="&rtb_model=1";}B+="&cb=oz_onValuationLoaded";try{var E;if(this.oz_source.referrer){E=this.oz_source.referrer.split("/")[2];
}if(E&&(E!=this.oz_source.location.host)){B+="&rd="+E;}}catch(F){}if(this.context.oz_ad_size_id){this.context.oz_ad_slot_size=this.getAdSizeById(this.context.oz_ad_size_id);}if(this.context.oz_ad_slot_size){B+="&size_id="+this.ad_sizes[this.context.oz_ad_slot_size];document.write("<scr"+"ipt type='text/javascript'>rp_request_context = {};</scr"+"ipt>");
document.write("<scr"+"ipt type='text/javascript' src='"+B+"'></scr"+"ipt>");}else{if(this.context.oz_ad_slot_sizes){for(var C=0;C<this.context.oz_ad_slot_sizes.length;C++){this.context.oz_ad_slot_size=this.context.oz_ad_slot_sizes[C];size_url=B+"&size_id="+this.ad_sizes[this.context.oz_ad_slot_sizes[C]];
document.write("<scr"+"ipt type='text/javascript'>rp_request_context = { oz_ad_slot_size : \""+this.context.oz_ad_slot_sizes[C]+'" };</scr'+"ipt>");document.write("<scr"+"ipt type='text/javascript' src='"+size_url+"'></scr"+"ipt>");}}}}catch(F){}};this.onPageLoad=function(){if(this.pageLoadHandled){return ;
}this.pageLoadHandled=true;};this.getAsQueryTerms=function(A){var C="";if(typeof A!="undefined"&&A){for(var B in A){var D;if(!A.hasOwnProperty(B)){continue;}D=new String(A[B]);D=D.replace(/\s/g,"+");D=D.replace(/&/g,"%26");C+="&"+B+"="+D;}}return C;};this.getAsDFPKeyValues=function(A){var D="";if(typeof A!="undefined"&&A){for(var B in A){var F;
var E;if(!A.hasOwnProperty(B)){continue;}E=A[B];if(typeof E!="object"){E=new Array();E[E.length]=A[B];}for(var C=0;C<E.length;C++){F=new String(E[C]);if(F.length>0){F=F.replace(/\s/g,"%20");F=F.replace(/&/g,"%26");D+=";"+B+"="+F;}}}}return D;};this.getAsAdTechKeyValues=function(A){var D="";if(typeof A!="undefined"&&A){for(var B in A){var F;
var E;if(!A.hasOwnProperty(B)){continue;}E=A[B];if(typeof E!="object"){E=new Array();E[E.length]=A[B];}D+=";kv"+B+"=";for(var C=0;C<E.length;C++){F=new String(E[C]);if(F.length>0){F=F.replace(/\s/g,"%20");F=F.replace(/&/g,"%26");D+=F;if(C<E.length-1){D+=":";}}}}}return D;};this.normalizeAttributeValue=function(A){return A;
};this.normalize=function(A){var B;for(B in A){if(!A.hasOwnProperty(B)){continue;}if(typeof A[B]=="string"){A[B]=this.normalizeAttributeValue(A[B]);}else{if(typeof A[B]=="object"){this.normalize(A[B]);}}}return A;};this.gamAdServerHookInsight=function(B){var A=B.insight||{};try{for(var C in A){var F;
var E;if(!A.hasOwnProperty(C)){continue;}E=A[C];if(typeof E!="object"){E=new Array();E[E.length]=A[C];}for(var D=0;D<E.length;D++){F=new String(E[D]);if(F.length>0){F=F.replace(/\+/g,"plus");F=F.replace(/[^\w\d-_\.]+/g,"");F=F.substring(0,40);GA_googleAddAttr(C,F);}}}}catch(G){}};this.gam1AdServerHookInsight=function(B){var A=B.insight||{};
try{for(var C in A){var F;var E;if(!A.hasOwnProperty(C)){continue;}E=A[C];if(typeof E!="object"){E=new Array();E[E.length]=A[C];}for(var D=0;D<E.length;D++){F=new String(E[D]);if(F.length>0){F=F.replace(/\+/g,"plus");F=F.replace(/[^\w\d-_\.]+/g,"");F=F.substring(0,10);GA_googleAddAttr(C,F);}}}}catch(G){}};
this.onInsightLoaded=function(C){try{var A=C.insight;var E;this.normalize(A);if(C.context.oz_ad_server&&typeof this[C.context.oz_ad_server.toLowerCase()+"AdServerHookInsight"]=="function"){this[C.context.oz_ad_server.toLowerCase()+"AdServerHookInsight"](C);}var G=new Array();for(E in A){if(!A.hasOwnProperty(E)){continue;
}G[G.length]=E;}if(G.length>0){var D="";D+=this.config.host+"/stats/insight?";D+=this.addParam("p",this.context.oz_partner);D+=this.addParam("ak",this.context.oz_api_key);if(C.context.oz_partner_channel){D+=this.addParam("pc",C.context.oz_partner_channel);}else{if(this.context.oz_partner_channel){D+=this.addParam("pc",this.context.oz_partner_channel);
}}D+=this.addParam("ptc",this.context.oz_partner_tracking);D+=this.addParam("api",this.context.oz_api);D+=this.addParam("uv",this.context.oz_view);D+=this.addParam("as",this.context.oz_ad_server);D+=this.addParam("upn",G.join(","));setTimeout((function(I){return function(){new Image().src=I;};})(D),1000);
}if(this.context.use_stats){var B=(window!=top);var D="http://stats.rubiconproject.com/stats/inventory?";D+=this.addParam("p",this.context.oz_partner);D+=this.addParam("ak",this.context.oz_api_key);if(C.context.oz_partner_channel){D+=this.addParam("pc",C.context.oz_partner_channel);}else{if(this.context.oz_partner_channel){D+=this.addParam("pc",this.context.oz_partner_channel);
}}D+=this.addParam("ptc",this.context.oz_partner_tracking);D+=this.addParam("api","inventory");if(B){D+=this.addParam("aso",(B?"framed":""));}if(document.referrer){host=document.referrer.split("/")[2];}if(host&&(host!=document.location.host)){D+=this.addParam("rd",host);}setTimeout((function(I){return function(){new Image().src=I;
};})(D),1000);}}catch(F){}try{var A=C.insight;var H=this.context.oz_callback;if(H&&typeof H=="function"){H(A);}if(H&&typeof H=="string"&&window[H]&&typeof window[H]=="function"){window[H](A);}}catch(F){}};this.createCookie=function(C,D,E){if(E){var B=new Date();B.setTime(B.getTime()+(E*24*60*60*1000));
var A="; expires="+B.toGMTString();}else{var A="";}document.cookie=C+"="+D+A+"; path=/";};this.createTodayCookie=function(C,D){var B=new Date();B=new Date(B.getTime()+(86400*1000));B=new Date(B.getFullYear(),B.getMonth(),B.getDate(),0,0,0,0);var A="; expires="+B.toGMTString();document.cookie=C+"="+D+A+"; path=/";
};this.readCookie=function(B){var D=B+"=";var A=document.cookie.split(";");for(var C=0;C<A.length;C++){var E=A[C];while(E.charAt(0)==" "){E=E.substring(1,E.length);}if(E.indexOf(D)==0){return E.substring(D.length,E.length);}}return null;};this.getImpressionCount=function(A){var B=this.readCookie("_trp_hit_"+A);
if(B){B=Number(B);}return Math.max(B||1,1);};this.setImpressionCount=function(B,A){this.createTodayCookie("_trp_hit_"+A,B);};this.selectBestAd=function(C){var A={cpm:0};var F;var E;var H;var G=this.getImpressionCount(this.context.oz_ad_slot_size);for(var D=0;D<C.valuation.ads.length;D++){F=C.valuation.ads[D];
E=(typeof F.fcl=="undefined")?(F.type=="rtb"?1:0):F.fcl;H=(F.fcp||86400);if(E==0||(F.type!="partner"&&F.type!="rtb"&&F.type!="static_bid")){continue;}if(F.cpm<0){continue;}var B=Math.ceil(E*(H/86400));G-=B;if(G>0){continue;}A=F;if((F.type=="rtb"||F.type=="static_bid")&&(D<C.valuation.ads.length-1)){A.bid=F.cpm;
A.cpm=C.valuation.ads[D+1].cpm;}break;}A.hit=this.getImpressionCount(this.context.oz_ad_slot_size);return A;};this.generateEstimate=function(B){var D=B.valuation;var E={tier:0};if(D.best_ad){var A=0;for(var C=0;C<this.price_bands.length;C++){if((D.best_ad.cpm*100)>this.price_bands[C]){A=this.price_bands[C];
}}E={tier:A,cpm:D.best_ad.cpm};}return E;};this.tranformRtbCoeffs=function(E){var D=[];for(var F in E){if(!E.hasOwnProperty(F)){continue;}var B=E[F];var C={nid:F,baseline:B.vec[0],session:{10:B.vec[1]||0,30:B.vec[2]||0,100:B.vec[3]||0,1000:B.vec[4]||0}};var A=B.vec.slice(5,29);if(A.length==24){C.hours=A;
}D[D.length]=C;}return D;};this.convertToAds=function(C,G,A){var E=[];for(var D in C){var B=C[D];var F={nid:B.nid,type:"rtb",fcl:10,cpm:B.baseline};for(depth in B.session){if(G<depth){F.cpm+=B.session[depth];break;}}if(B.hours&&(typeof A!="undefined")&&A>=0&&A<=23){F.cpm+=B.hours[A];}F.cpm=Math.max(F.cpm,0);
E[E.length]=F;}return E;};this.onValuationLoaded=function(F){try{var K=F.valuation;var D;F.context=F.context||this.context;if(typeof rp_request_context!="undefined"){this.copyProperties(rp_request_context,F.context);}if(F.valuation.rtb_coeffs){var C=this.tranformRtbCoeffs(F.valuation.rtb_coeffs);var A=this.getImpressionCount(this.context.oz_ad_slot_size);
var G=new Date().getHours();var E=this.convertToAds(C,A,G);F.valuation.ads=E.concat(F.valuation.ads);}F.valuation.ads=F.valuation.ads.sort(function(N,M){return(M.cpm-N.cpm);});F.valuation.best_ad=this.selectBestAd(F);F.valuation.estimate=this.generateEstimate(F);if(this.context.oz_ad_slot_sizes){F.insight={};
for(D in F.valuation.estimate){if((D=="tier")||(D=="cpm")){F.insight[D+"-"+this.context.oz_ad_slot_size]=F.valuation.estimate[D];}else{F.insight[D]=F.valuation.estimate[D];}}}else{F.insight=F.valuation.estimate;}if(F.context.oz_ad_server&&typeof this[F.context.oz_ad_server.toLowerCase()+"AdServerHookInsight"]=="function"){this[F.context.oz_ad_server.toLowerCase()+"AdServerHookInsight"](F);
}this.setImpressionCount(1+this.getImpressionCount(this.context.oz_ad_slot_size),this.context.oz_ad_slot_size);var J=new Array();for(D in K){if(!K.hasOwnProperty(D)){continue;}J[J.length]=D;}if(J.length>0){var B="";B+=this.config.host+"/stats/valuation?";B+=this.addParam("p",this.context.oz_partner);
B+=this.addParam("ak",this.context.oz_api_key);if(F.context.oz_partner_channel){B+=this.addParam("pc",F.context.oz_partner_channel);}else{if(this.context.oz_partner_channel){B+=this.addParam("pc",this.context.oz_partner_channel);}}B+=this.addParam("ptc",this.context.oz_partner_tracking);B+=this.addParam("api",this.context.oz_api);
B+=this.addParam("as",this.context.oz_ad_server);B+=this.addParam("asz",this.context.oz_ad_slot_size);B+=this.addParam("tier",F.valuation.estimate.tier);B+=this.addParam("cpm",F.valuation.estimate.cpm);B+=this.addParam("hit",F.valuation.estimate.hit);B+=this.addParam("iid",F.context.oz_impression_id);
setTimeout((function(M){return function(){new Image().src=M;};})(B),1000);}}catch(I){}try{var H=F.insight;var L=this.context.oz_callback;if(L&&typeof L=="function"){L(H);}if(L&&typeof L=="string"&&window[L]&&typeof window[L]=="function"){window[L](H);}}catch(I){}};}function oz_insight(E){try{var D=new RubiconInsight();
var C=new Object();var G=["oz_host","oz_statichost","oz_api","oz_api_key","oz_partner","oz_partner_user_id","oz_partner_channel","oz_partner_tracking","oz_site","oz_zone","oz_ad_slot_size","oz_ad_slot_sizes","oz_rtb_demand","oz_view","oz_ad_server","oz_callback","oz_impression_id","oz_ad_size_id"];var A;
D.oz_source=document;for(var B=0;B<G.length;B++){A=G[B];if(window[A]){C[A]=window[A];}}D.init(C);oz_insight_partner_hook(D);window.oz_onInsightLoaded=function(H){D.onInsightLoaded(H);};window.oz_onValuationLoaded=function(H){D.onValuationLoaded(H);};D.start();if(E||D.autorun){D.onPageLoad();}}catch(F){}}function oz_insight_partner_hook(A){return A;
}function oz_insight_adserver_hook(A){return A;}

/*
	The requested resource (/oz/scripts/partners/rubicon/insight_hooks.js) is not available
*/


oz_insight();

